linux磁盘管理

摘自:Linux磁盘管理

一、查看命令

1、df

  查看已挂载磁盘的总容量使用容量剩余容量等,可以不加任何参数,默认是按k为单位显示的

常用参数有 

-i       使用inodes 显示结果 

-h     使用合适的单位显示,例如G 

-k -m  分别为使用KM为单位显示 

2、du

  用来查看某个目录所占空间大小 

语法:du [-abckmsh] [文件或者目录名]

常用的参数有: 

-a    全部文件与目录大小都列出来如果不加任何选项和参数只列出目录(包含子目录)大小 

-b    列出的值以bytes为单位输出,默认是以Kbytes 

-c    最后加总 

-k    KB为单位输出 

-m    MB为单位输出 

-s    只列出总和 

-h    系统自动调节单位,例如文件太小可能就几K,那么就以K为单位显示,如果大到几G,则就以G为单位显示 

3、fdisk

   linux下的硬盘分区工具  

语法: fdisk [-l ] [设备名称]  

-l :后边不跟设备名会直接列出系统中所有的磁盘设备以及分区表,加上设备名会列出该设备的分区表

4、blkid

  这个命令是用来显示磁盘分区uuid的。

  uuid其实就是一大串字符,在linux系统中每一个分区都会有唯一的一个uuid。 

二、磁盘管理

1、磁盘分区 

fdisk如果不加-l 则进入另一个模式,在该模式下,可以对磁盘进行分区操作

P:打印当前磁盘的分区情况 

n:重新建立一个新的分区 

w:保存然后退出(也就是使之前的配置生效) 

q:退出不保存

d:删除一个分区

(1)需要说明的是,如果想更改自己的输入命令,使用delete键,而不要用backspace。

(2)在linux中最多可以创建4个主分区,一旦创建4个主分区后就不能增加任何主分区了另外最多也只能创建一个扩展分区扩展分区下的逻辑分区最多可以创建多少呢?IDE的硬盘(类似于hda, hdb, hdc 等)最多可以创建10个(hdb5-hdb15),这是笔者试验出来的结果有的资料说linux下的逻辑分区是没有限制的,也有的说最大可以到64,至于对不对,需要你去近一步考察了,我们没有必要多么深入的研究这个问题,也没有什么意义。(这段话为引用) 

2、磁盘格式化

mkfs.ext2 / mkfs.ext3 /mke2fs 格式化linux硬盘分区 

常用的选项有: 

-b:分区时设定每个数据区块占用空间大小,目前支持1024, 2048 以及4096 bytes每个块 

-i:设定inode大小 

-N:设定inode数量,有时使用默认的inode数不够用,所以要自定设定inode数量 

-c:在格式化前先检测一下磁盘是否有问题,加上这个选项后会非常慢 

-L:预设该分区的标签label 

-j:建立ext3格式的分区,如果使用mkfs.ext3 就不用加这个选项

3、磁盘检查 

fsck 检查硬盘有没有坏道 

语法: fsck [-Aar] [分区] 

-A :加该参数时,后不需要跟分区名作为参数它会自动检查/etc/fstab 文件下的所有分区(开机过程中就会执行一次该操作); 

-a :自动修复检查到有问题的分区; 

-r :当检查到有坏道的分区时会让用户决定是否修复

4、挂载/卸载磁盘

  以上的操作与windos区别不大,这一点倒是差别很大的。linux下的磁盘是一个文件,必须要先挂载才能使用。

mount 挂载磁盘

umount 卸载磁盘

三、/etc/fstab文件

用途:系统启动时,根据这个文件挂载各个分区

第一列就是分区的label

第二列是挂载点;

第三列是分区的格式;

第四列则是mount的一些挂载参数,等下会详细介绍一下有哪些参数,一般情况下,直接写defaults即可;

第五列的数字表示是否被dump备份,是的话这里就是1,否则就是0

第六列是开机时是否自检磁盘,就是刚才讲过的那个fsck检测。12都表示检测,0表示不检测,在Redhat中,这个12还有个说法,/ 分区必须设为1,而且整个fstab中只允许出现一个1,这里有一个优先级的说法。12优先级高,所以先检测1,然后再检测2,如果有多个分区需要开机检测那么都设置成2吧,1检测完了后会同时去检测2。

下面该说说第四列中常用到的参数: 

async/sync async表示和磁盘和内存不同步,系统每隔一段时间把内存数据写入磁盘中,而sync则会时时同步内存和磁盘中数据;

auto/noauto :开机自动挂载/不自动挂载; 

default:按照大多数永久文件系统的缺省值设置挂载定义,它包含了rw, suid, dev, exec, auto, nouser,async  

ro:按只读权限挂载 

rw:按可读可写权限挂载 

exec/noexec :允许/不允许可执行文件执行,但千万不要把根分区挂载为noexec,那就无法使用系统了,连mount命令都无法使用了,这时只有重新做系统了; 

user/nouser :允许/不允许root外的其他用户挂载分区,为了安全考虑,请用nouser

suid/nosuid :允许/不允许分区有suid属性,一般设置nosuid  

usrquota :启动使用者磁盘配额模式,磁盘配额相关内容在后续章节会做介绍; 

grquota :启动群组磁盘配额模式;

  

原文地址:https://www.cnblogs.com/amanlikethis/p/3594659.html