《跟阿铭学Linux》第6章 Linux磁盘管理——课后习题与答案

1. 请查资料了解这些术语:/dev/hda, /dev/hdb, /dev/sda, /dev/sdb, 他们之间有什么区别?

1
2
/dev/hda /dev/hdb 是IDE接口硬盘的块文件。 /dev/hda 表示第一块IDE磁盘, /dev/hdb 表示第二块IDE磁盘。
/dev/sda /dev/sdb 是SCSI接口硬盘的块文件。 /dev/sda 表示第一块SCSI磁盘, /dev/sdb 表示第二块SCSI磁盘。


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

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


3. 请查资料,了解磁盘的这些概念: heads, sectors, cylinders.

1
2
3
4
磁头(heads): 磁头固定在可移动的机械臂上,用于读写数据。现代硬盘都是双面可读写,因此磁头数量等于盘片数的2倍。磁头数最大值为 255 (8 个二进制位)。用第几磁头可以表示数据在哪个磁面。
扇区(sectors): 从磁盘中心向外画直线,可以将磁道划分为若干个弧段。每个磁道上一个弧段被称之为一个扇区。扇区是硬盘的最小组成单元,通常是512字节。磁道上的扇区数最大为63(6个二进制位)。
柱面(cylinders): 所有磁片中半径相同的同心磁道构成“柱面"。柱面数最大为1023 (10个二进制位)。柱面是磁盘分区的最小单位。
(可以参考个人的《Linux运维中高级笔记》)


4. 请计算磁盘分区的时候,每一个柱面空间是多大? 阿铭的第二块磁盘是8589 MB (8589934592 bytes),总共有1044个柱面。


  • 柱面空间大小=磁头数*每磁道扇区数*扇区大小=255*63*512(bytes)=8225280 bytes

(建议直接参考个人的《Linux运维中高级笔记》,因为这里直接把磁头和扇区都认为是最大的了,或者可以使用8589MB/1044,也可以算出答案)




5. 查资料了解ide和scsi接口的磁盘有什么不一样,scsi 磁盘(sda, sdb)最多可以分多少个逻辑分区(这个了解即可)?


  • SCSI硬盘和普通IDE硬盘相比有很多优点:接口速度快,并且由于主要用于服务器,因此硬盘本身的性能也比较高,硬盘转速快,缓存容量大,CPU占用率低,扩展性远优于IDE硬盘,并且支持热插拔。

  • 关于最多可以分多少个逻辑分区的问题,了解即可。




6. 把磁盘格式化成ext4文件系统时,如果指定块大小并不是 1024 2048 4096 会发生什么?指定块大小最小是多少,最大又是多少?


  • 当格式化文件系统时,如果指定块大小不是1024、2048、4096这几个标准值,会出现下面几种情况:

    • (1)当指定块小于1024时,则提示错误“无效的块大小”,不能格式化。

    • (2)当指定块大于1024且小于2048时,则实际以1024的块大小进行格式化。

    • (3)当指定块大于2048且小于4096时,则实际以2048的块大小进行格式化。

    • (4)当指定块大于4096且小于或等于65536时,则提示块值太大,是否继续,选择y继续,则以不大于指定块的4K的整数倍值(从4K到32K)进行格式化。

    • (5)当指定块大于等于65536时,则提示块值太大,是否继续,选择y继续,则以65536字节进行格式化。

    • (6)当指定块大于65536时,则提示错误“无效的块大小”,不能格式化。




7. 如何查看当前系统里各个分区都是什么类型的文件系统?


  • mount 或者 df -T




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


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

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




9. Linux下df 和 du 两个命令主要用来做什么?


  • df 查看磁盘分区和文件系统信息

  • du 查看目录或文件所占用的磁盘空间大小




10. 在Linux系统下,用什么命令为一个新磁盘分区呢?又用什么命令格式化磁盘?


  • fdisk 为新磁盘分区,可以使用mkfs.ext2、mkfs.ext3、mkfs.ext4、mke2fs等命令格式化磁盘。




11. 如果不能使用mount 挂载磁盘时,我们需要使用什么命令获取相关错误信息?


  • dmesg




12. 当卸载某个磁盘或者分区时,报错: “umount: /newdir: device is busy.” 我们如何做?


  • 报这个错,可能是因为当前用户在/newdir目录下,可以先退出这个目录来,也可以使用命令 umount -l /newdir




13. 如何获取某个分区的UUID?


  • blkid 




14. 如何使用dd命令生成一个大小为500M的文件?


  • dd if=/dev/zero of=/bigfile bs=1024K count=500




15. 查看内存大小的命令是? 如何以M为单位显示?


  • free -m




16. 如何查看各文件系统的inode数使用情况?


  • df -i




17. 使用vmware虚拟机分配一块1G的虚拟磁盘,并使用fdisk 分区工具给新加的磁盘分3个主分区,分别200M,然后再分3个逻辑分区,分别100M.


  • fdisk /dev/sdb 回车后,先按n,按p,输入1,再输入1,再输入+200M;按n,按p,输入2,再回车,再输入+200M;按n,按p,输入3,再回车,再输入+200M;按n,按e,接着按两次回车;按n,接着回车,输入+100M;按n,接着回车,输入+100M;按n,接着回车,输入+100M;




18. 给磁盘分区的时候,最多可以分几个主分区,最多可以分几个扩展分区,扩展分区和逻辑分区的关系时什么?


  • 最多4个主分区,最多一个扩展分区,只有划分了扩展分区后,才可以在扩展分区内划分逻辑分区,也就是说逻辑分区是在扩展分区内的。




19. 我使用fdisk -l /dev/sdb 查看磁盘分区状况的时候,发现有这么几个分区: sdb1, sdb3, sdb5, sdb6, sdb7, 那么请推算一下,这个磁盘,共有几个主分区和几个逻辑分区?


  • 一个主分区,三个逻辑分区(sdb5,sdb6,sdb7)




20. 有什么方法可以查看某个分区格式化时指定的块大小为多少(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'



本文转自 xpleaf 51CTO博客,原文链接:http://blog.51cto.com/xpleaf/1892157,如需转载请自行联系原作者
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值