格式化分区命令
mkfs
mkfs命令通常用于在设备硬件分区上创建linux文件系统。mkfs命令支持建立多种Linux文件系统,如ext系列,xfs等等。实际上mkfs是支持多种文件系统构建命令mkfs. TYPE的前部分,mkfs命令通常执行的时候也是调用mkfs. TYPE来执行,如mkfs.ext2,mkfs.vfs,mkfs.vfat等等。
命令格式:
mkfs [options] [device]
[root@qiaojidong ~]# mkfs
用法:
mkfs [选项] [-t <类型>] [文件系统选项] <设备> [<大小>]
选项:
-t, --type=<类型> 文件系统类型;若不指定,将使用 ext2
fs-options 实际文件系统构建程序的参数
<设备> 要使用设备的路径
<大小> 要使用设备上的块数
-V, --verbose 解释正在进行的操作;
多次指定 -V 将导致空运行(dry-run)
-V, --version 显示版本信息并退出
将 -V 作为 --version 选项时必须是惟一选项
-h, --help 显示此帮助并退出
更多信息请参阅 mkfs(8)。
[root@qiaojidong ~]#
实例:
创建ext4文件系统并指定卷标为testdisk:
[root@localhost tmp]# mkfs -t ext4 -L 'testdisk' /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=testdisk
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 2621440 blocks
131072 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=2151677952
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
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
[root@localhost tmp]# blkid /dev/sdb1
/dev/sdb1: LABEL="testdisk" UUID="f5ab78a1-a8a1-4a83-928d-3bb3c581cdf4" TYPE="ext4"
mke2fs
mke2fs命令是专门用于管理ext系列文件系统的一个专门的工具。其还有像mkfs.ext2,mkfs.ext3,mkfs.ext4等衍生的命令,它们的用法mke2fs类似,在系统man下它们的帮助手册会直接跳转mke2fs命令的帮助手册。
[root@qiaojidong-01 ~]#
[root@qiaojidong-01 ~]# mke2fs
Usage: mke2fs [-c|-l filename] [-b block-size] [-C cluster-size]
[-i bytes-per-inode] [-I inode-size] [-J journal-options]
[-G flex-group-size] [-N number-of-inodes]
[-m reserved-blocks-percentage] [-o creator-os]
[-g blocks-per-group] [-L volume-label] [-M last-mounted-directory]
[-O feature[,...]] [-r fs-revision] [-E extended-option[,...]]
[-t fs-type] [-T usage-type ] [-U UUID] [-jnqvDFKSV] device [blocks-count]
[root@qiaojidong-01 ~]#
-t 指定格式化的格式
-b 指定块大小
mke2fs -t ext4 -b 2048 /dev/sdb1
-t 指定要格式化成什么样的文件系统(centos7文件系统xfs、centos6文件系统ext4、centos5文件系统ext3、centos5之前版本的文件系统ext2)
-b 指定块大小,可以是2048,4096,8192,默认是4096
-m 可以使磁盘最大化使用,0.1(这儿的数字是百分比)也是可以的
-i 指定多少个字节对应一个inode,最少一个块对应一个inode
mk2fs 无法指定xfs的文件系统
实例:
创建ext4文件系统并设置卷标为testdisk:
root@localhost ~]# mke2fs -t ext4 -L 'testdisk' /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=testdisk
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
327680 inodes, 1310720 blocks
65536 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1342177280
40 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
Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
blkid
blkid命令对查询设备上所采用文件系统类型进行查询。blkid主要用来对系统的块设备(包括交换分区)所使用的文件系统类型、LABEL、UUID等信息进行查询。要使用这个命令必须安装e2fsprogs软件包。
[root@qiaojidong ~]# blkid ##可指定硬盘,比如:blkid /dev/sda 等。##
/dev/vda1: UUID="59d9ca7b-4f39-4c0c-9334-c56c182076b5" TYPE="ext4"
[root@qiaojidong ~]#
mount
mount是Linux下的一个命令,它可以将分区挂接到Linux的一个文件夹下,从而将分区和该目录联系起来,因此我们只要访问这个文件夹,就相当于访问该分区了。
实例:
##
[root@linux-01 ~]# mount /dev/sdb /mnt/ ##将sdb挂载到/mnt/下##
[root@linux-01 ~]# df -h ##查看挂载情况##
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 16G 1.1G 15G 7% /
devtmpfs 900M 0 900M 0% /dev
tmpfs 911M 0 911M 0% /dev/shm
tmpfs 911M 9.5M 901M 2% /run
tmpfs 911M 0 911M 0% /sys/fs/cgroup
/dev/sda1 197M 115M 82M 59% /boot
tmpfs 183M 0 183M 0% /run/user/0
/dev/sdb 10G 33M 10G 1% /mnt
fstab
存放档案系统与目录结构对应资料的档案
位置:
/etc/fstab
在这个文件中,每个文件系统用一行来描述,在每一行中,用空格或TAB符号来分隔各个字段,文件中以#开头的行是注释信息。Fstab文件中的纪录的排序十分重要。因为fsck,mount或umount等程序在做它们的工作时会按此顺序进行。
#
# /etc/fstab
# Created by anaconda on Fri Aug 18 03:51:14 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=59d9ca7b-4f39-4c0c-9334-c56c182076b5 / ext4 defaults 1 1
~
第一列:设备号可以是uuid也可以是磁盘的分区/dev/sdb
第二列:设备的挂载点,就是你要挂载到哪个目录下。
第三列:磁盘文件系统的格式,包括ext2、ext3、reiserfs、nfs、vfat等
第四列:文件系统的参数
第五列:能否被dump备份命令作用:dump是一个用来作为备份的命令。通常这个参数的值为0或者1;0代表不要做dump备份;1代表要每天进行dump的操作;2代表不定日期的进行dump操作。
第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整(clean)0代表不要检验,1代表最早检验(一般根目录会选择),2代表1级别检验完成之后进行检验
第四列文件系统参数的解释:
ro 以只读模式加载该文件系统 对应还有rw,以读写模式加载该文件系统
sync 不对该设备的写操作进行缓冲处理,这可以防止在非正常关机时情况下破坏文件系统,但是却降低了计算机速度
user 允许普通用户加载该文件系统
quota 强制在该文件系统上进行磁盘定额限制
noauto 不再使用mount -a命令(例如系统启动时)加载该文件系统
fs_dump - 该选项被"dump"命令使用来检查一个文件系统应该以多快频率进行转储,若不需要转储就设置该字段为0.文件系统频率(fs_freq),被dump程序使用来确定哪个文件系统需要dump,如果最后一个字段没有设置,系统将认为其值为0,而dump程序则认为此文件系统无需dump。
fs_pass- 该字段被fsck命令用来决定在启动时需要被扫描的文件系统的顺序,根文件系统"/"对应该字段的值应该为1,其他文件系统应该为2。若该文件系统无需在启动时扫描则设置该字段为0.被fsck程序所使用来确定进行在系统重启进行文件系统检查时的顺序,对于根系统/这个值应设为1,其它文件系统可以设为2,在同一个物理硬盘内的文件系统应该被顺序检测,而不同硬盘中的文件系统则应该同时检测以充分利用系统的并行性。如果最后一个字段值为0或没有设置,fsck程序装跳过此文件系统的检测。在linux编程中可以用getmntent过程来访问这个文件的内容。
挂载命令mount对应的卸载命令为umount
[root@linux-01 ~]# cd /mnt/
[root@linux-01 mnt]# ll
总用量 0
[root@linux-01 mnt]# touch 1.txt 2.txt
[root@linux-01 mnt]# mkdir 111
[root@linux-01 mnt]#
[root@linux-01 mnt]# umount /dev/sdb
umount: /mnt:目标忙。 ##目标忙是因为当前用户正在/mnt 下,无法卸载,可使用 umount -l /mnt/ 不退出目录卸载(-l =lazy)##
(有些情况下通过 lsof(8) 或 fuser(1) 可以
找到有关使用该设备的进程的有用信息)
[root@linux-01 mnt]# cd ~
[root@linux-01 ~]# !umount
umount /dev/sdb
[root@linux-01 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 16G 1.1G 15G 7% /
devtmpfs 900M 0 900M 0% /dev
tmpfs 911M 0 911M 0% /dev/shm
tmpfs 911M 9.5M 901M 2% /run
tmpfs 911M 0 911M 0% /sys/fs/cgroup
/dev/sda1 197M 115M 82M 59% /boot
tmpfs 183M 0 183M 0% /run/user/0
swap空间管理
## 增加swap空间 ##
[root@linux-01 mnt]# dd if=/dev/zero of=/tmp/newdisk bs=1M count=100
记录了100+0 的读入
记录了100+0 的写出
104857600字节(105 MB)已复制,0.118725 秒,883 MB/秒
[root@linux-01 mnt]# du -sh /tmp/newdisk
100M /tmp/newdisk
[root@linux-01 mnt]# mkswap /tmp/newdisk
正在设置交换空间版本 1,大小 = 102396 KiB
无标签,UUID=9baf6b2b-acec-4d85-8daa-28685287b343
[root@linux-01 mnt]# mkswap -f /tmp/newdisk
mkswap: /tmp/newdisk: warning: wiping old swap signature.
正在设置交换空间版本 1,大小 = 102396 KiB
无标签,UUID=8ddb6f31-2667-45c4-b8e4-78ca8c90a77e
[root@linux-01 mnt]# free
total used free shared buff/cache available
Mem: 1864248 142276 1440564 9696 281408 1529748
Swap: 4194300 0 4194300
[root@linux-01 mnt]# swapon /tmp/newdisk
swapon: /tmp/newdisk:不安全的权限 0644,建议使用 0600。
[root@linux-01 mnt]# free -m
total used free shared buff/cache available
Mem: 1820 138 1406 9 274 1493
Swap: 4195 0 4195
[root@linux-01 mnt]#
## 删除增加的swap空间 ##
[root@linux-01 mnt]# swapoff /tmp/newdisk
[root@linux-01 mnt]# free -m
total used free shared buff/cache available
Mem: 1820 138 1406 9 274 1493
Swap: 4095 0 4095
[root@linux-01 mnt]#
lvm
磁盘有坏道的修复 fsck/e2fsck -a 分区名 https://www.2cto.com/os/201204/126370.html
raid是什么?https://blog.youkuaiyun.com/caipeichao2/article/details/52661825
RAID磁盘阵列配置和调优小结 https://www.jianshu.com/p/b1cfac3f7679?utm_campaign=maleskine&utm_content=note&utm_medium=seo_notes&utm_source=recommendation
drdb安装?https://blog.51cto.com/linuxboys/1673311
Rsync+inotify搭建实时同步系统 https://blog.51cto.com/10316297/2136440
磁盘坏道修复 https://www.jianshu.com/p/0b7c7e9a8779
dd使用场景
测试磁盘性能 https://blog.youkuaiyun.com/daiyudong2020/article/details/53157558
备份硬盘数据 http://zuyunfei.com/2015/06/04/linux-dd/
lvm使用场景
阿里云磁盘扩容文档 https://help.aliyun.com/document_detail/25452.html
硬盘大于2t如何分区
linux新增大于2T硬盘,分区并挂载 https://blog.youkuaiyun.com/u012150360/article/details/81333051