一:linux系统中的磁盘管理
1.本地存储设备的识别
fdisk -l 真实存在的设备(未必系统识别)
cat /proc/partitions 系统识别的设备
blkid 系统可以使用的设备
df 系统正在挂载的设备
sda 硬盘
sda1 sda硬盘的第一个分区
sdb U盘
sr0 光驱
loop0 挂载的镜像
2.设备的挂载
a.设备名称
例:/dev/xdx /dev/hd0 /dev/hd1 /dev/sda
/dev/sr0(光驱) /dev/mapper/*虚拟设备(即用软件模拟出来的)
b.设备的挂载及卸载
mount 单纯查看挂载信息(rw可以读写,ro只读)
mount 设备 挂载点
mount /dev/sdb1 /mnt 挂载sdb1到mnt下
umount /mnt 或 /dev/sdb1 mnt下的卸载或/dev/sdb1下的卸载
eject 自动弹出光驱(也可以是U盘)
c.按照设备所需状态进行挂载
mount -o ro /dev/sdb1 /mnt/ 只读挂载在mnt目录下
mount -o rw /dev/sdb1 /mnt/ 可读可写挂载在mnt目录下
mount -o remount,ro /dev/sdb1 在未挂载状态下直接只读挂载在/dev/sdb1目录下
3.解决设备正忙问题
【root@foundation1~】#umount /mnt/
umount:/mnt:target is busy. 显示/mnt/目录下正忙(正在使用文件,突然关闭文件所在的目录)
(In some cases useful info about processes that use the device is found by lsof(8)or fuser(1))
解决方法1:
lsof /mnt (此处的mnt代指正忙的目录)
kill -9 PID
此时安全关闭
解决方法2:
fuser -vm /在忙的目录 查看在忙的目录
fuser -kvm /在忙的目录 查看在忙的目录并结束其的工作
eject /在忙的设备 如果是设备,则现在可以安全弹出
4.磁盘分区
1.fdisk /dev/vdb 对磁盘vdb进行分区
其中用到的命令:m 查看帮助
d 删除
n 新建
p 查看分区信息
q 退出
t 修改分区id
w 保存
步骤:一共有4个主分区,可以建立3个主分区, 以及一个扩展分区,在扩展分区下再分多个逻辑分区。最后w保存退出。
2.文件系统
mkfs.xfs /dev/vdb1 将分好的盘进行格式化
mount /dev/vdb1 /pub 将其从/dev/vdb1目录下挂载到/pub下
贴心提示:系统启动先post(power on self test)–自检
磁盘旋转,MBR寻找应该停在那个位置,即0磁道1扇区开始读取(MBR占446个字节)
MBR(主引导记录)+MPT(主分区表,占64个字节)+硬盘的有效性标识(占2个字节)
vim /boot/grub2/grub.cfg 可以查看开机启动文件
5.开机自动挂载设备
man 5 fstab 查看fstab的使用说明
vim /etc/fstab
/dev/vdb1 /mnt xfs defaults 0 0
##
设备 挂载点 文件系统
mount -a 读取所有信息,并挂载。
6.swap分区建立
Swap空间是当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。
那些被释放的空间来自一 些长时间没有使用的程序,这些程序被临时保存到Swap空间中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。
fdisk /dev/vdb6
n 新建
+500M 设定大小为500M
L 查看类型
82 建立LINUX SWAP分区
p 查看分区信息
w 保存退出
cat /proc/partions 查看系统识别的设备。
partprobe 手动同步分区表(在建立新分区时,系统有时无法立刻同步分区表,用cat /proc/partions命令无法看见新建的分区,可以用partprobe手动同步。)
开机子启动挂载
vim /etc/fstab
/dev/vdb6 swap swap defaults 0 0
##
swapon -a 读取/etc/fstab中所有信息并挂载
swapon -s 查看挂载信息
swap分区删除
首先:删除/etc/fstab中的最后一行(即编辑的内
swapoff /dev/vdb6
swapon -s
7.配额
mkdir /public
改目录权限在挂载后再改,权限信息记录在设备中,因此挂载后才能修改权限
mount -o usrquota /dev/vdb7 /pub 新分盘vdb7,挂载在/pub目录下并配额,
edquota -u student 编辑student用户的配额
编辑中其单位为kb,将hard修改后保存退出
开机自启动设置
vim /etc/fstab
/dev/vdb7 /pub xfs defaults,usrquota 0 0
切换为student用户测试
dd if=/dev/zero of=/pub/studentfile bs=1M count=分配的空间大小
du -sh /pub/studentfile 检测目录大小
可以看到,当分配的大小超过20M时,会报错,并读取部分依然只有20M(这是我当时分配的vdb7的配额),当小于等于20M时,所读取的部分即为输入的数字大小。