首頁  >  文章  >  系統教程  >  硬碟儲存之王Linux – 如何優雅地管理硬碟?

硬碟儲存之王Linux – 如何優雅地管理硬碟?

PHPz
PHPz轉載
2024-02-15 09:30:03907瀏覽

在今天這個數位化時代,資料的儲存和管理變得越來越重要。而對於 Linux 用戶來說,硬碟管理更是個不可避免的議題。然而,初學者往往會因為 Linux 硬碟管理的複雜性而陷入困境。別擔心,這篇文章將會教你如何優雅地管理硬碟,讓你輕鬆駕馭 Linux 系統。

硬盘存储之王者Linux – 如何优雅地管理硬盘?

#Linux掛載新硬碟

1、查看硬碟資訊

指令:

fdisk -l
# fdisk -l
Disk /dev/vda: 21.5 GB, 21474836480 bytes                                         
 #第一块硬盘的信息和分区信息
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0003a7b4

  Device Boot      Start        End      Blocks  Id  System
    /dev/vda1  *          1        2611    20970496  83  Linux

Disk /dev/vdb: 107.4 GB, 107374182400 bytes                                       
 #第二块硬盘的信息和分区信息
16 heads, 63 sectors/track, 208050 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

2、建立新硬碟分割區

指令:

fdisk /dev/vdb
# fdisk /dev/vdb
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x1e694286.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.

Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
        switch off the mode (command 'c') and change display units to
        sectors (command 'u').

Command (m for help): n
Command action
  e  extended                               
 #e为创建扩展分区
  p  primary partition (1-4)            
#p为创建逻辑分区
p
Partition number (1-4): 1          
#在这里输入1,就进入划分逻辑分区阶段了;
First cylinder (1-208050, default 1): 1      
#分区的Start 值,这里最好直接按回车,否则可能会造成空间浪费;
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-208050, default 208050): 208050     
 #分区的Over值,我就分一个区
Using default value 208050

Command (m for help): w                            
#最后输入w回车保存退出。
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

fdisk可以用m指令來看fdisk指令的內部指令;
a:指令指定啟動分割區;
d:指令刪除一個存在的分割區;
l:指令顯示分區ID號碼的清單;
m:查看fdisk指令幫助;
n:命令建立一個新分區;
p:指令顯示分區清單;
t:指令修改分區的類型ID號;
w:命令是將對分區表的修改記憶體讓它發生作用;

3、確認新分割區資訊

指令:

fdisk -l
# fdisk -l
Disk /dev/vda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0003a7b4

  Device Boot      Start        End      Blocks  Id  System
    /dev/vda1  *          1        2611    20970496  83  Linux

Disk /dev/vdb: 107.4 GB, 107374182400 bytes
16 heads, 63 sectors/track, 208050 cylinders
Units = cylinders of 1008 * 512 = 516096 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x1e694286

  Device Boot      Start        End      Blocks  Id  System
    /dev/vdb1              1      208050  104857168+  83  Linux         
 #刚创建好的分区信息

4、格式化分割區

#指令:

mkfs.ext4 /dev/vdb1
# mkfs.ext4 /dev/vdb1
mke2fs 1.41.12 (17-May-2010)
Filesystem label=                  
#文件系统标签
OS type: Linux               
 #操作系统类型
Block size=4096 (log=2)          
#块大小
Fragment size=4096 (log=2)      
#分块大小
Stride=0 blocks, Stripe width=0 blocks
6553600 inodes, 26214292 blocks
1310714 blocks (5.00%) reserved for the super user
First data block=0         
 #第一个数据块
Maximum filesystem blocks=4294967296
800 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, 2654208,
    4096000, 7962624, 11239424, 20480000, 23887872

Writing inode tables: done                          
#写入inode表
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 26 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

Linux的分割區類型介紹:
隨著Linux系統在現在業務中的應用,Linux檔案系統的弱點也漸漸顯露出來了,其中系統缺省使用的ext2檔案系統是非日誌檔案系統。這在關鍵產業的應用是一個致命的弱點.而Ext3檔案系統是直接從Ext2檔案系統發展而來,目前ext3檔案系統已經非常穩定可靠。它完全相容於Ext2檔案系統。
Ext3的特性:高可用性、資料的完整性、資料的完整性、資料轉換、多種日誌模式
同樣的Ext4完全相容於Ext3,相對於Ext3來說,Ext4支援更大的存儲,Ext3目前所支援的最大16TB檔案系統和最大2TB文件,而Ext4分別支援1EB的文件系統,以及16TB 的文件,還有就是Ext3目前只支援32,000個子目錄,而Ext4支援無限數量的子目錄,Ext4引入了現代檔案系統中流行的extents概念,每個extent 為一組連續的資料區塊,上述檔案則表示為「該檔案數據保存在接下來的25,600個資料塊中”,提高了不少效率。

5、建立掛載目錄

指令:

mkdir /data

6、掛載分割區

指令:

mount /dev/vdb1 /data

7、查看硬碟大小以及掛載分割區

指令:

df -Th
# df -Th
Filesystem    Type  Size  Used Avail Use% Mounted on
/dev/vda1      ext4    20G  1.1G  18G  6% /
tmpfs          tmpfs  3.9G    0  3.9G  0% /dev/shm
/dev/vdb1      ext4    99G  60M  94G  1% /data         
 #新挂载的分区

8、設定開機自動掛載

指令:

vim /etc/fstab /dev/vdb1 /data ext4 defaults 1 1
# blkid
/dev/vda1: UUID="b7aae0d4-268c-4b60-914a-f3b48e22819c" TYPE="ext4"
/dev/vdb1: UUID="5de835dd-5322-46f0-8728-3d4ae7d83b54" TYPE="ext4"
# cat /etc/fstab
#
# 
/etc/fstab
# Created by anaconda on
 Tue Mar 27 04:51:55 2018
#
# 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=b7aae0d4-268c-4b60-914a-f3b48e22819c      /                      ext4      defaults      1 1
UUID=5de835dd-5322-46f0-8728-3d4ae7d83b54    /data                ext4  defaults    1 1
tmpfs                  /dev/shm                tmpfs  defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                  /sys                    sysfs  defaults        0 0
proc                    /proc                  proc    defaults        0 0

Swap分割區

#Swap分割其實和Windows上的虛擬記憶體一樣,Swap分割區在系統的實體記憶體不夠用的時候,把實體記憶體中的一部分空間釋放出來,以供目前執行的程式使用。那些被釋放的空間可能來自一些很長時間沒有什麼操作的程序,這些被釋放的空間被暫時保存到Swap分區中,等到那些程序要運行時,再從Swap分區中恢復保存的數據到內存中。

下面介紹兩種建立swap的方法:
•新磁碟分割區作為swap分割區
•用檔案作為Swap分區

新磁碟分割區作為swap分割區

1.用fdisk指令對磁碟進行分割區,新增swap分割區,新建分割區,在fdisk中用「t」指令將新添的分割區id改為82
(Linux swap類型)

2.格式化swap分割區,這裡的sdb2要看您加完後p指令顯示的實際分割區設備名稱

mkswap /dev/sdb1

3.啟動新的swap分割區

swapon /dev/sdb1

4.讓系統啟動時能自動啟用這個交換分區,可以編輯/etc/fstab,加入下面一行

/dev/sdb1 swap swap defaults 0 0

用檔案當Swap分割區

1.建立要作為swap分區的檔案:增加1GB大小的交換分區,則命令寫法如下,其中的count等於想要的區塊的數量(bs*count=檔案大小)。

dd if=/dev/zero of=/root/swapfile bs=1M count=1024

2.格式化為交換分割區文件,建立swap的檔案系統:

mkswap /root/swapfile

3.用交換分區檔案:

swapon /root/swapfile

4.使系統開機時自啟用,在檔案/etc/fstab中新增一行:

/root/swapfile swap swap defaults 0 0

總之,針對 Linux 的硬碟管理工具非常多元且強大。對於初學者來說,使用基本指令就足夠 daily 使用了。對於想要更深入了解的用戶,還有許多進階的方法和技巧等著你去探索。希望這篇文章能對你有幫助,讓你在使用 Linux 系統時更加得心應手。

以上是硬碟儲存之王Linux – 如何優雅地管理硬碟?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:lxlinux.net。如有侵權,請聯絡admin@php.cn刪除