####磁盘:
总512byte,446bytes主引导记录,64bytes记录引导分区(16bytes记录一个分区),2bytes分区的标识
MBR的分区方式最多16个分区
(1)发现系统中的设备
fdisk -l ###查看系统中真实存在的设备
cat /proc/partitions ###查看系统中被系统识别设备
(2)系统发现的,被系统利用的,有id信息
blkid ###查看设备的id信息,能用的设备(格式化后的)
(3)发现并且挂载的设备
df -h ###2的n次方(1024)
df -H ###10的n次方(1000)
mount /dev/vdb
mount -o remount,ro /dev/vdb ###改变挂载参数
mount -o noatime /dev/vdb ###不改变访问时间(access)stat+file查看
(1)进程发现的方式
fuser -vm /dev/sdb1
lsof /dev/sdb1
(2)进程终止的方式
kill -9 pid
fuser -kv /dev/sdb1
umount -lf
fdisk /dev/vdb ###小于2T,分区信息保存后才生效
elcome 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 ###修改分区功能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, default 2048): ###此分区起始位置
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +100M ###分区大小
Partition 1 of type Linux and of size 100 MiB is set
Command (m for help): p
Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 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表示放弃更改退出
partprobe ###同步分区表
cat /proc/partitions ###查看系统识别的分区信息
mkfs.xfs /dev/vdb1 ##格式化
mount /dev/vdb5 /mnt ##临时挂载
vim /etc/fstab ##永久挂载
devic mountpoint ftype defaults(mountpoint) 0 0
/dev/vdb1 /mnt xfs defaults 0 0
设备 挂载点 系统格式 参数 不备份 不检查磁盘
mount -a ###使/etc/fstab中记录的挂载策略生效
我们以gpt为例:gpt格式分区最多128个,大小18个eb,1eb=1024t
[root@dream ~]# parted /dev/vdb
GNU Parted 3.1
Using /dev/vdb
Welcome to GNU Parted! Type 'help' to view 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? y
(parted) quit
交换分区,当内存不够时,会把多于的数据暂时放在此分区,一般取内存的1.5-2倍,内存大于8g,给8G或16G就好。
dd if=/dev/zero of=/swap bs=1M count=4000
mkswap /swap ###格式化swap分区
swapon /swap ###打开swap分区
分区
fdisk /dev/vdb ###分区
fdisk 中修改swap分区标识
建立与查看
mkswap /dev/vdbn ###格式化swap分区
swapon -a /dev/vdbn ###打开分区,并读取/etc/fstab文件
vim /etc/fstab
/dev/vdbn swap swap defaults 0 0
swapoff /dev/vdbn ###关闭swap分区
swapon -s ###查看已挂载的swap分区
fdisk /dev/vdb ###创建新的分区
我们建立一个vdb1分区大小为1G
加密vdb1
[root@dream ~]# cryptsetup luksFormat /dev/vdb1
WARNING!
========
This will overwrite data on /dev/vdb1 irrevocably.
Are you sure? (Type uppercase yes): YES ###大写
Enter passphrase: ###第一次密码
Verify passphrase: ###第二次密码
打开加密分区
[root@dream ~]# cryptsetup open /dev/vdb1 dream ###打开分区,dream为自我取的名字可自定义
Enter passphrase for /dev/vdb1: ###输入刚设置的密码
格式化分区为xfs
[root@dream ~]# mkfs.xfs /dev/mapper/dream
meta-data=/dev/mapper/dream isize=256 agcount=4, agsize=65408 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0
data = bsize=4096 blocks=261632, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal log bsize=4096 blocks=853, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
挂载到/mnt下
通过挂载我们就能正常访问加密分区
[root@dream ~]# mount /dev/mapper/dream /mnt/
[root@dream ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 3.0G 7.1G 30% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 80K 474M 1% /dev/shm
tmpfs 474M 13M 462M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
/dev/mapper/dream 1019M 33M 987M 4% /mnt
关闭访问:即卸载掉挂载并关闭
[root@dream ~]# umount /mnt/ ###卸载挂载
[root@dream ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 3.0G 7.1G 30% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 80K 474M 1% /dev/shm
tmpfs 474M 13M 462M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
[root@dream ~]# cryptsetup close dream ###关闭(再次打开需要密码)
配置文件的修改与建立
[root@dream ~]# vim /etc/crypttab
解密后设备管理文件 设备 加密字符存放文件
dream /dev/vdb1 /root/luks_passwd
[root@dream ~]# vim /root/luks_passwd ###写入你刚设置的密码
[root@dream ~]# chmod 600 /root/luks_passwd ###降低密码文件的权限,不允许查看与修改
建立关系并自动挂载
[root@dream ~]# cryptsetup luksAddKey /dev/vdb1 /root/luks_passwd ###建立关系,关联设备和密码文件
Enter any passphrase: ###输入之前设置密码
/dev/mapper/westos /mnt xfs defaults 0 0
mount -a 检测/etc/fstab自动挂载
加密分区的清除
[root@dream ~]# vim /etc/fstab ###进入删除自动挂载
[root@dream ~]# > /etc/crypttab ###清空文件
[root@dream ~]# rm -fr /root/luks_passwd ###删除文件
[root@dream ~]# umount /mnt/ ###卸载
[root@dream ~]# cryptsetup close dream ###关闭
[root@dream ~]# mkfs.xfs /dev/vdb1 -f ###强制格式化
meta-data=/dev/vdb1 isize=256 agcount=4, agsize=65536 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0
data = bsize=4096 blocks=262144, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
分区
fdisk /dev/vdb ###创建三个分区大小分别为1G,分区标示为raid
Device Boot Start End Blocks Id System
/dev/vdb1 2048 2099199 1048576 fd Linux raid autodetect
/dev/vdb2 2099200 4196351 1048576 fd Linux raid autodetect
/dev/vdb3 4196352 6293503 1048576 fd Linux raid autodetect
我们以RAID 1为例:
[root@dream ~]# mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3} ###制作双磁盘一个闲置 -C:create -a:add -l:RAID几 -n:数量 -x闲置数
mdadm: Note: this array has metadata at the start and
may not be suitable as a boot device. If you plan to
store '/boot' on this device please ensure that
your boot-loader understands md/v1.x metadata, or use
--metadata=0.90
Continue creating array? y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@dream ~]# mkfs.xfs /dev/md0 ###格式化
meta-data=/dev/md0 isize=256 agcount=4, agsize=65500 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0
data = bsize=4096 blocks=262000, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal log bsize=4096 blocks=853, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@dream ~]# mount /dev/md0 /mnt ###挂载
[root@dream ~]# df -h ###查看挂载
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 3.0G 7.1G 30% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 80K 474M 1% /dev/shm
tmpfs 474M 13M 462M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
/dev/md0 1021M 33M 988M 4% /mnt
这样RAID1就做好了,可以用命令查看工作状态:可以发现2块工作1快闲置
Number Major Minor RaidDevice State
0 253 17 0 active sync /dev/vdb1
1 253 18 1 active sync /dev/vdb2
2 253 19 - spare /dev/vdb3
删除RAID
[root@dream ~]# umount /mnt
[root@dream ~]# mdadm -S /dev/md0
mdadm: stopped /dev/md0
[root@dream dev]# fdisk /dev/vdb ###删除建立的分区
mdadm的常用命令
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 ###停止使用
[root@dream dev]# mount -o usrquota,grpquota /dev/vdb1 /mnt/ ###挂载
[root@dream dev]#chmod 777 /mnt ###给权限rwx
[root@dream dev]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 10G 3.0G 7.1G 30% /
devtmpfs 459M 0 459M 0% /dev
tmpfs 474M 80K 474M 1% /dev/shm
tmpfs 474M 13M 462M 3% /run
tmpfs 474M 0 474M 0% /sys/fs/cgroup
/dev/vdb1 1014M 33M 982M 4% /mnt
[root@dream dev]# useradd dream ###新建一个用户dream
[root@dream dev]# echo "123456" |passwd --stdin dream ###把密码设置为123456
注意:如果为ext格式则需要: quotacheck -u /dev/vdb1:扫描配额文件 quotaon -uv /dev/vdb1:打开文件配额
[root@dream dev]# edquota -u dream ###打开配额文件
Disk quotas for user dream (uid 1001):
设备 已存在文件 软额度 最大额度 存在文件数量 文件最多个数
Filesystem blocks soft hard inodes soft hard
/dev/vdb1 0 0 102400 1 0 2
在dream用户测试
我们可以发现只能建立2个文件,并且容量只能为100M
[dream@dream /]$ cd /mnt
[dream@dream mnt]$ touch file{1..3}
touch: cannot touch ‘file3’: Disk quota exceeded
[dream@dream mnt]$ touch file{1..2}
[dream@dream mnt]$ ls
file1 file2
[dream@dream mnt]$ rm -rf * ###删除之前建立的文件
[dream@dream mnt]$ dd if=/dev/zero of=/mnt/file bs=1M count=100 ###生成100M文件
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 0.159126 s, 659 MB/s
[dream@dream mnt]$ ls
file
[dream@dream mnt]$ du -sh file ###查看文件的大小
100M file
[dream@dream mnt]$ dd if=/dev/zero of=/mnt/file bs=1M count=101 ###生成101M文件
dd: error writing ‘/mnt/file’: Disk quota exceeded
101+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 0.115352 s, 909 MB/s
[dream@dream mnt]$ du -sh file ###发现大于100M时保存的还是100M
100M file