前言
學(xué)習(xí)在你的系統(tǒng)中創(chuàng)建一個文件系統(tǒng),并且長期或者非長期地掛載它。
在計(jì)算技術(shù)中,文件系統(tǒng)控制如何存儲和檢索數(shù)據(jù),并且?guī)椭M織存儲媒介中的文件。如果沒有文件系統(tǒng),信息將被存儲為一個大數(shù)據(jù)塊,而且你無法知道一條信息在哪結(jié)束,下一條信息在哪開始。文件系統(tǒng)通過為存儲數(shù)據(jù)的文件提供名稱,并且在文件系統(tǒng)中的磁盤上維護(hù)文件和目錄表以及它們的開始和結(jié)束位置、總的大小等來幫助管理所有的這些信息。
在 Linux 中,當(dāng)你創(chuàng)建一個硬盤分區(qū)或者邏輯卷之后,接下來通常是通過格式化這個分區(qū)或邏輯卷來創(chuàng)建文件系統(tǒng)。這個操作方法假設(shè)你已經(jīng)知道如何創(chuàng)建分區(qū)或邏輯卷,并且你希望將它格式化為包含有文件系統(tǒng),并且掛載它。
創(chuàng)建文件系統(tǒng)
假設(shè)你為你的系統(tǒng)添加了一塊新的硬盤并且在它上面創(chuàng)建了一個叫 /dev/sda1 的分區(qū)。
1、為了驗(yàn)證 Linux 內(nèi)核已經(jīng)發(fā)現(xiàn)這個分區(qū),你可以 cat 出 /proc/partitions 的內(nèi)容,就像這樣:
[root@localhost ~]# cat /proc/partitions
major minor #blocks name
253 0 10485760 vda
253 1 8192000 vda1
11 0 1048575 sr0
11 1 374 sr1
8 0 10485760 sda
8 1 10484736 sda1
252 0 3145728 dm-0
252 1 2097152 dm-1
252 2 1048576 dm-2
8 16 1048576 sdb
2、決定你想要去創(chuàng)建的文件系統(tǒng)種類,比如 ext4、XFS,或者其他的一些。這里是一些可選項(xiàng):
[root@localhost ~]# mkfs.<tab><tab>
mkfs.btrfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.minix mkfs.xfs
3、為了這次練習(xí)的目的,選擇 ext4。(我喜歡 ext4,因?yàn)槿绻阈枰脑?,它可以允許你去壓縮文件系統(tǒng),這對于 XFS 并不簡單。)這里是完成它的方法(輸出可能會因設(shè)備名稱或者大小而不同):
[root@localhost ~]# mkfs.ext4 /dev/sda1
mke2fs 1.42.9 (28-Dec-2013)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=8191 blocks
194688 inodes, 778241 blocks
38912 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=799014912
24 block groups
32768 blocks per group, 32768 fragments per group
8112 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done
4、在上一步中,如果你想去創(chuàng)建不同的文件系統(tǒng),請使用不同變種的 mkfs 命令。
掛載文件系統(tǒng)
當(dāng)你創(chuàng)建好文件系統(tǒng)后,你可以在你的操作系統(tǒng)中掛載它。
1、首先,識別出新文件系統(tǒng)的 UUID 編碼。使用 blkid 命令列出所有可識別的塊存儲設(shè)備并且在輸出信息中查找 sda1 :
[root@localhost ~]# blkid
/dev/vda1: UUID="716e713d-4e91-4186-81fd-c6cfa1b0974d" TYPE="xfs"
/dev/sr1: UUID="2019-03-08-16-17-02-00" LABEL="config-2" TYPE="iso9660"
/dev/sda1: UUID="wow9N8-dX2d-ETN4-zK09-Gr1k-qCVF-eCerbF" TYPE="LVM2_member"
/dev/mapper/test-test1: PTTYPE="dos"
/dev/sda1: UUID="ac96b366-0cdd-4e4c-9493-bb93531be644" TYPE="ext4"
[root@localhost ~]#
2、運(yùn)行下面的命令掛載 /dev/sd1 設(shè)備:
[root@localhost ~]# mkdir /mnt/mount_point_for_dev_sda1
[root@localhost ~]# ls /mnt/
mount_point_for_dev_sda1
[root@localhost ~]# mount -t ext4 /dev/sda1 /mnt/mount_point_for_dev_sda1/
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 7.9G 920M 7.0G 12% /
devtmpfs 443M 0 443M 0% /dev
tmpfs 463M 0 463M 0% /dev/shm
tmpfs 463M 30M 434M 7% /run
tmpfs 463M 0 463M 0% /sys/fs/cgroup
tmpfs 93M 0 93M 0% /run/user/0
/dev/sda1 2.9G 9.0M 2.7G 1% /mnt/mount_point_for_dev_sda1
[root@localhost ~]#
命令 df -h 顯示了每個文件系統(tǒng)被掛載的掛載點(diǎn)。查找 /dev/sd1 。上面的掛載命令使用的設(shè)備名稱是 /dev/sda1 。用 blkid 命令中的 UUID 編碼替換它。注意,在 /mnt 下一個被新創(chuàng)建的目錄掛載了 /dev/sda1 。
3、直接在命令行下使用掛載命令(就像上一步一樣)會有一個問題,那就是掛載不會在設(shè)備重啟后存在。為使永久性地掛載文件系統(tǒng),編輯 /etc/fstab 文件去包含你的掛載信息:
UUID=ac96b366-0cdd-4e4c-9493-bb93531be644 /mnt/mount_point_for_dev_sda1/ ext4 defaults 0 0
4、編輯完 /etc/fstab 文件后,你可以 umount /mnt/mount_point_for_fev_sda1 并且運(yùn)行 mount -a 命令去掛載被列在 /etc/fstab 文件中的所有設(shè)備文件。如果一切順利的話,你可以使用 df -h 列出并且查看你掛載的文件系統(tǒng):
root@localhost ~]# umount /mnt/mount_point_for_dev_sda1/
[root@localhost ~]# mount -a
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vda1 7.9G 920M 7.0G 12% /
devtmpfs 443M 0 443M 0% /dev
tmpfs 463M 0 463M 0% /dev/shm
tmpfs 463M 30M 434M 7% /run
tmpfs 463M 0 463M 0% /sys/fs/cgroup
tmpfs 93M 0 93M 0% /run/user/0
/dev/sda1 2.9G 9.0M 2.7G 1% /mnt/mount_point_for_dev_sda1
5、你也可以檢測文件系統(tǒng)是否被掛載:
[root@localhost ~]# mount | grep ^/dev/sd
/dev/sda1 on /mnt/mount_point_for_dev_sda1 type ext4 (rw,relatime,seclabel,stripe=8191,data=ordered)
現(xiàn)在你已經(jīng)知道如何去創(chuàng)建文件系統(tǒng)并且長期或者非長期的掛載在你的系統(tǒng)中。
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。