磁盘格式化操作 创建文件系统
文件系统: 用户将数据存储到磁盘中的方式 FAT32(单个文件小于4G) NTFS(没有单位文件存储限制)
XFS(存储效率更高-数据库) ext3/ext4(存储效率较低)
创建inode和block
数据信息(数据属性信息 数据内容信息) --- 数据属性信息 --- inode --- 磁盘中
--- 数据内容信息 --- block (多个) --- 磁盘中
如何进行格式化:
mkfs --- make filesystem
mkfs.文件系统类型 分区信息
mkfs.xfs /dev/sdb1
mkfs -t xfs /dev/sdb1
1): 磁盘挂载应用
临时挂载应用: mount /dev/sdb1 /mnt
永久挂载应用: /etc/fstab /etc/rc.local
vim /etc/fstab
/dev/sdc1 /mnt xfs defaults 0 0
说明: /etc/fstab文件内容编写错误, 服务器启动缓慢/文件系统出现只读情况
2):企业环境: 文件系统只读异常问题: 挂载参数: remount
mount -o remount rw /
挂载常用参数: defaults
rw, suid, dev, exec, auto, nouser, and async
rw --- 挂载之后挂载点目录权限可读可写
ro --- 挂载之后挂载点目录权限只读模式
suid(setuid) --- 挂载之后挂载点中, 可以支持setuid特殊权限位
nosuid(nosetuid) --- 挂载之后挂载点中, 禁止支持nosetuid特殊权限位
练习:
mount -o suid /dev/sdc1 /mnt
说明: 在目录中特殊权限位命令可以生效
mount -o nosuid /dev/sdc1 /mnt
说明: 在目录中特殊权限位命令不可以使用
exec: --- 允许挂载点目录中代码或脚本文件执行
mount -o exec /dev/sdc1 /mnt
noexec: --- 禁止挂载点目录中代码或脚本文件执行 安全性
mount -o noexec /dev/sdc1 /mnt
async: --- 异步存储数据方法 用户存储数据 -内存- /mnt 磁盘 效率更高 安全性低
sync: --- 同步存储数据方法 用户存储数据 ------ /mnt 磁盘 效率较低 安全性高
3): 卸载挂载点常见问题:
01. 卸载时所在目录就是挂载点目录
02. 卸载时挂载目录数据被程序占用
强制卸载:
umount -lf /mnt
-l lazy --- 采用懒惰卸载
-f force --- 强制卸载操作
4):企业中: 磁盘空间不足如何解决
找出产生磁盘空间占用:
block: 产生大量大文件, 会造成block空间不足
删除方式: rm -f 大文件
01. 如何找出大文件:
a 利用find 命令找出大文件
b 利用du 命令找出大文件
du -sh /opt/*|sort -hr
补充: 如何将文件彻底删除:
条件一: 硬链接数为0 i_link=0
条件二: 进程调用数为0 i_count=0
建议清除大文件数据方式: >/xx/大文件
inode: 产生大量小文件, 会造成inode空间不足
删除方式: find /mnt -type f -name "oldboy*" -size -2k|xargs rm
补充: 判断命令是否执行成功
echo $? --- 0 表示判断上一个命令执行成功
--- 非0 表示判断上一个命令执行失败
5):企业中: 如何调整swap空间大小
第一个里程: 划分磁盘空间被swap交互分区使用
dd if=从哪取出存储空间信息 of=放到哪 bs=每次取出多少 count=取多少次
dd if=/dev/zero of=/tmp/1G bs=100M count=10
第二个里程: 标记文件被swap使用
mkswap /tmp/1G第三个里程: 将标记文件空间增加到swap分区空间中
swapon /tmp/1G
第四个里程: 如何减少swap空间
swapoff /tmp/1G
实际应用: 主要应用在服务器中有java程序时