Linux学习笔记(二)_系统设定_磁盘

来源:互联网 发布:高晓松 吴彦祖 知乎 编辑:程序博客网 时间:2024/06/07 16:20

磁盘相关

lsblk
这个指令可以完整的看到,所有可用块设备信息。即使并没有挂载。

df
这个指令是根据文件系统来显示信息,可以看到使用情况
# df /dir : 就可以看到/dir 这个目录是在分区里

blkid
显示分区的UUID 号,文件系统的类型

parted
查看磁盘的分区信息,还可以看到每个扇区的大小

fdisk/gdisk
给磁盘分区
为了分区后不重启 可执行 >partprobe -s 来将分区信息写入核心
在/proc/partitions 实时记录了核心中的分区信息 。

mkfs.*
mkfs.btrfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.minix mkfs.xfs
磁盘格式化。
参数-b 可以设定block大小 linux最大限制为4K。
参数-i size= 设定inode的大小
对于xfs文件系统有几个个调优选项就是 “-d agcount= n su=m sw=l 这个n 写上你CPU的core数,如果有超线程 可以写上VCPU总数; m写上(如果你的磁盘是RAID) RAID的 stripe;l 写上除了备份盘外使用的磁盘数。

dumpe2fs -h 用来查看superblock的信息。
挂载 mount -t 指定类型。用mount挂载的会实时出现在/etc/mstab里,要想重启后生效 还需要将挂载信息写到/etc/fstab里。
这时候,linux要想认识不同的文件系统的磁盘,就需要透过/lib/modules/$(uname -r)/fs/下加载相应的驱动程序。

*关于利用大文件制作分区

dd if=/dev/zero of=loop.vm bs=1M count=512
mkfs.* loop.vm
mount /dir loop.vm

交换分区
跟内存有关,当内存紧张时,会将一部分数据暂存在交换分区里。
mkswap 用来格式化交换分区
swapon 用来启动交换分区

swapon -s #查看交换分区详细信息

swapoff 用来卸载
磁盘阵列
软件RAID : mdadm

mdadm -C /dev/md0 -n -l -x /dev/sd{b,c…}
创建/dev/md0 这个阵 列,-n 使用的盘数 -l RAID的级别 -x 备份的盘数
mdadm -D /dev/md0 #查看详细信息
mdadm /dev/md0 -r /dev/sdf #从阵列卸掉/dev/sdf
mdadm /dev/md0 -a /dev/sdg #添加/dev/sdg 到阵列
对于删除这个阵列 需要注意
mdadm -S /dev/md0 #停止阵列
dd if=/dev/zero of=/dev/sd{b,c,…} bs=1M count=10
(需要进行写0操作,清空阵列信息)

功能/命令 | 物理卷管理 | 卷组管理 | 逻辑卷管理 |
| —–
扫描 |pvscan |vgscan |lvscan|
建立 pvcreate vgcreate lvcreate
显示 pvdisplay vgdisplay lvdisplay
删除 pvremove vgremove lvremove
扩展 vgextend lvextend
缩小 vgreduce lvreduce

功能/命令 物理卷管理 卷组管理 逻辑卷管理 扫描 pvscan vgscan lvscan 建立 pvcreate vgcreate lvcreate 显示 pvdisplay vgdisplay lv display 删除 pvremove vgremove lvremove 扩展 vgextend lvextend 缩小 vgreduce lvreduce

pvcreate /dev/sd{b,c,d}
vgcreate -s 16M storage /dev/sd{b,c,d} #创建卷组并指定PE 大小
lvcreate -L 5G -n lvm1 storage #创建逻辑卷lvm1,既产生/dev/storage/lvm1
lvextend -L 6G /dev/storage/lvm1 #扩容
lvreduce-L 5G /dev/storage/lvm1 #缩减
vgextend/vgremove storage /dev/sdg

快照:
mount /dev/vg/lvm /sd
lvcreate -L 200M -s -n snap /dev/vg/lvm
umout /sd
lvconvert -merge /dev/vg/snap #恢复

quota 磁盘配额
XFS 文件系统
1,修改/etc/fstab
/dev/mapper/vggroup-lvm01 /home xfs defaults,uquota,gquota 0 0

在defaults 后添加 uquota ,gquota后,重新挂载。

**xfs_quota -x -c ‘print’
xfs_quota -x -c ‘state’ #查看信息
User quota state on /home (/dev/mapper/vggroup-lvm01) #对用户配额
Accounting: ON
Enforcement: ON
Inode: #72 (2 blocks, 2 extents)
Group quota state on /home (/dev/mapper/vggroup-lvm01)#对组配额
Accounting: ON
Enforcement: ON
Inode: #73 (2 blocks, 2 extents)
Project quota state on /home (/dev/mapper/vggroup-lvm01)#对目录配额
Accounting: OFF
Enforcement: OFF
Inode: #73 (2 blocks, 2 extents)
Blocks grace time: [7 days] #超过软配额后的警告时间
Inodes grace time: [7 days]
Realtime Blocks grace time: [7 days]

xfs_quota -x -c ” report -[u|g|p]bih ” /home
查看u,g,p三种配额的使用情况
xfs_quota -x -c “limit -[u|g|p] bsoft=300M bhard=350M name” /home
配置 name 在/home 的配额信息,bsoft表示软block大小,也可以用isoft设置inode的数量。
name 是对应的用户名或组名,特别注意当是给目录配额时。
目录配额:
首先需要两个配置文件 /etc/projects;/etc/projid 。
echo “[标识符]:dir” >> /etc/projects
echo “myquotapro:[标识符]” >>/etc/projid
xfs_quota -x -c “project -s myquotapro” #初始化,myquotapro 就跟用户名一样的用。

*p(目录) 和 g(组) 不能一起用,若要使用p 的话,要到/etc/fstab 里defaults 后把gquota删掉,加上pquota.再重新挂载。

修改 grace time
xfs_quota -x -c “timer -[u|g|p] -[b|i] 14days” /home