磁盘管理
1.磁盘有关知识简介
mpt :分区表 硬盘有效性标识 mbr:分区方式 ,最多只能有四个主分区 扩展分区 :扩展分区是一个容器 mbr方式 每个分区最大2Tb 逻辑分区 :容器里面的 gpt GUID 磁碟分割表( GUID Partition Table ,缩写: GPT)其含义为“全局唯一标识磁盘分区表” 与 MBR 最大 4 个分区表项的限制相比, GPT 对分区数量没有 限制 Windows 最大仅支持128 个 GPT 分区 GPT 可管理硬盘大小达到了 18EB swap :交换分区 换空间或交换区是磁盘驱动器上的空间 , 用作当前未使用部分内存的溢出。这样 ,系统就能在主内存中留出空间用于储存当前正在处理的数据 , 并在系统面临主内存空间不足的风险时提供应急溢出
文件系统:
ntfs
ext4
ext2
vfat
fat
xfs
mpt 分区表,mbr与gpt的解释: 1)mrb用于win平台 ,gpt主要用于mac(苹果) 2)MBR分区表与GPT分区表的关系: 与支持最大卷为2TB(Terabytes)并且每个磁盘最多有4个主分区(或3个主分区,1个扩展分区和无限制的逻辑驱动器)的MBR磁盘分区的样式比,GPT磁盘分区样式支持最大卷为18 EB(Exabytes)并且每磁盘的分区数没有上限,只受到操作系统限制(由于分区表本身需要占用一定空间,最初规划硬盘分区时,留给分区表的空间决定了最多可以有多少个分区,IA-64版Windows限制最多有128个分区,这也是EFI标准规定的分区表的最小尺寸)。与MBR分区的磁盘不同,至关重要的平台操作数据位于分区,而不是位于非分区或隐藏扇区。另外,GPT分区磁盘有备份分区表来提高分区数据结构的完整性。
2.磁盘查看命令
fdisk -l
*Fdisk是IBM的老牌分区工具,支持绝大多数操作系统,几乎所有的Linux操作系统都默认装有fdisk;包括在Linux Rescue模式下依然能够使用。
*fdisk是基于MBR的分区工具(是当年IBM设计给PC机来使用的),所以如果需要使用GPT,则无法使用fdisk进行分区
*只有超级用户权限(如root,Uid=
0的;可以用在命令行中输入id来查询)才可以执行fdisk,因为命令都是在/sbin下面,需要特权级的用户
df -TH
blkid
后面两个查看到的一定是可以使用的
使用fdisk -l 查看到的信息
3.分区划分:fdisk
[root@localhost ~]
Welcome
to fdisk (util-linux
2.23.2).
Changes will remain
in memory only,
until you decide
to write them.
Be careful
before using
the write command.
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
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 (
1 primary,
0 extended,
3 free)
e extended
Select (default p): p
Partition
number (
2-
4, default
2):
2
First sector (
206848-
20971519, default
206848):
Using default value
206848
Last sector, +sectors
or +size{K,M,G} (
206848-
20971519, default
20971519): +
200M
Partition
2 of type Linux
and of size
200 MiB
is set
Command (m
for help): wq
The partition table has been altered!
Calling ioctl()
to re-
read partition table.
Syncing disks.
[root@localhost ~]
partprobe
cat /proc/partprobe
mkfs.xfs /dev/vdb1
mount /dev/vdb1 /mnt
mount -a
df
vim /etc/fstab
device mountpoint ftype defaults(mountpoint)
0 0
/dev/vdb1 /mnt xfs defaults
0 0
mount -a
vim /etc/fstab 设置永久挂载:
注意: 在退出时,要看wq之后系统反馈是什么,保存退出后,若显示下图,一定要手动partprobe重读分区表,所以,也可以养成每次退出都手动重读,保证准确率
删除分区时
先使用umount命令解除挂载
注:当挂载点被使用时,无法解除挂载,那么 fuser -vm /mnt 查看mount进程 ,fuser -kvm /mnt 直接结束进程,然后进行解除挂载
解除挂载之后,使用fdisk /dev/vdb命令 删除分区
cat /proc/partitions发现vdb1已经删除
4.设定分区方式,将mkdocs 改为 gpt格式
partd /dev/vdb
..)
help
..)mklabel
..? gpt
..)quit
partprobe
cat /proc/partitions
mkfx.xfs /dev/vdb1
mount /dev/vdb1 /mnt
df
blkid
//最后的信息一定要仔细看,可能会让你重新读分区表或怎么样,这里的提示生级可以忽略
5.添加swap分区
fdisk /dev/vdb
//注意,在t修改之后,要用l开查看你所要使用的分区类型,这里查看到是14
6.更改gpt下的swap 为mkdos下的swap
umount
swapoff
parted /dev/vdb
..)mklabel
..)msdos
..)quit
fdisk /dev/vdb
..)n---->p---->
...(+size)
..)t---->l---->
82---->wq
partprobe
mkswap /dev/vdb1
swapon -a /dev/vdb1
swapon -s
swapoff /dev/vdaN
/dev/vdb swap swap
0 0
//这里查看到需要的分区类型是82,不同的分区方式读的不同,一定要按l仔细查看后选择
7.用文件来添加swap分区
dd
if输入=/dev/zero of输出=/swapfile bs一块大小=1M count一共多大=
1000
mkswap /swapfile
swapon -a /swapfile
swapon -s
swapon -a
... -p number
vim /etc/fstab
man swapon
/swapfile swap swap defaults,pri=n
0 0
然后挂上
首先 man swapon //发现 -p参数可以改变分区的优先级
添加文件配置:
8.删除swap分区
vim /etc/fstab
swapoff /swapfile
swapoff /dev/vdb1
rm -rf /swapfile
fdisk /dev/vdb
partprobe
9.磁盘加密
1.磁盘加密与取消
对文件系统加密 这样,即使破坏了文件系统,文件也不会显示出来,就变成加密字符,谁也用不了了,只能暴力破解。
创建设备,安装加密层,打开加密层格式化解密后设备
fdisk /dev/vdb
cryptsetup luksFormat /dev/vdb1
cryptsetup
open /dev/vdb1
100jkyuanxudong
mkfs.xfs /dev/mapper/
100jkyuanxudong
mount /dev/mapper/
100jkyuanxudong /mnt
2.加密磁盘的永久挂载
vim /etc/crypttab
"解密后设备管理文件 设备 加密字符存放文件"
redhat /dev/vdb1 /root/lukspsfile
vim /root/lukspsfile
chmod 600 /root/lukspsfile
cryptsetup luksAddKey /dev/vdb1 /root/lukspsfile
vim /etc/fstab
/dev/mapper/
100jkyuanxudong /mnt xfs defaults
0 0
reboot
reboot之后:
3.加密清除
vim /etc/fstab
vim /etc/crypttab
rm -fr /root/lukspasswd
umount /mnt
cryptsetup close /dev/mapper/redhat
mkfs.xfs /dev/vdb1
-f
//成功删除 //重新挂载