存储结构与磁盘划分

发布于2020-08-25   716 次阅读


本文最后更新于2022年6月1日,已超过 1 年没更新!内容可能已失效,请自行测试。

一切从“/”开始

在Linux系统中,目录、字符设备、块设备、套接字、打印机等都被抽象成了文件.Linux系统中的一切文件都是从“根(/)”目录开始的

绝对路径指的是从根目录(/)开始写起的文件或目录名称

相对路径则指的是相对于当前路径的写法

物理设备的命名规则

硬件设备文件名称
IDE设备/dev/hd[a-d]
SCSI/SATA/U盘/dev/sd[a-p]
软驱/dev/fd[0-1]
打印机/dev/lp[0-15]
光驱/dev/cdrom
鼠标/dev/mouse
磁带机/dev/st0或/dev/ht0
常见的硬件设备及其文件名称

扩展分区,严格地讲它不是一个实际意义的分区,它仅仅是一个指向下一个分区的指针,这种指针结构将形成一个单向链表

文件系统与数据资料

  • Ext3:是一款日志文件系统,能够在系统异常宕机时避免文件系统资料丢失
  • Ext4:Ext3的改进版本,作为 RHEL 6 系统中的默认文件管理系统
  • XFS:是一种高性能的日志文件系统,而且是 RHEL 7中默认的文件管理系统

挂载硬件设备

mount命令

mount 命令用于挂载文件系统,格式为“mount 文件系统 挂载目录”

umount命令

umount命令用于撤销已经挂载的设备文件,格式为“umount [挂载点/设备文件]”

添加硬件设备

虚拟机系统关机, 虚拟机管理主界面单击 “编辑虚拟机设置”选项

![}(https://cdn.yeyufan.cn/20200825104513.png)

添加的硬件类型为“硬盘”,类型为SCSI

一路下一步即可创建一块虚拟硬盘

fdisk命令

参数作用
m查看全部可用的参数
n添加新的分区
d删除某个分区信息
l列出所有可用的分区类型
t改变某个分区的类型
p查看分区信息
w保存并退出
q不保存直接退出
fdisk命令中的参数以及作用

du命令

可以使用du -sh /*命令来查看在 Linux 系统根目录下所有一级目录分别占用的空间大小

添加交换分区

SWAP(交换)分区是一种通过在硬盘中预先划分一定的空间,然后将把内存中暂时不常用的数据临时存放到硬盘中,以便腾出物理内存空间让更活跃的程序服务来使用的技术

新建一个分区sdb2
使用 SWAP 分区专用的格式化命令 mkswap,对新建的主分区进行格式化操作
mkswap /dev/sdb2 
使用swapon命令把准备好的SWAP分区设备正式挂载到系统中
swapon /dev/sdb2

磁盘容量配额

可以使用quota命令进行磁盘容量配额管理,从而限制用户的硬盘可用容量或所能创建的最大文件个数

xfs_quota命令

xfs_quota命令是一个专门针对XFS文件系统来管理quota磁盘容量配额服务而设计的命令,格式为“quota [参数] 配额 文件系统”

硬盘使用量的软限制和硬限制分别为3MB和6MB
创建文件数量的软限制和硬限制分别为3个和6个
xfs_quota -x -c 'limit bsoft=3m bhard=6m isoft=3 ihard=6  tom /boot
xfs_quota -x -c report /boot

edquota命令

edquota命令用于编辑用户的 quota 配额限制,格式为“edquota [参数] [用户] ”

edquota -u tom 

软硬方式链接

硬链接(hard link):可以将它理解为一个“指向原始文件 inode 的指针” ,系统不为它分配独立的 inode 和文件。所以,硬链接文件与原始文件其实是同一个文件,只是名字不同.我们每添加一个硬链接,该文件的 inode 连接数就会增加 1;而且只有当该文件的 inode 连接数为 0 时,才算彻底将它删除.换言之,由于硬链接实际上是指向原文件 inode 的指针,因此即便原始文件被删除,依然可以通过硬链接文件来访问.需要注意的是,由于技术的局限性,我们不能跨分区对目录文件进行链接.

软链接(也称为符号链接[symbolic link]):仅仅包含所链接文件的路径名.因此能链接目录文件.也可以跨越文件系统进行链接/但是.当原始文件被删除后.链接文件也将失效.从这一点上来说与 Windows 系统中的“快捷方式”具有一样的性质.

ln命令

ln命令用于创建链接文件,格式为“ln [选项] 目标”

echo "Welcome to linuxprobe.com" > readme.txt 
ln -s readme.txt readit.txt
cat readme.txt  
cat readit.txt  
ls -l readme.txt 
rm -f readme.txt  
cat readit.txt 
  • /home 目录与/root目录内存放的文件有何相同点以及不同点?
    • 这两个目录都是用来存放用户的家目录数据的,但是/root 目录存放的是 root 管理员的家目录数据
  • 假如一个设备的文件名称为/dev/sdb,可以确认它是主板第二个插槽上的设备吗?
    • 不一定,因为设备的文件名称是由系统的识别顺序来决定的
  • 如果硬盘中需要 5 个分区,至少需要几个逻辑分区?
    • 可以选用创建 3 个主分区+1 个扩展分区的方法,然后把扩展分区再分成 2 个逻辑分区,即有了 5 个分区
  • /dev/sda5 是主分区还是逻辑分区?
    • 逻辑分区
  • 哪个服务决定了设备在/dev 目录中的名称?
    • udev 设备管理器服务
  • 用一句话来描述挂载操作
    • 当用户需要使用硬盘设备或分区中的数据时,需要先将其与一个已存在的目录文件进行关联,而这个关联动作就是“挂载
  • 在配置 quota 磁盘容量配额服务时,软限制数值必须小于硬限制数值么?
    • 不一定,软限制数值可以小于等于硬限制数值
  • 若原始文件被改名,那么之前创建的硬链接还能访问到这个原始文件么?
    • 可以

=

一沙一世界,一花一天堂。君掌盛无边,刹那成永恒。