• 文件系统
    • 文件和路径
    • 目录结构
    • 访问权限
    • 磁盘管理

    文件系统

    文件和路径

    1. 命名规则:文件名的最大长度与文件系统类型有关,一般情况下,文件名不应该超过255个字符,虽然绝大多数的字符都可以用于文件名,但是最好使用英文大小写字母、数字、下划线、点这样的符号。文件名中虽然可以使用空格,但应该尽可能避免使用空格,否则在输入文件名时需要用将文件名放在双引号中或者通过\对空格进行转义。
    2. 扩展名:在Linux系统下文件的扩展名是可选的,但是使用扩展名有助于对文件内容的理解。有些应用程序要通过扩展名来识别文件,但是更多的应用程序并不依赖文件的扩展名,就像file命令在识别文件时并不是依据扩展名来判定文件的类型。
    3. 隐藏文件:以点开头的文件在Linux系统中是隐藏文件(不可见文件)。

    目录结构

    1. /bin - 基本命令的二进制文件。
    2. /boot - 引导加载程序的静态文件。
    3. /dev - 设备文件。
    4. /etc - 配置文件。
    5. /home - 普通用户主目录的父目录。
    6. /lib - 共享库文件。
    7. /lib64 - 共享64位库文件。
    8. /lost+found - 存放未链接文件。
    9. /media - 自动识别设备的挂载目录。
    10. /mnt - 临时挂载文件系统的挂载点。
    11. /opt - 可选插件软件包安装位置。
    12. /proc - 内核和进程信息。
    13. /root - 超级管理员用户主目录。
    14. /run - 存放系统运行时需要的东西。
    15. /sbin - 超级用户的二进制文件。
    16. /sys - 设备的伪文件系统。
    17. /tmp - 临时文件夹。
    18. /usr - 用户应用目录。
    19. /var - 变量数据目录。

    访问权限

    1. chmod - 改变文件模式比特。

      1. [root ~]# ls -l
      2. ...
      3. -rw-r--r-- 1 root root 211878 Jun 19 16:06 sohu.html
      4. ...
      5. [root ~]# chmod g+w,o+w sohu.html
      6. [root ~]# ls -l
      7. ...
      8. -rw-rw-rw- 1 root root 211878 Jun 19 16:06 sohu.html
      9. ...
      10. [root ~]# chmod 644 sohu.html
      11. [root ~]# ls -l
      12. ...
      13. -rw-r--r-- 1 root root 211878 Jun 19 16:06 sohu.html
      14. ...

      说明:通过上面的例子可以看出,用chmod改变文件模式比特有两种方式:一种是字符设定法,另一种是数字设定法。除了chmod之外,可以通过umask来设定哪些权限将在新文件的默认权限中被删除。

      长格式查看目录或文件时显示结果及其对应权限的数值如下表所示。

      文件系统 - 图1

    2. chown - 改变文件所有者。

      1. [root ~]# ls -l
      2. ...
      3. -rw-r--r-- 1 root root 54 Jun 20 10:06 readme.txt
      4. ...
      5. [root ~]# chown hellokitty readme.txt
      6. [root ~]# ls -l
      7. ...
      8. -rw-r--r-- 1 hellokitty root 54 Jun 20 10:06 readme.txt
      9. ...
    3. chgrp - 改变用户组。

    磁盘管理

    1. 列出文件系统的磁盘使用状况 - df

      1. [root ~]# df -h
      2. Filesystem Size Used Avail Use% Mounted on
      3. /dev/vda1 40G 5.0G 33G 14% /
      4. devtmpfs 486M 0 486M 0% /dev
      5. tmpfs 497M 0 497M 0% /dev/shm
      6. tmpfs 497M 356K 496M 1% /run
      7. tmpfs 497M 0 497M 0% /sys/fs/cgroup
      8. tmpfs 100M 0 100M 0% /run/user/0
    2. 磁盘分区表操作 - fdisk

      1. [root ~]# fdisk -l
      2. Disk /dev/vda: 42.9 GB, 42949672960 bytes, 83886080 sectors
      3. Units = sectors of 1 * 512 = 512 bytes
      4. Sector size (logical/physical): 512 bytes / 512 bytes
      5. I/O size (minimum/optimal): 512 bytes / 512 bytes
      6. Disk label type: dos
      7. Disk identifier: 0x000a42f4
      8. Device Boot Start End Blocks Id System
      9. /dev/vda1 * 2048 83884031 41940992 83 Linux
      10. Disk /dev/vdb: 21.5 GB, 21474836480 bytes, 41943040 sectors
      11. Units = sectors of 1 * 512 = 512 bytes
      12. Sector size (logical/physical): 512 bytes / 512 bytes
      13. I/O size (minimum/optimal): 512 bytes / 512 bytes
    3. 磁盘分区工具 - parted

    4. 格式化文件系统 - mkfs

      1. [root ~]# mkfs -t ext4 -v /dev/sdb
      • -t - 指定文件系统的类型。
      • -c - 创建文件系统时检查磁盘损坏情况。
      • -v - 显示详细信息。
    5. 文件系统检查 - fsck

    6. 转换或拷贝文件 - dd

    7. 挂载/卸载 - mount / umount

    8. 创建/激活/关闭交换分区 - mkswap / swapon / swapoff

    说明:执行上面这些命令会带有一定的风险,如果不清楚这些命令的用法,最好不用随意使用,在使用的过程中,最好对照参考资料进行操作,并在操作前确认是否要这么做。