几乎所有的计算机操作系统都是用目录结构组织文件。具体来说就是在一个目录中存放子目录和文件, 而在子目录中又会进一步存放子目录和文件,以此类推形成一个树状的文件结构,由于其结构很像一棵树的分支, 所以该结构又被称为“目录树”。
Linux系统中也沿用了这种文件结构, 所有目录和文件都在 "根目录"下, 目录名为"/"。FHS(文件系统层次标准)定义了在根目录下的主要目录以及每个目录应该存放什么文件。
/etc 系统重要配置文件, 以及常用服务配置文件
/var 存放系统引导启动时产生的可变文件,文件通常动态更改的,例如: 缓存目录,日志文件
/run 系统启动后, 运行的程序产生的运行时数据, 包括进程的pid文件,锁文件等
/home 普通用户的主目录, 普通用户的家目录默认为/HOME/USERNAME
/root 超级管理员的主目录, 普通用户无权操作
/tmp 存放临时文件, 一般存放超过10天以上都会自动删除,可以更改删除临时文件的期限
/boot 存放系统引导时候需要的文件
/dev 存放设备文件
/usr 安装的软件, 共享库, 重要的子目录有
/usr/bin 用户命令目录
/usr/sbin 管理员命令目录
/usr/local 本地自定义安装的软件
/bin 二进制文件 命令
/sbin 供root用户使用的二进制命令
/lib library库 /lib64 library库
/lost+found 系统宕机 临时保存数据位置
/mnt 默认的临时挂载点
/opt 第三方软件的安装位置
//注意:在Linux7系统中, /bin, /sbin, /lib, /lib64都以软链接的形式链接到/usr/目录下,例如:
/bin --> /usr/bin
/sbin --> /usr/sbin
lib -> usr/lib
lib64 -> usr/lib64
需要掌握的目录与文件:
/etc目录
1 ./etc/sysconfig/network-scripts/ifcfg-eth0 网卡配置
DEVICE=eth0 —— 设备名称 TYPE=Ethernet —— 网络类型 ONBOOT=yes —— 是否自启动 BOOTPROTO=none —— 网络模式,dhcp(自动获取IP)或static(指定静态IP)或者none IPADDR=10.0.0.200 —— IP地址 PREFIX=24 #NETMASK=255.255.255.0 —— 子网掩码 GATEWAY=10.0.0.2 —— 网关 DNS1=223.5.5.5 —— DNS DNS2=223.6.6.6 —— 备用DNS
2 .etc/fstab 开机自动挂载列表,开机时设备与入口的对应关系
某些时候当Linux系统下划分了新的分区后,需要将这些分区设置为开机自动挂载,否则,Linux是无法使用新建的分区的。 /etc/fstab 文件负责配置Linux开机时自动挂载的分区。
UUID=7b2054b6-036c-4352-b261-1a846b78d508 / ext4 defaults 1 1 UUID=92e4212d-b33b-4e97-a3e7-3be20dc6d9c4 /boot ext4 defaults 1 2 UUID=51bfa6f9-90b5-4c0d-8a26-3e09ef179f8e swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0
每一列的含义:
第1列可以是实际分区名,也可以是实际分区的卷标(Lable)。
第2列是挂载点。
挂载点必须为当前已经存在的目录,为了兼容起见,最好在创建需要挂载的目标目录后,将其权限设置为777,以开放所有权限。
第3列为此分区的文件系统类型。
Linux可以使用ext2、ext3等类型,此字段须与分区格式化时使用的类型相同。也可以使用 auto 这一特殊的语法,使系统自动侦测目标分区的分区类型。auto通常用于可移动设备的挂载。
第4列是挂载的选项,用于设置挂载的参数。
第5列是dump备份设置。
当其值设置为1时,将允许dump备份程序备份;设置为0时,忽略备份操作;
第6列是fsck磁盘检查设置。
其值是一个顺序。当其值为0时,永远不检查;而 / 根目录分区永远都为1。其它分区从2开始,数字越小越先检查,如果两个分区的数字相同,则同时检查。
3 ./etc/sysconfig/network 修改主机名
**配置信息: ** 主机名配置信息
配置内容: NETWORKING=yes HOSTNAME=oldboyedu49-lnb
4 ./etc/hosts 主机名解析文件,解析域名的
配置信息: IP地址与主机名对应关系,也可配置快速域名解析,用于搭建测试网站 配置内容: 127.0.0.1 localhost localhost.localdomain IP地址 主机名 域名
5 ./etc/resolv.conf DNS配置文件
配置信息: DNS配置信息 配置内容: nameserver 10.0.0.2 注:网卡中的DNS配置优先
6 ./etc/inittab 运行级别的配置文件
Linux的7个运行级别: 0 关机 1 单用户模式(可在root密码忘记时候使用) 2 多用无模式(无NFS 无网络连接) 3 完整的多用户模式 4 未定义 5 X11 图形界面模式 6 重启 查看运行级别:runlevel 修改运行级别: 临时修改:init 6 (重启) 永久修改:编辑/etc/inittab文件
7 ./etc/rc.local 文件开机自启动命令
配置信息: 开机自启动的软件或命令 查看Linux开机自启动软件或命令: ① chkconfig ② cat /etc/rc.local
8 ./etc/bashrc 别名的存放位置
配置信息:
别名
说明:
家目录的配置路径为~/.bashrc
9 ./etc/profile 别名
配置信息:
别名与环境变量
举例:
如修改rm的别名,或修改PS1的环境变量,需要在此配置文件下添加,添加后,source生效
10./etc/issue 文件在用户登陆之前显示
11./etc/motd 文件在用户登陆之后显示
/proc
目录
这是一个详细讲解的连接->传送门
/proc/cpuinfo
#查看系统cpu信息 processor : 0 第几个核心 physical id : 0 第几颗CPU #也可通过lscpu查看
/proc/meminfo
#查看系统内存信息 cat /proc/meminfo #也可通过free –h查看
/proc/loadavg
查看系统平均负载信息 分别显示最近1分钟、5分钟、15分钟的平均负载 一般平均负载大于单个CPU核心数量时,认为系统负载大 也可通过`uptime`,`w`命令查看
/proc/mounts
查看系统的挂载信息 挂载光盘过程: 将光盘插入光驱或虚拟光驱后,执行 mount /dev/cdrom /mnt 将光盘挂载在mnt目录 卸载光盘: umount /mnt 可将挂载的光盘卸载
/usr
目录
/usr/local/ 编译安装软件的默认的位置 == windows:(C:program files )
首先注意usr 指 Unix System Resource,而不是User
然后通常/usr/bin下面的都是系统预装的可执行程序,会随着系统升级而改变
/usr/local/bin目录是给用户放置自己的可执行程序的地方,推荐放在这里,不会被系统升级而覆盖同名文件
①yum安装 安装方法:yum install -y 查看已经安装了哪些包:yum grouplist ②rpm安装 安装命令:rpm -ivh 查看安装包:rpm -qa 查找包里的内容:rpm -ql ③编译安装 ./configure make make install
/var
目录
详细讲解/var目录->传送门
/var/log/messages 系统默认的日志
包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中
/var/log/secure 用户的登录信息
谁 什么时候 登录系统 是否成功
不要用cat 去查看 --- 日志信息太大,用cat会卡,或者一直运行停不下来
多用: head tail grep less
/var/log/dmesg — 包含内核缓冲信息(kernel ring buffer)。在系统启动时,会在屏幕上显示许多与硬件有关的信息。可以用dmesg查看它们。 /var/log/auth.log — 包含系统授权信息,包括用户登录和使用的权限机制等。 /var/log/boot.log — 包含系统启动时的日志。 /var/log/daemon.log — 包含各种系统后台守护进程日志信息。 /var/log/dpkg.log — 包括安装或dpkg命令清除软件包的日志。 /var/log/kern.log — 包含内核产生的日志,有助于在定制内核时解决问题。 /var/log/lastlog — 记录所有用户的最近信息。这不是一个ASCII文件,因此需要用lastlog命令查看内容。 /var/log/maillog /var/log/mail.log — 包含来着系统运行电子邮件服务器的日志信息。例如,sendmail日志信息就全部送到这个文件中。 /var/log/user.log — 记录所有等级用户信息的日志。 /var/log/Xorg.x.log — 来自X的日志信息。 /var/log/alternatives.log — 更新替代信息都记录在这个文件中。 /var/log/btmp — 记录所有失败登录信息。使用last命令可以查看btmp文件。例如,”last -f /var/log/btmp | more“。 /var/log/cups — 涉及所有打印信息的日志。 /var/log/anaconda.log — 在安装Linux时,所有安装信息都储存在这个文件中。 /var/log/yum.log — 包含使用yum安装的软件包信息。 /var/log/cron — 每当cron进程开始一个工作时,就会将相关信息记录在这个文件中。 /var/log/secure — 包含验证和授权方面信息。例如,sshd会将所有信息记录(其中包括失败登录)在这里。 /var/log/wtmp或/var/log/utmp — 包含登录信息。使用wtmp可以找出谁正在登陆进入系统,谁使用命令显示这个文件或信息等。 /var/log/faillog – 包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。