磁盘管理|df、du|分区 fdisk |格式化
3.磁盘管理
3.1命令df
·用于查看已挂载磁盘的总容量,使用容量,剩余容量等。
-i:查看inodes的使用情况
-h:使用合适的单位显示
-k:以KB为单位显示
-m:以MB为单位显示
3.1.2命令du
·用于查看某个目录或文件所占空间的大小
格式:du [-abckmsh] [文件或目录名]
-a:表示列出全部文件和目录的大小
-b:表示列出的值以B为单位输出
-k:表示以KB为单位输出。(与默认不加选项的输出值是一样的)
-m:表示以MB为单位输出。
-h:表示系统自动调节单位。
-c:表示最后加总
3.2磁盘的分区和格式化
3.2.1增加虚拟磁盘
在虚拟机中添加一块磁盘
3.2.2命令fdisk
fdisk [-l]:列出系统中所有的磁盘设备以及分区表
fdisk [-l] [设备名称]:列出该设备的分区表
分区操作:fdisk /dev/sdb
m:列出常用命令
p:打印当前磁盘的分区情况
n:建立一个新的分区
w:保存
q:退出
d:删除一个分区
ctrl+c 退出 取消全部分区
建立主分区
删除主分区
建立扩展分区
逻辑分区:在扩展分区下,可挂载可格式化
扩展分区:不可挂载不可格式化
一块磁盘一共可以分为四个分区,四个分区不可全为主分区。
3.3格式化磁盘分区
3.3.1mke2fs、mkfs.ext2、mkfs.ext3、mkfs.ext4和mkfs.xfs
mke2fs常用命令
·用于创建相应的(ext2)文件系统
mke2fs [选项] [设备]
-b:表示分区时设定每个数据区块占用的空间大小。
-i:表示设定inode的大小
-N:表示设定inode的数量
-c:表示在格式化前先检测一下磁盘是否有问题。(加-c运行速度会非常慢)
-L:表示预设该分区的表现(label)
-J:表示建立ext3格式的分区。(如果使用mkfs.ext3格式就不用加-j)
-t:用来指定文件系统的类型。
mke2fs不能吧分区格式化成xfs类型,只能使用mkfs.xfs
3.3.2命令e2label
·查看或修改分区的标签。只支持ext格式。
3.4挂载/卸载磁盘
3.4.1命令mount
mount [选项] [分区] [挂载点]
-t:指定要挂载的文件系统的类型
-r:只读方式挂载
-w:以可写的方式挂载文件系统
-a:挂载/etc/fstab文件中记录的设备
使用LABEL挂载分区
mount LABEL=分区 挂载点
3.4.2/etc/fstab配置文件
mount挂载参数常用选项
² async/sync:async表示与磁盘和内存不同步。系统每隔一段时间就把内存数据写入磁盘中,而sync则会实时同步内存和磁盘中的数据。
² auto/noauto:表示开机自动挂载/不自动挂载。
² default:表示按照大多数永久文件系统的默认值设置挂载定义。包含rw、suid、dev、exec、auto、nouser、async。(一般直接defaults)
² ro:表示按只读权限挂载。
² rw:表示按可读可写权限挂载。
² exec/noexec:表示允许/不允许可执行文件执行,不要把根分区挂载为noexec,否则将无法使用系统。
² user/nouser:表示允许/不允许root外的其他用户挂载分区。(为了安全,使用nouser)
² suid/nosuid:表示允许不允许分区有suid属性,一般设置nosuid。
² usrquota:表示启动用户的磁盘配额模式。
² grquota:表示启动群组的磁盘配额模式。
² --------------------------------------------------------------------------
3.4.3命令blkid
对查询设备上所采用文件系统类型进行查询
这样可以获得全部磁盘分区的UUID。若格式化时制定了LABEL,则该命令也会显示LABEL值,文件系统的类型也会显示。
挂载磁盘
blkid后也可以指定查询哪个分区
获得UUID:
-------------------------------------------------------------------------------------------------------------------------------------
获得UUID后如何使用UUID:
进入vi编辑UUID:
Esc退出 编辑。:wq退出
-------------------------------------------------------------------------------------------------------------------------------------
如果让某个分区在开机后自动挂载
1.在/etc/fstab中添加一行(如UUID=….defaults 0 0)
2.把挂载命令写到/etc/rc.d/rc.local文件中,系统启动后会执行这个文件中的命令。(放到最后即可)
【写入该文件的命令要使用绝对路径,例如mount应写成/usr/bin/mount】
更改完/etc/rc.d/rc.local后需要修改权限,因为CentOS 7系统,该文件默认没有执行权限
3.4.4命令umount
卸载磁盘
umount后可以跟挂载点,也可以跟分区名。但是不可以跟LABEL和UUID。
有时不能卸载,就会使用到umount –l的选项。(不能卸载是因为当前目录还在卸载的分区上)
#umount -l /newdir
#df –h | grep –v tmpfs
3.5建立一个swap文件增加虚拟内存
类似于Windows的虚拟内存。
·增加虚拟磁盘:建立swapfile→格式化为swap格式→启用该虚拟磁盘
建立swapfile:(用dd命令建立一个大小为1.1GB的文件)
用if指定源【增加swap分区文件大小】(一般写/dev/zero,他是unix系统能够特有的文件,可以源源不断的提供“0”)
【dd:转换和复制文件】
【of:指定目标文件】
【bs定义块的大小】
【count定义块的数量】
bs和count这两个参数决定了目标文件的大小,即 目标文件大小=bs*count
将他格式化为swap格式
mkswap用于在一个文件或设备上建立交换分区,建立后需要使用swapon命令开始使用这个交换区
mkswap [选项] [参数]
-c:建立交换区前,先检查是否有损坏的区块
-f:在SPARC电脑上建立交换区时,需要加上此参数
-v0:建立旧式交换区时,此为预设值
-v1:建立新式交换区
free :查看内存的使用情况
-m:表示以MB为单位显示
文件格式化后,就可以挂载使用了
对比一下swap分区,会发现多了1024MB的空间