1.1 命令fdisk:磁盘分盘工具
【功能说明】
工具fdisk是Linux下常用的磁盘分区工具。受mbr分区表的限制,fdisk工具只能给小于2的TB的磁盘划分分区。如果使用fdisk对于大于2TB的磁盘进行分区,虽然可以分区,但其仅识别2TB的空间,所以磁盘容量若超过2TB,就要使用parted分区工具进行分区。
【语法格式】
fdisk [option] [device...]
fdisk [选项] [设备名...]
【选项说明】
命令fdisk参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-l |
显示所有磁盘分区的信息(*) |
【使用范例】
[root@A ~]# fdisk -l Disk /dev/sda: 107.4 GB, 107374182400 bytes 255 heads, 63 sectors/track, 13054 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: 0x000a4199 Device Boot Start End Blocks Id System /dev/sda1 * 1 64 512000 83 Linux Partition 1 does not end on cylinder boundary. /dev/sda2 64 13055 104344576 8e Linux LVM
Device:分区,这里有三个分区;
Boot:启动分区,用*表示的是启动分区
Start:表示开始的柱面
End :表示结束的柱面
Blocks:block块数量
Id:分区类型ID
System:分区类型
交互式分区实践
[root@A ~]# ls /dev/sd* #查看分区前设备的状态 /dev/sda /dev/sda1 /dev/sda2 /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg [root@A ~]# fdisk /dev/sdf #不加参数,直接接设备名就可以分区 Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel Building a new DOS disklabel with disk identifier 0x2d011ec8. 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'). #提示使用-c关闭dos兼容模式 #提示-u参数使用扇区为单位分区 Command (m for help): m #m是帮助,需要人工输入m后回车,下同 Command action a toggle a bootable flag #设置引导扇区 b edit bsd disklabel #编辑bsd卷标 c toggle the dos compatibility flag #设置dos兼容扇区 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 #创建一个新的空DOS分区表 p print the partition table #打印分区表 q quit without saving changes #退出不保存更改 s create a new empty Sun disklabel #创建新的空sun卷标 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 #新建一个分区,需要人工输入n后回车 Command action e extended #创建扩展分区 p primary partition (1-4) #创建主分区(1-4) p #创建一个主分区,需要人工输入p后回车 Partition number (1-4): 1 #设置分区编号为1,需要人工输入1后回车 First cylinder (1-913, default 1): +500 #设置结束柱面(913)或分区大小(+100M),因为要划分指定大小的分区,所以常用+100M这种方法,如果分区时使用fdisk -cu /dev/sdf,则这里就会使用扇区为单位来进行分区。 Last cylinder, +cylinders or +size{K,M,G} (500-913, default 913): Using default value 913 Command (m for help): p Disk /dev/sdf: 7516 MB, 7516192768 bytes 255 heads, 63 sectors/track, 913 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: 0x2d011ec8 Device Boot Start End Blocks Id System /dev/sdf1 500 913 3325455 83 Linux Command (m for help): n Command action e extended p primary partition (1-4) e Partition number (1-4): 2 First cylinder (1-913, default 1): +2000M Last cylinder, +cylinders or +size{K,M,G} (255-499, default 499): Using default value 499 Command (m for help): p Disk /dev/sdf: 7516 MB, 7516192768 bytes 255 heads, 63 sectors/track, 913 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: 0x2d011ec8 Device Boot Start End Blocks Id System /dev/sdf1 500 913 3325455 83 Linux /dev/sdf2 255 499 1967962+ 5 Extended Command (m for help): p Disk /dev/sdf: 7516 MB, 7516192768 bytes 255 heads, 63 sectors/track, 913 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: 0x2d011ec8 Device Boot Start End Blocks Id System /dev/sdf1 500 913 3325455 83 Linux /dev/sdf2 255 499 1967962+ 5 Extended /dev/sdf3 51 254 1638630 83 Linux /dev/sdf5 255 261 56196 83 Linux /dev/sdf6 262 275 112423+ 83 Linux /dev/sdf7 276 289 112423+ 83 Linux /dev/sdf8 290 303 112423+ 83 Linux Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. [root@A ~]# ls /dev/sd* /dev/sda /dev/sda2 /dev/sdc /dev/sde /dev/sdf1 /dev/sdf3 /dev/sdf6 /dev/sdf8 /dev/sda1 /dev/sdb /dev/sdd /dev/sdf /dev/sdf2 /dev/sdf5 /dev/sdf7 /dev/sdg [root@A ~]# partprobe /dev/sdf #执行该命令通知内核分区表已更改,此步是不重启让分区表生效命令
格式化磁盘
[root@A ~]# mkfs.ext4 /dev/sdf1 mke2fs 1.41.12 (17-May-2010) 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 208000 inodes, 831363 blocks 41568 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=851443712 26 block groups 32768 blocks per group, 32768 fragments per group 8000 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200 正在写入inode表: 完成 Creating journal (16384 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 39 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
挂载磁盘分区
[root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / tmpfs 16G 0 16G 0% /dev/shm /dev/sda1 477M 33M 419M 8% /boot /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home [root@A ~]# mount /dev/sdf1 /mnt [root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / tmpfs 16G 0 16G 0% /dev/shm /dev/sda1 477M 33M 419M 8% /boot /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home /dev/sdf1 3.1G 5.6M 2.9G 1% /mnt [root@A ~]# echo "mount /dev/sdf1 /mnt">> /etc/rc.local [root@A ~]# tail -1 /etc/rc.local mount /dev/sdf1 /mnt
linux 添加硬盘如何不重启
1. 添加了磁盘后查看,没有刷新出来
[root@node /]# fdisk -l Disk /dev/sda: 17.2 GB, 17179869184 bytes 255 heads, 63 sectors/track, 2088 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: 0x000aa84a Device Boot Start End Blocks Id System /dev/sda1 * 1 2089 16775168 83 Linux /dev/sda2 2089 2089 1024 82 Linux swap / Solaris
2. 查看主机总线号
root@node /]# ls /sys/class/scsi_host/ host0 host1 host2
3.重新扫描SCSI总线来添加设备
[root@node /]# echo "- - -" > /sys/class/scsi_host/host0/scan [root@node /]# echo "- - -" > /sys/class/scsi_host/host1/scan [root@node /]# echo "- - -" > /sys/class/scsi_host/host2/scan
4. 查看磁盘,可以看到 /dev/sdb :53.7G 这个就是新加的盘
[root@node /]# fdisk -l Disk /dev/sda: 17.2 GB, 17179869184 bytes 255 heads, 63 sectors/track, 2088 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: 0x000aa84a Device Boot Start End Blocks Id System /dev/sda1 * 1 2089 16775168 83 Linux /dev/sda2 2089 2089 1024 82 Linux swap / Solaris Disk /dev/sdb: 53.7 GB, 53687091200 bytes 255 heads, 63 sectors/track, 6527 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
fdisk非交互式分区(批量分区案例)
sdc1 |
sdc2 |
sdc5 |
sdc6 |
n |
n |
n |
n |
p |
e |
l |
l |
1 |
2 |
enter |
enter |
enter |
enter |
+400M |
enter |
+100M |
enter |
|
[root@server ~]# fdisk /dev/sdc<<EFO > n > p > 1 > > +100M > n > e > 2 > > > n > l > > +400M > n > l > > > p > w > EFO
Device Boot Start End Blocks Id System /dev/sdc1 1 14 112423+ 83 Linux /dev/sdc2 15 522 4080510 5 Extended /dev/sdc5 15 66 417658+ 83 Linux /dev/sdc6 67 522 3662788+ 83 Linux Command (m for help): The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. [root@server ~]# ls /dev/sd* /dev/sda /dev/sda1 /dev/sda2 /dev/sdb /dev/sdc /dev/sdc1 /dev/sdc2 /dev/sdc5 /dev/sdc6
1.2 命令partprobe:更新内核的硬盘分区表信息
【功能说明】
命令partprobe用于在硬盘分区发生改变时,更新Linux内核中的硬盘分区表数据。有时在使用fdisk、part命令对硬盘进行分区后,会发现找不到新分区,此时需要重启系统才会使修改生效,但使用partprobe可以不重启系统就让修改的分区表生效。
【语法格式】
partprobe [options]
partprobe [选项]
【选项说明】
命令partprobe的参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-d |
不更新内核 |
-s |
显示摘要和分区 |
【使用范例】
[root@server ~]# partprobe
Warning: WARNING: the kernel failed to re-read the partition table on /dev/sda (设备或资源忙). As a result, it may not reflect all of your changes until after reboot.
1.3 命令tune2fs:ext2/ext3/ext4 文件系统参数
【功能说明】
命令tun2fs可以调整或查看ext2/ext3/ext4文件系统的参数,比如可以调整LINUX文件系统开机自检的周期,此命令在工作中极少使用。
【语法格式】
tune2fs [options]
tune2fs [选项]
【选项说明】
命令tune2fs的参数及说明
参数选项 |
解释说明(带*的为重点) |
-c |
设置强制自检的挂载次数,每挂载一次就计数就会加一,超过次数就会强制自检。设置成0或-1则此功能关闭 |
-C |
设置文件系统已经被挂载的次数 |
-i |
设置强制自检的时间间隔(天、周、月)(*) |
-j |
将ext2文件系统转换为ext3类型文件系统 |
-l |
查看文件系统信息(*) |
【使用范例】
查看文件系统挂载信息
[root@server ~]# tune2fs -l /dev/sda1|grep -i Mount Last mounted on: /boot Default mount options: user_xattr acl Last mount time: Sat Dec 2 19:30:01 2017 #上次挂载时间 Mount count: 7 #挂在次数 Maximum mount count: -1 #强制自检的挂载次数为-1,关闭自检功能
设置挂载次数
[root@server ~]# tune2fs -C 30 /dev/sda1 tune2fs 1.41.12 (17-May-2010) Setting current mount count to 30 [root@server ~]# tune2fs -l /dev/sda1|grep -i Mount Last mounted on: /boot Default mount options: user_xattr acl Last mount time: Sat Dec 2 19:30:01 2017 Mount count: 30 Maximum mount count: -1
设置强制自检的挂载次数
[root@server ~]# tune2fs -c 40 /dev/sda1 tune2fs 1.41.12 (17-May-2010) Setting maximal mount count to 40 [root@server ~]# tune2fs -l /dev/sda1|grep -i Mount Last mounted on: /boot Default mount options: user_xattr acl Last mount time: Sat Dec 2 19:30:01 2017 Mount count: 30 Maximum mount count: 40
设置强制自检的时间间隔
[root@server ~]# tune2fs -l /dev/sda1|grep -i check Last checked: Tue Jul 5 11:03:32 2016 Check interval: 0 (<none>) [root@server ~]# tune2fs -i 10 /dev/sda1 tune2fs 1.41.12 (17-May-2010) Setting interval between checks to 864000 seconds [root@server ~]# tune2fs -l /dev/sda1|grep -i check Last checked: Tue Jul 5 11:03:32 2016 Check interval: 864000 (1 week, 3 days) Next check after: Fri Jul 15 11:03:32 2016 [root@server ~]# tune2fs -i 0 /dev/sda1 tune2fs 1.41.12 (17-May-2010) Setting interval between checks to 0 seconds
1.4 命令parted:磁盘分区工具
【功能说明】
对于小于2TB的磁盘可以用fdisk和parted命令进行分区,这种情况一般采用fdisk命令,但对于大于2TB的磁盘则只能用parted分区,且需要将磁盘转换为GPT格式。
【语法格式】
parted [option] [device...]
parted [选项] [设备名...]
【选项说明】
命令parted参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-l |
显示所有磁盘分区的信息(*) |
-h |
查看帮助 |
【使用范例】
[root@A ~]# parted -l Model: VMware Virtual disk (scsi) Disk /dev/sda: 107GB Sector size (logical/physical): 512B/512B Partition Table: msdos Number Start End Size Type File system 标志 1 1049kB 525MB 524MB primary ext4 启动 2 525MB 107GB 107GB primary lvm
挂载超过2T的磁盘
[root@A ~]# parted /dev/sdg GNU Parted 2.1 使用 /dev/sdg Welcome to GNU Parted! Type 'help' to view a list of commands. (parted) mklabel gpt 警告: The existing disk label on /dev/sdg will be destroyed and all data on this disk will be lost. Do you want to continue? 是/Yes/否/No? yes (parted) mkpart primary 文件系统类型? [ext2]? ext4 起始点? 起始点? 0 结束点? 结束点? 3000000 警告: The resulting partition is not properly aligned for best performance. 忽略/Ignore/放弃/Cancel? Ignore (parted) p Model: VMware Virtual disk (scsi) Disk /dev/sdg: 3299GB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name 标志 1 17.4kB 3000GB 3000GB primary (parted) mkpart logical 3000000 3000050 (parted) p Model: VMware Virtual disk (scsi) Disk /dev/sdg: 3299GB Sector size (logical/physical): 512B/512B Partition Table: gpt Number Start End Size File system Name 标志 1 17.4kB 3000GB 3000GB primary 2 3000GB 3000GB 50.3MB logical (parted) q 信息: You may need to update /etc/fstab. [root@A ~]# ls /dev/sd* /dev/sda /dev/sda2 /dev/sdc /dev/sde /dev/sdf1 /dev/sdf3 /dev/sdf6 /dev/sdf8 /dev/sdg1 /dev/sda1 /dev/sdb /dev/sdd /dev/sdf /dev/sdf2 /dev/sdf5 /dev/sdf7 /dev/sdg /dev/sdg2 [root@A ~]# mkfs.ext4 /dev/sdg1 mke2fs 1.41.12 (17-May-2010) 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 183107584 inodes, 732421870 blocks 36621093 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=4294967296 22352 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848, 512000000, 550731776, 644972544 正在写入inode表: 完成 Creating journal (32768 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 38 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override. [root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / tmpfs 16G 0 16G 0% /dev/shm /dev/sda1 477M 33M 419M 8% /boot /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home /dev/sdf1 3.1G 5.6M 2.9G 1% /mnt [root@A ~]# mount /dev/sdg1 /mnt [root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / tmpfs 16G 0 16G 0% /dev/shm /dev/sda1 477M 33M 419M 8% /boot /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home /dev/sdf1 2.7T 73M 2.6T 1% /mnt /dev/sdg1 2.7T 73M 2.6T 1% /mnt
1.5 命令mkfs:创建linux文件系统
【功能说明】
命令mkfs用于在指定的设备上创建格式化并创建文件系统,fdisk和parted等分区相当于建房的人,把房子(硬盘),分成几居室(分区),mkfs就相当于对不同的居室装修(创建文件系统)了,只有装修好的房子(有文件系统)才能入住,分区一样,只有格式化创建文件系统后,才能用来存储数据。
【语法格式】
mkfs [option] [filesys...]
mkfs [选项] [设备名...]
【选项说明】
命令mkfs的参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-t |
指定要创建的文件系统类型(*) |
-c |
创建文件系统时检查磁盘坏块 |
-v |
显示详细信息 |
命令mkfs只是一个前端命令
[root@A ~]# ls /sbin/mkfs*
/sbin/mkfs /sbin/mkfs.ext2 /sbin/mkfs.ext4 /sbin/mkfs.msdos
/sbin/mkfs.cramfs /sbin/mkfs.ext3 /sbin/mkfs.ext4dev /sbin/mkfs.vfa
通过mkfs命令创建文件系统(-t 参数)的例子
[root@A ~]# mkfs -t ext4 -v /dev/sdf3 mke2fs 1.41.12 (17-May-2010) fs_types for mke2fs.conf resolution: 'ext4', 'default' 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 102544 inodes, 409657 blocks 20482 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=423624704 13 block groups 32768 blocks per group, 32768 fragments per group 7888 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912 正在写入inode表: 完成 Creating journal (8192 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 32 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
通过mkfs.etx4创建文件系统
[root@A ~]# mkfs.ext4 /dev/sdf3 mke2fs 1.41.12 (17-May-2010) 文件系统标签= 操作系统:Linux 块大小=4096 (log=2) 分块大小=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 102544 inodes, 409657 blocks 20482 blocks (5.00%) reserved for the super user 第一个数据块=0 Maximum filesystem blocks=423624704 13 block groups 32768 blocks per group, 32768 fragments per group 7888 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912 正在写入inode表: 完成 Creating journal (8192 blocks): 完成 Writing superblocks and filesystem accounting information: 完成 This filesystem will be automatically checked every 27 mounts or 180 days, whichever comes first. Use tune2fs -c or -i to override.
1.6 命令dumpe2fs:导出ext2/ext3/ext4文件系统信息
【功能说明】
命令dunpe2fs用于导出ext2/ext3/ext4文件系统内部的相关信息,例如:文件系统的组成包含超级快,块组,inode,block等信息。
【语法格式】
dumpe2fs [option] [device...]
dumpe2fs [选项] [设备名...]
【选项说明】
命令dumpe2fs的参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-b |
打印文件系统中预留的块信息 |
-h |
仅显示超级块信息 |
-i |
从指出的文件系统映像文件中读取文件的系统信息 |
-x |
以16进制格式打印信息块成员 |
【使用范例】
查看系统的inode的信息
[root@A ~]# dumpe2fs /dev/sda1|egrep -i "inode size |inode count" dumpe2fs 1.41.12 (17-May-2010) Inode count: 128016 [root@A ~]# dumpe2fs /dev/sdf1|egrep -i "inode size |inode count" dumpe2fs 1.41.12 (17-May-2010) Inode count: 208000 [root@A ~]# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/mapper/vg_root-lv_root 3276800 67060 3209740 3% / tmpfs 4109543 1 4109542 1% /dev/shm /dev/sda1 128016 39 127977 1% /boot /dev/mapper/vg_root-lv_home 2990080 103 2989977 1% /home /dev/sdf1 183107584 11 183107573 1% /mnt /dev/sdg1 183107584 11 183107573 1% /mnt
查看系统的block信息
[root@A ~]# dumpe2fs /dev/sdf1|egrep -i "block size |block count" dumpe2fs 1.41.12 (17-May-2010) Block count: 831363 Reserved block count: 41568 [root@A ~]# dumpe2fs /dev/sda1|egrep -i "block size |block count" dumpe2fs 1.41.12 (17-May-2010) Block count: 512000 Reserved block count: 25600
1.7 命令resize2fs:调整ext2/ext3/ext4文件系统大小
【功能说明】
命令resize2fs用于扩容或收缩未挂载的ext2/ext3/ext4文件系统,在Linux2.6或更高版本的内核中,该命令还支持在线扩容已经挂载的文件系统,该命令经常用来针对LVM扩容后的分区使用。
【语法格式】
resize2fs [option] [device...]
resize2fs [选项] [设备名...]
【选项说明】
命令resize2fs的参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-p |
打印完成任务的进度条 |
-f |
强制执行操作 |
【使用范例】
出现这种情况一般是当初对系统分区的时候没有规划好,现在想要重新调整分区的大小,假设是要对/dev/sdf上的分区进行操作,将/mnt/data1扩容
[root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home /dev/sdf1 3.1G 5.6M 2.9G 1% /mnt/data1 /dev/sdf3 1.6G 2.4M 1.5G 1% /mnt/data2 [root@A ~]# touch /mnt/data1/{1..5}.hml [root@A ~]# touch /mnt/data2/{a..e}.hml
记录分区的柱面起始信息:
[root@A ~]# fdisk -l /dev/sdf Disk /dev/sdf: 7516 MB, 7516192768 bytes 255 heads, 63 sectors/track, 913 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: 0x2d011ec8 Device Boot Start End Blocks Id System /dev/sdf1 500 913 3325455 83 Linux /dev/sdf2 255 499 1967962+ 83 Linux /dev/sdf3 51 254 1638630 83 Linux Partition table entries are not in disk order
卸载分区:
[root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home
重新分区:
[root@A ~]# fdisk /dev/sdf 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/sdf: 7516 MB, 7516192768 bytes 255 heads, 63 sectors/track, 913 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: 0x2d011ec8 Device Boot Start End Blocks Id System /dev/sdf1 500 913 3325455 83 Linux /dev/sdf2 255 499 1967962+ 83 Linux /dev/sdf3 51 254 1638630 83 Linux Partition table entries are not in disk order Command (m for help): d Partition number (1-4): 2 Command (m for help): d Partition number (1-4): 3 Command (m for help): p Disk /dev/sdf: 7516 MB, 7516192768 bytes 255 heads, 63 sectors/track, 913 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: 0x2d011ec8 Device Boot Start End Blocks Id System /dev/sdf1 500 913 3325455 83 Linux Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 2 First cylinder (1-913, default 1): 51 Last cylinder, +cylinders or +size{K,M,G} (51-499, default 499): 499 Command (m for help): p Disk /dev/sdf: 7516 MB, 7516192768 bytes 255 heads, 63 sectors/track, 913 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: 0x2d011ec8 Device Boot Start End Blocks Id System /dev/sdf1 500 913 3325455 83 Linux /dev/sdf2 51 499 3606592+ 83 Linux Partition table entries are not in disk order Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. [root@A ~]# partprobe /dev/sdf [root@A ~]# mount /dev/sdf2 /mnt/data2 [root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home /dev/sdf2 1.6G 2.4M 1.5G 1% /mnt/data2 [root@A ~]# ls /mnt/data2 a.hml b.hml c.hml d.hml e.hml lost+found [root@A ~]# resize2fs /dev/sdf2 resize2fs 1.41.12 (17-May-2010) Filesystem at /dev/sdf2 is mounted on /mnt/data2; on-line resizing required old desc_blocks = 1, new_desc_blocks = 1 Performing an on-line resize of /dev/sdf2 to 901648 (4k) blocks. The filesystem on /dev/sdf2 is now 901648 blocks long. [root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home /dev/sdf2 3.4G 3.2M 3.2G 1% /mnt/data2 [root@A ~]# ls /mnt/data3
1.8 命令fsck:检查并修复linux文件系统
【功能说明】
命令fsck用于检查并修复文件系统中的错误,即针对有问题的系统或磁盘进行修复,类似的命令还有e2fask命令。有关fsck的使用需要特别注意的是:(1)文件系统必须是卸载状态,否则会出现故障。(2)不要对正常的分区使用fsck,在不加参数的情况下,fsck会根据/etc/fstab进行文件系统检查,这相当于fsck -As 参数的功能。
【语法格式】
fsck [option] [filesys...]
fsck [选项] [文件系统...]
【选项说明】
命令fsck的参数及选项说明
参数选项 |
解释说明(带*的为重点) |
-a |
自动修复文件系统,不询问任何问题 |
-s |
按顺序检查的分区内容,检查文件内所列的全部文件系统 |
-t |
指定要检查的分区的文件系统类型 |
-A |
依照/etc/fstab 配置文件的内容,检查文件内所列的全部文件系统 |
-N |
不执行指令,仅列出实际执行会进行的动作 |
【使用范例】
Linux断电后重启故障修复案例。
当Linux系统遭到突然断电等非正常关机操作时,很容易导致文件系统数据损坏,造成系统不能重启,此时,屏幕出现的提示可能是如下内容:
*** AN error occurred during the file system check *** xxx *** xxx Give root password for maintenance (or type Control-D to continue)
此时根据系统提示输入root密码,注意而不是直接Ctrl+D继续,会再重启。
当输入密码之后,正常会出现下面的提示:
(Repair filesystem) 1 #
此时就可以输入fsck或者fsck -A对磁盘进行修复检查,执行后可能出现一堆询问,按yes即可。
(Repair filesystem) 1 #fsck -A (Repair filesystem) 2 #
1.9 命令dd:转换或复制文件
【功能说明】
命令dd具有复制文件、转换文件和格式化文本的功能
【语法格式】
dd [option]
dd [选项]
【选项说明】
命令dd的参数及说明
参数选项 |
解释说明(带*的为重点) |
If=<输入文件> |
从指定文件读取,全程为input file(*) |
of=<输出文件> |
写入到指定文件,全程为output file(*) |
bs=<字节数> |
一次读写的字节数,全程为block size(8) |
count=<块数> |
指定复制block的块的个数 |
Ibs=<字节数> |
一次读的字节,默认512 |
obs=<字节数> |
一次写的字节,默认512 |
conv-<格式> |
格式转换 ucase 把字母由小写转换为大写 lcase 把字母由大写转换为小写 |
【使用范例】
将/dev/sda1分区复制(备份)到文件中。
[root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home /dev/sdf2 3.4G 3.2M 3.2G 1% /mnt/data2 [root@A ~]# dd if=/dev/sde of=/dev/sde1 记录了12582912+0 的读入 记录了12582912+0 的写出 6442450944字节(6.4 GB)已复制,22.9898 秒,280 MB/秒
删除/dev/sde1分区数据
这个操作十分危险,请做好快照
从/dev/zero设备读取数据,写入或覆盖/dev/sdf2的数据
[root@A ~]# ls /mnt/data2 a.hml b.hml c.hml d.hml e.hml lost+found [root@A ~]# dd if=/dev/zero of=/dev/sdf2 dd: 正在写入"/dev/sdf2": 设备上没有空间 记录了7213186+0 的读入 记录了7213185+0 的写出 3693150720字节(3.7 GB)已复制,82.8028 秒,44.6 MB/秒 [root@A ~]# ls /mnt/data2 [root@A ~]# [root@A ~]# touch /mnt/data2/{1..5}.htl touch: 无法创建"/mnt/data2/1.htl": 只读文件系统 touch: 无法创建"/mnt/data2/2.htl": 只读文件系统 touch: 无法创建"/mnt/data2/3.htl": 只读文件系统 touch: 无法创建"/mnt/data2/4.htl": 只读文件系统 touch: 无法创建"/mnt/data2/5.htl": 只读文件系统 [root@A ~]# Message from syslogd@web01 at Jan 31 16:57:01 ... kernel:journal commit I/O error
生成任意大小的测试文件
[root@A ~]# dd if=/dev/zero of=test.data bs=1M count=4 记录了4+0 的读入 记录了4+0 的写出 4194304字节(4.2 MB)已复制,0.00477111 秒,879 MB/秒 [root@A ~]# ll -h test.data -rw-r--r-- 1 root root 4.0M 1月 31 17:13 test.data
使用dd复制文件并进行格式化转换的例子
[root@A ~]# cat aa I am yanhuihuang my QQ is 88888888 [root@A ~]# dd if=aa conv=ucase of=ab 记录了0+1 的读入 记录了0+1 的写出 35字节(35 B)已复制,0.00025041 秒,140 kB/秒 [root@A ~]# cat ab I AM YANHUIHUANG MY QQ IS 88888888
1.10 命令mount:挂载文件系统
【功能说明】
命令mount可以将指定的文件系统挂载到目录,在linux系统下必须先挂载所有的设备,然后才能被访问,挂载起始就是为要访问的设置开个门。
【语法格式】
mount [ options] device dir
mount [ 选项] 设备 目录
【选项说明】
命令mount的参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-l |
显示系统已经挂载的设备的相关信息 |
-a |
根据/etc/fstab文件里的配置挂载文件系统 |
-t |
指定挂载的文件系统类型(*),例如,文件系统类型有,nfs(网络文件系统),iso9660(挂载CD-ROM光盘),auto(自动检测文件系统)。如果不设置-t参数,或使用-t auto参数,mount命令会自行选择挂载的文件类型。 |
-o |
后接一些挂载的选项,是安全,性能优化的重要选项(*) |
-r |
只读挂载,等同于-o ro的挂载方式 |
-w |
读写挂载,等同于-o rw的挂载方式 |
命令mount的 -o参数可接的选项
参数选项 |
解释说明(带*的为重点) |
async |
所涉及文件系统I/O的操作都是异步处理,即数据不会同步写入到磁盘,而是写入到缓冲区中,这种设置会提高系统的性能,但同时也会降低数据的安全性,一般在生产环境下不推荐使用。除非对性能要求很高,对数据安全性要求不高的业务。 |
sync |
与async相反,即有i/o操作时,都会同步处理i/o,即把数据同步写入硬盘,此参数会牺牲一部分i/o性能,但是换来的是系统突发停机后数据的安全性 |
atime |
在每次数据访问时,都会同步更新每次访问的文件的inode的访问时间,在高并发环境下,应用此选项,可以在一定程度上提高系统i/o的性能 |
noatime |
不更新文件系统上文件的inodef访问时间,在高并发环境下,应用此选项,可以在一定程度上提高系统i/o的性能 |
nodiratime |
不更新文件系统上目录的inodef访问时间,在高并发环境下,应用此选项,可以在一定程度上提高系统i/o的性能 |
auto |
通过-a参数能够被自动挂载 |
noauto |
不会自然挂载文件系统 |
defaults |
默认值包括rw、suid、dev、exec、auto、nouser、async、、etc/fstab文件挂载配置的很多情况下都使用默认值 |
exec |
允许执行二进制程序,取消该参数,可以提升系统的安全性 |
noexec |
不能执行二进制程序 |
nosuid |
不允许suid(Linux的特殊权限)特殊功能生效 |
nouser |
禁止一个普通用户挂载该文件系统,这是挂载时的默认选项 |
remount |
尝试重新挂载一个已经挂载了的文件系统,其通常用于改变一个文件系统的挂载标志,从而使得一个只读文件系统变得可写,这个动作不会改变设备或者挂载点,提示一下,当系统发生故障时或者进入单用户模式、救援模式时,会发现根文件系统经常会变成只读文件系统,不允许修改,此时该命令就派上用场了,具体命令为:mount -o remount,rw / 会将根文件系统重新挂载使其可写,在单用户模式或者救援模式修改系统时该命令十分重要。 |
ro |
只读挂载 |
rw |
读写挂载 |
【使用范例】
显示系统已经挂载的信息
[root@A ~]# mount /dev/mapper/vg_root-lv_root on / type ext4 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) /dev/mapper/vg_root-lv_home on /home type ext4 (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) nfsd on /proc/fs/nfsd type nfsd (rw) /dev/sdf2 on /mnt/data2 type ext4 (rw) [root@A ~]# mount -l /dev/mapper/vg_root-lv_root on / type ext4 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) /dev/mapper/vg_root-lv_home on /home type ext4 (rw) sunrpc on /var/lib/nfs/rpc_pipefs type rpc_pipefs (rw) nfsd on /proc/fs/nfsd type nfsd (rw) /dev/sdf2 on /mnt/data2 type ext4 (rw)
对系统的光驱进行挂载
[root@A ~]# mkdir -p /mnt/cdrom [root@A ~]# mount -t iso9660 -o,loop /dev/sr0 /mnt/cdrom [root@A ~]# cd /mnt/cdrom [root@A cdrom]# ls CentOS_BuildTag GPL Packages RPM-GPG-KEY-CentOS-6 RPM-GPG-KEY-CentOS-Testing-6 EFI images RELEASE-NOTES-en-US.html RPM-GPG-KEY-CentOS-Debug-6 TRANS.TBL EULA isolinux repodata RPM-GPG-KEY-CentOS-Security-6
使用性能及安全挂载参数选项(-o多选项)的企业案例
[root@client ~]# mount -t nfs -o nosuid,noexec,nodev,noatime,10.16.50.243:/data /data
生产场景文件系统故障解决案例
由于系统等问题,在工作中可能造成文件系统只读,这时就需要重新挂载根(/)为读写模式
[root@client ~]# mount -o remount,rw /
生产场景配置fstab后防止开机启动出错案例
在工作中,当添加新的磁盘时,会有永久性挂载的需求,此时就会配置/etc/fstab这个文件,但是这个文件若配置有问题可,能造成系统重启后无法开机,因此配置好fstab文件后可先用mount -a读取/etc/fstab进行挂载测试,如果能挂在成功,那么重启一般也会正常,反之则会出现异常。
[root@A ~]# mount -a mount: mount point /mt/data2 does not exist [root@A ~]# vi /etc/fstab # # /etc/fstab # Created by anaconda on Tue Jul 5 11:04:36 2016 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/vg_root-lv_root / ext4 defaults 1 1 UUID=218ebb60-cc90-4911-ae01-034e6d351867 /boot ext4 defaults 1 2 /dev/mapper/vg_root-lv_home /home ext4 defaults 1 2 /dev/mapper/vg_root-lv_swap swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 /dev/sdf2 /mnt/data2 ext4 defaults 0 0 "/etc/fstab" 17L, 933C written [root@A ~]# mount -a [root@A ~]#
1.11 命令umount:卸载文件系统
【功能说明】
命令umount可以卸载已经挂载的文件
【语法格式】
umount [option] {dir|device}...
umount [选项] {目录|设备}...
【选项说明】
命令umount的参数及说明
参数选项 |
解释说明(带*的为重点) |
-f |
强制删除(*) |
-l |
懒惰的卸载,将文件系统从文件系统层次结构分离出来,并清除对文件系统的所有引用。一般和-f参数配合使用其卸载效果更佳(*) |
【使用范例】
卸载已经挂载的光盘
[root@client ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root ext4 50G 2.2G 45G 5% / tmpfs tmpfs 16G 0 16G 0% /dev/shm /dev/sda1 ext4 477M 33M 419M 8% /boot /dev/mapper/vg_root-lv_home ext4 45G 53M 43G 1% /home /dev/sr0 iso9660 4.4G 4.4G 0 100% /mnt/cdrom [root@client ~]# umount /mnt/cdrom [root@client ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root ext4 50G 2.2G 45G 5% / tmpfs tmpfs 16G 0 16G 0% /dev/shm /dev/sda1 ext4 477M 33M 419M 8% /boot /dev/mapper/vg_root-lv_home ext4 45G 53M 43G 1% /home
在当前目录等环境下强制卸载
[root@A ~]# umount -lf /mnt/data2
1.12命令df:报告文件系统磁盘空间的使用情况
【功能说明】
显示文件系统磁盘使用情况
【语法格式】
命令df的参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-a |
显示所有文件 |
-h |
以容易理解的格式显示磁盘的使用情况(*) |
-i |
显示文件系统的inode信息(*) |
-t |
显示指定类型的磁盘 |
-T |
列出文件系统的类型 |
【使用范例】
显示磁盘的使用情况
[root@A ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/sr0 iso9660 4.4G 4.4G 0 100% /mnt/cdrom /dev/sda1 ext4 477M 33M 419M 8% /boot tmpfs tmpfs 16G 0 16G 0% /dev/shm /dev/sdf2 ext4 3.4G 6.9M 3.2G 1% /mnt/data2
显示磁盘使用情况的各列信息及说明
列信息 |
说明 |
Filesystem |
文件系统对应的设备文件的路径名(一般是硬盘上的分区) |
Type |
文件类型 |
Size |
分区的大小(M,G,T) |
Used |
分区使用大小 |
Avail |
分区空闲大小 |
Use% |
使用百分比 |
Mounted on |
文件挂载点 |
1K-blocks |
分区大小(单位为block) |
[root@A ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda1 487652 33508 428544 8% /boot tmpfs 16438172 0 16438172 0% /dev/shm /dev/sdf2 3484320 7064 3296928 1% /mnt/data2
不加参数和文件参数的例子
[root@A ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vg_root-lv_root 51475068 2225836 46627792 5% / /dev/mapper/vg_root-lv_home 46902216 53484 44459536 1% /home /dev/sr0 4523182 4523182 0 100% /mnt/cdrom /dev/sda1 487652 33508 428544 8% /boot tmpfs 16438172 0 16438172 0% /dev/shm /dev/sdf2 3484320 7064 3296928 1% /mnt/data2 [root@A ~]# df /usr/ Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vg_root-lv_root 51475068 2225836 46627792 5% / [root@A ~]# df /boot/ Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda1 487652 33508 428544 8% /boot
了解参数-h的用法
[root@A ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/vg_root-lv_root 50G 2.2G 45G 5% / /dev/mapper/vg_root-lv_home 45G 53M 43G 1% /home /dev/sr0 4.4G 4.4G 0 100% /mnt/cdrom /dev/sda1 477M 33M 419M 8% /boot tmpfs 16G 0 16G 0% /dev/shm /dev/sdf2 3.4G 6.9M 3.2G 1% /mnt/data2
参数i显示inode的使用情况
[root@A ~]# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/mapper/vg_root-lv_root 3276800 67079 3209721 3% / /dev/mapper/vg_root-lv_home 2990080 103 2989977 1% /home /dev/sr0 0 0 0 - /mnt/cdrom /dev/sda1 128016 39 127977 1% /boot tmpfs 4109543 1 4109542 1% /dev/shm /dev/sdf2 225792 11 225781 1% /mnt/data2
参数t显示指定类型的磁盘
[root@A ~]# df -t ext4 Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/vg_root-lv_root 51475068 2225836 46627792 5% / /dev/mapper/vg_root-lv_home 46902216 53484 44459536 1% /home /dev/sda1 487652 33508 428544 8% /boot /dev/sdf2 3484320 7064 3296928 1% /mnt/data2
参数-T列出了文件系统的类型
[root@A ~]# df -T Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/mapper/vg_root-lv_root ext4 51475068 2225836 46627792 5% / /dev/mapper/vg_root-lv_home ext4 46902216 53484 44459536 1% /home /dev/sr0 iso9660 4523182 4523182 0 100% /mnt/cdrom /dev/sda1 ext4 487652 33508 428544 8% /boot tmpfs tmpfs 16438172 0 16438172 0% /dev/shm /dev/sdf2 ext4 3484320 7064 3296928 1% /mnt/data2
1.13 命令mkswap:创建交换分区
【功能说明】
命令mkswap是在Linux系统里创建交换分区的工具,当系统没有交换分区或交换分区不够用时,可以新建一个交换分区。
【语法格式】
mkswap [option] device...
mkswap [选项] 文件设备...
【使用说明】
命令mkswap的参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-c |
建立交换分区之前,首先检查磁盘是否有损坏的区块 |
-f |
强制执行操作 |
【使用案例】
创建交换分区
[root@A ~]# mkswap -f /dev/sdc Setting up swapspace version 1, size = 4194300 KiB no label, UUID=d401b170-de48-41d7-84a4-dfa0fafa9c11
1.14 命令swapon:激活交换分区
【功能说明】
使用mkswap命令创建交换分区后,分区并没有生效,还需要使用swapon命令使之生效。
【语法格式】
swapon [option]
swapon [选项]
【选项说明】
参数选项 |
解释说明(带*的为重点) |
-s |
显示所有交换分区的信息 |
【使用范例】
激活交换分区
[root@A ~]# free -m total used free shared buffers cached Mem: 32105 6730 25375 6144 46 6305 -/+ buffers/cache: 378 31727 Swap: 4031 0 4031 [root@A ~]# swapon /dev/sdc [root@A ~]# free -m total used free shared buffers cached Mem: 32105 6733 25372 6144 46 6305 -/+ buffers/cache: 381 31724 Swap: 8127 0 8127
查看交换分区
[root@A ~]# swapon -s Filename Type Size Used Priority /dev/dm-1 partition 4128764 0 -1 /dev/sdc partition 4194300 0 -2
8.15 命令swapoff:关闭交互分区
【功能说明】
如果需要回收磁盘资源,则可以使用swapoff关闭交换分区释放磁盘空间
【语法格式】
swapoff [option]
swapoff [选项]
【选项说明】
命令swapoff参数选项及说明
参数选项 |
解释说明(带*的为重点) |
-a |
关闭所有交换分区 |
关闭交换分区
[root@A ~]# swapoff /dev/sdc [root@A ~]# free -m total used free shared buffers cached Mem: 32105 6730 25375 6144 46 6305 -/+ buffers/cache: 378 31727 Swap: 4031 0 4031 [root@A ~]# swapoff -a [root@A ~]# free -m total used free shared buffers cached Mem: 32105 6727 25378 6144 46 6305 -/+ buffers/cache: 375 31730 Swap: 0 0 0 [root@A ~]#
1.16 命令sync:刷新文件系统缓冲区
【功能说明】
命令sync会将内存缓冲内的数据强制刷新到磁盘
【语法格式】
sync [option]
sync [选项]
【使用范例】
手动将数据从缓冲刷到磁盘中并重要系统
[root@A ~]# sync [root@A ~]# sync [root@A ~]# reboot
[root@A ~]# df Filesystem 1K-blocks Used Available Use% Mounted on /dev/sda1 487652 33508 428544 8% /boot tmpfs 16438172 0 16438172 0% /dev/shm /dev/sdf2 3484320 7064 3296928 1% /mnt/data2