> Ubuntu >

Ubuntu添加硬盘实验

今天要做一个虚拟机添加硬盘的实验。

 

实验简述:在现有Ubuntu 12.04虚拟机基础上添加一块8G的虚拟硬盘。该硬盘分成两个区:3G和5G,对应的挂载点为~/docs和~/photos,用来保存个人文档和家庭照片。

 

本实验的目的是熟悉Linux下硬盘的分区,创建文件系统,挂载分区等一系列的操作。

 

实验过程

1. 打开Ubuntu 12.04虚拟机,添加一个8G的虚拟硬盘。

 

2. 启动虚拟机,进入终端,查看系统当前的文件系统情况。当前系统应该可以看到有两块硬盘,第一块是sda,第一块是sdb。

ls /dev/sd*

查询结果:

从上面的查询结果我们可以找到sda和sdb这两块硬盘。但是,我们也发现了一个问题:为什么sda被分成了三个区,我记得明明只有一个主分区的?用fdisk /dev/sda显示分区表看看:

Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders, total 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000afcb0

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    40894463    20446208   83  Linux
/dev/sda2        40896510    41940991      522241    5  Extended
/dev/sda5        40896512    41940991      522240   82  Linux swap / Solaris

原来多出来的是Ubuntu安装程序自动创建的扩展分区sda2和交换分区sda5。

我们用fdisk /dev/sdb看看新硬盘的分区情况:

Disk /dev/sdb: 8589 MB, 8589934592 bytes
255 heads, 63 sectors/track, 1044 cylinders, total 16777216 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x25a3446b

   Device Boot      Start         End      Blocks   Id  System

分区表是空的,说明还没有分区存在。

 

3. 用fdisk将sdb硬盘分成两个区:3G和5G。

Disk /dev/sdb: 8589 MB, 8589934592 bytes
86 heads, 1 sectors/track, 195083 cylinders, total 16777216 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x25a3446b

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    16777215     8387584    5  Extended
/dev/sdb5            4096     6295551     3145728   83  Linux
/dev/sdb6         6297600    16777215     5239808   83  Linux

分区完毕,使用ls /dev/sdb*命令就可以在/dev目录下找到我们的新分区了。

 

4. 使用mke2fs创建文件系统,这里两个分区都使用ext4文件系统。

sudo mke2fs -t ext4 /dev/sdb5
sudo mke2fs -t ext4 /dev/sdb6

 

5. 挂载两个新分区到~/docs和~/photos目录,同时修改两个挂载点所有者,这样才有权限方便写入。

cd ~
mkdir docs
mkdir photos
sudo mount /dev/sdb5 docs
sudo mount /dev/sdb6 photos
sudo chown -R amonest:amonest docs
sudo chown -R amonest:amonest photos

 

6. 最后,我们要想办法让这两个新分区在启动后可以自动挂载。使用mount命令只是在本次登陆挂载了分区,但电脑一重新启动,还需要再次挂载。/etc/fstab文件记录了电脑启动后需要自动挂载的分区信息,要实现自动挂载,只需要向/etc/fstab文件增加记录就可以。关于fstab的更详细信息请参考《/etc/fstab文件简要说明》。

我们先用blkid命令查到新分区的UUID:

Shell$ sudo blkid
/dev/sda1: UUID="4c298c2c-2b21-417e-b7ab-4ba4a64c3e1e" TYPE="ext4" 
/dev/sda5: UUID="ff694e58-0b7e-473e-9d02-c91404202b8d" TYPE="swap" 
/dev/sdb5: UUID="f23cd423-9a4d-4e4e-aa9d-4220f1383760" TYPE="ext4" 
/dev/sdb6: UUID="202ce7e5-8afd-4926-b3b6-c052770e8640" TYPE="ext4" 

然后打开/etc/fstab文件,将下面的两行内容添加到最后:

UUID=f23cd423-9a4d-4e4e-aa9d-4220f1383760 /home/amonest/docs ext4 defaults 0 0
UUID=202ce7e5-8afd-4926-b3b6-c052770e8640 /home/amonest/photos ext4 defaults 0 0

重启电脑,检查看两个新分区有没有被自动挂载。

 

最后上一张在GParted下看到的新硬盘完整的分区情况:

 
 
 
(责任编辑:IT)