df命令用于查看已挂载磁盘的总容量、使用用量、剩余容量、可以不加任何参数、默认以KB为单位显示。
-h :表示使用合适的单位显示。
-i :表示查看inodes的使用情况,如果inodes已用100%,即是磁盘有空间,也会提示磁盘空间已满。
-k 、-m :分别表示以KB和MB为单位显示。
du命令用来查看某个目录或者文件的大小。(du -sh 文件名 这个用法叫多)
-a :表示全部文件和目录都列出来。
-s :表示只列出总和。
-h :表示自动调节单位显示。
磁盘分区:
1.在当前虚拟机选项卡鼠标右击,选择“设置” 如图所示:
2.此时,会弹出“虚拟机设置”对话框。在左侧选中“磁盘”,然后点击下方的“添加”按钮,此时会弹出”添加硬件向导“对话框,点击“下一步”按钮。
3."选择磁盘类型"这里保持默认,点击“下一步”按钮。
4.“选择磁盘”对话框,也保持默认,点击“下一步”按钮
5.“指定磁盘容量”这里设置为“最大磁盘大小 10G” ,然后选择“将虚拟磁盘存储为单个文件按钮”
6.点击下一步,最后点完成---确认,最终完成添加新的虚拟磁盘。
7最后重启一下虚拟机,系统才可以识别(fdisk -l 可以查看)
使用fdisk 命令进行磁盘分区:
以上所有操作,在最后要按w保存才可以生效,如果按q就直接不保存退出
[root@aming01 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0xfa8ec2e4 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfa8ec2e4
设备 Boot Start End Blocks Id System
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): e //这里直接创建扩展分区
分区号 (1-4,默认 1):
起始 扇区 (2048-20971519,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519):+3G
分区 1 已设置为 Extended 类型,大小设为 3 GiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfa8ec2e4
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 6293503 3145728 5 Extended //扩展分区
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 1 extended, 3 free)
l logical (numbered from 5)
Select (default p): p
分区号 (2-4,默认 2):3 //创建主分区,默认是从2开始,也可以选择3开始
起始 扇区 (6293504-20971519,默认为 6293504):
将使用默认值 6293504
Last 扇区, +扇区 or +size{K,M,G} (6293504-20971519,默认为 20971519):+1G
分区 3 已设置为 Linux 类型,大小设为 1 GiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfa8ec2e4
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 6293503 3145728 5 Extended
/dev/sdb3 6293504 8390655 1048576 83 Linux
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 1 extended, 2 free)
l logical (numbered from 5)
Select (default p): l //创建逻辑分区
添加逻辑分区 5
起始 扇区 (4096-6293503,默认为 4096):
将使用默认值 4096
Last 扇区, +扇区 or +size{K,M,G} (4096-6293503,默认为 6293503):+1G
分区 5 已设置为 Linux 类型,大小设为 1 GiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfa8ec2e4
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 6293503 3145728 5 Extended
/dev/sdb3 6293504 8390655 1048576 83 Linux
/dev/sdb5 4096 2101247 1048576 83 Linux //逻辑分区从5开始,是连续的;前面1-4是留给主分区的,序号可以不连续(1然后到3了)
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 1 extended, 2 free)
l logical (numbered from 5)
Select (default p): l
添加逻辑分区 6
起始 扇区 (2103296-6293503,默认为 2103296):
将使用默认值 2103296
Last 扇区, +扇区 or +size{K,M,G} (2103296-6293503,默认为 6293503):+1G
分区 6 已设置为 Linux 类型,大小设为 1 GiB
命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 1 extended, 2 free)
l logical (numbered from 5)
Select (default p): l
添加逻辑分区 7
起始 扇区 (4202496-6293503,默认为 4202496):
将使用默认值 4202496
Last 扇区, +扇区 or +size{K,M,G} (4202496-6293503,默认为 6293503):+1G
值超出范围。
Last 扇区, +扇区 or +size{K,M,G} (4202496-6293503,默认为 6293503):+100M
分区 7 已设置为 Linux 类型,大小设为 100 MiB
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfa8ec2e4
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 6293503 3145728 5 Extended
/dev/sdb3 6293504 8390655 1048576 83 Linux
/dev/sdb5 4096 2101247 1048576 83 Linux
/dev/sdb6 2103296 4200447 1048576 83 Linux
/dev/sdb7 4202496 4407295 102400 83 Linux
命令(输入 m 获取帮助):d
分区号 (1,3,5-7,默认 7):6 //删掉6后,7就变成6;所以逻辑分区是连续的
分区 6 已删除
命令(输入 m 获取帮助):p
磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xfa8ec2e4
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 6293503 3145728 5 Extended
/dev/sdb3 6293504 8390655 1048576 83 Linux
/dev/sdb5 4096 2101247 1048576 83 Linux
/dev/sdb6 4202496 4407295 102400 83 Linux
命令(输入 m 获取帮助):w //按w表示保存退出
扩展分区里面有逻辑分区,真正写进去数据的也是逻辑分区
磁盘格式化:
cat /etc/filesystems :查看文件系统支持格式
[root@aming01 ~]# cat /etc/filesystems
xfs //centos7默认的问问你家系统为xfs
ext4
ext3
ext2
nodev proc
nodev devpts
iso9660
vfat
hfs
hfsplus
*
[root@aming01 ~]#
mke2fs常用的参数如下:
-b:表示分区时设定每个数据区块占用的空间大小
-i:表示设定inode的大小
-t:指定文件类型 ,可以是ext2、ext3或者是ext4
-N:表示设定inode的数量。(有时候默认的inode数量不够用,这时候就需要自定义)
[root@aming01 ~]# blkid /dev/sdb1
/dev/sdb1: UUID="0ca7c9de-5d44-47eb-a8a8-86e9cfc6e32f" TYPE="xfs"
[root@aming01 ~]#
[root@aming01 ~]# mkfs.ext4 == mk2fs -t ext4 //这2个是等价,一样的效果
[root@aming01 ~]# mke2fs -b 1024 -m 0.1 /dev/sdb1 //-m这里指定预留空间的大小(有效的利用磁盘空间)
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=1024 (log=0)
分块大小=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
196608 inodes, 3145728 blocks
3145 blocks (0.10%) reserved for the super user
第一个数据块=1
Maximum filesystem blocks=70254592
384 block groups
8192 blocks per group, 8192 fragments per group
512 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409, 663553,
1024001, 1990657, 2809857
Allocating group tables: 完成
正在写入inode表: 完成
Writing superblocks and filesystem accounting information: 完成
[root@aming01 ~]# blkid /dev/sdb1
/dev/sdb1: UUID="1b3eb130-cf04-4e66-afbe-c3be582bb022" TYPE="ext2" //上面没有指定文件系统类型,就会默认为ext2
卸载磁盘使用umount
重新挂载磁盘用remount
blkid命令:查看各个分区的UUID信息,可以避免挂错分区
配置文件cat /etc/fstab 显示了系统启动时需要挂载的各个分区
其实 /etc/fstab (filesystem table) 就是将我们利用 mount 命令进行挂载时, 将所有的选项与参数写入到这个文件中就是了。除此之外, /etc/fstab 还加入了 dump 这个备份用命令的支持! 与启动时是否进行文件系统检验 fsck 等命令有关
手动添加一个swap
[root@aming01 ~]# dd if=/dev/zero of=/tmp/newdisk bs=1M count=100
记录了100+0 的读入
记录了100+0 的写出
104857600字节(105 MB)已复制,4.88048 秒,21.5 MB/秒
[root@aming01 ~]# du -sh /tmp/newdisk
100M /tmp/newdisk
[root@aming01 ~]# mkswap -f /tmp/newdisk
正在设置交换空间版本 1,大小 = 102396 KiB
无标签,UUID=01161fdd-641b-4eb9-b55b-b7eadebe5f0f
[root@aming01 ~]# free -m
total used free shared buff/cache available
Mem: 976 116 610 6 249 680
Swap: 2387 0 2387
[root@aming01 ~]# swapon /tmp/newdisk
swapon: /tmp/newdisk:不安全的权限 0644,建议使用 0600。
[root@aming01 ~]# free -m
total used free shared buff/cache available
Mem: 976 116 610 6 249 680
Swap: 2487 0 2487
[root@aming01 ~]# swapoff /tmp/newdisk
[root@aming01 ~]# free -m
total used free shared buff/cache available
Mem: 976 116 610 6 249 680
Swap: 2387 0 2387
[root@aming01 ~]#
4.13 磁盘故障小案例
因为另外一块磁盘不存在,但是配置文件/etc/fstab中又有挂载的配置,挂载出问题就导致这样的故障,可以编辑下面的配置文件:
vi /etc/fstab 把标记的删掉 把/dev/sdb这一行删掉即可
raid0、raid1、raid5、的工作模式和原来
raid0:把N个物理磁盘合成一个总的虚拟磁盘。有点:可以增加磁盘的IO性能;缺点:只要有一个磁盘数据不正确,整个虚拟磁盘都有影响,安全性差。
raid1:最安全模式,也叫镜像盘,都是以偶数形式出现。每一个物理磁盘都有一块与它数据一致的磁盘搭配。优点,数据安全性好,在坏掉某一个磁盘的时候都不会造成数据的损失。缺点:磁盘的空间利用率只有50%
raid5:(至少3块磁盘),拿一块磁盘空间来进行奇偶校检,容错能力平均分布所有硬盘上,当其中一块硬盘损坏,可以保证其他的硬盘数据正确
,所以raid5的总容量是(N-1)*最低的硬盘容量。 优点:在保证了安全性的前提下最大化使用容量。缺点:会影响整机的性能。
Raid10:至少需要4快硬盘
优势:兼顾安全性和速度。基础4盘的情况下,raid10允许对柜盘2块故障,随着硬盘数量的提示,容错量也会相对应提升。这是raid5无法做到的。
缺点:对盘的数量要求稍高,磁盘使用率为一半。
建议:硬盘数量足够的情况,建议riad10.
扩展: 磁盘有坏道的修复 fsck/e2fsck -a 分区名 https://www.2cto.com/os/201204/126370.html
避免数据丢失的几个策略
1)做raid1、raid10、raid5、raid6
2)做好数据的备份策略 drdb rsync+inotify
2 raid讲解
https://blog.csdn.net/caipeichao2/article/details/52661825
3 dd工具使用场景
1)测试磁盘性能 https://blog.csdn.net/daiyudong2020/article/details/53157558
2)备份硬盘数据 http://zuyunfei.com/2015/06/04/linux-dd/
4 lvm的使用场景介绍 OSS 七牛
阿里云磁盘扩容文档 https://help.aliyun.com/document_detail/25452.html
5 parted分区gpt格式 http://www.apelearn.com/bbs/thread-7243-1-1.html
parted /dev/sdb
print
mklabel gpt 或者 msdos (msdos就是mbr)
mkfs aming1 0 2G //当使用mbr类型时,这里就不能写aming1了,得写primary/extended/logical
rm id
6 关于存储的常识
http://forum.huawei.com/enterprise/zh/thread-274145-1-1.html
https://blog.csdn.net/JesseYoung/article/details/38367217