学习Linux旅途--Day Six--
Linux的磁盘管理
1、查看磁盘或者目录的容量
df:显示已挂载的磁盘信息,包括总容量、使用容量、剩余容量等等,默认单位KB
-i:显示inode使用情况
-h:以合适的单位显示(G、M、K)
-m:以MB为单位显示
-k:以KB为单位显示
du:查看某个文件或者目录的大小,如果不加任何选项和参数则表示列出当前目录,包括子目录的大小,单位默认是KB
-a:表示将全部文件都列出来,包括隐藏文件
-s:仅显示总计
-h:以合适的单位显示
-b:以字节为单位显示
-k:以KB为单位显示
-m:以MB为单位显示
2、磁盘的分区和格式化(有时候分区完后,分区不存在,需要使用partx -a来更新以下分区)
fdisk:查看磁盘的使用情况,也可以对磁盘分区
-l:列出磁盘的分区表信息
分区:fdisk 设备名
m:帮助
d:删除一个分区
l:列出已有的分区类型
n:增加一个新的分区
p:打印分区表信息
q:退出不保存
w:写入分区表并退出
t:更改分区的系统id号(分区类型)
有时候分完区后,在格式化时发现这个还没有分区,可以使用partprobe来刷新,也可以使用partx命令
格式化分区:
我们可以查看Centos下支持哪些文件系统,/etc/filesystems
有ext4,ext3,ext2,nodev proc(虚拟文件系统),nodev devpts,iso9669(光盘),vfat(就二十windows下的fat32),hfs,hfsplus
格式化分区命令:mke2fs、mkfs.ext2、mkfs.ext3、mkfs.ext4
mke2fs是一个通用的命令,它可以格式化成ext2、ext3、ext4等等
mke2fs -t [文件类型] [设备名称]
-b:指定分区是的block大小,4k、2k、1k,默认是4k
-i:指定inode的大小
-N:指定inode的数量
-c:在格式化之前先检测磁盘是否有问题
-L:预设该分区的标签 (e2lable命令可以查看或者修改分区的标签:e2lable [设备] [标签])
-j:指定ext3的格式,也可以-t指定
-t:指定文件系统的格式,可以是ext4、ext3等等
-m:指定给管理员保留区块的比例,预设为5%,一般格式化时默认bolck(5.00%)reserved for the super user //意思就是给超级用户预留了一部分空间,作为特殊用途
3、挂载/卸载磁盘
我们格式化磁盘后,需要挂载后才能使用,外部设备(U盘等)也需要挂载才能使用
mount:将设备或者文件系统挂载到指定的挂载点,才能访问到里面的数据
-a:加载文件"/etc/fstab"中描述的所有文件系统
-t:指定挂载的分区类型,默认不指定会默认识别
-o:指定挂载的分区有那些特性,就是下面介绍到的第四列的mount参数
-o loop:挂载镜像,或者光盘
--bind:可以挂载目录
/etc/fstab:这个文件里显示了系统启动时需要挂载的各个分区
第一列:分区的标识,这里可以写lable(标签)、分区的UUID。也可以写分区名(/dev/sdb)
第二列:挂载点
第三列:分区的格式,文件系统
第四列:mount的一些挂载参数,一般情况下直接写defaults即可
第五列:这些数字表示是否被 dump备份,1表示备份,0表示不备份
第六列:这些数字表示开机时是否自检磁盘,1和2都表示检测,0表示不检测,1比2的优先级高
也可以将挂载文件系统写到/etc/rc.d/rc.local里面,也可是实现开机自动挂载,和上面一样
第四列的mount的挂载参数是什么意思呢?这里我们可以man mount查看帮助文档,找到一行字符为"FILESYSTEM INDEPENDENT MOUNT OPTIONS"的这一行,有很多参数
async/sync:async表示磁盘和内存不同步,系统每隔一段时间会把内存数据写入到磁盘,而sync则会实时同步内存和磁盘的数据
auto/noauto:表示开机自动挂载/不自动挂载
default:表示按照大多数永久文件系统的默认值设置挂载定义,它包含了rw、suid、dev、exec、auto、nousr和sync。
ro:表示按只读权限挂载
rw:表示按可读可写权限挂载
exec/noexec:表示允许/不允许可执行文件执行,如果把根分区挂载为noexec,会导致无法使用系统,甚至连mount命令也无法使用
user/nouser:表示允许/不允许root以外的其他用户挂在分区
suid/nosuid:表示允许/不允许分区有suid属性,一般设置为nosuid
usrquota:表示启动用户的磁盘配额模式。磁盘配额会针对用户限定他们使用的磁盘额度
grquota:表示启动群组的磁盘配额模式。
umount:卸载已经挂载的设备
-a:卸载掉/etc/mtab中记录的所有文件系统
-l:强制卸载
有时候我们会遇到某个磁盘A它被挂载后的名字是/dev/sda,我把它拔了,换另一个端口,发现变成/dev/sdb了,这是为什么呢?
因为如果该磁盘已被挂载使用,那么就会为它分配一个UUID,所以有可能换了端口你使用了其它就UUID号,那么也会显示成其它的磁盘名称
blkid:显示块设备的属性,包括UUID、LABEL、文件系统类型
本文出自 “小旭” 博客,请务必保留此出处http://loopholes.blog.51cto.com/9445813/1625207
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。