挂载硬件设备
分区
fdisk命令:用于管理磁盘分区。格式:fdisk [磁盘名称]。它提供了集添加、删除、转换分区等功能于一身的“一站式分区服务”。这是一条交互式命令
常用参数:
参数 作用
m 查看全部可用的参数
n 添加新的分区
d 删除某个分区信息
l 列出所有可用的分区类型
t 改变某个分区的类型
p 查看分区表信息
w 保存并退出
q 不保存直接退出
格式化
mkfs命令:用于格式化操作。格式:mkfs.文件类型 磁盘设备文件
挂载与卸载
挂载操作就是把硬件设备与目录进行关联的动作
卸载操作就是取消硬件设备与目录关联的动作,卸载文件系统就意味不再使用硬件的设备资源
分区
fdisk命令:用于管理磁盘分区。格式:fdisk [磁盘名称]。它提供了集添加、删除、转换分区等功能于一身的“一站式分区服务”。这是一条交互式命令
常用参数:
参数 作用
m 查看全部可用的参数
n 添加新的分区
d 删除某个分区信息
l 列出所有可用的分区类型
t 改变某个分区的类型
p 查看分区表信息
w 保存并退出
q 不保存直接退出
格式化
mkfs命令:用于格式化操作。格式:mkfs.文件类型 磁盘设备文件
挂载与卸载
挂载操作就是把硬件设备与目录进行关联的动作
卸载操作就是取消硬件设备与目录关联的动作,卸载文件系统就意味不再使用硬件的设备资源
挂载 mount 设备 目录
-a:挂载所有在/etc/fstab中定义的文件系统
-t:指定文件系统的类型
卸载 umount 设备或者目录
用mount命令挂载,系统重启后就会失效。要在/etc/fstab文件追加挂载信息才能永久挂载。在/etc/fstab文件中,挂载信息格式:“设备文件 挂载目录 格式类型 权限选项 是否备份 是否自检”
挂载信息格式各字段含义
字段 意义
设备文件 一般为设备的路径+设备名称,也可以写唯一识别码(UUID,Universally Unique Identifier)
挂载目录 指定要挂载到的目录,需在挂载前创建好
格式类型 指定文件系统的格式,比如Ext3、Ext4、XFS、SWAP、iso9660(此为光盘设备)等
权限选项 若设置为defaults,则默认权限为:rw, suid, dev, exec, auto, nouser, async
是否备份 若为1则开机后使用dump进行磁盘备份,为0则不备份
是否自检 若为1则开机后自动进行磁盘自检,为0则不自检
df命令:用于查看挂载状态和硬盘使用量信息。常用参数为-h。格式:df -h。
du命令:用于查看文件数据占用量。格式 :du [选项] [文件]。
du -sh /* #查看在Linux系统根目录下所有一级目录分别占用的空间大小
du -sh /newFS #查看/newFS下的内容占了多少容量
添加交换分区
SWAP(交换)分区是一种通过在硬盘中预先划分一定的空间,然后将把内存中暂时不常用的数据临时存放到硬盘中,以便腾出物理内存空间让更活跃的程序服务来使用的技术,其设计目的是为了解决真实物理内存不足的问题。但由于交换分区毕竟是通过硬盘设备读写数据的,速度肯定要比物理内存慢,所以只有当真实的物理内存耗尽后才会调用交换分区的资源
交换分区的创建过程与前文讲到的挂载并使用存储设备的过程非常相似。在对/dev/sdb存储设备进行分区操作前,有必要先说一下交换分区的划分建议:在生产环境中,交换分区的大小一般为真实物理内存的1.5~2倍。
分区创建逻辑分区
fdisk /dev/sdb
Command (m for help): n #添加分区
Select (default p): e #先创建扩展分区,才能创建逻辑分区
Partition number (2-4, default 2): #直接回车
First sector (4196352-20971519, default 4196352): #回车
Last sector, +sectors or +size{K,M,G} (4196352-20971519, default 20971519): +6G #为扩展分区分配6G空间
Command (m for help): n #添加分区
Select (default p): l #创建逻辑分区
First sector (4198400-16779263, default 4198400): #回车
Last sector, +sectors or +size{K,M,G} (4198400-16779263, default 16779263): +5G #为逻辑分区分配5G空间,空间最多不能超过扩展分区的大小
Command (m for help): w
SWAP(交换)分区是一种通过在硬盘中预先划分一定的空间,然后将把内存中暂时不常用的数据临时存放到硬盘中,以便腾出物理内存空间让更活跃的程序服务来使用的技术,其设计目的是为了解决真实物理内存不足的问题。但由于交换分区毕竟是通过硬盘设备读写数据的,速度肯定要比物理内存慢,所以只有当真实的物理内存耗尽后才会调用交换分区的资源
交换分区的创建过程与前文讲到的挂载并使用存储设备的过程非常相似。在对/dev/sdb存储设备进行分区操作前,有必要先说一下交换分区的划分建议:在生产环境中,交换分区的大小一般为真实物理内存的1.5~2倍。
分区创建逻辑分区
fdisk /dev/sdb
Command (m for help): n #添加分区
Select (default p): e #先创建扩展分区,才能创建逻辑分区
Partition number (2-4, default 2): #直接回车
First sector (4196352-20971519, default 4196352): #回车
Last sector, +sectors or +size{K,M,G} (4196352-20971519, default 20971519): +6G #为扩展分区分配6G空间
Command (m for help): n #添加分区
Select (default p): l #创建逻辑分区
First sector (4198400-16779263, default 4198400): #回车
Last sector, +sectors or +size{K,M,G} (4198400-16779263, default 16779263): +5G #为逻辑分区分配5G空间,空间最多不能超过扩展分区的大小
Command (m for help): w
格式化
mkswap命令:swap分区的专用格式化命令。格式:mkswap [设备文件]。
mkswap命令:swap分区的专用格式化命令。格式:mkswap [设备文件]。
挂载
swapon命令:因为swap分区没有挂载点,所以需要用挂载swap分区的专用命令来对swap分区进行挂在操作。格式:swapon [设备文件]。
swapon命令:因为swap分区没有挂载点,所以需要用挂载swap分区的专用命令来对swap分区进行挂在操作。格式:swapon [设备文件]。
swapoff命令:卸载swap分区设备。格式:swapoff [设备文件]。
磁盘容量配额
Linux系统的设计初衷就是让许多人一起使用并执行各自的任务,从而成为多用户、多任务的操作系统。但是,硬件资源是固定且有限的,如果某些用户不断地在Linux系统上创建文件或者存放电影,硬盘空间总有一天会被占满。针对这种情况,root管理员就需要使用磁盘容量配额服务来限制某位用户或某个用户组针对特定文件夹可以使用的最大硬盘空间或最大文件个数,一旦达到这个最大值就不再允许继续使用。可以使用quota命令进行磁盘容量配额管理,从而限制用户的硬盘可用容量或所能创建的最大文件个数。quota命令还有软限制和硬限制的功能。
软限制:当达到软限制时会提示用户,但仍允许用户在限定的额度内继续使用。
硬限制:当达到硬限制时会提示用户,且强制终止用户的操作。
Linux系统的设计初衷就是让许多人一起使用并执行各自的任务,从而成为多用户、多任务的操作系统。但是,硬件资源是固定且有限的,如果某些用户不断地在Linux系统上创建文件或者存放电影,硬盘空间总有一天会被占满。针对这种情况,root管理员就需要使用磁盘容量配额服务来限制某位用户或某个用户组针对特定文件夹可以使用的最大硬盘空间或最大文件个数,一旦达到这个最大值就不再允许继续使用。可以使用quota命令进行磁盘容量配额管理,从而限制用户的硬盘可用容量或所能创建的最大文件个数。quota命令还有软限制和硬限制的功能。
软限制:当达到软限制时会提示用户,但仍允许用户在限定的额度内继续使用。
硬限制:当达到硬限制时会提示用户,且强制终止用户的操作。
RHEL 7系统中已经安装了quota磁盘容量配额服务程序包,但存储设备却默认没有开启对quota的支持,此时需要手动编辑配置文件,让RHEL 7系统中的/boot目录能够支持quota磁盘配额技术。
编辑/etc/fstab文件,添加参数让存储设备支持磁盘配额技术。早期文件系统添加的参数为usrquota参数,而xfs文件系统使用的是uquota或usrquota
vim /etc/fstab
...
UUID=9d5e3b22-75ac-4f47-9e2b-dd33a06b0f81 /boot xfs defaults,uquota 1 2 #添加uquota参数(XFS文件系统,usrquota也行)
/dev/sdb1 /newFS ext4 defaults,usrquota 0 0 #添加usrquota参数(早期文件系统专用参数)
vim /etc/fstab
...
UUID=9d5e3b22-75ac-4f47-9e2b-dd33a06b0f81 /boot xfs defaults,uquota 1 2 #添加uquota参数(XFS文件系统,usrquota也行)
/dev/sdb1 /newFS ext4 defaults,usrquota 0 0 #添加usrquota参数(早期文件系统专用参数)
重启系统,使用mount命令查看目录是否已经支持quota磁盘配额技术
reboot
mount | grep /boot #从mount命令的输出结果中,查找出含有/boot字样的行
mount | grep /newFS #如果输出结果有usrquota的字眼,说明该目录已经支持quota磁盘配额技术
xfs_quota命令是一个专门针对XFS文件系统来管理quota磁盘容量配额服务而设计的命令,格式为“xfs_quota [参数] 配额 文件系统”。
-c参数用于以参数的形式设置要执行的命令;
-x参数是专家模式,
让运维人员能够对quota服务进行更多复杂的配置。
edquota命令用于编辑用户的quota配额限制,格式为“edquota [参数] [用户] ”。在为用户设置了quota磁盘容量配额限制后,可以使用edquota命令按需修改限额的数值。
-u参数表示要针对哪个用户进行设置;
-g参数表示要针对哪个用户组进行设置。
-v 显示指令执行过程
reboot
mount | grep /boot #从mount命令的输出结果中,查找出含有/boot字样的行
mount | grep /newFS #如果输出结果有usrquota的字眼,说明该目录已经支持quota磁盘配额技术
xfs_quota命令是一个专门针对XFS文件系统来管理quota磁盘容量配额服务而设计的命令,格式为“xfs_quota [参数] 配额 文件系统”。
-c参数用于以参数的形式设置要执行的命令;
-x参数是专家模式,
让运维人员能够对quota服务进行更多复杂的配置。
edquota命令用于编辑用户的quota配额限制,格式为“edquota [参数] [用户] ”。在为用户设置了quota磁盘容量配额限制后,可以使用edquota命令按需修改限额的数值。
-u参数表示要针对哪个用户进行设置;
-g参数表示要针对哪个用户组进行设置。
-v 显示指令执行过程
软硬方式链接
在Linux系统中存在硬链接和软连接两种文件。
硬链接(hard link):可以将它理解为一个“指向原始文件inode的指针”,系统不为它分配独立的inode和文件。所以,硬链接文件与原始文件其实是同一个文件,只是名字不同。我们每添加一个硬链接,该文件的inode连接数就会增加1;而且只有当该文件的inode连接数为0时,才算彻底将它删除。换言之,由于硬链接实际上是指向原文件inode的指针,因此即便原始文件被删除,依然可以通过硬链接文件来访问。需要注意的是,由于技术的局限性,我们不能跨分区对目录文件进行链接。
软链接(也称为符号链接[symbolic link]):仅仅包含所链接文件的路径名,因此能链接目录文件,也可以跨越文件系统进行链接。但是,当原始文件被删除后,链接文件也将失效,从这一点上来说与Windows系统中的“快捷方式”具有一样的性质。
在Linux系统中存在硬链接和软连接两种文件。
硬链接(hard link):可以将它理解为一个“指向原始文件inode的指针”,系统不为它分配独立的inode和文件。所以,硬链接文件与原始文件其实是同一个文件,只是名字不同。我们每添加一个硬链接,该文件的inode连接数就会增加1;而且只有当该文件的inode连接数为0时,才算彻底将它删除。换言之,由于硬链接实际上是指向原文件inode的指针,因此即便原始文件被删除,依然可以通过硬链接文件来访问。需要注意的是,由于技术的局限性,我们不能跨分区对目录文件进行链接。
软链接(也称为符号链接[symbolic link]):仅仅包含所链接文件的路径名,因此能链接目录文件,也可以跨越文件系统进行链接。但是,当原始文件被删除后,链接文件也将失效,从这一点上来说与Windows系统中的“快捷方式”具有一样的性质。
ln命令
ln命令用于创建链接文件,格式为“ln [选项] 目标”,其可用的参数以及作用如表6-6所示。在使用ln命令时,是否添加-s参数,将创建出性质不同的两种“快捷方式”
ln命令中可用的参数以及作用
参数 作用
-s 创建“符号链接”(如果不带-s参数,则默认创建硬链接)
-f 强制创建文件或目录的链接
-i 覆盖前先询问
-v 显示创建链接的过程
-s 创建“符号链接”(如果不带-s参数,则默认创建硬链接)
-f 强制创建文件或目录的链接
-i 覆盖前先询问
-v 显示创建链接的过程
实例
echo "cao ni ma" > test.txt #创建原始测试文件test.txt
ln -s test.txt soft_link.txt #创建文件test.txt的软链接文件soft_link.txt
ln test.txt hard_link.txt #创建文件test.txt的硬链接文件hard_link.txt
rm -rf test.txt #删除源文件test.txt
cat soft_link.txt #软连接文件打不开
cat hard_link.txt #硬链接文件能正常打开
ln -s test.txt soft_link.txt #创建文件test.txt的软链接文件soft_link.txt
ln test.txt hard_link.txt #创建文件test.txt的硬链接文件hard_link.txt
rm -rf test.txt #删除源文件test.txt
cat soft_link.txt #软连接文件打不开
cat hard_link.txt #硬链接文件能正常打开