1.设备的查看
1)发现系统中的设备
fdisk 是用于管理磁盘分区的应用程序
fdisk -l ##查看系统中真实存在的设备
cat /proc/partitions ##查看年系统中被系统识别的设备
2)系统发现的,被系统利用的,有id信息的
blink ##查看设备的id信息
3)发现并且在挂载的设备
df -h
df -H
2.设备名称的读取
/dev/sda s=sata d=disk a=a ##第一块sata硬盘
/dev/sda1 ##第一块sata硬盘第一个分区
/dev/vda ##虚拟化硬盘
/dev/cdrom ##光驱
3.设备分区信息
1)mbr主引导记录446个字节
2)mpt主分区表64个字节
3)硬盘的有效性标识"55aa"2个字节
4)一个主分区占用16个字节记录分区信息
5)一块硬盘上如果用mbr的分区方式最多可以存在4个主分区
6)mbr分区方式主分区和扩展分区最多16个(可用)
7)gpt分区128个
4.分区的划分
[[email protected] ~]#fdisk /dev/vdb
elcome to fdisk (util-linux2.23.2).
Changes will remain in memory only,until you decide to write them.
Be careful before using the writecommand.
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 ##删除分区
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
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 ##新建分区
Partition type:
p primary (0 primary, 0 extended, 4 free) ##分区类型位主分区
e extended ##分区类型位扩展分区
Select (default p): ##默认位主分区
Using default response p
Partition number (1-4, default 1): 1 ##主分区id
First sector (2048-20971519, default2048): ##此分区起始位置 (一般选择默认)
Using default value 2048
Last sector, +sectors or +size{K,M,G}(2048-20971519, default 20971519): +100M ##分区大小
Partition 1 of type Linux and of size100 MiB is set
Command (m for help): p
Disk /dev/vdb: 10.7 GB, 10737418240bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512bytes
Sector size (logical/physical): 512bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes /512 bytes
Disk label type: dos
Disk identifier: 0x193488c3
Device Boot Start End Blocks Id System
/dev/vdb1 2048 206847 102400 83 Linux
Command (m for help): wq ##保存推出,如果安q表示放弃更改退出
ps:
当扩展第四块分区时,系统会推荐使用扩展分区
建立分区,如果建立了四个主分区,则无论分区大小都不能继续添加分区,需要删除并建立扩展分区
如果有一个扩展分区,则可以继续在扩展分区里添加分区(此时不询问添加的分区类型)
fdisk -l 可以查看划分的分区是主分区还是扩展分区
[[email protected] mnt]# partprobe ##同步分区表
新建分区不能被识别,需要执行才能partprobe才能使用新的分区表
cat /proc/partitions ##查看系统识别的分区信息
mkfs.xfs /dev/vdb1 ##格式化
blkid ##查看可用设备,可以看到被格式化好的/dev/vdb1
mount /dev/vdb5 /mnt ##临时挂载(新建分区后一定要同步分区表,再格式化后才能挂载)
5.将分区修改为swap分区
1)fdisk /dev/vdb #分区
Command (m for help): t
2)fdisk 中修改swap分区标识
gpt划分方式下 14
mbr划分方式下 82
3)同步分区表
partprobe
4)添加好交换分区后需要格式化交换分区
mkswap /dev/vdb6
5)格式化为swap分区类型后,需要**swap分区
swapon -a /dev/vdb5 ##**swap分区
swapon -s ##查看swap分区
swapoff /dev/vdb5 ##关闭swap分区
6)
vim /etc/fstab
/dev/vdb5 swap swap defaults 0 0
6.永久挂载
/dev/vdb1 linux
/dev/vdb2 linux swap
vim /etc/fstab ##永久挂载
devic mountpoint ftype defaults(mountpoint) 0 0
/dev/vdb1 /mnt xfs defaults 0 0
/dev/vdb2 /mnt swap defaults 0 0
mount -a #使/etc/fstab中记录的挂载策略生效
mount -o noatime /dev/vdb1 ##挂载不更新时间
mount -o remount,ro /dev/vdb1 ##挂载,权限为只读
当另一个shell在操作/mnt时不能挂载
##进程发现方式
fuser -vm /mnt/
lsof /mnt/
##进程终止方式
kill -9 pid
fuser -kvm /mnt/
7.设定分区方式为gpt
[[email protected] ~]# parted /dev/vdb
GNU Parted 3.1
Using /dev/vdb
Welcome to GNU Parted! Type 'help' toview a list of commands.
(parted) mklabel
New disk label type? gpt
Warning: The existing disk label on/dev/vdb will be destroyed and all data on this disk will be lost. Do you
want to continue?
Yes/No? yes
(parted) quit
修改分区方式为swap
8.配额
mount -o usrquota /dev/vdb1 /pub 挂载,加上配额参数打开,默认是关闭的,加-o
edquota -u student 打开配置配额文件
Disk quotas for user student (uid1000):
设备 已存在文件大小 软额度 最大额度 存在文件数量
Filesystem blocks soft hard inodes soft hard
/dev/vdb1 102400 0 40000 1 0 0
su - student
dd if=/dev/zero of=/pub/file bs=1Mcount=500
dd: error writing ‘/pub/file’: Diskquota exceeded
101+0 records in
100+0 records out
104857600 bytes (105 MB) copied,0.0916726 s, 1.1 GB/s
quota
Disk quotas for user student (uid 1000):
Filesystem blocks quota limit grace files quot
挂载到public之后再修改public权限,若先更改权限则挂载后权限恢复为原来的权限
9.分区加密
1)磁盘加密
fdisk /dev/vdb 创建新的分区
cryptsetup luksFormat /dev/vdb1 加密
cryptsetup open /dev/vdb1 westos 打开加密的分区
mkfs.xfs /dev/mapper/westos 格式化分区为xfs格式
mount /dev/mapper/westos /mnt/ 挂载
umount /mnt/ 卸载
cryptsetup close westos 关闭加密分区
2)加密磁盘的永久挂载
vim /etc/crypttab:
解密后设备管理文件 设备 加密字符存放文件
westos /dev/vdb3 /root/luksfile
vim /root/luksfile(内容是设置的密码) 加密字符文件
chmod 600 /root/luksfile 密码文件600权限,只有超级用户可以修改
cryptsetup luksAddKey /dev/vdb1 /root/luksfile 关联设备和密码文件
vim /etc/fstab 自动挂载
“/dev/mapper/westos /mnt xfs defaults 00”
reboot server 或mount -a 检测是否生效
3)加密清除
umount /mnt 卸载
vim /etc/fstab 删除写入的信息
vim /etc/crypttab 清空
rm -fr /root/luksfile 删除密码
cryptsetup close westos 关闭
mkfs.xfs /dev/vdb1 -f
10.磁盘阵列
fdisk /dev/vdb 创建三个分区,分区标示为raid(13)
mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3} 制作双磁盘一个闲置
打开一个新的shellwatch -n 1 ‘cat /proc/mdstat’ 监控
mkfs.xfs /dev/md0 格式化
mount /dev/md0 /mnt/ 挂载
mdadm -f /dev/md0 /dev/vdb1 失效指定硬盘
mdadm -D /dev/md0 查看raid状态
mdadm -r /dev/md0 /dev/vdb1 删除指定硬盘
mdadm -a /dev/md0 /dev/vdb1 添加指定硬盘
umount /mnt/ 取消挂载
mdadm -S /dev/md0 停止使用
fdisk /dev/vdb
删除分区
partprobe 同步分区表