磁盘格式化、磁盘挂载和手动增加swap空间

一个人想着一个人 提交于 2019-12-06 01:34:05

9月26日任务

4.5/4.6 磁盘格式化

4.7/4.8 磁盘挂载

4.9 手动增加swap空间

 

磁盘格式化

查看系统支持的文件系统

系统支持的文件系统类型
[root@centos7 ~]# cat /etc/filesystems
xfs
ext4
ext3
ext2
nodev proc
nodev devpts
iso9660
vfat
hfs
hfsplus
*
centos7 系统默认的文件系统格式是 xfs,
centos6.x版本为ext4,再之前就是ext3/2...

格式化新分区

  1. mke2fs命令

  • 默认不加参数

        格式化分区类型为ext2,块大小为4096字节(即4K),预留磁盘空间为5%。可以通过参数(单个或多个结合)设置来修改!

[root@localhost ~]# mke2fs /dev/sdb5
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
    32768, 98304, 163840, 229376

Allocating group tables: 完成                            
正在写入inode表: 完成                            
Writing superblocks and filesystem accounting information: 完成

[root@localhost ~]# blkid /dev/sdb5
/dev/sdb5: UUID="c8ac98dc-9794-44ee-a29d-90e13d405175" TYPE="ext2"
  • -t 指定文件系统类型(不支持xfs)
[root@localhost ~]# mke2fs -t ext4 /dev/sdb5
....
information: 完成

[root@localhost ~]# blkid /dev/sdb5
/dev/sdb5: UUID="f98f1f5e-bb4a-4242-a1f4-7f83119bcb82" TYPE="ext4"
  • -b 指定块大小

        系统块大小默认为4096字节 (根据所存储数据大小特性,调整block大小,可以优化性能,一般来说保存默认即可)

[root@localhost ~]# mke2fs -t ext4 -b 2048 /dev/sdb5
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=2048 (log=1)   # 块大小已被修改为2048字节
分块大小=2048 (log=1)
......
information: 完成
  • -m 指定预留给root的磁盘空间占比
[root@localhost ~]# blkid /dev/sdb5
/dev/sdb5: UUID="ec2d49ca-08f6-45dc-9e31-cfe55a997f8e" TYPE="ext4"
[root@localhost ~]# mke2fs -t ext4 -m 1 /dev/sdb5
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
2621 blocks (1.00%) reserved  # 预留设置了1%
......
information: 完成
  • -i 指定多少字节对于1个inode号,默认4K对于1个inode号(在分区inode号不够时,可以通过调节块大小来增加inode号数量)
[root@localhost ~]# mke2fs -t ext4 -i 8192 /dev/sdb5
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131072 inodes, 262144 blocks
# 1个inode对于2个blocks即8192字节
......
information: 完成

使用 man mke2fs 查看命令具体使用

 

    2. mkfs.ext4/xfs命令

        mkfs.抬头的命令有以下几种

[root@localhost ~]# mkfs.
mkfs.btrfs   mkfs.ext2    mkfs.ext4    mkfs.xfs     
mkfs.cramfs  mkfs.ext3    mkfs.minix

主要介绍下mkfs.ext4和mkfs.xfs

  • CentOS6及之前版本中文件系统为ext4及更早版本

[root@localhost ~]# mkfs.ext4  /dev/sdb5
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
    32768, 98304, 163840, 229376

Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (8192 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
  • CentOS7内的默认文件系统为xfs
[root@localhost ~]# mkfs.xfs  /dev/sdb5
mkfs.xfs: /dev/sdb5 appears to contain an existing filesystem (ext4).
mkfs.xfs: Use the -f option to force overwrite.

# 对于已经设置过文件系统类型的磁盘需要执行-f参数强制格式化

[root@localhost ~]# mkfs.xfs -f  /dev/sdb5
meta-data=/dev/sdb5              isize=512    agcount=4, agsize=65536 blks
         =                                       sectsz=512   attr=2, projid32bit=1
         =                                       crc=1        finobt=0, sparse=0
data  =                                       bsize=4096   blocks=262144, imaxpct=25
         =                                       sunit=0      swidth=0 blks
naming   =version 2                  bsize=4096   ascii-ci=0 ftype=1
log      =internal log                  bsize=4096   blocks=2560, version=2
         =                                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                         extsz=4096   blocks=0, rtextents=0
  • 使用blkid命令可以查看未挂载的磁盘分区,使用df命令无法查看新修改的文件系统(未挂载)
[root@localhost ~]# blkid /dev/sdb5
/dev/sdb5: UUID="6f2aa21a-3af6-455b-91a6-277088815c98" TYPE="xfs"

格式化未分区磁盘

不仅可以对分过区的磁盘进行格式化操作,也可以直接对未分区的磁盘进行格式化!

[root@localhost ~]# mkfs.xfs -f /dev/sdb
meta-data=/dev/sdb               isize=512    agcount=4, agsize=655360 blks
         =                                      sectsz=512   attr=2, projid32bit=1
         =                                      crc=1        finobt=0, sparse=0
data     =                                   bsize=4096   blocks=2621440, imaxpct=25
         =                                      sunit=0      swidth=0 blks
naming   =version 2                 bsize=4096   ascii-ci=0 ftype=1
log      =internal log                 bsize=4096   blocks=2560, version=2
         =                                      sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                         extsz=4096   blocks=0, rtextents=0
[root@localhost ~]# blkid /dev/sdb
/dev/sdb: UUID="018febb7-642f-4935-b8ae-52d39118a24d" TYPE="xfs"

磁盘分区挂载

挂载命令:mount

Usage: mount 磁盘分区 挂载点

挂载完成后就可以使用df -h命令看到挂载的分区,也可以使用mount命令查看磁盘的文件系统类型。

# 挂载前
[root@localhost ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        18G  1.2G   17G    7% /
devtmpfs        479M     0  479M    0% /dev
tmpfs           489M     0  489M    0% /dev/shm
tmpfs           489M  6.7M  482M    2% /run
tmpfs           489M     0  489M    0% /sys/fs/cgroup
/dev/sda1       197M  109M   88M   56% /boot
tmpfs            98M     0   98M    0% /run/user/0

# 执行mount命令挂载后
[root@localhost ~]# mount /dev/sdb /mnt
[root@localhost ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        18G  1.2G   17G    7% /
devtmpfs        479M     0  479M    0% /dev
tmpfs           489M     0  489M    0% /dev/shm
tmpfs           489M  6.7M  482M    2% /run
tmpfs           489M     0  489M    0% /sys/fs/cgroup
/dev/sda1       197M  109M   88M   56% /boot
tmpfs            98M     0   98M    0% /run/user/0
/dev/sdb         10G   33M   10G    1% /mnt

mount常用参数

  • -o 参数

    • defaults == rw,suid,dev,exec,auto,nouser,and async

    • rw 可读写

    • auto 自动挂载

    • nouser 不允许普通用户挂载

    • async 同步写入

    • remount 重新挂载

挂载配置文件 /etc/fstab

[root@centos7 ~]# cat /etc/fstab

#
# /etc/fstab
# Created by anaconda on Thu Aug 31 05:17: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=5ee3eb67-81a1-4064-83fc-fbf79c808c7a /                       xfs     defaults        0 0
UUID=5671cec2-24c1-4553-8c96-00057ce308a6 /boot                   xfs     defaults        0 0
UUID=1f8c12e3-4ff7-46d5-a720-1be96686adcd swap                    swap    defaults        0 0
第一列:挂载的文件系统盘名或UUID
第二列:挂载点
第三列:分区的文件系统类型
第四列:挂载选项
第五列:是否备份;
第六列:是否检测磁盘优先级0-2,0不检测,2优先级比1高

卸载命令:umount

Usage: umount 磁盘分区/挂载点

  • 一般情况下,直接在挂载点执行umount操作,将无法执行,需要切换到其他目录才可以!

[root@localhost mnt]# umount /dev/sdb
umount: /mnt:目标忙。
        (有些情况下通过 lsof(8) 或 fuser(1) 可以
         找到有关使用该设备的进程的有用信息)
[root@localhost mnt]# cd
[root@localhost ~]# umount /dev/sdb
  • 要想直接在挂载点执行umount命令只需要加 -l 参数就可以直接卸载
[root@localhost ~]# cd /mnt/
[root@localhost mnt]# umount -l /dev/sdb
[root@localhost mnt]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        18G  1.2G   17G    7% /
devtmpfs        479M     0  479M    0% /dev
tmpfs           489M     0  489M    0% /dev/shm
tmpfs           489M  6.7M  482M    2% /run
tmpfs           489M     0  489M    0% /sys/fs/cgroup
/dev/sda1       197M  109M   88M   56% /boot
tmpfs            98M     0   98M    0% /run/user/0

实用技巧

手动增加swap空间

  1. 从磁盘中分割出一个空磁盘

# /dev/zero是系统的一个特殊设备,它输出的是空数据
[root@localhost ~]# dd if=/dev/zero of=/tmp/newdisk bs=1M count=100
记录了100+0 的读入
记录了100+0 的写出
104857600字节(105 MB)已复制,24.364 秒,4.3 MB/秒

# 查看磁盘大小
[root@localhost ~]# du -sh /tmp/newdisk
100M    /tmp/newdisk

    2. 格式化空磁盘

[root@localhost ~]# mkswap -f /tmp/newdisk
正在设置交换空间版本 1,大小 = 102396 KiB
无标签,UUID=8a12dd8f-f4ff-412f-a6cf-fdca4aacba37

    3. 将新磁盘加到swap空间上去

[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            976         115         604           6         257         687
Swap:          2047           0        2047

[root@localhost ~]# swapon /tmp/newdisk
swapon: /tmp/newdisk:不安全的权限 0644,建议使用 0600。

# 提示警告,但是也已经成功增容
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            976         115         604           6         257         687
Swap:          2147           0        2147


# 最好执行权限修改后再执行swapon
[root@localhost ~]# chmod 0600 /tmp/newdisk

如何删除

删掉新添加的磁盘空间

[root@localhost ~]# swapoff /tmp/newdisk
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            976         114         604           6         257         687
Swap:          2047           0        2047

[root@localhost ~]# rm -rf /tmp/newdisk

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!