存储设备的管理
光盘、U盘、硬盘分区:方便管理,安全一.对设备进行识别查看
(1)发现系统中的设备
fdisk -l
cat /proc/partitions
(2)系统发现的,但是没有投入使用,随时可以投入使用的设备
blkid
(3)发现并且在使用的设备
df 查看磁盘的挂载信息
df -h 统计大小(1G=2^10M
df -H 1G=10^3M
二.设备名称的读取
/dev/xd*
x=s /dev/sd* sata硬盘,或者iscsi网络存储
x=v /dev/vd* 虚拟硬盘,一般出现在虚拟机中
x=h /dev/hd* ide硬盘,一般出现在老式硬盘
*=a~..... /dev/vda 系统中的第一块虚拟硬盘
/dev/sda1 系统中的第一块sata硬盘的第一块分区
/dev/cdrom,/dev/st[0-...] 系统中的光驱
/dev/mapper/* 系统中的虚拟设备
三.对设备的使用
1.设备挂载
设备必须要用目录来对设备中的内容进行读取,所以设备在使用时需要挂载动作。
(1)blkid 识别可用设备
(2)mount 设别 挂载点
mount -o ro /dev/sdb1 /mnt/ 对设备进行只读挂载
mount -o remount,rw /mnt | /dev/sdb1 当只读挂载后,需要读写挂载,而设备正在使用,可是使用对硬盘的热挂载
2.设备卸载
umount 设备|挂载点
当设备卸载时出现下列情况
[root@foundation12 Desktop]# umount /mnt
umount: /mnt: target is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
表示设被正在被某个程序使用,处理方式:
(1)进程发现的方式:
fuser -vm /dev/sdb1
lsof /dev/sdb1
(2)进程终止的方式:
kill -9 pid
fuser -kvm /dev/sdb1
(3) umount /mnt
3.分区的管理
硬盘的0磁道1扇区
mbr+mpt+55aa(硬盘有效性标识)=512byte
(1)mbr=446Byte 令硬盘的磁头去找系统的启动分区。主引导记录
为什么有446byte:能够完成该动作(找启动分区)的最短代码。
(2)mpt=64byte 主分区表,记录分区
一块硬盘上如果用mbr记录分区,最多只能记录4个分区信息
由于记录一个分区需要16字节
扩展分区:解决主分区表不足的问题,是一个记录逻辑分区的容器,拓展分区本身并不能被格式化
逻辑分区:由拓展分区切割出来的分区槽,所以使用的磁柱范围就是拓展分区所使用的磁柱范围
4.分区的划分(在虚拟机中实验)
(1)fdisk /dev/vdb
Command (m for help): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d 删除分区
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 新建分区
o create a new empty DOS partition table
p 显示分区标志信息
q 不保存退出
s create a new empty Sun disklabel
t 修改分区id
u change display/entry units
v verify the partition table
w 将当前操作写入硬盘分区表
x extra functionality (experts only)
(2)Command (m for help):n 创建分区
Partitions type:
1rtition type:
p primary (1 primary, 0 extended, 3 free) 主分区
e extended 扩展分区
Select (default p): p 选择主分区
Partition number (2-4, default 2): 2 默认第二块分区
First sector (1026048-20971519, default 1026048): 默认从1026048作为起始空间
Using default value 1026048
Last sector, +sectors or +size{K,M,G} (1026048-20971519, default 20971519): +1000M 为该分区分配1000M空间
Partition 2 of type Linux and of size 1000 MiB is set 创建成功
Command (m for help): wq 保存并退出
见下图:
进入该设备下,p查看该设备下的分区信息
再次查看,多了/dev/vdb2的信息
Tips:文件系统四种类型:ext2-4 fat ntfs xfs(在linux中使用)
(4)cat /proc/partitions 查看设备是否被系统识别
(5)mkfs.xfs /dev/vdb2 格式化设备,在设备上安装系统的xfs(文件系统)
(5)blkid 查看可用设备,可以看到被格式化的/dev/vdb2
(6)mount /dev/vdb1 /mnt 挂载设备,让设备投入使用
永久性挂载设备(在1和2的基础上做该实验)
(1)vim /etc/fstab #设备挂载策略文件
设备 挂载点 文件系统类型 挂载参数 是否备份设备 是否检测设备
/dev/vdb1 /mnt xfs defaults 0 0
5.删除分区
(1)umount /dev/vdb2 #解除对设备/dev/vdb2的挂载
(2)vim /etc/fstab #删除之前对配置文件的更改
(3)fdisk /dev/vdb #进入该硬盘
(3)Command (m for help): d #删除该分区
Partition number (1,2, default 2): 默认该删除主分区number为2
(4)wq 保存并退出
swap:交换分区,是系统自己使用,不需要挂载,类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况。
1.swap分区的查看
swapon -s
2.swap分区的建立
(1)重新划分分区
(2)修改分区的id为swap
Command (m for help): t #修改分区id
Hex code (type L to list all codes):l #列出所有id类型的代码如下图swap类型的分区id为82
Command (m for help): wq #退出保存
(3)mkswap /dev/vdb2 #格式化设备为swap文件系统格式
(4)swapon -a /dev/vbd2 # 激活swap设备,让系统利用此设备
vim /etc/fstab
3.当一个设备不能创建新分区时,可以用交换文件的方式来代替交换分区
(1)dd if=/dev/zero of=/swapfile bs=1M count=1000 #从硬盘里分出1000*1M的空间,挂在/swapfile上
(3)swapon -a /swapfile #激活/swapfile文件
永久性设定
vim /etc/fstab
4.删除swap分区
(1)vim /etc/fstab # 将之前对配置文件做的更改删除
(2)swapoff /dev/vdb2
swapoff /swapfile #关闭swap分区和swap文件
(3)fdisk /dev/vdb #进入/dev/vdb设备下删除分区
五.磁盘配额
为磁盘使用用户分配额度,分区配额是针对设备的
(1).激活设备配额参数(挂载时) mount -o usrquota /dev/vdb2 /mnt
(2).chmod 777 /mnt 给该挂载点777权限
(3). edquota -u student /dev/vdb2 为student用户分配额度信息
文件系统名 已存在的文件个数 软额度 最大额度 文件个数 软额度 最大额度
(4 )切换到用户
(5)dd if=/dev/zero of=/mnt/testfile bs=600K count=1 从硬盘里分出1*500K的空间,挂在/mnt/testfile上
六.分区方式的互换 mbr--->gpt
(1)parted /dev/vdb
GNU Parted 3.1
Using /dev/vdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(2)(parted) mklabel #修改设备分区方式的标签
New disk label type?
aix amiga bsd dvh gpt loop mac msdos pc98 sun #两下Tab键查看所有格式类型
(3)New disk label type? gpt #把原来的dos标签改为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? y
(4)fdisk -l #查看设备分区方式
(1).建立分区
(2).cryptsetup luksFormat /dev/vdb2 #设备加密
(3).cryptsetup open /dev/vdb2 freya #打开该加密设备并命名为freya
(4).ll /dev/mapper/freya #/dev/vdb2加密设备变为/dev/mapper/freya
(5).mkfs.xfs /dev/mapper/freya #文件系统添加
(6).mount /dev/mapper/freya /mnt #挂载使用
加密设备开机自动挂载
(1)vim /etc/fstab
(2)vim /etc/crypttab #开机时自读取/root/passwdfile下的加密密码
freya /dev/vdb2 /root/passwdfile
(3) vim /root/passwdfile
19970320zxy
(4)chmod 600 /root/passwdfile #为了密码文件的安全,给它加上600权限
(5)cryptsetup luksAddKey /dev/vdb2 /root/passwdfile #为该加密加上钥匙
(7)df -l 查看
加密设备的清除
(1)umoutn /dev/mapper/freya
(2)cryptsetup close freya #关闭加密系统
(3)mkfs.xfs /dev/vdb2 -f #强制格式化为文件系统来破坏加密
(4)vim /etc/fstab
vim /etc/crypttab
rm -rf /root/passwdfile #清空之前对于开机自动挂载做的全部设定