1. 程式人生 > >Linux磁碟掛載、分割槽、擴容操作

Linux磁碟掛載、分割槽、擴容操作

轉載自:https://segmentfault.com/a/1190000017213655

 

基本概念

在操作前,首先要了解一些基本概念

磁碟

在Linux系統中所有的裝置都會以檔案的形式儲存。裝置一般儲存在/dev目錄下面,以sda、sda1、sda2 ...,sdb、sdb1...,hda,hdb。現在的裝置一般都是sd命名,以前的很老的硬碟是以ha命名。
sda:第一塊硬碟,如果對磁碟進行了分割槽會有sda1(第一個分割槽),sda2等。
sdb:第二個硬碟,同樣對硬碟分割槽後有sdb1,sdb2等。

分割槽

分割槽的目的就是便於管理,比如在Windows系統我們一般會分C盤,D盤,E盤等。

Linux只能建立4個主分割槽,如果需要建立更多的分割槽那麼久必須建立邏輯分割槽,其中邏輯分割槽需要佔用一個主分割槽。

檔案系統

Linux中的檔案系統也就是分割槽型別,在Windows中有NTEF,FAT32等,linux中常見的有Ext2、Ext3、Ext4、Linux swap、proc、sysfs、tmpfs等,可以通過mount命名檢視當前已掛載的檔案系統。

格式化

在前面建立完分割槽後有一步是要對分割槽進行格式化,其實在Windows系統中也是一樣,在建立好一個分割槽後也需要將分割槽格式化,只有格式化成具體的檔案型別才能使用。

掛載

在Windows中分割槽格式化後就可以使用,但是在Linux系統中必須將分割槽掛載到具體的路徑下才可以。

常用命令

lsblk  檢視當前磁碟情況
df -lh  檢視檔案系統情況 -l 檢視掛載點
parted -l 會列出檔案系統型別
fdisk -l 檢視當前未掛載硬碟

掛載新硬碟

掛載一個新硬碟基本思路是:建立分割槽、建立檔案系統、掛載。

一、檢視新硬碟

首先,檢視硬碟狀況:

fdisk -l

其中:
如果磁碟下面有類似:Disk /dev/sdc doesn't contain a valid partition table;或者說磁碟下面沒有類似於:sdb1 sdb2 說明該磁碟未掛載

這裡假設看到硬碟名為 /dev/sdb

二、建立分割槽

dfisk /dev/sdb

根據提示,依次輸入"n","p" "1",兩次回車,"wq"
意思就是新建一個主分割槽(1),大小是整個sdb磁碟,然後寫入。

注:上述操作為了簡便,只是建立一個主分割槽。其實一個磁碟最多有四個主分割槽(包括一個擴充套件分割槽),1-4都是主分割槽,我們也可以把一個分割槽作為擴充套件分割槽(通過df -lh 檢視到的system為Extended)

此時磁碟已經分割槽,但是還沒有檔案系統,磁碟依然不能用

三、寫入系統

mkfs.ext4 /dev/sdb

該命令會格式化磁碟並寫入檔案系統

四、掛載

比如掛載到/data下面

mkdir /data # 如果存在此步省略
mount /dev/sdb /data

五、設定開機自動掛載

以上只是臨時掛載,還需設定為開機自動掛載

vim /etc/fstab


# 然後在內容結尾處增加一行(注意檔案型別要對應):

/dev/sdb    /data    ext4    defaults    0 0

擴容

關於掛載到已有目錄

如果你要用來掛載的目錄裡面並不是空的,那麼掛載了檔案系統之後,原目錄下的東西就會暫時的消失。並不是被覆蓋掉,而是暫時的隱藏了起來,等到新分割槽被卸除之後,則原目錄原本的內容就會再次出來。

如果要永久掛載已有目錄,可以在新硬碟建立檔案系統後,先掛載到一個臨時目錄,然後把要擴充套件的目錄複製到這臨時目錄,然後刪除要擴充套件的目錄,再解除安裝臨時掛載點,重新掛載到要擴充套件的目錄上。舉例:

# 比如要擴充 /var

# 在建立好檔案系統後 新建臨時掛載點 storage
mkdir /storage

# 將/dev/sdb1掛載到/storage下
mount /dev/sdb1  /storage

# 拷貝/var下的所有內容到新的硬碟
cp -pdr /var /storage
# 或在/var 目錄下執行:find . -depth -print | cpio - pldvm /temp
# 刪除當前/var目錄下的內容
rm -rf /var/*
# 重新掛載硬碟到/var目錄
umount /dev/sdb1
mount /dev/sdb1 /var

# 過程中若提示磁碟忙,使用fuser找出將正在使用磁碟的程式並結束掉;

fuser -m -v /var
fuser -m -v -i -k /var

擴充套件

如果擴容比較頻繁,那推薦使用LVM管理(最後一個參考連結)

參考

http://www.cnblogs.com/chenmh...
https://segmentfault.com/a/11...
https://blog.csdn.net/wzb56_e...
https://www.cnblogs.com/sourc...
http://www.cnblogs.com/gaojun...