① 分区方式
② Windows分区图示
③ Linux分区
Linux来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构, Linux中每个分区都是用来组成整个文件系统的一部分。
Linux采用了一种叫“载入”
的处理方法,它的整个文件系统中包含了一整套的文件和目录,且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得。
④ 硬盘说明
Linux硬盘分IDE硬盘和SCSI硬盘,目前基本上是SCSI硬盘。对于IDE硬盘,驱动器标识符为“hdx~
”。
“hd”
表明分区所在设备的类型,这里是指IDE硬盘了。“x”
为盘号(a为基本盘,b为基本从属盘,c为辅助主盘,d为辅助从属盘)。“~”
代表分区,前四个分区用数字1到4表示,它们是主分区或扩展分区,从5开始就是逻辑分区。对于SCSI硬盘则标识为“sdx~
”,SCSI硬盘是用“sd
”来表示分区所在设备的类型的,其余则和IDE硬盘的表示方法一样。
命令示意如下:
//查看硬盘详细信息
[root@bogon home]# fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00058b12
Device Boot Start End Blocks Id System
/dev/sda1 * 1 39 307200 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 39 2358 18631680 83 Linux
/dev/sda3 2358 2611 2031616 82 Linux swap / Solaris
//查看硬盘分区挂载详细信息
[root@bogon home]# lsblk -l
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
sda1 8:1 0 300M 0 part /boot
sda2 8:2 0 17.8G 0 part /
sda3 8:3 0 2G 0 part [SWAP]
sr0 11:0 1 1024M 0 rom
//目录结构树形式展示 分区信息与挂载
[root@bogon home]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 ext4 1594a9f0-cefd-49f3-92d7-401797cfec33 /boot
├─sda2 ext4 7c099cd4-d17f-4576-adcf-524d13705ee4 /
└─sda3 swap 0e7b48c1-8be9-4346-bf17-ae7fddf77f26 [SWAP]
sr0
//一块硬盘sd 三个分区;
//两个ext4分区,一个交换分区swap
// /boot / 分别表示硬盘对应的挂载--把分区与文件系统关联
// uuid 是硬盘格式化后唯一标识分区
// sr0 表示光驱
⑤ ext3、ext4和xfs三种文件系统
centos7.0开始默认文件系统是xfs,centos6是ext4,centos5是ext3。
ext3和ext4的最大区别在于,ext3在fsck时需要耗费大量时间(文件越多,时间越长),而ext4在fsck时用的时间会少非常多
ext4是第四代扩展文件系统(英语:Fourth EXtended filesystem,缩写为ext4)是linux系统下的日志文件系统,是ext3文件系统的后继版本。
ext4的文件系统容量达到1EB,而文件容量则达到16TB,这是一个非常大的数字了。对一般的台式机和服务器而言,这可能并不重要,但对于大型磁盘阵列的用户而言,这就非常重要了。
ext3目前只支持32000个子目录,而ext4取消了这一限制,理论上支持无限数量的子目录。
xfs是一种非常优秀的日志文件系统,它是SGI公司设计的。xfs被称为业界最先进的、最具可升级性的文件系统技术
xfs是一个64位文件系统,最大支持8EB减1字节的单个文件系统,实际部署时取决于宿主操作系统的最大块限制。对于一个32位Linux系统,文件和文件系统的大小会被限制在16TB。
xfs在很多方面确实做的比ext4好,ext4受限制于磁盘结构和兼容问题,可扩展性(scalability)确实不如xfs,另外xfs经过很多年发展,各种锁的细化做的也比较好。
① 虚拟机添加硬盘
虚拟机–设置–添加,然后下一步…即可。
添加完后用命令查看:
从上面可以看到已经添加一块sdb硬盘大小为2G,此时没有文件系统,没有挂载,么有UUID。
② 进行分区
添加完硬盘后首先进行分区,操作步骤如下:
[root@bogon dev]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x2737ab8f.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition // 添加一个新的分区
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): n
Command action
e extended
p primary partition (1-4) //主分区
p
Partition number (1-4): 1
First cylinder (1-261, default 1): 1
Last cylinder, +cylinders or +size{K,M,G} (1-261, default 261):
Using default value 261
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
//最后进行写入
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
//查看硬盘与挂载详情
[root@bogon dev]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sr0
sda
├─sda1 ext4 1594a9f0-cefd-49f3-92d7-401797cfec33 /boot
├─sda2 ext4 7c099cd4-d17f-4576-adcf-524d13705ee4 /
└─sda3 swap 0e7b48c1-8be9-4346-bf17-ae7fddf77f26 [SWAP]
sdb
└─sdb1
总结:分区命令fdisk /dev/sdb
,开始对/sdb分区
•m 显示命令列表
•p 显示磁盘分区同fdisk –l
•n 新增分区
•d 删除分区
•w 写入并退出
说明:开始分区后输入n,新增分区,然后选择p ,分区类型为主分区。两次回车默认剩余全部空间。最后输入w
写入分区并退出,若不保存退出输入q。
③ 格式化
mkfs命令–>make filesystem的缩写,用来在特定的分区建立Linux文件系统。
//ext4是分区文件系统类型
[root@bogon dev]# mkfs -t ext4 /dev/sdb1
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131072 inodes, 524112 blocks
26205 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=536870912
16 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 22 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@bogon dev]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sr0
sda
├─sda1 ext4 1594a9f0-cefd-49f3-92d7-401797cfec33 /boot
├─sda2 ext4 7c099cd4-d17f-4576-adcf-524d13705ee4 /
└─sda3 swap 0e7b48c1-8be9-4346-bf17-ae7fddf77f26 [SWAP]
sdb
└─sdb1 ext4 f3b7a79c-1041-403d-889b-83372a2789d4
[root@bogon dev]#
④ 挂载
[root@bogon home]# mkdir sdb1
[root@bogon home]# ll
total 16
drwx------. 25 jane jane 4096 Jun 14 07:06 jane
drwx------. 24 janus mygroup 4096 Jul 4 00:31 janus
drwx------. 5 mysql mysql 4096 Jul 3 02:24 mysql
drwxr-xr-x. 2 root root 4096 Jul 9 02:55 sdb1
//执行命令挂载
[root@bogon home]# mount /dev/sdb1 /home/sdb1/
//查看挂载后的分区与目录
[root@bogon home]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sr0
sda
├─sda1 ext4 1594a9f0-cefd-49f3-92d7-401797cfec33 /boot
├─sda2 ext4 7c099cd4-d17f-4576-adcf-524d13705ee4 /
└─sda3 swap 0e7b48c1-8be9-4346-bf17-ae7fddf77f26 [SWAP]
sdb
└─sdb1 ext4 f3b7a79c-1041-403d-889b-83372a2789d4 /home/sdb1
需要注意的是,用命令行挂载重启后会失效。
使用df -h
命令查看磁盘使用情况:
[root@bogon home]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 18G 8.3G 8.3G 50% /
tmpfs 491M 228K 491M 1% /dev/shm
/dev/sda1 283M 34M 234M 13% /boot
.host:/ 100G 18G 83G 18% /mnt/hgfs
/dev/sdb1 2.0G 3.1M 1.9G 1% /home/sdb1
⑤ 设置永久挂载(自动挂载)
通过修改/etc/fstab
实现挂载,添加完成后执行mount –a 即刻生效。
可以使用vim快捷操作yy p
快捷复制一行然后修改,这里不再使用UUID直接指定目标磁盘。
⑥ 断开挂载
断开挂载关系,可以使用命令umount:
//目标磁盘
umount /dev/sdb1;
//目标文件系统
umount /home/sdb1;
如果目录已经在系统盘里存在,这里面有这样几种情况(假设目录为/home/test,系统盘是挂载在根目录/
下的):
1.目录下面无数据;
2.目录下面有数据;
3.目录已经有磁盘挂载;
① /home/test在系统盘下无数据
既然无数据,那就随意操作吧。
② /home/test在系统盘下有数据
这时候如果有磁盘挂载上去是可以挂载的,但是因为目录指向了新的磁盘,那么原先的数据将不可见。不过可以将数据先放在别的目录下,然后再转移到新的挂载的磁盘。
③ /home/test已经有磁盘挂载
比如 vdb1磁盘挂载在/home/test,那么此时你再用vdb2磁盘挂载到/home/test是挂载失败的。如果需要挂载,则先将vdb1卸载掉。然后再根据①②判断处理。