Linux基础

Linux 命令

目录结构

enter description here

  • /bin 可执行二进制文件
  • /etc 系统配置文件
  • /home 每个用户的主目录
  • /usr 放置系统应用
    • /usr/local 存放管理员安装软件目录
  • /proc 虚拟文件目录
    • 你甚至可以找到正在运行的各种进程
  • /dev 设备文件目录
  • /boot 系统引导使用的文件
  • /lib 系统引导 系统启动时 用到的动态库文件
    enter description here

推荐链接

文件类型

enter description here

Linux 存储管理

  • Buddy 内存管理算法 ( 努力让内存分配与相邻内存合并快速进行
    • 基于计算机处理二进制的优势具有极高的效率
    • 算法主要是为了解决内存外碎片问题 ( 内存外碎片 -> 内存内碎片
    • 核心
      • 将申请内存大小向上取 2的幂
      • 一片连续内存的 '伙伴(buddy)' 是相邻的另一片大小一样的连续内存

enter description here

enter description here enter description here

enter description here

Linux 文件系统概览

  • 常见文件系统
    • FAT ( File Allocation Table
      • 微软Dos/Win 早期使用文件系统
      • 使用一张表保存盘块信息
    • NTFS ( New Technology File System
      • win7/win8/win10 ( win/linux 均可识别
    • EXT2/3/4 ( Extented File System
      • 用于 Linux ( 将一个 ext 格式的 U 盘插入 win win 将无法识别
  • 常见分区方式
    • GPT
    • MBR MBR GPT

分区是将一个物理盘分成若干个逻辑盘 每个逻辑盘中必须具有一种文件系统 分区就是将物理盘隔开,文件系统就是将隔开的盘格式成某种类型的文件存储格式

enter description here

推荐链接1 推荐链接2

Ext 文件系统

enter description here

  • tips:
    • Boot Sector 启动扇区 安装开机管理程序
    • Block Gruop 块组 存储数据实际位置
    • Inode 存放文件的原信息

enter description here

enter description here

enter description here

enter description here

enter description here

enter description here

enter description here

表面上,用户通过文件名,打开文件。实际上,系统内部这个过程分成三步:首先,系统找到这个文件名对应的inode号码;其次,通过inode号码,获取inode信息;最后,根据inode信息,找到文件数据所在的block,读出数据

常用命令

netstat -nalp | grep 8080

ps -ef | grep java // ps 显示当前进程状态
ps -aux | grep java

find /tmp/cg/testLinux -name "*.txt"

df -T // 查看挂载磁盘信息
 dumpe2fs /dev/vda1 | less // 查看指定设备 inode 信息
 stat xxx // 查看某个文件具体信息

enter description here

enter description here

enter description here

img

各种言语默认安装包的搜索路径


以C++为例

  • #include “headfile.h”优先在当前目录查找头文件
    • 先搜索当前目录
    • 然后搜索-I指定的目录
    • 再搜索gcc的环境变量CPLUS_INCLUDE_PATH(C程序使用的是C_INCLUDE_PATH)
    • 最后搜索gcc的内定目录
      • /usr/include
      • /usr/local/include
      • /usr/lib/gcc/x86_64-redhat-linux/4.1.1/include
  • #include < headfile.h >从系统默认路径查找头文件
    • 先搜索-I指定的目录
    • 然后搜索gcc的环境变量CPLUS_INCLUDE_PATH
    • 最后搜索gcc的内定目录
      • /usr/include
      • /usr/local/include
      • /usr/lib/gcc/x86_64-redhat-linux/4.1.1/include

推荐链接

转载

原文地址:https://www.cnblogs.com/AronJudge/p/14259252.html