[TOC]
1 | 在系统中,常见的硬盘接口有分两类:并行的和串行的 |
想要使用一块没有用过的磁盘,需要做一下几部:
1、设备识别,即首先要讲磁盘接入设备中,在系统中能够看到设备(/dev/DEV_FILE)
2、设备分区,全新的磁盘是没有分区的
3、创建文件系统,主要明确在设备上存储的数据是什么格式的.(ext3,ext4,NTFS...)
4、标记文件系统
5、在/etc/fstab文件中创建条目
6、挂在新的文件系统
磁盘分区:
1 | 磁盘分区的理由: |
管理分区:
1 | 列出块设备:lsblk |
文件系统:
查看当前系统支持的文件系统 cat /proc/filesystems
创建文件系统
mkfs.fs_type /dev/DEVICE
fs_type: ext# xfs btrfs vfat...
mkfs -t fs_type /dev/DEVICE
创建ext文件系统
mke2fs:ext系列文件系统专用管理工具
-t ext#
-b {1024|2048|4096}
-L 'lable'
-j: 加日志记录 相当于-t ext3
-i #:为数据空间中每多少个字节创建一个inode;此大小不应该小于block的大小
-N #:为数据空间创建多少个inode
-I 一个inode记录大小 128--4096
-m #:默认5% 位管理人员预留空间占总空间的百分比
文件系统标签:
blkid [options]...[device]块设备属性信息查看
-U UUID:根据指定的UUID来查找对应的设备
-L LABLE:根据指定的lable来查找
e2lable:管理ext系列文件系统的lable eg e2labl device [lable]
findfs:查找分区
findfs [options] LABLE=<lable>
findfs [options] UUID=<uuid>
tune2fs:重新设定ext系列文件系统可调整参数的值
-l:查看指定文件系统超级块信息:super block
-L 'LABLE' 修改卷标
-m #:默认5% 位管理人员预留空间占总空间的百分比
-j 将ext2升级为ext3
-U UUID修改
dumpe2fs -h 查看你超级块信息,不显示分组信息
文件系统检测和修复
常发生于死机或者非正常关机之后
挂在为文件系统标记为 No clean
注意:不要在挂载状态下修复
修复命令工具:
fsck:file system check
fsck.fs_type
fsck -t fs_type
-a :自动修复错误
-f :交互式修复错误
e2fsck:ext系列文件专用的检测修复工具
-y:自动回答yes
-f:强制修复
挂载mount
挂载mount:将额外文件系统与根文件系统某现存的目录建立起关联关系,从而使得此目录作为其他文件访问入口的行为.
卸载unmount:接触挂载关系,进程正在使用中的设备无法被卸载
挂载点目录一般为空,如果有文件,则挂载后原文件在挂载完成后倍临时隐藏
通过查看/etc/mtab 文件显示当前已挂载的所有设备
mount [-fnrsvw] [-t vfstype] device mount_point
-v vfstype:指定要挂载的设备上的文件系统类型
-r: readonly,只读挂载
-w:read and write,读写挂载
-n:不更新/etc/mtab
-a:自动挂载所有支持自动挂载的设备(定义在/etc/fstab文件中,且挂载选项中有auto功能)
-L 'LABLE'
-U 'UUID'
-B,--blind:绑定目录到另一个目录上
cat /proc/mounts 查看内核追踪到的已挂载的所有设备
-o options:(挂载文件系统的选择),多个选择使用逗号分隔
async:异步模式
sync:同步模式,内存更改时同时写磁盘
atime/noatime:包含目录和文件
diratime/nodiratime:目录访问时间戳
auto/noauto: 是否支持自动挂载,是否支持 -a选择
exec/noexec:是否支持在文件系统上运行应用程序
dev/nodev: 是否支持在此文件系统上使用设备文件
suid、nosuid:是否支持suid和sgid权限
remount 重新挂载
ro:只读 rw:读写
user、nouser:是否允许普通用户挂载次设备,默认管理员才能挂载
acl:启用次文件系统上的acl功能
default:相当于rw,nosuid,dev,exec,auto,nouser,async
findmnt mount_point 查看挂载情况
查看正在访问指定文件系统的进程:
lsof mount_point
fuser -v mount_point
终止所有正在访问指定的文件系统的进程:
fuser -km mount_point
卸载 umount device
或者 umount mount_point
文件挂载配置文件 /etc/fstab
1 | 1、要挂载的设备或伪文件系统:设备文件、lable(LABLE="")、UUID(UUID="")、伪文件系统名称(proc、sysfs) |
创建ISO文件
cp /dev/cdrom /root/centos7.iso
mkisofs -r -o /root/etc.iso /etc
刻录光盘
wodim -v -eject centos.iso
常见工具命令
free [option] -m :以M为单位 -g :以GB为单位
df [option]...[file]...
-H:以1000为单位
-T:文件系统类型
-h:human readable
-i:inodes instead of block
-p:以posix 兼容的格式输出
du [option]...dir
-h :human readable
-s :summary
dd if=/path/from/src of=/path/to/dest
bs=# :block size ,复制单元大小
count=# :复制多少个bs
of=file 写到所命名的文件
if=file 从file文件读取
bs=size 指定块大小(即使ibs也是obs)
ibs=size 一次读取size个byte
obs=size 一次写size个byte
cbs=size 一次转化size个byte
skip=blocks 从开头忽略blocks个ibs大小的快
seek=blocks 从开头忽略blocks个obs大小的快
count=n 只拷贝n个记录
conv=conversion[,conversion...] 用指定的参数转换文件,转换参数如下:
ascii 转换ebcdic为ascii
ebcdic 转换ascii为ebcdic
block 转换一行数据为度为cbs的记录,不足部分用空格填充
unblock 替代cbs长度的每一行尾的空格为新行
lcase 吧大写字符转换为小写字符
ucase 吧小写字符转换为大写字符
nocreat 不创建输出文件
noerror 出错时不停止
notrunc 不截短输出文件
sync 把每个输出块填充到ibs个字节,不足部分用空字符补齐
备份MBR: dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1