标签:
这篇博文主要总结了Linux磁盘的一些操作,主要是硬盘的加载,分区(MBR分区和GPT分区),分区的挂载,以及swap分区的加载设置。
基础命令
回顾磁盘分区时的注意事项:
当硬盘空间消耗殆尽时怎么办?
比较好的做法应该是:在保留原硬盘的基础上,给服务器添加新的硬盘。
为虚拟机添加硬盘
[root@joe 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 0x9ce83f46. 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 //修改分区的系统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):1First cylinder (1-2610, default 1): //扇区的范围(1-2610),默认开始1,直接回车则使用默认数值 Using default value 1 Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610): 500M Command (m for help): p Disk /dev/sdb: 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: 0x9ce83f46 Device Boot Start End Blocks Id System /dev/sdb1 1 500 4016218+ 83 Linux //分配好的主分区1 //添加第二个分区 Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): Value out of range. Partition number (1-4): 2 First cylinder (501-2610, default 501): Using default value 501 Last cylinder, +cylinders or +size{K,M,G} (501-2610, default 2610): 500M Value out of range. Last cylinder, +cylinders or +size{K,M,G} (501-2610, default 2610): Using default value 2610 Command (m for help): p Disk /dev/sdb: 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: 0x9ce83f46 Device Boot Start End Blocks Id System /dev/sdb1 1 500 4016218+ 83 Linux /dev/sdb2 501 2610 16948575 83 Linux //第二个分区 //由于分配不合适主观意愿,想删除分区 Command (m for help): d Partition number (1-4):2//分区编号 Command (m for help): p Disk /dev/sdb: 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: 0x9ce83f46 Device Boot Start End Blocks Id System /dev/sdb1 1 500 4016218+ 83 Linux //第二个分区已经删除 Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4):2First cylinder (501-2610, default 501): Using default value 501 Last cylinder, +cylinders or +size{K,M,G} (501-2610, default 2610): 1000 Command (m for help): p Disk /dev/sdb: 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: 0x9ce83f46 Device Boot Start End Blocks Id System /dev/sdb1 1 500 4016218+ 83 Linux /dev/sdb2 501 1000 4016250 83 Linux Command (m for help): n Command action e extended p primary partition (1-4) e //建立扩展分区 Partition number (1-4):3First cylinder (1001-2610, default 1001): Using default value 1001 Last cylinder, +cylinders or +size{K,M,G} (1001-2610, default 2610): Using default value 2610 Command (m for help): p Disk /dev/sdb: 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: 0x9ce83f46 Device Boot Start End Blocks Id System /dev/sdb1 1 500 4016218+ 83 Linux /dev/sdb2 501 1000 4016250 83 Linux /dev/sdb3 1001 2610 12932325 5 Extended Command (m for help): n Command action l logical (5 or over)//此时扩展分区e没有了,说明MBR只能有一个扩展分区,接下来是逻辑分区 p primary partition (1-4) l First cylinder (1001-2610, default 1001): Using default value 1001 Last cylinder, +cylinders or +size{K,M,G} (1001-2610, default 2610): 1500 Command (m for help): p Disk /dev/sdb: 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: 0x9ce83f46 Device Boot Start End Blocks Id System /dev/sdb1 1 500 4016218+ 83 Linux /dev/sdb2 501 1000 4016250 83 Linux /dev/sdb3 1001 2610 12932325 5 Extended /dev/sdb5 1001 1500 4016218+ 83 Linux //逻辑分区是从5开始的,1-4只能是主分区和扩展分区的编号 Command (m for help): n Command action l logical (5 or over) p primary partition (1-4) l First cylinder (1501-2610, default 1501): Using default value 1501 Last cylinder, +cylinders or +size{K,M,G} (1501-2610, default 2610): Using default value 2610 Command (m for help): p Disk /dev/sdb: 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: 0x9ce83f46 Device Boot Start End Blocks Id System /dev/sdb1 1 500 4016218+ 83 Linux /dev/sdb2 501 1000 4016250 83 Linux /dev/sdb3 1001 2610 12932325 5 Extended /dev/sdb5 1001 1500 4016218+ 83 Linux /dev/sdb6 1501 2610 8916043+ 83 Linux Command (m for help):w //保存写The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. [root@joe dev]# fdisk-l Disk
/dev/sdb: 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: 0x9ce83f46 Device Boot Start End Blocks Id System /dev/sdb1 1 500 4016218+ 83 Linux /dev/sdb2 501 1000 4016250 83 Linux /dev/sdb3 1001 2610 12932325 5 Extended /dev/sdb5 1001 1500 4016218+ 83 Linux /dev/sdb6 1501 2610 8916043+ 83 Linux 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: 0x000a030a Device Boot Start End Blocks Id System /dev/sda1 * 1 26 204800 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 26 281 2048000 82 Linux swap / Solaris Partition 2 does not end on cylinder boundary. /dev/sda3 281 536 2048000 83 Linux Partition 3 does not end on cylinder boundary. /dev/sda4 536 2611 16669696 5 Extended /dev/sda5 536 2611 16668672 83 Linux
[root@joe dev]# parted GNU Parted 2.1 使用/dev/sda
//注意正在使用的是sda Welcome to GNU Parted! Type ‘help‘ to view a list of commands. (parted) print all Model: VMware, VMware Virtual S (scsi) Disk /dev/sda: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: msdos Number Start End Size Type File system 标志 1 1049kB 211MB 210MB primary ext4 启动 2 211MB 2308MB 2097MB primary linux-swap(v1) 3 2308MB 4405MB 2097MB primary ext4 4 4405MB 21.5GB 17.1GB extended 5 4406MB 21.5GB 17.1GB logical ext4 Model: VMware, VMware Virtual S (scsi) Disk/dev/sdb:
21.5GB Sector size (logical/physical): 512B/512B Partition Table: msdos //sdb的应该是我们需要的gpt Number Start End Size Type File system 标志 警告: 无法以读写方式打开 /dev/sr0 (只读文件系统)。/dev/sr0 已按照只读方式打开。 错误: /dev/sr0: unrecognised disk label (parted)select /dev/sdb
//选择sdb 使用 /dev/sdb (parted) mkpart //如果不进行gpt的选择设置,直接mkpart那么我们还是使用的MBR模式 分区类型? primary/主分区/extended/扩展分区? primary 文件系统类型? [ext2]? ^Z -------------------------------------------------------------------------------------------------- (parted)select /dev/
sdb 使用 /dev/sdb (parted) mklabel gpt 警告: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want to continue? 是/Yes/否/No? yes (parted) print all Model: VMware, VMware Virtual S (scsi) Disk/dev/sda:
21.5GB Sector size (logical/physical): 512B/512B Partition Table: msdos Number Start End Size Type File system 标志 1 1049kB 211MB 210MB primary ext4 启动 2 211MB 2308MB 2097MB primary linux-swap(v1) 3 2308MB 4405MB 2097MB primary ext4 4 4405MB 21.5GB 17.1GB extended 5 4406MB 21.5GB 17.1GB logical ext4 Model: VMware, VMware Virtual S (scsi) Disk/dev/sdb:
21.5GB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name 标志 警告: 无法以读写方式打开 /dev/sr0 (只读文件系统)。/dev/sr0 已按照只读方式打开。 错误: /dev/sr0: unrecognised disk label (parted) mkpart 分区名称? []? test1 文件系统类型? [ext2]? ext4 起始点?1
//以1开始,默认单位是M unit GB 指定为GB为单位 结束点? 1000M (parted) print Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name 标志 1 1049kB 1000MB 999MB test1 (parted)rm 1
//删除分区 (parted) print Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name 标志 (parted) mkpart 分区名称? []? test1 文件系统类型? [ext2]? ext4 起始点?0 //以0开始,出现了警告,这里是字节对齐的原因造成的,所以一般为了避免警告,我们不以0开始。 结束点? 1000M 警告: The resulting partition is not properly aligned for best performance. 忽略/Ignore/放弃/Cancel? cancel (parted) mkpart 分区名称? []? test1 文件系统类型? [ext2]? ext4 起始点?1 结束点?1000M (parted) print Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name 标志 1 1049kB 1000MB 999MB test1 (parted) mkpart 分区名称? []? test2 文件系统类型? [ext2]? ext4 起始点? 1000M 结束点? 1500M (parted) print Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name 标志 1 1049kB 1000MB 999MB test1 2 1000MB 1500MB 500MB test2 //上面是交互模式,下面是命令模式 (parted) mkpart test31500 3000
//使用一条命令直接搞定 分区名 起始位 结束位 警告: The resulting partition is not properly aligned for best performance. //出现分区的原因是起始的1500和上次结束的1500重叠了。 忽略/Ignore/放弃/Cancel? cancel (parted) mkpart test3 1501M 1700M (parted) mkpart test4 1701M 1800M (parted) mkpart test5 1801M 1900M (parted) print Model: VMware, VMware Virtual S (scsi) Disk /dev/sdb: 21.5GB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name 标志 1 1049kB 1000MB 999MB test1 2 1000MB 1500MB 500MB test2 3 1501MB 1700MB 199MB test3 4 1701MB 1800MB 99.6MB test4 5 1801MB 1900MB 98.6MB test5 (parted)rm 5
(parted) quit
[root@joe dev]#ls -l /dev/sdb*
brw-rw----. 1 root disk 8, 16 5月 7 01:18 /dev/sdb brw-rw----. 1 root disk 8, 17 5月 7 01:18 /dev/sdb1 brw-rw----. 1 root disk 8, 18 5月 7 01:18 /dev/sdb2 brw-rw----. 1 root disk 8, 19 5月 7 01:18 /dev/sdb3 brw-rw----. 1 root disk 8, 21 5月 7 01:18 /dev/sdb5 brw-rw----. 1 root disk 8, 22 5月 7 01:18 /dev/sdb6 [root@joe dev]# mkfs.ext3/dev/sdb1
//第一种设置方式 mke2fs 1.41.12 (17-May-2010) 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 502944 inodes, 2008117 blocks 100405 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=2059403264 62 block groups 32768 blocks per group, 32768 fragments per group 8112 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 正在写入inode表: 完成 Creating journal (32768 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 23 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. [root@joe dev]# mkfs-t ext4 /dev/sdb2
//第二种方法 mke2fs 1.41.12 (17-May-2010) 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 50288 inodes, 200812 blocks 10040 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=209715200 7 block groups 32768 blocks per group, 32768 fragments per group 7184 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840 正在写入inode表: 完成 Creating journal (4096 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 26 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. [root@joe dev]#mkdir -p /mnt/joetest
//首先建立挂载点 [root@joe dev]#mount /dev/sdb1 /mnt/joetest/
//挂载分区 [root@joe dev]#umount /mnt/joetest/
//卸载挂载点 上面这中挂载方式是临时的,永久性的应该如下: vim+ /etc/
fstab
在末尾插入一行
/dev/sdb1 /mnt/imooc ext3 default 0 0
设备名称 挂载点 文件系统类型
保存退出即可
[root@joe dev]#fdisk /dev/
sdb WARNING: GPT (GUID Partition Table) detected on ‘/dev/sdb‘! The util fdisk doesn‘t support GPT. Use GNU Parted. 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): p Disk /dev/sdb: 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: 0x00000000 Device Boot Start End Blocks Id System /dev/sdb1 1 1000 8032468+ 83 Linux /dev/sdb2 1001 1100 803250 83 Linux /dev/sdb3 1101 2610 12129075 5 Extended /dev/sdb5 1101 1500 3212968+ 83 Linux /dev/sdb6 1501 2610 8916043+ 83 Linux Command (m for help): t Partition number (1-6):2
//修改ID Hex code (type L to list codes): L 0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris 1 FAT12 39 Plan 982 Linux swap
/ So c1 DRDOS/sec (FAT-
2 XENIX root 3c PartitionMagic
83 Linux
c4 DRDOS/sec (FAT- 3 XENIX usr 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT- Hex code (type L to list codes): 82 Changed system type of partition 2 to 82 (Linux swap / Solaris) Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. [root@joe dev]# fdisk/dev/
sdb WARNING: GPT (GUID Partition Table) detected on ‘/dev/sdb‘! The util fdisk doesn‘t support GPT. Use GNU Parted. 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): p Disk /dev/sdb: 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: 0x00000000 Device Boot Start End Blocks Id System /dev/sdb1 1 1000 8032468+ 83 Linux /dev/sdb2 1001 1100 80325082 Linux swap /
Solaris /dev/sdb3 1101 2610 12129075 5 Extended /dev/sdb5 1101 1500 3212968+ 83 Linux /dev/sdb6 1501 2610 8916043+ 83 Linux Command (m for help): q [root@joe dev]# mkswap/dev/sdb2
//设置交换区 Setting up swapspace version 1, size = 803244 KiB no label, UUID=c7d31434-4013-4bbb-b68e-29b501934377 [root@joe dev]# swapon/dev/sdb2
//开启交换区 [root@joe dev]# free total used free shared buffers cached Mem: 1030612 132468 898144 0 13612 51388 -/+ buffers/cache: 67468 963144 Swap:2851232 0 2851232
[root@joe dev]# swapoff
/dev/sdb2
//关闭交换区 [root@joe dev]#
标签:
原文地址:http://www.cnblogs.com/zi-xing/p/4483027.html