在使用 Linux 時,有時候會因爲初始時磁盤空間分配估計不足,使用中需要將掛載點擴容的情況,這就需要我們掛載新的磁盤。但是如果我們在 Linux 運行過程中掛載磁盤, Linux 又不能在不重啓的情況下自動識別,這時就需要我們使用下面的操作使 Linux 在不重啓的情況下識別新掛載的磁盤。
首先,查看主機總線號,磁盤肯定是有總線連接着的:
[root@localhost ~]# ls /sys/class/scsi_host/
host0 host1 host2
其次,重新掃描SCSI 總線來添加設備:
[root@localhost ~]# echo “- - -” > /sys/class/scsi_host/host0/scan
[root@localhost ~]# echo “- - -” > /sys/class/scsi_host/host1/scan
[root@localhost ~]# echo “- - -” > /sys/class/scsi_host/host2/scan
之所以掃描的是SCSI 總線,是因爲我們添加的是 SCSI 類型的磁盤。
再次,查看一下新掛載的磁盤,此時 Linux 已經可以識別新添加的磁盤:
[root@localhost ~]# fdisk -l
最後,對新掛載的磁盤進行分區,格式化,掛載即可使用。
補充:爲掛載點擴容
假設之前我們有一個掛載點爲 /data ,此時 /data 已經寫滿,但依然想在 /data 下添加新的數據,這時可以使用軟鏈接將 /data 軟鏈接到一個新掛載的磁盤分區上以實現擴容。具體步驟如下所示。
(1)創建一個目錄,以便稍後作爲掛載點:
[root@localhost ~]# mkdir /newdata
(2)將 /dev/sdb1 分區掛載到 /newdata 下:
[root@localhost ~]# mount /dev/sdb1 /newdata
(3)創建 /data 到 /newdata 的軟鏈接:
[root@localhost ~]# ln -s /newdata /data
此時在 /data 目錄下會有一個軟鏈接文件 newdata 指向 /newdata/ ,即 newdata -> /newdata/ 。這樣一來,只要我們向 /data/newdata 下寫文件,實際就寫入了 /newdata/ 目錄下,相當於我們爲原 /data 掛載點新增加了一部分使用空間。也可以手動指定該軟鏈接文件的名稱:
[root@localhost ~]# ln -s /newdata /data/customed_name
這樣就有 /data/customed_name -> /newdata 。
注:我們也可以利用軟鏈接的這一用途,將比較大的日誌文件鏈接到存儲空間充足的磁盤分區的掛載點上。舉例來說,如果 /opt/tomcat/logs/catalina.out 日誌文件輸入很多,佔用空間很大,而 /opt 掛載點中所剩空間已經不多,存在溢出風險,通過下面兩步就可以將該日誌文件軟鏈接到另一個磁盤分區的掛載點上:
[root@localhost ~]# touch /newdata/catalina_link.out
[root@localhost ~]# ln -sf /newdata/catalina_link.out /opt/tomcat/logs/catalina.out
這裏還需要注意三點,一是必須先創建一個被鏈接的文件,否則軟鏈接後失敗;二是強制軟鏈接會清空之前 /opt/tomcat/logs/catalina.out 日誌文件中的全部內容清空;三是需要重啓 tomcat 目錄後才能繼續向 /opt/tomcat/logs/catalina.out 寫入。
本文出自 “細桶假狗屎” 博客,請務必保留此出處http://xitongjiagoushi.blog.51cto.com/9975742/1629771