天天看點

LVM誤删了lv,該怎麼恢複

    今天局方一個技術人員咨詢,說 rm 了一個lv,但是沒有釋放空間。。

    确認需求後,建議他先回複lv,然後再用正常的流程删除lv。

    恢複lv:

          mknod /dev/vg00/lvol5 b 64 0x000005

      然後用lvremove之類的指令删除lv;

==========================我是分隔線================================

這裡重點講一下mknod的使用;

mknod 

用途 

  建立特殊檔案。  

  mknod Name { b | c } Major Minor 

  建立 FIFO(已命名的管道) 

  mknod Name { p }       

  描述

  mknod 指令建立一個目錄項和一個特殊檔案的對應索引節點。第一個參數是 Name 項裝置的名稱。選擇一個描述性的裝置名稱。mknod 指令有兩種形式,它們有不同的标志。

  第一種形式中,使用了b 或 c 标志。b 标志表示這個特殊檔案是面向塊的裝置(磁盤、軟碟或錄音帶)。c 标志表示這個特殊檔案是面向字元的裝置(其他裝置)。

  第一種形式的最後兩個參數是指定主裝置的數目,它幫助作業系統查找裝置驅動程式代碼,和指定次裝置的數目,也就是單元驅動器或行号,它們是十進制或八進制的。一個裝置的主要和次要編号由該裝置的配置方法配置設定,它們儲存在 ODM 中的 CuDvDr 類裡。在這個對象類中定義了主要和次要編号以確定整個系統裝置定義的一緻性,這是很重要的。

  在 mknod 指令的第二種形式中,使用了 p 标志來建立 FIFO(已命名的管道)。

标志

  

b 表示特殊檔案是面向塊的裝置(磁盤、軟碟或錄音帶)。
c 表示特殊檔案是面向字元的裝置(其他裝置)。
p 建立 FIFO(已命名的管道)。

-----------------------------------------------------------

  c.建立虛拟裝置(dev),日志記錄的時候有的選項可能用到它們。在預設情況下,是使用/dev目錄下的檔案,但是由于我們需要把DNS限制到一個目錄,是以必須完全把/dev下用到的檔案(或者說裝置)模拟過來才可以。

  ls -lL /dev/zero /dev/null /dev/random

  看到類似

  crw-rw-rw- 1 root root 1, 3 2003-09-15 /dev/null

  crw-r--r-- 1 root root 1, 8 2003-09-15 /dev/random

  crw-rw-rw- 1 root root 1, 5 2003-09-15 /dev/zero

  這樣的,将其中的1,3這樣的數字記錄下來,這表示主裝置号和次裝置号(一般來說主裝置号用來區分裝置的種類;次裝置号則是為了作唯一性區分,标明不同屬性——注意,在unix系統中是把裝置也當作檔案來對待的),在redhat 9下,ls加不加-L參數都無所謂,但是在Solaris下則一定要加上才可以顯示。

  mknod dev/null c 1 3

  mknod dev/zero c 1 5

繼續閱讀