磁盘及文件系统管理(分区,挂载,卸载,信息展示与统计)
=======================================
磁盘操作
---------------------------------------------------------------------------------------------
###:fdisk:操作磁盘分区表
OPTIONS:
~]# fdisk -l /dev/sda (查看分区详情)
~]# fdisk -l (查看分区详情)
~]# fdisk /dev/sda
Command (m for help): m
Command action
d delete a partition(删除一个分区)
l list known partition types(列出已有的分区类型)
m print this menu(打印菜单)
n add a new partition(创建新分区)
p print the partition table(显示现有的分区信息)
q quit without saving changes(不保存退出)
t change a partition's system id(改变分区的系统标识)修改分区类型。
w write table to disk and exit(写入磁盘和退出表)
---------------------------------------------------------------------------------------------
通知内核强制重读磁盘分区表:
CentOS 5:partprobe [device]
CentOS 6,7:partx, kpartx
partx -a [device]
kpartx -af [device]
查看:cat /proc/partitions
---------------------------------------------------------------------------------------------
###:mkfs.ext2 mkfs.ext3 mkfs.ext4:ext系列文件系统的管理工具
SYNOPSIS:
mkfs.ext# device
OPTIONS:
格式化:mkfs.ext2 /dev/sda3
格式化:mkfs.ext3 /dev/sda3
格式化:mkfs.ext4 /dev/sda3
---------------------------------------------------------------------------------------------
###:blkid:查看设备属性
SYNOPSIS:
blkid [device]
OPTIONS:
~]# blkid /dev/sda2 (查看单个)
/dev/sda2: UUID="ivAmVh-34tK-Wc0f-cBwE-UP9X-4Dzb-NnEPD0" TYPE="LVM2_member"
~]# blkid (查看所有)
/dev/sda1: UUID="a1286a7b-86de-45ea-b405-243296edd943" TYPE="xfs"
/dev/sda2: UUID="ivAmVh-34tK-Wc0f-cBwE-UP9X-4Dzb-NnEPD0" TYPE="LVM2_member"
/dev/sr0: UUID="2015-04-01-00-21-36-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/mapper/centos-root: UUID="95182712-dbff-4a70-8b0b-e5bdc0e318a2" TYPE="xfs"
/dev/mapper/centos-swap: UUID="99a1630a-f72f-4151-b24a-d81a6cf3df1d" TYPE="swap"
/dev/mapper/centos-home: UUID="225e506a-9b19-42f0-8b17-b9aa3713d56c" TYPE="xfs"
-L LABEL:根据LABEL定位设备
~]# blkid -L LABEL
/dev/sda3
-U UUID:根据UUID定位设备
~]# blkid -U 1709e781-788a-48fd-97da-69d2ced72470
/dev/sda3
---------------------------------------------------------------------------------------------
###:mkfs.xfs: 构建一个XFS系统(格式化)
OPTIONS:
~]# mkfs.xfs /dev/sda1
-f:强制格式化。
~]# mkfs.xfs -f /dev/sda3
---------------------------------------------------------------------------------------------
###:mkfs:创建一个Linux文件系统
SYNOPSIS:
mkfs [options] [-t type] [fs-options] device [size]
OPTIONS:
-t:指定文件系统类型,如果没有指定则为ext2(等同于 mkfs.ext2)
~]# mkfs -t ext2 /dev/sda3
---------------------------------------------------------------------------------------------
###:mke2fs: 创建一个 ext2/ext3/ext4 文件系。
SYNOPSIS:
mke2fs [OPTIONS] device
OPTIONS:
-t {ext2|ext3|ext4}:指明要创建的文件系统类型
~]# mke2fs -t ext3 /dev/sda3
-b {1024|2048|4096}:指明文件系统的块大小。
~]# mke2fs -b 1024 /dev/sda3
-L LABEL:指明卷标.
~]# mke2fs -L 'MYDATA' /dev/sda3
-j:创建有日志功能的文件系统ext3。
~]# mke2fs -j /dev/sda3
-i #:bytes-per-inode,指明inode与字节的比率;即每多少字节创建一个Indode;
~]# mke2fs -i 1024 /dev/sda3
-N #:直接指明要给此文件系统创建的inode的数量。
~]# mke2fs -N 307200 /dev/sda3
-m #:指定预留的空间,百分比。(直接指明数字)
~]# mke2fs -m 2 /dev/sda3
-O [^]FEATURE:以指定的特性创建目标文件系统。
---------------------------------------------------------------------------------------------
###:e2label:查看与改变 ext2/ext3/ext4 文件系统卷。
SYNOPSIS:
e2label device [ new-label ]
OPTIONS:
查看:e2label device
~]# e2label /dev/sda3
设定:e2label device LABEL
~]# e2label /dev/sda3 label
---------------------------------------------------------------------------------------------
###:tune2fs:查看或修改 ext2/ext3/ext4 系列文件系统的某些属性。
SYNOPSIS:
tune2fs [OPTIONS] device
OPTIONS:
-l:查看超级块的内容
~]# tune2fs -l /dev/sda3
修改指定文件系统的属性:
-j:ext2 --> ext3:添加一个ext3日志文件系统
~]# blkid /dev/sda3
/dev/sda3: UUID="87a8af11-c075-48b8-a10d-c2f90997cd2e" TYPE="ext2"
~]# tune2fs -j /dev/sda3
tune2fs 1.42.9 (28-Dec-2013)
Creating journal inode: done
~]# blkid /dev/sda3
/dev/sda3: UUID="87a8af11-c075-48b8-a10d-c2f90997cd2e" SEC_TYPE="ext2" TYPE="ext3"
-L LABEL:修改卷标。
~]# tune2fs -L 'LABEL' /dev/sda3
` tune2fs 1.42.9 (28-Dec-2013)
~]# e2label /dev/sda3
LABEL
~]# tune2fs -l /dev/sda3
tune2fs 1.42.9 (28-Dec-2013)
Filesystem volume name: LABEL
.....
-m #:调整预留空间百分比;
~]# tune2fs -m 2 /dev/sda3
tune2fs 1.42.9 (28-Dec-2013)
Setting reserved blocks percentage to 2% (6144 blocks)
-O [^]FEATHER:开启或关闭某种特性;
dir_index
dir_nlink
extra_isize
filetype
flex_bg
has_journal
huge_file
large_file
resize_inode
mmp
sparse_super
uninit_bg
-o [^]mount_options:开启或关闭某种默认挂载选项
debug
bsdgroups
user_xattr
acl
uid16
journal_data
journal_data_ordered
journal_data_writeback
nobarrier
block_validity
discard
nodelalloc
注意:块大小创建后不可修改。
---------------------------------------------------------------------------------------------
dumpe2fs命令:显示ext系列文件系统的属性信息
dumpe2fs [-h] device
---------------------------------------------------------------------------------------------
###:dumpe2fs:显示 ext2/ext3/ext4 文件系统的属性信息
SYNOPSIS:
dumpe2fs [ -bfhixV ] [ -o superblock=superblock ] [ -o blocksize=blocksize ] device
OPTIONS:
-h:只显示超级块信息,不显示块组描述符的详细信息。
~]# dumpe2fs -h /dev/sda3
---------------------------------------------------------------------------------------------
###:lsmod:在内核中显示模块的状态
---------------------------------------------------------------------------------------------
文件系统检测的工具:
因进程意外中止或系统崩溃等 原因导致定稿操作非正常终止时,可能会造成文件损坏;此时,应该检测并修复文件系统; 建议,离线进行。
---------------------------------------------------------------------------------------------
###:e2fsck:检查 ext2/ext3/ext4 文件系统
SYNOPSIS:
e2fsck [OPTIONS] device
OPTIONS:
-y:对所有问题自动回答为yes。
-f:即使文件系统处于clean状态,也要强制进行检测。
---------------------------------------------------------------------------------------------
###:fsck:检查和修补Linux文件系统
SYNOPSIS:
fsck [-lrsAVRTMNP] [-C [fd]] [-t fstype] [filesystem...] [--] [fs-specific-options]
OPTIONS:
-t fstype:指明文件系统类型。
~]# fsck -t ext4
-a:无须交互而自动修复所有错误。
~]# fsck -a
fsck from util-linux 2.23.2
-r:交互式修复;
~]# fsck -r
fsck from util-linux 2.23.2
---------------------------------------------------------------------------------------------
挂载与卸载
---------------------------------------------------------------------------------------------
###:mount:挂载一个文件系统
SYNOPSIS:
mount [-lhV]
mount -a [-fFnrsvw] [-t vfstype] [-O optlist]
mount [-fnrsvw] [-o option[,option]...] device|dir
mount [-fnrsvw] [-t vfstype] [-o options] device dir
DESCRIPTION:
根文件系统这外的其它文件系统要想能够被访问,都必须通过“关联”至根文件系统上的某个目录来实现,此关联操作即为“挂载”;此目录即为“挂载点。
挂载点:mount_point,用于作为另一个文件系统的访问入口。
(1) 事先存在。
(2) 应该使用未被或不会被其它进程使用到的目录。
(3) 挂载点下原有的文件将会被隐藏。
OPTIONS:
-r:readonly,只读挂载。
-w:read and write, 读写挂载。
-n:默认情况下,设备挂载或卸载的操作会同步更新至/etc/mtab文件中;-n用于禁止此特性。
-t vfstype:指明要挂载的设备上的文件系统的类型;多数情况下可省略,此时mount会通过blkid来判断要挂载的设备的文件系统类型。
-L LABEL:挂载时以卷标的方式指明设备。
mount -L LABEL dir
-U UUID:挂载时以UUID的方式指明设备。
mount -U UUID dir
-o options:挂载选项。
sync/async:同步/异步操作。
atime/noatime:文件或目录在被访问时是否更新其访问时间戳。
diratime/nodiratime:目录在被访问时是否更新其访问时间戳。
remount:重新挂载。
acl:支持使用facl功能。
# mount -o acl device dir
# tune2fs -o acl device
ro:只读
rw:读写
dev/nodev:设备上是否允许创建设备文件。
exec/noexec:是否允许运行程序文件(可执行文件)
auto/noauto:自动挂载,必须在fstab存在
user/nouser:是否允许普通用户挂载此文件系统
suid/nosuid:是否允许程序文件上的suid和sgid生效
defaults:Use default option rw,suid dev exec auto nouser async ,and relatime.
使用技巧:
绑定操作:将目录绑定到另外一个目录上,当做其临时访问入口。
mount --bind 源目录 目标目录
所有已挂载的设备:
1, mount
2, cat /etc/mtab
3, cat /proc/mounts
挂载光盘:
mount -r /dev/cdroom mount_point
光盘设备文件:/dev/cdrom /dev/cdrw (sr0 或者 hdc)
mount -r /dev/cdrom /media/cdrom
挂载u盘:
识别U盘设备文件。
挂载本地的回环设备
mount -o loop 源文件 目标目录
设定除根文件系统以外的其它文件系统能够开机时自动挂载:/etc/fstab文件
每行定义一个要挂载的文件系统及相关属性:
6个字段:
(1) 要挂载的设备:
设备文件;
LABEL
UUID
伪文件系统:如sysfs, proc, tmpfs等
(2) 挂载点
swap类型的设备的挂载点为swap;
(3) 文件系统类型;
(4) 挂载选项
defaults:使用默认挂载选项;
如果要同时指明多个挂载选项,彼此间以事情分隔;
defaults,acl,noatime,noexec
(5) 转储频率
0:从不备份;
1:每天备份;
2:每隔一天备份;
(6) 自检次序
0:不自检;
1:首先自检,通常只能是根文件系统可用1;
2:次级自检
...
mount -a:可自动挂载定义在此文件中的所支持自动挂载的设备;
---------------------------------------------------------------------------------------------
###:umount:卸载一个文件系统
SYNOPSIS:
umount [-hV]
umount -a [-dflnrv] [-t vfstype] [-O options]
umount [-dflnrv] {dir|device}...
DESCRIPTION:
注意:正在被进程访问到的挂载点无法被卸载;
OPTIONS:
umount device | dir
查看被哪个或哪些进程所战用:
~]# lsof 挂载点
~]# fuser -v 挂载点
终止所有正在访问某挂载点的进程:
~]# fuser -km 挂载点
---------------------------------------------------------------------------------------------
###:mkswap:设置一个交换区
SYNOPSIS:
mkswap [options] device [size]
DESCRIPTION:
usr var 可以是单独的分区。
bin sbin 等必须在根分区上。
Linux上的交换分区必须使用独立的文件系统,且文件系统的System ID必须为82。
OPTIONS:
-f, --force:强制
~]# mkswap -f /dev/sda3
mkswap: /dev/sda3: warning: wiping old ext2 signature.
Setting up swapspace version 1, size = 307196 KiB
no label, UUID=79b32869-c56a-49f7-8330-2a04eeda2a2b
-L, --label label:指明卷标
~]# mkswap -L 'Label' /dev/sda3
开启与关闭交换分区:
启用交换分区:swapon device
-a:所有swap设备(定义在/etc/fstab 文件中的所有swap设备。)
禁用交换分区:swapoff device
设定开机自动挂载(除根文件以外的文件系统):/etc/fstab
设备(设备文件 LABEL uuid 伪文件系统)
挂砸点:swap比较特殊(swapon 激活)
文件系统
挂载选项:defaults,指明多个挂载点逗号分隔。
defaults,acl,noatime,noexec
转储频率(备份)
0:从不备份
1:每天备份
2:每隔一天备份
自检次序
0:不自检
1:首先自检
2:次级自检
.....
9
---------------------------------------------------------------------------------------------
统计与查看
---------------------------------------------------------------------------------------------
###:df:查看磁盘使用状态
OPTIONS:
-l:只显示本地文件系统
-h:转换单位。
-i:inode使用量
---------------------------------------------------------------------------------------------
###:du:评估文件大小
OPTIONS:
-s:整体显示
-h:换算单位
---------------------------------------------------------------------------------------------
###:free -m :查看内存使用状态
OPTIONS:
-a:以M单位
-g:以G单位
磁盘及文件系统管理(分区,挂载,卸载,信息展示与统计)
最新推荐文章于 2022-06-06 21:35:17 发布