Linux中的所有設備都必須掛載之后才能使用,即必須給它分配“盤符”(即掛載點,就是系統中的某個空目錄)給它才能使用,Windows系統中一般是自動分配盤符,所以掛載的概念在Windows中是沒有的,比如你插入了一個U盤,Windows就會自動給它一個盤符(名稱)來連接U盤,但是Linux中必須手動掛載某個設備,并給它分配一個掛載點(目錄名),即連接設備,掛載(連接)成功后才能使用,
一、磁盤磁區
理解磁區:磁盤的各個磁區,可以理解為一個柜子的不同抽屜,而設備檔案名則代表不同的抽屜,如/dev/sda1表示此磁區的設備檔案名,通常我們講某個設備檔案,其實就是說它代表的磁區或者它代表的硬碟,而不會將它作為一個單純的檔案來看待,其中/dev目錄下存放的是對應的硬體設備,sd為設備型別,表示SATA磁盤,a表示磁盤編號,1表示此磁盤的磁區號,
Windows磁區:Windows中磁盤的使用一般是經過磁區(將一個大的硬碟分成多個小的邏輯磁區),格式化(指定檔案系統,而此時會清空磁盤內的資料,注意格式化的目的是重新指定檔案系統而不是清空資料),然后給磁區指定盤符(如C盤、D盤等),在Linux中,沒有盤符的說法,從磁區到給此磁區指定盤符的程序稱之為掛載,而對應的盤符則稱之為掛載點,比如上述的/dev/sda1我可以指定它的掛載點為/test,就相當于在Windows中指定了這塊磁區為test盤(就像C盤、D盤一樣),
Linux磁區:在Linux中,相比于Windows的三個步驟,磁盤磁區這一步會比Windows多一個內容,就是磁區時,需要給對應磁區指定一個設備檔案名,如/dev/sda1、/dev/sda2、/dev/sda3等,表示磁盤/dev/sda下的各個磁區由不同的檔案來管理,然后接下來也是格式化和分配掛載點(即盤符,就是對應的目錄名),
Linux常用磁區:
- /(根磁區):此為必須磁區,即必須給這個目錄一個磁區,
- swap磁區(交換磁區):這也是一個必須磁區,大小為記憶體的2倍,但是也不能超過2GB,此磁區可以理解為虛擬記憶體,即記憶體不夠時,可以使用此磁區作為記憶體使用,
- /boot:系統啟動目錄,建議此目錄單獨分一個區作為啟動磁區(就像Windows中的C盤為系統啟動盤一樣),一般為200MB,
Linux的檔案系統雖然是由根目錄到一級目錄,然后到二級目錄,然后一直往下擴散延伸(不像Windows那樣C盤和D盤等盤是平級的),但是目錄中的某一個空目錄是可以單獨拿出來給它磁區的,比如根目錄下的/boot通常就單獨分一個區出來作為系統啟動運行的專用磁區,如/dev/sda1(對應的設備檔案),而根目錄/則使用另外一個磁區/dev/sda2(對應的設備檔案),
二、手動磁區新硬碟
注意使用命令手動掛載的方式,在系統重啟之后就會失效,想要掛載永久生效,還需要將對應的掛載配置寫入/etc/fstab檔案(見之后的“磁區自動掛載”),以下步驟按順序執行,
fdisk -l:查看硬碟資訊,每個硬碟都會單獨顯示一個“Disk”,然后在下面列出已磁區的“Device”資訊,如果列出的資訊只有“Disk”而沒有對應的“Device”資訊,則表示該硬碟還沒有進行磁區,
fdisk /dev/sdb:給硬碟磁區,引數/dev/sdb就是上一步查詢出來的硬碟設備的名稱(注意不要加編號,只有磁區之后系統才會自動分配編號,沒有磁區之前是沒有編號的),執行此命令后會要求按順序執行以下的命令:
- m:表示查看磁區命令的幫助資訊(這一步一般不用),
- n:新建一個磁區,
- p:新建一個主磁區,(顯示的提示為p primary partition (1-4),)
- 1:設定磁區號(建議根據已存在磁區號從低到高按順序指定,此時顯示的提示為Partition number (1-4)),
- 【回車】:指定從哪個柱面開始磁區,默認從第一個,建議就從第1個開始,不要從其他位置指定,此時顯示的提示為First cylinder (1-1305, default 1),表示此硬碟有1305個柱面可用于磁區,默認從第1個柱面開始磁區,
- 【回車】:指定此磁區的結束柱面,默認為全部柱面,也可以根據提示指定固定的大小,
- p:查看下磁區結果,(這一步也可以不用執行,)
- w:保存退出,
- 理解柱面:柱面可以理解為五子棋或圍棋的棋盤上的格子,整個棋盤就是硬碟,一個硬碟可以按固定大小分為若干個格子(柱面),磁區時,你需要指定使用哪些格子來作為你要建立的磁區,但這些格子你只能按照編號連續地來使用,如可以使用1到500的格子作為一個磁區,而不能使用1、4和9等不連續的格子合在一起作為一個磁區,
partprobe:重新讀取磁區表,如果上一步w之后提示需要重啟才能生效,就可以執行這一步,
mkfs -t ext4 /dev/sdb1:根據指定的檔案系統格式化磁區,
mkdir /disk1:創建掛載點,即創建一個空目錄,也可以使用已有的任何一個空目錄,
mount /dev/sdb1 /disk1/:掛載設備/dev/sdb1到指定掛載點/disk1/,
mount或df:查看是否掛載成功,(注意fdisk命令只能查看是否磁區成功分配,但是不能查看掛載結果,)
三、磁區自動掛載
系統在啟動時,會依據/etc/fstab檔案中的配置資訊進行自動掛載,所以可以選擇手動掛載之后將掛載資訊配置在此檔案中,也可以配置好此檔案后重啟系統,但需要注意的是,如果此檔案寫錯了就可能會影響到系統的啟動,所以出了掛載報錯的問題需要查看和修復此檔案,
其中/、/boot、/home、swap、/dev/shm(tmpfs)、/dev/pts(devpts)、/sys(sysfs)、/proc(proc)等是系統默認的一些磁區和掛載點,不能修改它們,
組態檔中需要配置的六個欄位:
- 第一欄位:磁區設備檔案名(這種方式就不能改變磁區設備的順序,即該設備檔案名不能在某次重啟或其他操作后映射到了別的磁區)或UUID(硬碟通用唯一識別碼,使用UUID就不用擔心映射錯磁區的問題了), UUID可以通過“dumpe2fs -h 設備檔案名”查看Filesystem UUID的值,
- 第二欄位:掛載點,
- 第三欄位:默認的檔案系統,
- 第四欄位:-o掛載引數,使用默認defaults即可,
- 第五欄位:指定磁區是否被dump備份,0代表不備份,1代表每天備份,2代表不定期備份,磁區的備份都保存在磁區目錄下的lost+found檔案中,
- 第六欄位:指定磁區是否被fsck檢測,0代表不檢測,其他數字代表檢測的優先級,1的優先級是高于2的,并且我們自己添加的磁區應該是大于等于2的,
mount -a:配置完成后應該執行這個命令掛載一遍,如果有報錯資訊,就解決了再重啟,不然以重啟的方式來掛載,導致系統崩潰了之后就不容易定位問題了,至少解決的時候會比較麻煩,
mount -o remount,rw /:這個命令用于/etc/fstab的修復,當系統因為掛載報錯后,且/etc/fstab這個檔案是只讀的,無法去修改檔案以修復問題,此時可以使用這個命令重新掛載一次,并讓它具有讀寫的權限,
四、相關命令
df/du命令
df [選項] [掛載點]:查看系統磁區的占用情況,
選項:
- -a:顯示所有的檔案系統資訊,包括特殊檔案系統,如/proc、/sysfs等,
- -h:使用習慣單位顯示容量,如KB/MB/GB等,
- -T:顯示檔案系統型別,
- -m:以MB為單位顯示容量,
- -k:以KB為單位顯示容量,也是默認的顯示單位,
du [選項] [目錄名或檔案名]:查看檔案或目錄的空間占用大小,最常用的命令為“du -sh 目錄名”,用于查看某個目錄的占用空間總大小,但是du命令一般用來查看目錄的占用大小,檔案的占用大小直接使用ll -h命令即可查看,
選項:
- -a:顯示每個子目錄和子檔案的磁盤占用量,默認只統計子目錄本身的磁盤占用量,
- -h:使用習慣單位顯示磁盤占用量,如KB/MB/GB等,
- -s:統計總占用量,而不列出子目錄和子檔案的占用量,
df和du命令的區別:
- df命令是從檔案系統角度考慮,不光要考慮檔案占用的空間,還要統計被命令或程式占用的空間(最常見的情況就是洗掉的檔案并沒有得到釋放,所以服務器應該定期進行重啟),
- du命令是面向檔案的,只會計算檔案或目錄占用的空間,
mount/umount命令
mount [-l]:查詢系統中已經掛載的設備,-l會顯示卷標名稱,
mount -a:依據組態檔/etc/fstab的內容進行自動掛載,
mount [-t 檔案系統] [-L 卷標名] [-o 特殊選項] 設備檔案名 掛載點:連接設備到指定的掛載點,
選項:
- -t:指定檔案系統型別,可以是ext3/ext4/iso9660等,
- -L:掛載指定卷標的磁區,而不是安裝設備檔案名掛載,
- -o:可以指定掛載的額外選項,選項內容較多,可以查看相關資料,需要注意這個mount特殊選項都是針對的磁區,
umount 設備檔案名或者掛載點:卸載設備,只有手動卸載設備后,這個設備才能“彈出”,否則就會一直是“使用中”的狀態,
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/103642.html
標籤:Linux
上一篇:用戶管理
