课堂笔记:
1 磁盘这一章,工作中使用场景
扩展: 磁盘有坏道的修复 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
4.1 df 命令
df (disk filesystem的简写) 用于查看已挂载磁盘的总容量、使用容量、剩余容量等。可以不加任何参数,默认以KB为单位显示。
df的常用选项有-i,-h,-k,-m. /dev,/dev/shm为内存分区,大小为内存的1/2;/run,/sys/fs/cgroup等分区都是tmpfs.这些文件为临时系统文件。
-i 表示查看inodes的使用状况,如使用100% 即时空间有富余,也会提示磁盘空间已满。
-h 表示使用合适的单位显示,例如GB。
-K和-M :表示以KB和MB 为单位显示。
4.2 du 命令
du 命令(disk useage)用来查看某个目录或文件所占空间的大小。
格式: du(-abckmsh) 【文件或者目录名】
-a 表示全部文件和目录的大小都列出来。
-h, 表示系统自动调节单位。
-s,表示只列出总和。
一般会用 du -sh filename 命令。
4.3 磁盘分区
给虚拟机增加一块磁盘的操作 :
1. 在虚拟机选项卡,选择“设置”。
2. 按照向导默认下一步提示操作。e写,
3. 在“指定磁盘容量” ,选择“将虚拟机磁盘存储为单个文件”选择。
4. 添加完成磁盘之后,重启系统。
fdisk -l 把系统中所有的磁盘设备以及分区表显示出来
fdisk 下命令参数:
n: 表示建立一个新的分区。
w: 表示保存。
q: 表示退出
d:表示删除一个分区
划分分区,最多可划分4个主分区。如果需要划分超过4个分区,则把第四个分区为扩展分区。逻辑分区从ID为5开始,而且分区号是连续的。
4.4 格式化磁盘分区
windows 下的文件系统有FAT32和NTFS. 而centOS 是以XFS作为默认的文件系统。
格式化磁盘命令: mke2fs,mkfs.ext2,mkfs.ext3,mkfs.ext4和mkfs.xfs
这几个命令名称不同,其实都是一样的。
命令选项:
-b: 表示分区时设定每个数据区块占用的空间大小。
-i: 表示设定inode的大小。
-N:表示设定的inode的数量。有时默认的inode数不够用,所以要自定义的inode的数量。
-C: 表示在格式化前先检测一下磁盘是否有问题,加上这个选项,速度会很慢。
-I: 表示预设该分区的标签
-j: 表示EXT32格式的分区。如果采用专门mkfs.ext3格式,不用加这个选项。
-t:用来指定文件系统的类型。可以是ext2,ext3,也可以是ext4.
磁盘被格式化指定为ext4 时,必须用mkfs.xfs. mke2fs并不支持把分区格式化成XFS类型。
磁盘块的概念: ext4 文件系统的默认块大小为4096B(即4KB),在格式化时,可以指定块大小为1024B,2048B,4096B.不能超过4096B, 一旦超过,就不正正常挂载了。
-l 指定分区标签:
4.5 磁盘挂载
格式化后的磁盘其实是一个块设备文件,类型为b.
在挂载某个分区之前,需要先建立一个挂载点,这个挂载点是以目录的形式出现的。一旦把某个分区挂载到这个挂载点下,再往这个目录写数据时,就都会写到该分区中。
挂载点目录必须是个空目录:
挂载步骤:
1. 建立空目录
2.用Mount 把格式化分区后的磁盘挂载到空目录上。
# mkdir /newdir
#touch /newdir/newfile.txt
#ls /newdir/
#mount /dev/sdb5 /newdir/
# df -h | grep -v tmpfs 产看已挂载的磁盘信息
umount 卸载挂载点。
#umont /newdir/
# df -h | grep tmpfs
:
带标签方式挂载磁盘:
# mount LABEL = TEST123 /newdir
# df -h | grep -v tmpfs
/etc/fstab 配置文件:
第一列:分区的标识,可以写分区的LABEL,分区的UUID,也可以写分区名。
第二列:挂载点
第三列:分区的格式
第四列: mount 的一些挂载参数。一般是default
第五列: 是否被dump 备份。 1标识备份,0标识不备份。
第六列:开机时是否自检磁盘。1和2都标识检测。0 表示不检测。
mount -a 命令把闲置未挂载的磁盘都自动挂载在空目录上。
mount -t : 用来指定挂载的分区类型,默认不指定,会自动识别
mount -o, 用来指定挂载的分区有哪些特性。
umount -l :强制卸载挂载的磁盘分区。
4.6 SWAP 文件增加虚拟内存
如果遇到虚拟内存不够用的情况,就必须增加虚拟内存。
增加虚拟内存的思路如下:
1. 建立swapfile
2. 格式化为: swap格式
3. 启用该虚拟磁盘
# dd if= /dev/zero of=/tmp/newdisk bs=1m count=1024 建立SWAPFILE
# mkswap -f /tmp/newdisk 格式化为swap
# swapon /tmp/newdisk 挂账该虚拟磁盘
# free -m 查看内存的使用情况