天天看點

linux(centOS7)的基本操作(五) 磁盤、分區、挂載、解除安裝

linux的磁盤類型和分區簡介

linux的磁盤分為IDE和SCSI,目前以後者居多。

1. IDE磁盤的分區:hd+盤号+分區數字

盤号

  |-a:基本盤

  |-b:基本從屬盤

  |-c:輔助主盤

  |-d:輔助從屬盤

分區數字

  |-1~4:主分區或擴充分區

  |-5+:邏輯分區

例如,hda3表示第一塊IDE磁盤的第3個主分區或擴充分區,hdb5表示第二塊IDE磁盤的邏輯分區。

2. SCSI磁盤的分區:sd+盤号+分區數字

例如,sda1表示第一塊SCSI磁盤的第1個主分區,sdc2表示第三塊SCSI磁盤的第2個主分區或擴充分區。

linux的挂載和解除安裝

1. 挂載和解除安裝的概念

(1) 我們知道,windows系統有多個盤符,例如C、D、E……等,當使用者插入一個U盤時,系統會自動配置設定給它一個盤符,可能是I。有了這個盤符I,我們就可以在windows的指令行中對U盤中的目錄和檔案進行操作。

(2) linux系統并沒有盤符,它隻有一個根目錄/,linux磁盤的所有分區都在這個根目錄下的某個位置。如果在linux系統中添加一塊新磁盤,系統并不會自動給它配置設定盤符,它也不屬于根目錄/。這時,在指令行無法對這個新磁盤中的目錄或檔案進行操作,既無法通過cd指令進入該磁盤,也無法通過ls指令顯示它下面的内容。

(3) 挂載類似于windows系統給U盤配置設定盤符,是将新磁盤跟已經存在的系統目錄之間建立聯系,讓新磁盤"擁有"根目錄/下面的某個目錄,以便于在指令行中操作它。例如,新添加了一塊磁盤分區sdb1,将它挂載到/home/dubhlinn目錄,則以後操作/home/dubhlinn目錄就相當于操作sdb1分區。挂載後,/home/dubhlinn目錄下的子目錄和檔案也會儲存到sdb1分區,而不是原來的分區。

(4) 解除安裝類似于windows退出U盤,切斷磁盤分區與目錄之間的聯系。解除安裝後,/home/dubhlinn目錄下的子目錄和檔案會重新回到原來的分區。

2. 檢視系統的挂載情況

lsblk [-l] [-f]

其中,-l表示清單方式顯示,-f可以顯示分區的uuid。

3. 挂載

mount equipment path

其中,equipment為裝置位置,path為挂載點。例如,mount /dev/sdb1 /home/dubhlinn。

4. 永久挂載

用上述指令隻是臨時挂載,重新開機系統後會失效,要想永久生效,需要改一個配置檔案:/etc/fstab,加一行:

/dev/sdb    /home    xfs    defaults    0 0

其中,第一項為裝置未知,第二項為挂載點,第三項為分區類型,後面固定不變。

5. 解除安裝

umount equipment

umount path

即解除安裝時既可以寫磁盤分區,也可以寫挂載點目錄。例如umount /home/dubhlinn。

使用VMWare添加硬碟示例

1. 關閉linux虛拟機(在系統運作狀态下無法添加硬碟),shutdown -h now,設定 → 添加新硬體 → 硬碟,指定大小;

2. 添加分區,fdisk /dev/sdb;

3. 格式化磁盤,指定分區類型(例如xfs、ext4等),mkfs -t xfs /dev/sdb;

4. 挂載,mount /dev/sdb /home;

5. 永久挂載,vim /etc/fstab,加一行:/dev/sdb    /home    xfs    defaults    0 0。

磁盤管理

1. 查詢磁盤整體的使用情況

df -h

2. 查詢指定目錄的使用情況

du [-a] [-c] [-h] [--max-depth=n] path

其中,-a表示包含檔案,-c表示顯示彙總值,-h表示顯示計量機關,--max-depth=n表示統計子目錄的深度,path為要查詢的目錄路徑。

3. 查詢指定目錄下的檔案,即以-開頭的内容

ls -l [-r] [path] | grep "^-"

其中,-r表示包含子目錄下的,path如果不指定則預設為目前目錄。

4. 查詢指定目錄下的子目錄,即以d開頭的内容

ls -l [-r] [path] | grep "^d"

其中,-r表示包含子目錄的子目錄,path如果不指定則預設為目前目錄。

5. 查詢指定目錄下的檔案數量

ls -l [-r] [path] | grep "^-" | wc -l

6. 查詢指定目錄下的子目錄數量

ls -l [-r] [path] | grep "^d" | wc -l

7. 以樹狀結構顯示目錄下的内容

tree [path]

其中,path為要顯示的目錄路徑,如果不指定預設為目前目錄。