一、磁盘分区工具
1、fdisk
fdisk
是一个常用的磁盘分区工具,在 Linux 系统中用于创建、编辑和删除磁盘分区。它可以帮助您对磁盘进行分区管理。
常用命令
-
列出所有磁盘:
fdisk -l
-
选择要分区的磁盘:
fdisk /dev/sdX
其中,
/dev/sdX
是要分区的磁盘名称(例如,/dev/sda
)。 -
查看帮助信息: 在
fdisk
提示符下,输入m
可以查看可用的命令列表和帮助信息。 -
创建新分区:
n
fdisk
会提示您选择分区类型(主分区或扩展分区)和分区编号。 -
删除分区:
d
fdisk
会提示您选择要删除的分区编号。 -
打印分区表:
p
显示当前磁盘的分区表。
-
保存并退出:
w
保存分区表并退出
fdisk
。 -
退出不保存:
q
退出
fdisk
,但不保存对分区表的修改。
在使用 fdisk
进行分区操作时,请确保您知道自己在做什么,并且确认操作不会导致数据丢失或损坏。
2、gdisk
gdisk
是用于在 Linux 系统上管理 GPT(GUID Partition Table)
的磁盘分区工具。与传统的 MBR
分区表相比,GPT
支持更大的磁盘容量和更多的分区,并且更适用于现代硬件和操作系统。
常用命令
-
列出所有磁盘:
gdisk -l
-
选择要分区的磁盘:
gdisk /dev/sdX
其中,
/dev/sdX
是要分区的磁盘名称(例如,/dev/sda
)。 -
查看帮助信息: 在
gdisk
提示符下,输入?
可以查看可用的命令列表和帮助信息。 -
创建新分区:
n
gdisk
会提示您选择分区类型(主分区、逻辑分区或EFI系统分区)和分区编号。 -
删除分区:
d
gdisk
会提示您选择要删除的分区编号。 -
打印分区表:
p
显示当前磁盘的分区表。
-
保存并退出:
w
保存分区表并退出
gdisk
。 -
退出不保存:
q
退出
gdisk
,但不保存对分区表的修改。
在使用 gdisk
进行分区操作时,请确保您知道自己在做什么,并且确认操作不会导致数据丢失或损坏。建议在分区之前备份重要的数据,并且在对磁盘进行操作时格外小心。如果您不熟悉 gdisk
或者对磁盘分区有疑问,可以寻求专业的帮助。
3、parted
parted
是在 Linux 系统上用于进行磁盘分区操作的命令行工具。它支持创建、删除、调整磁盘分区,并且可以在 GPT(GUID Partition Table)和 MBR(Master Boot Record)分区表格式之间切换。parted
比较灵活,提供了多种分区和文件系统管理的功能。
以下是一些常用的 parted
命令:
注意:使用 parted
命令可能会导致数据丢失或磁盘损坏,请谨慎操作。在使用 parted
之前,请务必备份重要的数据。
-
列出所有磁盘:
parted -l
-
选择要分区的磁盘:
parted /dev/sdX
其中,
/dev/sdX
是要分区的磁盘名称(例如,/dev/sda
)。 -
查看帮助信息: 在
parted
提示符下,输入help
可以查看可用的命令列表和帮助信息。 -
创建新分区:
mkpart
parted
会提示您输入分区的起始位置和结束位置,并要求选择分区的文件系统类型。 -
删除分区:
rm
parted
会提示您选择要删除的分区编号。 -
调整分区大小:
resizepart
parted
会提示您选择要调整大小的分区编号和新的结束位置。 -
切换分区表格式:
mklabel gpt
或者
mklabel msdos
在上面的命令中,
gpt
表示创建 GPT 分区表,msdos
表示创建 MBR 分区表。 -
退出
parted
:quit
保存对分区表的修改并退出
parted
。
在使用 parted
进行分区操作时,请确保您知道自己在做什么,并且确认操作不会导致数据丢失或损坏。建议在分区之前备份重要的数据,并且在对磁盘进行操作时格外小心。如果您不熟悉 parted
或者对磁盘分区有疑问,可以寻求专业的帮助。
二、挂载
1、mount
mount
命令用于挂载文件系统,将文件系统连接到文件系统层次结构中的指定位置。以下是常用的 mount
命令参数及其说明:
bashCopy code
mount [选项] [-t 文件系统类型] 设备文件 挂载点
常用选项:
-
-a, --all: 挂载
/etc/fstab
中列出的所有文件系统。 -
-t, --types 文件系统类型: 指定要挂载的文件系统类型,例如 ext4、ntfs 等。
-
-o, --options 选项: 指定挂载时的选项,如
ro
(只读)、rw
(读写)、uid
、gid
、umask
等。 -
-r, --read-only: 挂载为只读。
-
-w, --read-write: 挂载为读写。
-
-L, --label 卷标: 按卷标挂载设备。
-
-U, --uuid UUID: 按 UUID 挂载设备。
-
-o remount: 重新挂载已挂载的文件系统,通常用于更改挂载选项。
-
-n, --no-mtab: 不更新
/etc/mtab
文件。 -
--bind: 将一个文件或目录挂载到另一个位置,创建一个挂载点的副本。
示例:
-
基本挂载:
mount /dev/sdb1 /mnt/data
这将
/dev/sdb1
分区挂载到/mnt/data
目录。 -
指定文件系统类型:
mount -t ntfs /dev/sdb1 /mnt/windows
这将使用 NTFS 文件系统类型挂载
/dev/sdb1
到/mnt/windows
目录。 -
只读挂载:
mount -o ro /dev/sdb1 /mnt/data
这将以只读模式挂载
/dev/sdb1
到/mnt/data
目录。 -
重新挂载:
mount -o remount,rw /mnt/data
这将重新挂载
/mnt/data
目录为读写模式。
2、临时挂载
[root@fishman-160 ~]# mount /dev/sdb1 /media #临时挂载
[root@fishman-160 ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 942M 0 942M 0% /dev
tmpfs tmpfs 970M 0 970M 0% /dev/shm
tmpfs tmpfs 970M 9.3M 961M 1% /run
tmpfs tmpfs 970M 0 970M 0% /sys/fs/cgroup
/dev/sda3 xfs 50G 6.4G 44G 13% /
/dev/sr0 iso9660 4.5G 4.5G 0 100% /mnt
/dev/sda1 xfs 1014M 242M 773M 24% /boot
tmpfs tmpfs 194M 12K 194M 1% /run/user/42
tmpfs tmpfs 194M 4.0K 194M 1% /run/user/0
/dev/sdb1 ext4 974M 24K 907M 1% /media
3、永久挂载
配置/etc/fstab
在配置文件/etc/fsatb
中进行挂载信息添加,有以下格式:
/dev/sr0 | /mnt | iso9660 | defaults | 0 | 0 |
---|---|---|---|---|---|
要挂载的分区设备 | 挂载点 | 文件系统类型 | 挂载选项 | 是否备份 | 是否检测 |
其中第四列:parameters-文件系统的参数
参数 | 描述 |
---|---|
Async/sync | 设置是否为同步方式运行,默认为async |
auto/noauto | 当下载mount -a 的命令时,此文件系统是否被主动挂载。默认为auto |
rw/ro | 是否以以只读或者读写模式挂载 |
exec/noexe | 限制此文件系统内是否能够进行"执行"的操作 |
user/nouser | 是否允许用户使用mount命令挂载 |
suid/nosuid | 是否允许SUID的存在 |
Usrquota | 启动文件系统支持磁盘配额模式 |
Grpquota | 启动文件系统对群组磁盘配额模式的支持 |
Defaults | 同时具有rw,suid,dev,exec,auto,nouser,async等默认参数的设置 samba nfs |
第五列:是否进行备份。通常这个参数的值为0或者1
参数 | 描述 |
---|---|
0 | 代表不要做备份 |
1 | 代表要每天进行操作 |
2 | 代表不定日期的进行操作 |
第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整
参数 | 描述 |
---|---|
0 | 不要检验 |
1 | 最早检验(一般根目录会选择) |
2 | 1级别检验完成之后进行检验 |
三、扩展swap分区
1、通过创建分区方式扩展
1、先创建分区
[root@fishman-160 ~]# gdisk /dev/sdb
GPT fdisk (gdisk) version 1.0.3
Partition table scan:
MBR: protective
BSD: not present
APM: not present
GPT: present
Found valid GPT with protective MBR; using GPT.
Command (? for help):
Command (? for help): n
Partition number (1-128, default 1):
First sector (34-41943006, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-41943006, default = 41943006) or {+-}size{KMGTP}: +1G
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300):
Changed type of partition to 'Linux filesystem'
Command (? for help): w
Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sdb.
The operation has completed successfully.
2、格式化成swap
[root@fishman-160 ~]# mkswap /dev/sdb1
mkswap: /dev/sdb1: warning: wiping old swap signature.
Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes)
no label, UUID=ea4119e2-039c-4fa6-ae79-52596e47948f
3、开启swap扩展
[root@fishman-160 ~]# swapon /dev/sdb1 #开启/dev/sdb1 的swap扩展
[root@fishman-160 ~]# swapon -s #查看swap分区
Filename Type Size Used Priority
/dev/sda2 partition 2097148 0 -2
/dev/sdb1 partition 1048572 0 -3
[root@fishman-160 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 100G 0 disk
├─sda1 8:1 0 1G 0 part /boot
├─sda2 8:2 0 2G 0 part [SWAP]
├─sda3 8:3 0 50G 0 part /
└─sda4 8:4 0 1G 0 part
sdb 8:16 0 20G 0 disk
└─sdb1 8:17 0 1G 0 part [SWAP]
sr0 11:0 1 4.4G 0 rom /mnt
4、开机启动swap分区
[root@fishman-160 ~]# lsblk -f #查询sdb1的UUID
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 627e70f9-0231-4474-bfd5-45b509a672da /boot
├─sda2 swap 46d0c215-3841-4a96-aa8f-53574afc8b8d [SWAP]
├─sda3 xfs 75bbfbae-a006-489e-95ee-214aa24d94ff /
└─sda4
sdb
└─sdb1 swap ea4119e2-039c-4fa6-ae79-52596e47948f [SWAP]
sr0 iso9660 CentOS 7 x86_64 2022-07-26-15-09-17-00 /mnt
2、通过文件方式拓展
1、创建500M
的空文件
[root@fishman-160 ~]# dd if=/dev/zero of=swap_file count=10 bs=50M
记录了10+0 的读入
记录了10+0 的写出
524288000 bytes (524 MB, 500 MiB) copied, 1.50549 s, 348 MB/s
2、转换成swap
root@fishman-160 ~]# mkswap -f ./swap_file
mkswap: ./swap_file:不安全的权限 0644,建议使用 0600。
正在设置交换空间版本 1,大小 = 500 MiB (524283904 个字节)
无标签,UUID=f651317f-c8c6-42e8-bf7d-92a3f3eee98d
3、开启swap
[root@fishman-160 ~]# swapon swap_file
swapon: /root/swap_file:不安全的权限 0644,建议使用 0600。
4、开启成功
[root@fishman-160 ~]# swapon -s
文件名 类型 大小 已用 权限
/dev/sda2 partition 2097148 0 -2
/dev/sdb1 partition 1048572 0 -3
/root/swap_file file 511996 0 -4
3、开机启动swap
1、把sdb1 swap
的UUID
加入到/etc/fstab
2、开机启动挂载成功
[root@fishman-160 ~]# free -m
total used free shared buff/cache available
Mem: 1939 591 846 10 500 1184
Swap: 3071 0 3071
标签:分区,dev,分区表,swap,挂载,工具,磁盘分区,sdb1
From: https://www.cnblogs.com/kcloveworld/p/17984419