Loading

磁盘分区与文件系统

磁盘分区

  • 分区只是针对64Bytes的分区表进行设置

为什么分区

  • 安全性(考虑重装window是C盘的情况)
  • 提高读取性能

Linux下磁盘分区的重要性

  • mount(挂载)

    目录树的结构与磁盘内的数据对应

  • 分区方法

目录配置

FHS标准

可分享的(shareable) 不可分享的(unshareable)
不变的(static) /usr(软件放置处) /etc(配置文件)
/opt(第三方协力软件) /boot(开机与核心档)
可变动的(variable) /var/mail(使用者邮件信息) /var/run(程序相关)
/var/spool/news(新闻群组) /var/lock(程序相关)
root@youname-PC:/mnt/hgfs# tree / -L 1
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib32 -> usr/lib32
├── lib64 -> usr/lib64
├── libx32 -> usr/libx32
├── lost+found
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
└── var
  • 在FHS标注下只有三个目录应该放置什么数据

    • /(root)
    • /usr(unix software resource)
    • /var(variable)/

其他目录

/bin

系统有很多放置可执行文件的目录,但/bin比较特殊。因为/bin放置的是在单人维护模式下还能够被操作的指令。 在/bin下面的指令可以被root与一般 帐号所使用,主要有:cat, chmod, chown, date, mv, mkdir, cp, bash等等常 用的指令。

\boot

> 这个目录主要在放置==开机==会使用到的文件,包括Linux核心文件以及开机菜 单与开机所需配置文件等等。 Linux kernel常用的文件名为:vmlinuz,如果 使用的是grub2这个开机管理程序, 则还会存在/boot/grub2/

/dev

在Linux系统上,任何设备与周边设备都是以文件的型态存在于这个目录当 中的。 你只要通过存取这个目录下面的某个文件,就等于存取某个设备. 比较重要的文件有/dev/null, /dev/zero, /dev/tty, /dev/loop, /dev/sd

/etc

系统主要的配置文件几乎都放置在这个目录内,例如人员的帐号密码档、 各种服务的启始档等等。一般来说,这个目录下的各文件属性是可以让一般 使用者查阅的, 但是只有root有权力修改。FHS建议不要放置可可执行文件 (binary)在这个目录中喔。比较重要的文件有: /etc/modprobe.d/, /etc/passwd, /etc/fstab, /etc/issue 等等。另外 FHS 还规范几个重要的目录 最好要存在 /etc/ 目录下:/etc/opt(必要):这个目录在放置第三方协力 软件 /opt 的相关配置文件 /etc/X11/(建议):与 X Window 有关的各种配 置文件都在这里,尤其是 xorg.conf 这个 X Server 的配置文件。 /etc/sgml/ (建议):与 SGML 格式有关的各项配置文件 /etc/xml/(建议):与 XML 格式有关的各项配置文件

/lib

系统的函数库非常的多,而/lib放置的则是在开机时会用到的函数库, 以及 在/bin或/sbin下面的指令会调用的函数库而已。 什么是函数库呢?你可以将 他想成是“外挂”,某些指令必须要有这些“外挂”才能够顺利完成程序的执行 之意。 另外 FSH 还要求下面的目录必须要存在:/lib/modules/:这个目录 主要放置可抽换式的核心相关模块(驱动程序)

/media

media是“媒体”的英文,顾名思义,这个/media下面放置的就是可移除的设备。 包括软盘、光盘、DVD等等设备都暂时挂载于此。常见的文件名 有:/media/floppy, /media/cdrom等等。

/mnt

如果你想要暂时挂载某些额外的设备,一般建议你可以放置到这个目录中。 在远古时期,这个目录的用途与/media相同。只是有了/media之后,这个目录就用来暂时挂载用了。

/opt

这个是给第三方协力软件放置的目录。举例来说,KDE这个桌面管理系统是一个独立的计划,不过他可以安装到Linux系 统中,因此KDE的软件就建议放置到此目录下了。 另外,如果你想要自行安装额外的软件(非原本的distribution提供的),那么也能够将你的软件安 装到这里来。 不过,以前的Linux系统中,我们还是习惯放置在/usr/local目录。

/run

早期的 FHS 规定系统开机后所产生的各项信息应该要放置到 /var/run 目录 下,新版的 FHS 则规范到 /run 下面。

/sbin -> usr/sbin

里面包括了开机、修复、还原系统所需要的指令。 至于某些服务器软件程序,一般则放置到/usr/sbin/当中。至于本机自行安装的软件所产生的系统可执行文件(system binary), 则放置到/usr/local/sbin/ 当中了。常见的指令包括:fdisk, fsck, ifconfig, mkfs等等。

/srv

srv可以视为“service”的缩写,是一些网络服务启动之后,这些服务所需要 取用的数据目录。 常见的服务例如WWW, FTP等等。举例来说,WWW服 务器需要的网页数据就可以放置在/srv/www/里面。 不过,系统的服务数据 如果尚未要提供给网际网络任何人浏览的话,默认还是建议放置到 /var/lib 下面即可

/tmp

这是让一般使用者或者是正在执行的程序暂时放置文件的地方。 这个目录 是任何人都能够存取的,所以你需要定期的清理一下。当然,重要数据不可 放置在此目录啊! 因为FHS甚至建议在开机时,应该要将/tmp下的数据都删除

/usr

  • 默认软件全在这里

  • /bin

所有一般用户能够使用的指令都放在这里!目前新的 CentOS 7 已经将 全部的使用者指令放置于此,而使用链接文件的方式将 /bin 链接至此! 也就是说, /usr/bin 与 /bin 是一模一样

  • /lib

  • /local

系统管理员在本机自行安装自己下载的软件(非distribution默认提供 者),建议安装到此目录, 这样会比较便于管理。举例来说,你的 distribution提供的软件较旧,你想安装较新的软件但又不想移除旧版, 此时你可以将新版软件安装于/usr/local/目录下

  • /sbin

  • /share

主要放置只读架构的数据文件,当然也包括共享文件。在这个目录下放 置的数据几乎是不分硬件架构均可读取的数据, 因为几乎都是文字文 件嘛!在此目录下常见的还有这些次目录:/usr/share/man:线上说明 文档 /usr/share/doc:软件杂项的文件说明 /usr/share/zoneinfo:与时 区有关的时区文件

  • /game

  • /include

c/c++等程序语言的文件开始(header)与包含档(include)放置处, 当我们以tarball方式 (*.tar.gz 的方式安装软件)安装某些数据时,会 使用到里头的许多包

  • /src

一般源代码建议放置到这里,src有source的意思。至于核心源代码则 建议放置到/usr/src/linux/目录

/var

  • /lib

程序本身执行的过程中,需要使用到的数据文件放置的目录。在此目录下 各自的软件应该要有各自的目录。 举例来说,MySQL的数据库放置 到/var/lib/mysql/而rpm的数据库则放到/var/lib/rpm

  • /lock

  • /log

登录文件放置位置

  • /spool

/home

使用者文件夹

  • /proc

个目录本身是一个“虚拟文件系统(virtual filesystem)”.他放置的数 据都是在内存当中, 例如系统核心、行程信息(process)、周边设备的 状态及网络状态等等。因为这个目录下的数据都是在内存当中, 所以本身 不占任何硬盘空间啊!比较重要的文件例如:/proc/cpuinfo, /proc/dma, /proc/interrupts, /proc/ioports, /proc/net/* 等等。

  • /sys

这个目录其实跟/proc非常类似,也是一个虚拟的文件系统,主要也是记录 核心与系统硬件信息较相关的信息。 包括目前已载入的核心模块与核心侦 测到的硬件设备信息等等。这个目录同样不占硬盘容量

文件系统

磁盘与容量

  • df:列出文件系统的整体磁盘使用量
用法:df [选项]... [文件]...
  -a, --all             include pseudo, duplicate, inaccessible file systems
  -B, --block-size=SIZE  scale sizes by SIZE before printing them; e.g.,
                           '-BM' prints sizes in units of 1,048,576 bytes;
                           see SIZE format below
  -h, --human-readable  print sizes in powers of 1024 (e.g., 1023M)
  -H, --si              print sizes in powers of 1000 (e.g., 1.1G)
  -i, --inodes          显示inode 信息而非块使用量
  -k                    即--block-size=1K
  -l, --local           只显示本机的文件系统
      --no-sync         取得使用量数据前不进行同步动作(默认)
      --output[=FIELD_LIST]  use the output format defined by FIELD_LIST,
                               or print all fields if FIELD_LIST is omitted.
  -P, --portability     use the POSIX output format
      --sync            invoke sync before getting usage info
      --total           elide all entries insignificant to available space,
                          and produce a grand total
  -t, --type=TYPE       limit listing to file systems of type TYPE
  -T, --print-type      print file system type
  -x, --exclude-type=TYPE   limit listing to file systems not of type TYPE
  -v                    (ignored)
      --help            显示此帮助信息并退出
      --version         显示版本信息并退出
  • du: 评估文件系统的磁盘使用量

    用法:du [选项]... [文件]...
     或:du [选项]... --files0-from=F
    Summarize disk usage of the set of FILEs, recursively for directories.
    
      -a, --all             列出所有的文件与目录容量,因为默认仅统计目录下面的文件量
          --apparent-size   print apparent sizes, rather than disk usage; although
                              the apparent size is usually smaller, it may be
                              larger due to holes in ('sparse') files, internal
                              fragmentation, indirect blocks, and the like
      -H                    equivalent to --dereference-args (-D)
      -h, --human-readable  print sizes in human readable format (e.g., 1K 234M 2G)
          --inodes          list inode usage information instead of block usage
      -S, --separate-dirs   不包含子目录
          --si              like -h, but use powers of 1000 not 1024
      -s, --summarize       display only a total for each argument
    
    
posted @ 2023-09-11 11:20  AmorFati404  阅读(14)  评论(0)    收藏  举报