1)想使用一块新添加的磁盘,首先需要分区。一块磁盘的MBR分区表中最多只能包括4个分区的记录(主分区或者扩展分区的记录),如果需要更多的分区,则需要建立一个扩展分区,然后在该扩展分区上建立逻辑分区 2)格式化新建的分区成为所需要的文件系统 3)挂载分区使用
#df [OPTION]... [FILE]... 查看文件系统磁盘空间使用量
-i 查看inode信息
-h 易读模式
-l 只显示本地文件系统
#du [OPTION]... [FILE]... 显示文件大小
-s 查看目录总大小
-h 易读模式
#dd:用 指定大小 的块拷贝一个文件,并在拷贝的同时进行 指定的转换
if=/SRC of=/DEST 源路径到目的路径
bs=# block size 字节,复制单元大小
count=# 复制多少个bs
skip=blocks从开头忽略blocks个ibs大小的块
seek=blocks从开头忽略blocks个obs大小的块
磁盘拷贝:
dd if=/dev/sda2 of=/dev/sda3
备份MBR:
]#dd if=/dev/sda of=/tmp/mbr bs=512 count=1
]#dd if=/dev/zero of=/dev/sda bs=512 count=1 清空MBR
/dev/null:数据黑洞
/dev/zero:吐零机
接口类型:
IDE: 并口,133MB/s
SCSI:并口,UltraSCSI320,320MB/s, UltraSCSI640,640MB/s
SATA:串口,6gbps
SAS: 串口,6gbps
USB: 串口,480MB/s
并口:同一线缆可以接多块设备
IDE:两个 主、从
SCSI:宽带:16-1;窄带:8-1
设备文件: 关联至设备的驱动程序
/dev/..
设备号:
major:主设备号,区分设备类型,用于标明设备所需要的驱动程序
minor:次设备号,区分同种类型下的不同设备
#mknod [option].. NAME TYPE [MAJOR MINOR] 创建设备文件
-m MODE 创建设备文件时指明权限,特定设备的访问入口
引用设备的方式:
设备文件名
卷标
UUID
centos 6、7都将硬盘设备识别为/dev/sd[a-z]
=== 磁盘分区:MBR,GPT
MBR:0 sector
Master Boot Record 主引导记录
三部分:
446bytes:bootloader,引导启动操作系统的程序;
64bytes:分区表,每16字节标识一个分区,一共只能有4个分区;
4主分区
#逻辑
2bytes:MBR区域有效性标识;55AA为有效
主分区和扩展分区标识:1-4
逻辑分区:5+
GPT:GUID patition table 支持128个分区,64位,支持8Z(512B/block) 64Z(4096B/block)
128位UUID表示磁盘和分区,GPT分区表自动备份在头和尾两份,并有CRC校验位
可用gdisk配置磁盘
UEFI(同意扩展固件接口)硬件支持GPT
fdisk:[..] device
-l [-u] 查看指定设备分区信息
fdisk /dev/sda 管理分区:所有命令均在内存进行,w保存后生效
m 获取帮助
n 新建分区
l 列出所有id
d 删除指定分区
t 修改分区id
w 保存并推出
q 不保存退出
p 显示现有分区信息
注:已分区的设备上新建分区,内核可能无法立即识别
查看:cat /proc/partitons
通知内核强制重读磁盘分区表
CentOS 5、7:partprobe [device]
CentOS 6:可能需要执行两次
partx -a [devie] 对增加的分区同步
kpartx -af [device]
删除分区后:
CentOS 6:partx -d -n M:N /dev/DEVICE
创建文件系统:
格式化:低级格式化(分区之前,划分磁道)高级格式化(分区后对分区,创建文件系统)
元数据,数据
元数据:文件元数据,大小、权限、属主属组、时间戳、数据块指针
软连接:存取数据指针的空间中存储的是真是文件的访问路径
设备文件:存储数据指针的空间中存储的设备号(major,minor)
文件系统:
VFS:Viertual File System 虚拟文件系统
linux文件系统ext2,ext3,ext4,xfs,reiserfs,btrfs
光盘:iso9600
网络文件系统:nfs,cifs
集群文件系统:gfs,ocfs2
windows文件系统:vfat,ntfs
伪文件系统:proc,sysfs,tmpfs,hugepagefs
Unix文件系统:UFS,FFS,JFS
交换文件系统:swap
用户空间分布式文件系统:mogilefs,moosefs,glusterfs
RAW:未经处理或者格式化生产的文件系统
查看支持的文件系统:cat /proc/filesystems
==文件系统管理工具:
1.创建文件系统工具
mkfs
-t ext.# xfs
mkfs.ex4
#mke2fs [OPTIONS] device ext类专用
-t [ext2|ext3|ext4]
-b 指定文件系统块大小 [1024|2048|4096]
-L LABEl 指明卷标
-j 创建有日志功能的文件系统ext3
-i # 指定inode与字节的比率;即每多少个字节创建一个inode
-N # 指定创建inode数量
-m # 指定预留空间百分比 默认%5 mke2fs -m 2 device
-O 启用或关闭某种特性 -O ^FEATURE 关闭某特性
创建ext3 mke2fs -j=mke2fs -t ext3=mkfs.ext3=mkfs -t ext3
#e2label 查看或设置卷标 e2label device LABEL
#tune2fs 查看或修改ext类文件系统某些属性 块大小不可改
-l 列出超级块中的内容
-j 升级ext2到ext3
-L 修改卷标
-m # 调整预留空间百分比
-O [^]FEATUER 开启或关闭某种特性
可开启acl -o [^]mount_options 开启或关闭某个功能挂载选项 acl
usr_xattr selinux相关
-U 修改UUID uuidgen 生成uuid
#dumpe2fs 显示ext类文件系统属性信息 默认附块组详细信息
-h 只显示文件系统属性信息
#fsck 手动执行文件系统检测
系统意外中止或系统崩溃等原因导致非正常终止,可能造成文件损坏,
此时赢进行检测,应离线进行
-t 指明文件系统类型 或 fsck.xfs
-a 无需交互自动修复所有错误;不建议
-r 交互式修复
#e2fsck ext类专用文件系统检查
-y 自动回答同意
-f 强制进行检测 即使为clean状态
2.检测及修复文件系统工具
#fsck.FS_TYPE
-a 自动修复错误
-r 交互式修复错误
fsck -t FS_TYPE
常发生于死机或者非正常关机之后
挂载为文件系统标记为“dirty”
3.查看属性工具
#dumpe2fs,tune2fs
4.调整属性工具
#une2fs
内核级文件系统组成部分:
文件系统驱动:内核提供
文件系统管理工具:用户空间应用程序提供
#blkid /dev/sd# 查看设备卷标,UUID,文件系统类型
-L LABEL 查找卷标对应设备
-U UUID 查找UUID对应设备
#findfs [options] LABEL=### UUID=###
#lsmod 查看内核已装载模块
xfsprogs
swap文件系统:
linux交换分区必须为独立的文件系统
文件系统分区id必须为82
创建swap
mkswap [OPTIONS] [device]
-L 指明卷标
-f 强制
windows和linux文件系统无法相互识别,需交叉使用时可使用fat32(vfat)
#mkfs.vfat device
==文件系统的使用:
根文件系统之外的文件系统要想要被访问,都须通过关联至根文件系统上的某个目录实现
挂载点:mount_point,作为另一个文件系统的访问入口
1.已存在
2.应使用未被或不会被使用的目录下
3.挂载点下原有文件会被隐藏
#mount device dir 挂载文件系统;查看已挂载设备
-t 指明挂载文件系统类型,通常省略,自动识别
-r 只读挂载 光驱一般为只读
-w 读写挂载 默认选项
-n 不更新/etc/mtab文件;默认情况设备挂载或卸载会同步更新/etc/mtab
-L 以卷标名挂载
-U 以UUID挂载
-o options:挂载选项,指定文件系统特性
sync/async:同步/异步操作
atime/noatime:文件目录访问时间戳更新/不更新
diratime/nodiratime:目录访问时间戳更新/不更新
remount :重新挂载
acl :支持facl功能
]#mount -o remount,acl /dev/sda5 /mnt 重新挂载并支持facl ]#tune2fs -o acl /dev/sda5 启用facl
dev/nodev:此设备上是否允创建设备文件
exec/noexec:是否允许设备上的程序运行;防止设备自动运行程序
user/nouser:是否允许普通用户挂载此文件系统
defaults:rw,suid,dev,exec,auto,nouser,async,relatime
特殊使用:
将目录绑定至另一个目录,作为临时访问入口
mount --bind 源目录 目标目录
挂载回环设备:
#mount -o loop /LOOP_FILE MOUNT_POINT
查看已挂载设备:
#mount
#cat /etc/mtab
#cat /proc/mounts
卸载设备: 正在被访问的挂载点无法被卸载
#umount device|dir
#lsof dir 查看正在访问该目录的进程pid,用户和操作
#fuser
-v dir 查看正在访问的进程pid及用户,命令
-km mount_point 终止所有
交换分区的启用
启用:swapon [device]
-a 启用所有定义在/etc/fstab中的swap设备
禁用:swapoff [device]
==开机自动挂载 /etc/fstab
------------------
UUID=... /boot ext4 defaults 1 2
------------------
mount -a 可自动挂载定义在该文件中支持自动挂载的设备
1.要挂载的设备
(设备文件,LABEL,UUID,伪文件系统)
LABEL=...
2.挂载点
3.文件系统类型
4.挂载选项
defaults:使用默认挂载选项;","分隔
defaults:rw,suid,dev,exec,auto,nouser,async,relatime
acl,noatime
5.转储频率
0:从不备份
1:每天备份
2:每隔一天
6.自检次序
0:不自检
1:优先自检;通常根文件系统可用1
2:次级
...