分区及文件系统管理

分区及文件系统管理

欢迎来到 来到大浪涛天的博客

1. 分区管理工具:fdisk, parted

1. 分区
		fdisk:对于一块硬盘来讲,最多只能管理15分区;

		# fdisk -l [-u] [device...]

		# fdisk device
			子命令:管理功能
				p: print, 显示已有分区;
				n: new, 创建
				d: delete, 删除
				w: write, 写入磁盘并退出
				q: quit, 放弃更新并退出
				m: 获取帮助
				l: 列表所分区id
				t: 调整分区id
2. 查看内核是否已经识别新的分区:
			# cat /proc/partations
3. 通知内核重新读取硬盘分区表:
			partx -a /dev/DEVICE
				-n M:N

			kpartx -a /dev/DEVICE
				-f: force

			CentOS 5: 使用partprobe
				partprobe [/dev/DEVICE]

2. Linux文件系统管理:

  1. Linux文件系统: ext2, ext3, ext4, xfs, btrfs, reiserfs, jfs, swap,iso9660
  2. Windows:fat32, ntfs
  3. 网络文件系统:NFS, CIFS
  4. 集群文件系统:GFS2, OCFS2
  5. 分布式文件系统:ceph,moosefs, mogilefs, GlusterFS, Lustre

2.1 根据其是否支持"journal"功能:

  • 日志型文件系统: ext3, ext4, xfs, ...
  • 非日志型文件系统: ext2, vfat

2.2 文件系统的组成部分:

  • 内核中的模块:ext4, xfs, vfat
  • 用户空间的管理工具:mkfs.ext4, mkfs.xfs, mkfs.vfat
  • Linux的虚拟文件系统:VFS

3. 创建文件系统

3.1 mkfs,mke2fs,mkswap命令:

			(1) # mkfs.FS_TYPE /dev/DEVICE
				ext4
				xfs
				btrfs
				vfat
			(2) # mkfs -t FS_TYPE /dev/DEVICE

			-L 'LABEL': 设定卷标

		mke2fs:ext系列文件系统专用管理工具
			-t {ext2|ext3|ext4}
			-b {1024|2048|4096}
			-L 'LABEL'
			-j: 相当于 -t ext3
				mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
			-i #: 为数据空间中每多少个字节创建一个inode;此大小不应该小于block的大小;
			-N #:为数据空间创建个多少个inode;
			-m #: 为管理人员预留的空间占据的百分比;
			-O FEATURE[,...]:启用指定特性
				-O ^FEATURE:关闭指定特性

		mkswap:创建交换分区
			mkswap [options] device
				-L 'LABEL'

			前提:调整其分区的ID为82;

3.2 其它常用工具 blkid e2label tune2fs dumpe2fs fsck:


		blkid:块设备属性信息查看
			blkid [OPTION]... [DEVICE]
				-U UUID: 根据指定的UUID来查找对应的设备
				-L LABEL:根据指定的LABEL来查找对应的设备

		e2label:管理ext系列文件系统的LABEL
			# e2label DEVICE [LABEL]
			如果不给卷标就是查看,如果给卷标就是设置

		tune2fs:重新设定ext系列文件系统可调整参数的值
			-l:查看指定文件系统超级块信息;super block
			-L 'LABEL':修改卷标
			-m #:修预留给管理员的空间百分比
			-j: 将ext2升级为ext3
			-O: 文件系统属性启用或禁用
			-o: 调整文件系统的默认挂载选项
			-U UUID: 修改UUID号;

		dumpe2fs:
			-h:查看超级块信息
  文件系统检测:
		fsck: File System CheCk
			fsck.FS_TYPE
			fsck -t FS_TYPE
				-a: 自动修复错误
				-r: 交互式修复错误

				Note: FS_TYPE一定要与分区上已经文件类型相同;

		e2fsck:ext系列文件专用的检测修复工具
			-y:自动回答为yes; 
			-f:强制修复;
  

3.3 文件系统挂载和卸载(mount umount):

  • 文件系统挂载原理:
    将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为称之为挂载;

  • 解除此关联关系的过程称之为卸载;

  • 把设备关联挂载点:Mount Point
    mount

  • 卸载时:可使用设备,也可以使用挂载点
    umount

注意:挂载点下原有文件在挂载完成后会被临时隐藏;

挂载方法:mount DEVICE MOUNT_POINT
		mount:通过查看/etc/mtab文件显示当前系统已挂载的所有设备
		mount [-fnrsvw] [-t vfstype] [-o options] device dir
			device:指明要挂载的设备;
				(1) 设备文件:例如/dev/sda5
				(2) 卷标:-L 'LABEL', 例如 -L 'MYDATA'
				(3) UUID, -U 'UUID':例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'
				(4) 伪文件系统名称:proc, sysfs, devtmpfs, configfs
			dir:挂载点
				事先存在;建议使用空目录;
				进程正在使用中的设备无法被卸载;

			常用命令选项:
				-t vsftype:指定要挂载的设备上的文件系统类型;
				-r: readonly,只读挂载;
				-w: read and write, 读写挂载;
				-n: 不更新/etc/mtab; 
				-a:自动挂载所有支持自动挂载的设备;(定义在了/etc/fstab文件中,且挂载选项中有“自动挂载”功能)
				-L 'LABEL': 以卷标指定挂载设备;
				-U 'UUID': 以UUID指定要挂载的设备;
				-B, --bind: 绑定目录到另一个目录上;

			注意:查看内核追踪到的已挂载的所有设备:cat /proc/mounts

			-o options:(挂载文件系统的选项)
				async:异步模式;
				sync:同步模式;
				atime/noatime:包含目录和文件;
				diratime/nodiratime:目录的访问时间戳
				auto/noauto:是否支持自动挂载
				exec/noexec:是否支持将文件系统上应用程序运行为进程
				dev/nodev:是否支持在此文件系统上使用设备文件;
				suid/nosuid:
				remount:重新挂载
				ro:
				rw:
				user/nouser:是否允许普通用户挂载此设备
				acl:启用此文件系统上的acl功能

				注意:上述选项可多个同时使用,彼此使用逗号分隔;
					  默认挂载选项:defaults
					  		rw, suid, dev, exec, auto, nouser, and async
  卸载命令:
		# umount DEVICE
		# umount MOUNT_POINT

		查看正在访问指定文件系统的进程:
			# fuser -v MOUNT_POINT

		终止所有在正访问指定的文件系统的进程:
			# fuser -km MOUNT_POINT

3.4 交换分区以及资源查看命令 swapon free df du

  • 挂载交换分区:
		启用:swapon
			swapon [OPTION]... [DEVICE]
				-a:激活所有的交换分区;
				-p PRIORITY:指定优先级;
		禁用:swapoff [OPTION]... [DEVICE]

	内存空间使用状态:
		free [OPTION]
			-m: 以MB为单位
			-g: 以GB为单位

	文件系统空间占用等信息的查看工具:
		df: 
			-h: human-readable
			-i:inodes instead of blocks
			-P: 以Posix兼容的格式输出; 

	查看某目录总体空间占用状态:
		du:
			du [OPTION]... DIR
				-h: human-readable
				-s: summary

3.5 文件系统挂载的配置文件/etc/fstab


要挂载的设备或伪文件系统 	挂载点 	文件系统类型  	挂载选项 	转储频率  	自检次序

			要挂载的设备或伪文件系统:
				设备文件、LABEL(LABEL="")、UUID(UUID="")、伪文件系统名称(proc, sysfs)

			挂载选项:
				defaults

			转储频率:
				0:不做备份
				1:每天转储
				2:每隔一天转储

			自检次序:
				0:不自检
				1:首先自检;一般只有rootfs才用1;

3.6 文件系统上的其它概念:

	Inode: Index Node, 索引节点
		地址指针:
			直接指针:
			间接指针:
			三级指针:

		inode bitmap:对位标识每个inode空闲与否的状态信息;

	链接文件:
		硬链接:
			不能够对目录进行;
			不能跨分区进行;
			指向同一个inode的多个不同路径;创建文件的硬链接即为为inode创建新的引用路径,因此会增加其引用计数;

		符号链接:
			可以对目录进行;
			可以跨分区;
			指向的是另一个文件的路径;其大小为指向的路径字符串的长度;不增加或减少目标文件inode的引用计数;

		ln [-sv] SRC DEST
			-s:symbolic link
			-v: verbose

	文件管理操作对文件的影响:
		文件删除:
		文件复制:
		文件移动:
posted @ 2020-04-26 00:16  OuYangTao  阅读(123)  评论(0编辑  收藏  举报