文章目录
这里是一段防爬虫文本,请读者忽略。
本文原创首发于CSDN,作者IDYS
博客首页:https://blog.csdn.net/weixin_41633902/
本文链接:https://blog.csdn.net/weixin_41633902/article/details/105784761
- 写在开头的话
- 请记住:实践是掌握知识的最快方法
- 如果你只是怀着看看的态度去快速浏览文章,而不去认认真真的把文章里面讲的任何一个知识点去实践一遍,那么你永远也掌握不了它
- 生命不息,折腾不止!
- Linux文件系统
- CentOS上各个版本流行的文件系统
- CentOS 5.x
- ext2
- CentOS 6.x
- ext3,ext4
- CentOS 7.x
- ext4,xfs,btrfs,ReiserFS,jfs
- 其它文件系统
- swap : 交换分区(虚拟内存)
- 光盘:ISO9660
- Windows:
- fat32,ntfs
- Uinx:FFS,UFS,JFS2
- 网络文件系统NFS,CIFS
- 集群文件:GFS2,OCFS2
- 分布式文件系统:
- moosefs,mogilefs,GlusterFS,Lustre
- 根据其是否支持“journal功能”
- 日志型文件系统:ext3,ext4,xfs
- 非日志型文件系统:ext2,vfat
- 文件系统的组成部分
- 内核中的模块:ext4,xfs,vfat
- 用户空间管理工具:mkfs.ext4,mkfs.xfs,mkfs.vfat
- Linux的虚拟文件系统:VFS
- btrfs 文件系统支持容量的扩展,而且支持快照
- 文件系统管理查看类命令
- 文件系统管理
- 创建文件系统:
- mkfs.FS_TYPE /dev/DEVICE
- mkfs.ext4
- mkfs.xfs
- mkfs.btrfs
- mkfs.vfat
- mkfs -t FS_TYPE /DEV/DEVICE[NUM]
- -L ‘LABEL’:设定卷标
- mke2fs:ext系列文件系统专用管理工具
- -t:{ext2 | ext3 | ext4}
- -b:{1024 | 2048 | 4096} 设置块大小
- -L ‘LABEL’
- -j:相当于-t ext3 创建ext3文件系统
- mkfs.ext3
- mkfs -t ext3
- mke2fs -j
- mke2fs -t ext3
- -i #:为数据空间中每多少个字节创建一个inode 此大小不能小于块(block)大小
- -N #:为数据空间创建多少个inode
- -m #:为管理人员预留的空间占据的百分比:通常为5%
- -O FEATURE[,…]:启用指定特性
- -O ^FEATURE:关闭指定特性
- mkfs.FS_TYPE /dev/DEVICE
-b指定块大小 -m指定预留空间百分比 -L 设置卷标
mke2fs -b 1024 -m 3 -L MYDATA -i
- mkswap:创建交换分区
- mkswap [options] device
- -L ‘LABEL’
- 前提:调整其分区ID为82
- mkswap [options] device
# 修改分区ID号
[root@dayuanshuai /]# fdisk /dev/sdb
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): t
Partition number (1-4): 2
Hex code (type L to list codes): 82
Changed system type of partition 2 to 82 (Linux swap / Solaris)
Command (m for help): p
Disk /dev/sdb: 2147 MB, 2147483648 bytes
255 heads, 63 sectors/track, 261 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd406d040
Device Boot Start End Blocks Id System
/dev/sdb1 1 2 16033+ 83 Linux
/dev/sdb2 3 4 16065 82 Linux swap / Solaris
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
# 读取硬盘分区表
[root@dayuanshuai /]# partx -a -n 2 /dev/sdb
BLKPG: Device or resource busy
error adding partition 2 #虽然提示error但是没事
BLKPG: Device or resource busy
error adding partition 3
#设置为交换分区
[root@dayuanshuai /]# mkswap /dev/sdb2
Setting up swapspace version 1, size = 16060 KiB
no label, UUID=09727f1e-eb7c-4b64-9a17-542cb6879b59
# 查看分区信息
[root@dayuanshuai /]# blkid /dev/sdb2
/dev/sdb2: UUID="09727f1e-eb7c-4b64-9a17-542cb6879b59" TYPE="swap"
- 查看Linux支持的文件系统类型:cat /proc/filesystems
- 每个文件系统都有一个内核模块
- 使用 lsmod查看在内核中装载的所有模块
#查看Linux支持的文件系统类型
[root@dayuanshuai ~]# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev cgroup
nodev cpuset
nodev tmpfs
nodev devtmpfs
nodev binfmt_misc
nodev debugfs
nodev securityfs
nodev sockfs
nodev usbfs
nodev pipefs
nodev anon_inodefs
nodev inotifyfs
nodev devpts
nodev ramfs
nodev hugetlbfs
iso9660
nodev pstore
nodev mqueue
nodev selinuxfs
nodev drm
ext4
# 查看Linux文件系统装载的所有内核模块
[root@dayuanshuai ~]# lsmod
Module Size Used by
tcp_diag 1041 0
inet_diag 9430 1 tcp_diag
ib_ipoib 81191 0
rdma_ucm 15739 0
ib_ucm 12360 0
ib_uverbs 40532 2 rdma_ucm,ib_ucm
ib_umad 13519 0
rdma_cm 36651 1 rdma_ucm
ib_cm 37444 3 ib_ipoib,ib_ucm,rdma_cm
iw_cm 33136 1 rdma_cm
ib_sa 24188 4 ib_ipoib,rdma_ucm,rdma_cm,ib_cm
ib_mad 41628 3 ib_umad,ib_cm,ib_sa
ib_core 83020 10 ib_ipoib,rdma_ucm,ib_ucm,ib_uverbs,ib_umad,rdma_cm,ib_cm,iw_cm,ib_sa,ib_mad
..... #省略
- 下面介绍磁盘文件系统的格式化
# 格式化分区,划分文件系统
[root@dayuanshuai ~]# mkfs.ext4 /dev/sdb1
mke2fs 1.41.12 (17-May-2010)
文件系统标签=
操作系统:Linux
块大小=1024 (log=0)
分块大小=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
4016 inodes, 16032 blocks
801 blocks (5.00%) reserved for the super user
第一个数据块=1
Maximum filesystem blocks=16515072
2 block groups
8192 blocks per group, 8192 fragments per group
2008 inodes per group
Superblock backups stored on blocks:
8193
正在写入inode表: 完成
Creating journal (1024 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
- e2label:管理ext系列文件系统的LABEL
[root@dayuanshuai /]# e2label /dev/sdb2
MYDATA
# 修改/dev/sdb2分区文件系统的label为DATA
[root@dayuanshuai /]# e2label /dev/sdb2 "DATA"
[root@dayuanshuai /]# e2label /dev/sdb2
DATA
- 文件系统查看、设定
- blkid:块设备属性信息查看
- 可以显示分区的属性信息
- blkid [OPTION] [DEVICE]
- -U UUID:根据指定UUID查找设备
- -L LABEL:根据指定的卷标查看设备
# 显示/dev/sdb1分区的属性信息
[root@dayuanshuai ~]# blkid /dev/sdb1
/dev/sdb1: UUID="de7f400a-511b-4aac-b141-97818146052b" TYPE="ext4"
# 显示/dev/sdb1分区的属性信息
[root@dayuanshuai /]# blkid /dev/sdb2
/dev/sdb2: LABEL="MYDATA" UUID="02c07346-6e58-4fa0-ad5d-a51971b9c82d" TYPE="ext4"
# 根据卷标查找设备
[root@dayuanshuai /]# blkid -L "MYDATA"
/dev/sdb2
# 根据UUID查找设备
[root@dayuanshuai /]# blkid -U 02c07346-6e58-4fa0-ad5d-a51971b9c82d
/dev/sdb2
- tune2fs:重新设定ext系列文件系统可调整参数的值
- -l:查看指定文件系统的超级块信息
- -L ‘LABEL’:修改卷标
- -m #:修改预留给管理员的空间百分比
- -j:将ext2升级为ext3
- -O:文件系统属性信息启用或禁用
- -O has_journal 开启日志功能
- -O ^has_journal 关闭日志功能
- -o:调整文件系统的默认挂载选项
- -U UUID:修改UUID号
# 查看指定分区的超级块信息
[root@dayuanshuai /]# tune2fs -l /dev/sdb2
tune2fs 1.41.12 (17-May-2010)
Filesystem volume name: DATA
Last mounted on: <not available>
Filesystem UUID: 02c07346-6e58-4fa0-ad5d-a51971b9c82d
Filesystem magic number: 0xEF53
..... #省略
# 启用日志功能
[root@dayuanshuai /]# tune2fs -0 'has_journal' /dev/sdb1
# 关闭日志功能
[root@dayuanshuai /]# tune2fs -O '^has_journal' /dev/sdb1
- dumpe2fs:查看整个文件系统的结构信息
- -h :查看超级块信息
[root@dayuanshuai /]# dumpe2fs /dev/sdb1
.... 前面省略
Group 0: (Blocks 1-8192) [ITABLE_ZEROED]
校验和 0xab1e,1997个未使用的inode
主 superblock at 1, Group descriptors at 2-2
保留的GDT块位于 3-64
Block bitmap at 65 (+64), Inode bitmap at 81 (+80)
Inode表位于 97-347 (+96)
7608 free blocks, 1997 free inodes, 2 directories, 1997个未使用的inodes
可用块数: 80, 83-96, 600-8192
可用inode数: 12-2008
Group 1: (Blocks 8193-16031) [INODE_UNINIT, ITABLE_ZEROED]
校验和 0x1522,2008个未使用的inode
备份 superblock at 8193, Group descriptors at 8194-8194
保留的GDT块位于 8195-8256
Block bitmap at 66 (+4294959169), Inode bitmap at 82 (+4294959185)
Inode表位于 348-598 (+4294959451)
6751 free blocks, 2008 free inodes, 0 directories, 2008个未使用的inodes
可用块数: 9281-16031
可用inode数: 2009-4016
# dumpe2fs -h 只查看文件系统的超级块信息
[root@dayuanshuai /]# dumpe2fs -h /dev/sdb1
dumpe2fs 1.41.12 (17-May-2010)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: 319da001-4962-40c6-bff5-6df98106d672
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype extent flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 4016
Block count: 16032
Reserved block count: 801
Free blocks: 14359
- 文件系统检测修复
- fsck:FILE System Check
- fsck.FS_TYPE
- fsck -t FS_TYPE
- fsck -a:自动修复错误
- fsck -r:交互式修复错误
注意:FS_TYPE一定要与分区上的文件系统类型相同
- e2fsck:ext系列文件系统专用的检测工具
- -y:自动回答为yes
- -f:强制修复(不管文件系统有没有错误直接修复,非常粗暴)
# 首先查看文件系统是否出现错误
[root@dayuanshuai /]# fsck.ext4 /dev/sdb1
e2fsck 1.41.12 (17-May-2010)
/dev/sdb1: clean, 11/4016 files, 1673/16032 blocks
#如果出现错误则使用fsck -r 交互式修复错误
[root@dayuanshuai /]# fsck -r /dev/sdb1
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
/dev/sdb1: clean, 11/4016 files, 1673/16032 blocks
#强制,不管文件系统是否出现问题,直接修复,非常粗暴,不建议使用
[root@dayuanshuai /]# e2fsck -f /dev/sdb1
- 写在最后的话:
- 无论每个知识点的难易程度如何,我都会尽力将它描绘得足够细致
- 欢迎关注我的CSDN博客,IDYS’BLOG
- 持续更新内容:运维 | 网工 | 软件技巧
- 如果你有什么疑问,或者是难题。欢迎评论或者私信我。你若留言,我必回复!
- 虽然我现在还很渺小,但我会做好每一篇内容。谢谢关注!