磁盘分区、格式化及挂载
磁盘分区基础
扇区(sector)是最小的存储单位,每个扇区为512bytes
簇:windows格式化时,设定的最小存储单元的大小
n 个盘面的相同磁道 (位置相同) —> 柱面(Cylinder),共同组成一个柱面,最大为1023(用10个二进制位存储)
存储容量 = 磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数
各种接口的磁盘在linux中的文件名分别为:
/dev/sd[a-p][1-15]:为SCSI,SATA,USB,FLASH接口文件名
磁盘分区
1.所谓磁盘分区指的是告诉操作系统“我这块磁盘在此分区可以访问的区域是从A扇区(柱面)到B扇区(柱面)之间的区域”
2.硬盘各个分区范围的记录在硬盘的第一扇区的分区表中
3.分区表只有64bytes,每条分区记录占16个字节,所以一个硬盘最多只能分为四个分区?
4.这四条记录我们称为主(primary)分区或扩展分区,扩展分区可再分出逻辑分区,能被格式化的仅有主分区与逻辑分区(扩展分区中存放指向下一个分区位置的指针,不能被格式化)
5.Linux系统中,SATA硬盘可有11个逻辑分区(5号-15号)
root@ubuntu ~# fdisk [-l] 设备名称
-l:
输出后面的设备中所有的 分区 内容。若仅有 fdisk -l 命令时,则系统将会把整个系统内能够搜寻到的设备的分区均列出来。只有磁盘存在尚未分区的扇区才能进行分区
列出系统中所有磁盘,并查阅磁盘的分区信息
root@ubuntu ~# fdisk -l
常用分区命令
m:显示帮助 d:删除分区 n:添加新分区;p表示主分区,e表示扩展分区 p:打印分区表 t:修改分区类型 w:将分区表写入磁盘并退出 q:退出而不保存更改
对sdb磁盘分区
root@ubuntu ~# fdisk /dev/sdb
partprobe命令重新读取分区表
root@ubuntu ~# partprobe fdisk -l /dev/sdb
扩展分区仅指定该分区的范围,不占实际分区空间
sdb5与sdb6为逻辑分区
磁盘格式化
mkfs [-t 文件系统格式] 设备文件名
-t :可以接文件系统格式,例如 ext3, ext2, vfat 等(系统有支持才会生效)
root@ubuntu ~# mkfs -t ext3 /dev/sdb1 root@ubuntu ~# mkfs -t ntfs /dev/sdb2 root@ubuntu ~# mkfs -t ext4 /dev/sdb3 root@ubuntu ~# mkfs -t ext4 /dev/sdb5 root@ubuntu ~# mkfs -t ext4 /dev/sdb6
磁盘挂载
挂载:将分区与目录进行关联
mount [-a] 设备文件名 挂载点
mount无参数时,列出系统所有设备的挂载信息;
-a :依照配置文件 /etc/fstab 的设置将未挂载的磁盘都挂载上来
分区挂载注意事项
挂载点即目录; 单个分区不应该被重复挂载在不同的目录; 同一目录不应该挂载多个分区; 作为挂载点的目录应该都是空目录; (如果要用来挂载的目录里面并不是空的,那么挂载了分区之后,原目录下的东西就会暂时消失)
例:
root@ubuntu ~# mount |grep sda /dev/sda1 on / type ext4 (rw,relatime,errors=remount-ro)
//扩展分区不能挂载 root@ubuntu: /mnt# mkdir sdb1 sdb2 sdb3 sdb4 sdb5 sdb6 root@ubuntu:/mnt# mount /dev/sdb1 sdb1 root@ubuntu:/mnt# mount /dev/sdb2 sdb2 root@ubuntu:/mnt# mount /dev/sdb3 sdb3 root@ubuntu:/mnt# mount /dev/sdb4 sdb4 mount: sdb4: mount point does not exist. root@ubuntu:/mnt# mount /dev/sdb5 sdb5 root@ubuntu:/mnt# mount /dev/sdb6 sdb6 root@ubuntu:/mnt# mount | grep sdb /dev/sdb1 on /mnt/sdb1 type ext3 (rw,relatime) /dev/sdb2 on /mnt/sdb2 type fuseblk (rw,relatime,user_id=0,group_id=0,allow_other,blksize=4096) /dev/sdb3 on /mnt/sdb3 type ext4 (rw,relatime) /dev/sdb5 on /mnt/sdb5 type ext4 (rw,relatime) /dev/sdb6 on /mnt/sdb6 type ext4 (rw,relatime)
root@ubuntu:/mnt# cd sdb1 root@ubuntu:/mnt/sdb1# mkdir a b c d e root@ubuntu:/mnt/sdb1# ls a b c d e lost+found
分区卸载
umount 设备文件名或挂载点
umount /mnt/sdb2