linux磁盘的2048单位,Linux磁盘管理

1.查看磁盘或者目录的容量

df 【-ihkm】:查看以挂载磁盘(分区)的总容量、使用容量、剩余容量等,默认以 KB 为单位显示

选项:

-i :查看 inodes 的使用状况

-h :表示使用合适的单位显示,系统自动调节单位

-k,-m:分别表示以K、M 为但闻显示

du【-abckmsh】【文件或目录名】:查看某个目录或者文件所占空间的大小

选项:

-a:把全部文件和目录的大小都列出来,如果不加任何选项,则只会列出目录(包含子目录)的大小

-b、-k、-m、-h:分别表示以byte、kb、mb、合适的单位显示

-c:在最后加总(使用状况)

-s:只列出总和

2.磁盘的分区和格式化

1.增加虚拟硬盘---设置里面扩展

2.fdisk 【-l】:选项 -l 加上就是显示系统中所有磁盘设备以及分区表,不加就会进入另外一个模式(可以对磁盘进行分区操作)

另一个模式下:

①p:打印当前磁盘的分区状况

②n:新建一个新的分区

a.选择e: extended(扩展分区) 或者 p:primary(主分区)

选择扩展分区时,把全部剩余磁盘空间全部划分给扩展分区,不然就会造成空间浪费。因为创建完扩展分区后,再划分新的分区时是在已经划分的扩展分区里来分的

选择主分区时,柱面last cylinder,一般写成+1000M,方便且不会出错。+n M 就是为这个分区划分多少MB的空间

b.当之前选择过扩展分区时,再创建的分区时,会选择 logical(逻辑分区:是从扩展分区里面分) 或者 primary分区。1-4 位主分区和扩展分区,5以上为逻辑分区

。在Linux系统中最多只能创建4个主分区,一个扩展分区

③w:保存

④q:退出

⑤d:删除一个分区

3.格式化磁盘分区

磁盘分区分好过后,暂时不能用,

必须对每个分区进行格式化,所谓格式化,就是安装文件系统。Windows下的文件系统有Fat32和 NTFS,centOS 为ext

mke2fs 、mkfs.ext4【选项】【分区】:

选项:①-b:设定每个数据区块占用的空间大小。每个数据块支持 1024,2048,4096 bytes。磁盘在被格式化的时候回预先规定好每一个块的大小,然后再把所有的空间分割成一个一个的小块。存数据的时候也是一个块一个块的写入

②-i:设定inode的大小

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

④-c:表示在格式化前检测一下磁盘是否有问题。加上这个选项运行速度会非常慢

-L:预设该分区的标签

⑥-j:表示建立ext3 格式的分区

-t:用来指定文件系统的类型,ext2、ext3、ext4

mkfs.ext4 /a/b = mke2fs -t ext4

e2label:用于查看或修改分区的标签

可重新格式化

4.挂载/卸载磁盘

格式化后的磁盘其实是一个块设备文件,类型为b。挂载某个分区前需要先建立一个挂载点,这个挂载点时以目录的形式出现的。一旦把某一个分区挂载到了这个挂载点(目录)下,要再往这个目录写数据时,就都会写到该分区中。所以,在挂载该分区前,挂载点(目录)下必须是个空目录。如果该目录不是空目录,但一旦挂载上了,该目录下以前的东西就看不见了,除非卸载该分区

mount:查看当前系统已经挂载的所有分区、分区文件系统类型、挂载点及一些选项。

mount 【分区】【目录a/】:把分区挂载到a目录下

mount LABEL=TEST 目录:通过LABEL的方式挂载分区

mount的

选项:

①-a:会把/etc/fstab中出现的所有磁盘分区挂载上,可以通过修改/etc/fstab配置文件,可以在结尾添加类似如 LABLE=TEST   /newdir    ext4    defaults    0  0

②-t:用来指定挂载的分区类型,默认不指定会自动识别

③-o:用来指定挂载分区有哪些特征,为下面第四列下的参数

可以重新挂载,先卸载再挂载

/etc/fatab 配置文件

5843826.htm

第一列:分区的标识,可以写分区的LABLE、分区的

UUID、分区名 /dev/sda1

第二列是挂载点

第三列是分区的格式

第四列是mount的一些挂载参数,一般情况下,直接写defaults即可

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

②auto/noauto:表示开机自动挂载/不挂载

③defualt:表示按照大多数永久文件系统的默认值设置挂载定义,包括了rw、suid、dev、exec、auto、nouser、async

④ro:按只读权限挂载

⑤rw:表示按可读可写权限挂载

⑥exec/noexec:表示允许/不允许可执行文件执行,但千万不要把根分区挂载为noexec,否则将无法使用系统,甚至连mount命令都无法使用,这是只有重新做系统

⑦user/nouser:表示允许/不允许分区root以外的其他用户挂载分区,为了安全用nouser

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

⑨usrquota:表示启动用户的磁盘配额模式。磁盘配额会针对用户限定他们使用的磁盘额度

10 grquota:表示启动群组的磁盘配额模式

第五列的数字表示是否被dump备份。1表示备份,0表示不备份

第六列的数字表示开机时是否自检磁盘,1和2 都表示检测,0表示不检测。在RedHat/CentOS中,/分区这一列必须设为1,而且整个fstab中只允许出现一个1.自检时,1比2优先级高,所以先检测1,然后检测2.如果有多个分区需要开机检测,就都设置成2,1检测完后会同时检测2

挂载是为了往一个目录写数据时可以写进对应的分区中

blkid:获取各个分区的UUID.其后可以跟指定的分区,表示查询指定分区的的UUID.

挂载磁盘是通过/dev/hdb1这样的分区名字来挂载的,如果把磁盘插错插槽,且该分区先前已加入到/etc/fstab 中,系统启动后则会挂错分区,

如何避免?

mount UUID = “......”  /目录

UUID支持写入到/etc/fstabl中

如何让某个分区在开机后自动挂载?

①在/etc/fstabl 中添加上面一行

②把挂载命令写到/etc/rc.d/rc/local 文件中去,系统启动后会执行这个文件命令,可以把开机启动的命令全写入到这个文件中

建议:挂载磁盘分区时,尽量使用UUID 或者 LABLE 这两种方法

umount:其后可以跟挂载点,也可以跟分区名,但是不可以跟 LABLE 和 UUID。当卸载的时候,提示device is busy 时,

可以使用 -l 选项

5.建立一个swap文件增加虚拟内存

当遇到虚拟内存不够用的情况,就必须增加一个虚拟磁盘,因为不可能重新给磁盘分区

增加虚拟磁盘的基本思路:建立swapfile -- 格式化为swap格式 --- 启用该虚拟磁盘

①建立一个swapfile :

dd if=/dev/zer0 of=/tmp/newdisk bs=4k count=102400if 指定源(一般写成/dev/zero,它是Unix系统一个特有的文件,可以源源不断的提供0);of指定目标文件,bs 定义块的大小,count定义块的数量。bs 和 count的大小决定的目标文件的大小,即大小文 bs * count

②格式化为 swap 格式:

mkswap  -f 目标文件/tmp/newdisk

③挂载使用:

swapon 目标文件

free -m :查看内存的使用情况,-m表示以MB 为单位

问题

1. 为什么 du -b /etc/passwd  和 du -k  /etc/passwd  所得到的结果不一致呢?按道理讲1024b 等于 1k 阿铭的 /etc/passwd 为 1181b 而 使用k为单位表示它竟然是 4k?

因为默认格式化磁盘的块大小是4096字节即4K,即使是一个很小的文件也会分得一个块大小为4k。du -b则会以文件大小的b单位来统计,所以结果不一致。

2. /dev/zero 和 /dev/null 在linux系统中是什么文件,有什么作用?

/dev/zero 是一个造零器,它可以源源不断的提供0,它可以用于向设备或文件写入字符串0,可以用它来创建一个指定长度用于初始化的空文件,比如临时交换文件等。

/dev/null  它是空设备,也称为位桶(bit bucket),任何写入它的输出都会被抛弃。常用来禁止标准输出和标准错误的输出。如果不想让消息以标准输出显示或写入文件,那么可以将消息

3.有什么方法可以查看某个分区格式化时指定的块大小为多少(1024,2048,4096)?

有两种方法:

第一个是个笨方法,touch 1; echo 1 > 1; du -sh 1  看看1的大小事几k,是1k块大小就是1024,2k块大小就是2048,4k块大小就是4096

第二个方法是,tune2fs -l /dev/sda1 |grep 'Block size'

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值