|
Linux学习之文件系统管理 一、Linux文件系统管理:
mkfs,
mkfs -t type=mkfs.type : 即表示这两种用法的效果一致
1、ext的专属文件系统格式化工具
mke2fs
用法:
mke2fs [option]....DEVICE
[option]:参数
-t {ext2|ext3|ext4} :指定是那种形式的ext文件系统
-b {1024|2048|4096} :指定块大小,如果存储的文件是大文件,则块大小应该选着4096 ,块大小应该根据存放文件来决定,或者根据经验来选择;
-L ‘lebel’ :指定卷标
-j :has_journal日志功能,等于mke2fs -t ext3,可以使用此命令将ext2文件系统升级至ext3文件系统,且对数据无影响;
-i #:inode
-N #:inode的数量
-m #: 预留磁盘空间占据多大百分比的空间,为后续的管理使用,后默认跟%
-o FEATURE[....] :指定开启文件系统的特性;
-o ^FEAYURE[....]:关闭此特性
2、文件系统属性查看及调整工具:
a、 e2label
e2label DEVICE [LABEL]
b、tune2fs:显示ext系列文件系统的属性,或调整期属性的;
-l:显示超级块中的信息,显示整个文件的属性及布局等相关信息
-L ‘LABEL’:修改卷标
-m #:调整预留给管理员的管理空间百分比;
-j:开启其日志功能,能ext2文件系统升级为ext3文件系统
-O:文件系统属性的启动或关闭
-o:文件系统默认挂载选项的启用或关闭
c、dumpe2fs:
-h:仅显示超级块信息
3、文件系统检测:
fsck:filesystem check
fsck -t type
fsck.type
-a:自动修复错误
-r:交互式修复错误
-f:强制检测
e2fsck:ext系列文件系统专用的检测修复工具
-y:自动回答为‘yes’
-f:force
4、文件系统的挂载和使用
将额外文件系统与跟文件系统某现存的目录建立起关联关系,进而使得此目录作为其他文件系统访问入口的行为,称之为挂载
解除此关联关系的过程,称之为卸载;
设备挂载的目录称之为挂载点
注意:挂载点在挂载之后,其内部原有的文件将被隐藏,待卸载之后才能恢复;所以建议使用空白目录做挂载点
挂载方法:
mount:通过读取/etc/mtab文件来显示当前系统所有已挂载的设备;
mount -a :挂载/etc/fstab文件中德所有支持自动挂载的文件系统
mount [option] [-o option] DEVICE MOUNT_POINT
[option]:命令选项
[-o option]:挂载选项
DEVICE:要挂载的设备
1)、设备文件如/dev/sda
2)、卷标:-L ‘LABEL’
3)、UUID
4)、伪文件系统名称
MOUNT_POINT:挂载点
[option]:命令选项
-t type:文件系统类型
-r:以只读方式挂载此文件系统
-w:以读写方式挂载此文件系统
-n:每个文件系统在挂载是都会自动更新/etc/mtab文件,-n用于禁止次功能;此时如果想查看挂载的所有文件系统,可以是用cat /proc/mounts
-a:自动挂载所有支持自动挂载的设备
-B:绑定目录至另外一个目录上
[-o option]挂载选项
-async:异步模式
-sync:同步模式
atime/noatime:是否更新访问时间戳
diratime/nodiratime:是否更新目录的访问时间戳
auto/noauto:是否允许次设备被自动挂载
exec/noexec:是否允许执行此文件系统上的应用程序
dev/nodev:是否支持在此设备上使用设备文件
suid/nosuid:是否支持在此设备上使用特殊权限
remount:重新挂载
ro:只读
rw:读写
user/nouser:是否允许普通用户挂载此设备
acl:是否支持在此设备上使用facl
defaults:rw、suid、dev、exec、auto、nouser、and async
umount:卸载命令
umount DEVICE
umount MOUNT_POINT
查看正在访问指定挂载点的进程;
fuser -v MOUNT_POINT
终止所有正在访问指定的挂载点的进程
fuser -km MOUNT_POINT
5、交换分区
free命令:
查看memory和swap的使用状态
-m:以MB为单位
-g:以GB为单位
mkswap:创建交换分区
mkswap [option] DEVICE
-L 'LABEL'
swapon:启用交换分区
swapon [option] [DEVICE]
-a:激活所有交换分区
-p PRIORITY:设定其优先级
swapoff:禁用交换分区
swapoff [option] [DEVICE]
6、文件系统等空间占用信息的查看工具
df du
df :disk free
-h:以人类易懂的方式显示
-i:inode的数量
-P:以Posix兼容的格式输出
du:disk usage
-h:以人类易懂的方式显示
-s:和
7、文件系统相关挂载配置文件/etc/fstab
每行定义一个文件系统
其格式如下:
要挂载的设备或伪文件同 挂载点 文件系统类型 挂载选项 转储频率 自检次序
要挂载的设备
设备文件 、卷标 、uuid、伪文件系统名称
挂载选项
defaults
转储频率
0:不转储
1:每天转储
2:每隔一天转储
自检次序:
0:不自检
1:首先自检,一般是跟目录使用
2:
8、文件系统上的链接文件
链接文件分两类:
硬链接:
两个路径指向同一个inode
不能对目录进行
不能跨分区进行
指向同一个inode的多个不同路径,创建文件的硬链接会增加inode的计数,删除硬链接仅是删除其一个访问路径,直到最后一个路径被删除;
符号链接
链接文件的数据指向另一个文件路径
可对目录进行
可以跨分区
指向的是另一个文件路径,而非inode
ln [-s] SRC DEST
-s:symbolic link
-v:verbose
二、创建一个10G文件系统。类型为ext4,要求开机可自动挂载至/mydata目录;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
| [iyunv@pizi ~]# fdisk /dev/sdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x12b83f86.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
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): m
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
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
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 //新建分区
Command action
e extended
p primary partition (1-4)
p //选择主分区
Partition number (1-4): 1 //第一个
First cylinder (1-1305, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-1305, default 1305): +10G //划分10G的大小
Value out of range.
Last cylinder, +cylinders or +size{K,M,G} (1-1305, default 1305):
Using default value 1305
Command (m for help): w //保存分区配置
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[iyunv@pizi ~]#
[iyunv@pizi ~]# mkfs -t ext4 /dev/sdb1 //格式化文件系统
mke2fs 1.41.12 (17-May-2010)
文件系统标签=
操作系统:Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 2620595 blocks
131029 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2684354560
80 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
This filesystem will be automatically checked every 29 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[iyunv@pizi ~]#
|
1
2
3
4
5
6
7
8
9
10
11
12
13
| [iyunv@pizi ~]# mount -a //自动挂载支持挂载的设备
[iyunv@pizi ~]# mount //查看现在的挂载情况
/dev/mapper/vg_pizi-LogVol03 on / type ext4 (rw)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw,rootcontext="system_u:object_r:tmpfs_t:s0")
/dev/sda1 on /boot type ext4 (rw)
/dev/mapper/vg_pizi-LogVol01 on /usr type ext4 (rw)
/dev/mapper/vg_pizi-LogVol02 on /var type ext4 (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
/dev/sdb1 on /mydata type ext4 (rw)
[iyunv@pizi ~]#
|
|
|