目次
1. 仮想マシンにハードディスクを追加する
2. パーティション
このシステムのシステム内のすべてのディスクとパーティション情報を一覧表示します。
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 1G 0 disk # 新增了一个sdb
sr0 11:0 1 8.1G 0 rom
ハードディスクとパーティションのステータスを表示する
[root@localhost ~]# fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0009a51e
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 41943039 19921920 8e Linux LVM
# 新增的1G 硬盘 /dev/sdb;此时是未分区
Disk /dev/sdb: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/centos-root: 18.2 GB, 18249416704 bytes, 35643392 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk /dev/mapper/centos-swap: 2147 MB, 2147483648 bytes, 4194304 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
fdisk パーティションを使用する
MBRパーティション テーブルはfdiskパーティションを使用し、GPTパーティション テーブルはgdiskパーティションを使用します。!2 つのコマンドの使用方法は基本的に同じです。
MBR は最大 2T をサポートし、GPT は理論上無制限です。したがって、一般的には fdisk が使用され、gdisk は T レベルに達するハードディスクにのみ使用されます。
# 查看 /dev/sdb 磁盘的相关数据
[root@localhost ~]# parted /dev/sdb print
Model: VMware, VMware Virtual S (scsi) # 磁盘的模块名称(厂商)
Disk /dev/sdb: 1074MB # 磁盘总量
Sector size (logical/physical): 512B/512B # 每个逻辑/物理扇区容量
Partition Table: msdos # 分区表格式(MBR/GPT)
Disk Flags:
Number Start End Size Type File system Flags # 分区数据
1 1049kB 525MB 524MB primary
# 对/dev/sdb做分区
[root@localhost ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x7cd5d1a2.
Command (m for help): p # 印出分区表
Disk /dev/sdb: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x7cd5d1a2
Device Boot Start End Blocks Id System
Command (m for help): n # 增加一个分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
# l logical # 存在扩展分区时的选项
# primary 主分区。可以做引导分区,最多不能超过四个
# extended 扩展分区,最多一个
# logical 逻辑分区
Select (default p): p
Partition number (1-4, default 1): 1 # 分区编号(默认即可)
First sector (2048-2097151, default 2048): # 起始位置(默认即可)
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-2097151, default 2097151): +500M
Partition 1 of type Linux and of size 500 MiB is set # 结束位置+500MiB大小
# 不需要计算扇区号码,直接使用 ‘+容量’ 的方式(+500M/+1G)
Command (m for help): p # 查看检验
Disk /dev/sdb: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x7cd5d1a2
Device Boot Start End Blocks Id System
/dev/sdb1 2048 1026047 512000 83 Linux
Command (m for help): w # 保存配置并退出;q 不保存退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
# 查看新增分区
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 20G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 19G 0 part
├─centos-root 253:0 0 17G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 1G 0 disk
└─sdb1 8:17 0 500M 0 part # 新建分区
sr0 11:0 1 8.1G 0 rom
Linux カーネルのパーティション テーブル情報は、partprobe を使用して更新できます。
# partprobe -s
3. パーティションスロットを削除します。
[root@localhost ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Command (m for help): p
Disk /dev/sdb: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x7cd5d1a2
Device Boot Start End Blocks Id System
/dev/sdb1 2048 1026047 512000 83 Linux
/dev/sdb2 1026048 2050047 512000 83 Linux
/dev/sdb3 2050048 2097151 23552 83 Linux
Command (m for help): d # d 删除
Partition number (1-3, default 3): 3
Partition 3 is deleted
Command (m for help): p # /dev/sdb3 已删除
Disk /dev/sdb: 1073 MB, 1073741824 bytes, 2097152 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x7cd5d1a2
Device Boot Start End Blocks Id System
/dev/sdb1 2048 1026047 512000 83 Linux
/dev/sdb2 1026048 2050047 512000 83 Linux
Command (m for help): w # 保存并退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
4. ディスクのフォーマット
# mkfs.xfs [-b bsize] [-d parms] [-i parms] [-l parms] [-L label] [-f] [-r parms] デバイス名 オプションとパラメータ: ユニットについて: ちょっと話し
て
ください以下にそれについて説明します 「値」については、単位を追加しない場合はバイトの値です。k、m、g、t、p (小文字) を使用して説明できます。特別な単位は s です
。 ! はセクターの「番号」を指します。
-b: ブロック容量が続きます。これは 512 ~ 64k の範囲で指定できますが、Linux では最大容量は 4k に制限されています。
-d : 重要なデータ セクションの関連パラメーター値が続きます。主な値は次のとおりです:
agcount=value: 必要なストレージ グループ (AG) の数の意味を設定します。通常は CPU の
agsizeに関連します。 =value: 各 AG 設定される容量。通常、agcount/agsize は 1 つの設定ファイルでのみ設定できます。
「フォーマットされたデバイスはデバイスではなくファイルである」という意味を指します。(仮想ディスクなど)
size=value: データ セクションの容量。デバイスの容量をすべて使い切ることはできないことを意味します。 su=value: RAID がある場合、ストライプ値の意味 。sw
を以下の sw
=value: RAID がある場合、データを保存するために使用されるディスクの数 (バックアップ ディスクとスペア ディスクを差し引く必要があります) sunit=value:
su と同等ですが、単位は「数セクター (512 バイトのサイズ)」という意味を使用します。 )"
width= 値: su*swの値ですが、「数セクタ(512バイトサイズ)」で設定されます
-f: デバイスにファイル システムがすでに存在する場合は、この -f を使用してフォーマットを強制する必要があります。
-i : inode に関連する設定があり、主な設定値は次のとおりです:
size=value: 最小値は 256 バイト、最大値は 2k、通常は 256 で十分です。
Internal=[0|1]: ログ機能は内蔵されていますか? デフォルトは 1 で、内蔵されています。外部デバイスを使用したい場合は、次の設定を使用します
。logdev=device: ログ デバイスは、後ろに接続されているデバイスの意味です。internal=0 を設定する必要があります。
size=数値: このログイン領域の容量を指定します。通常は少なくとも 512 ブロック、約 2M 以上です。
-L: ファイルシステムのヘッダ名が続きます。ラベル名は意味します。
-r: リアルタイムセクションの関連設定値を指定します。一般的なものは次のとおりです:
extsize=number: これは重要なエクステント値であり、通常は設定する必要はありませんが、RAID がある場合は、
設定することをお勧めします。幅と同じ値です! 最小は 4K、最大は 1G です。
# /dev/sdb1 格式化为 xfs 文件系统;默认值即可
[root@localhost ~]# mkfs.xfs /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=32000 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=128000, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=855, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@localhost ~]# blkid /dev/sdb1
/dev/sdb1: UUID="3e831335-d1e5-4343-a9d6-8410b6081040" TYPE="xfs"
他のファイルシステム
[root@localhost ~]# mkfs 按两下タブ
mkfs mkfs.btrfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.minix mkfs.xfs
5. マウント -mount (再起動すると復元します)
フォーマットせずにマウントすると、エラーが報告されます。
[root@localhost /]# mount /dev/sdb5 /mnt/test5
mount: /dev/sdb5 is write-protected, mounting read-only
mount: unknown filesystem type '(null)'
フォーマット後にマウントします。
1.マウント [デバイスファイル名] [マウントポイント]
2.マウント [ UUID="..." ] [マウントポイント]
[root@localhost ~]# mkfs.ext4 /dev/sdb5 # 形式
[root@localhost ~]# blkid /dev/sdb5 # 查看UUID
/dev/sdb5: UUID ="782aaa82-2064-4b78-a0ef-877f18b569a7" TYPE="ext4"
# 挂载前
[root@localhost /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 17G 1.2G 16G 7% /
devtmpfs 901M 0 901M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 8.6M 904M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 1014M 143M 872M 15% /boot
tmpfs 183M 0 183M 0% /run/user/0
[root@localhost /]#
[root@localhost /]# cd /mnt
[root@localhost mnt]# mkdir test5 #新建挂载目录
[root@localhost mnt]# mount /dev/sdb5 /mnt/test5 # 挂载
[root@localhost mnt]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 17G 1.2G 16G 7% /
devtmpfs 901M 0 901M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 8.6M 904M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 1014M 143M 872M 15% /boot
tmpfs 183M 0 183M 0% /run/user/0
/dev/sdb5 19M 332K 17M 2% /mnt/test5 # 挂载后
6. アンマウント mount -umount
[root@localhost ~]# df -h # 卸载前
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 17G 1.2G 16G 7% /
devtmpfs 901M 0 901M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 8.6M 904M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 1014M 143M 872M 15% /boot
tmpfs 183M 0 183M 0% /run/user/0
/dev/sdb5 19M 332K 17M 2% /mnt/test5
/dev/sdb6 19M 332K 17M 2% /mnt/test6
[root@localhost ~]#
[root@localhost ~]# umount /mnt/test5 # 通过挂载点卸载
[root@localhost ~]# umount /dev/sdb6 # 通过装置名称卸载
[root@localhost ~]#
[root@localhost ~]# df -h # 卸载后
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/centos-root 17G 1.2G 16G 7% /
devtmpfs 901M 0 901M 0% /dev
tmpfs 912M 0 912M 0% /dev/shm
tmpfs 912M 8.6M 904M 1% /run
tmpfs 912M 0 912M 0% /sys/fs/cgroup
/dev/sda1 1014M 143M 872M 15% /boot
tmpfs 183M 0 183M 0% /run/user/0
7. ブートマウント (/etc/fstab)
/etc/fstab は起動時の設定ファイルですが、実際のファイルシステムのマウントは /etc/mtab と /proc/mounts の 2 つのファイルに記録されます。ファイルシステムのマウントを変更するたびに、これら 2 つのファイルも同時に更新されます。
コラム1:書き方は以下の3つです。
- ファイル システムまたはディスクのデバイス ファイル名 (/dev/vda2 など)。
- ファイル システムの UUID 名 (UUID=xxx など)
- ファイル システムの LABEL 名 (例: LABEL=xxx)
2 列目:マウント ポイント
- ディレクトリである必要があります
3 番目の列:ディスク パーティション スロットのファイル システム
- 手動でマウントする場合、システムは自動的にマウントをテストできますが、このファイルではファイル システムに手動で書き込む必要があります。xfs、ext4、vfat、reiserfs、nfsなどを含む
4 番目の列:ファイル システム パラメータ
列5: dumpbackupコマンドで使用できるかどうか
- dump はバックアップとして使用されるコマンドですが、現在はバックアップ ソリューションが多すぎるため、この項目は無視しても問題ありません。0を直接入力してください
列 6: fsck でセクターをチェックするかどうか
- 初期の起動プロセスでは、マシンのファイル システムが完全 (クリーン) であるかどうかを確認するための時間がかかります。ただし、この方法は主に fsck を介して使用され、xfs 自体が検査を実行するため、現在使用している xfs ファイル システムを適用することはできず、この追加のアクションを実行する必要はありません。したがって、0を入力するだけです
取り付け手順:
# 先查看下分区的UUID和文件系统!
[root@localhost ~]# blkid /dev/sdb5
/dev/sdb5: UUID="782aaa82-2064-4b78-a0ef-877f18b569a7" TYPE="ext4"
[root@localhost ~]# blkid /dev/sdb6
/dev/sdb6: UUID="f254bb63-8e6f-4304-bfb0-8a0c11c86b3c" TYPE="ext4"
[root@localhost ~]# vim /etc/fstab
/dev/mapper/centos-root / xfs defaults 0 0
UUID=c3c20273-7091-4147-b6d0-352fc0ac3b75 /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
# 这里使用两种方式,推荐使用UUID,唯一性
/dev/sdb5 /mnt/test5 ext4 defaults 0 0
UUID="f254bb63-8e6f-4304-bfb0-8a0c11c86b3c" /mnt/test6 ext4 defaults 0 0
[root@localhost ~]# reboot # 重启
[root@localhost ~]# df -h # 观察已经完成开机挂载
Filesystem Size Used Avail Use% Mounted on
...
/dev/sdb5 19M 332K 17M 2% /mnt/test5
/dev/sdb6 19M 332K 17M 2% /mnt/test6
tmpfs 183M 0 183M 0% /run/user/0
構成が間違っていると、起動に失敗します。
この時点で、root パスワードを直接入力して 1 人メンテナンス モードに入ります。
次に、エラーを修正するか、間違った場所を削除するか、再度マウントし、保存して終了し、再起動します。
読み取り専用ステータスが表示された場合は、次を実行します。
# mount -n -o remount,rw / # 之后就可以正常修改/etc/fstab了
エラーが発生しやすいのは、ファイル システムの間違った書き込みです: xfs、ext4、vfat、Reiserfs、nfsなど。