zoukankan      html  css  js  c++  java
  • linux文件管理 -> 系统目录结构

    几乎所有的计算机操作系统都是用目录结构组织文件。具体来说就是在一个目录中存放子目录和文件, 而在子目录中又会进一步存放子目录和文件,以此类推形成一个树状的文件结构,由于其结构很像一棵树的分支, 所以该结构又被称为“目录树”。

    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   – 包含用户登录失败信息。此外,错误登录命令也会记录在本文件中。
  • 相关阅读:
    bzoj 1176 cdq分治套树状数组
    Codeforces 669E cdq分治
    Codeforces 1101D 点分治
    Codeforces 1100E 拓扑排序
    Codeforces 1188D Make Equal DP
    Codeforces 1188A 构造
    Codeforces 1188B 式子转化
    Codeforces 1188C DP 鸽巢原理
    Codeforces 1179D 树形DP 斜率优化
    git commit -m "XX"报错 pre -commit hook failed (add --no-verify to bypass)问题
  • 原文地址:https://www.cnblogs.com/tim1blog/p/9722109.html
Copyright © 2011-2022 走看看