本文共 3095 字,大约阅读时间需要 10 分钟。
1 2 | /dev/hda , /dev/hdb 是IDE接口硬盘的块文件。 /dev/hda 表示第一块IDE磁盘, /dev/hdb 表示第二块IDE磁盘。 /dev/sda , /dev/sdb 是SCSI接口硬盘的块文件。 /dev/sda 表示第一块SCSI磁盘, /dev/sdb 表示第二块SCSI磁盘。 |
1 2 | 因为默认格式化磁盘的块大小是4096字节即4K,即使是一个很小的文件也会分得一个块大小为4k。 du -b则会以文件大小的b单位来统计,所以结果不一致。 |
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'