Linux RHEL 5.1 文件系統損壞修復案例 參考文檔整理 (HP)

出現錯誤提示:

Ext3-fs error(device dm-0):ext3_check_descriptors:Block bitmap for group 0 not in group(block 33261)!

EXT3-fs:group descriptors corrupted!

 

1Linux救援模式應用1

 

當系統連單用戶模式都無法進入時或出現GRUB命令行也不能解決的引導問題,我們就需要使用Linux救援模式來進行故障排除了。步驟如下:

 

1、將Linux安裝光盤(如果使用CD光盤,則放入第一張引導光盤)放入光驅,設置固件CMOS/BIOS爲光盤引導,當Linux安裝畫面出現後,在“boot:”提示符後輸入“linux rescue”回車進入救援模式。(想了解救援模式詳細信息,還可以按F5鍵查看)

 

2、系統會檢測硬件,引導光盤上的Linux環境,依次提示你選擇救援模式下使用的語言(建議選擇默認的英文即可,根據筆者測試,部分Linux系統選擇中文會出現亂碼);鍵盤設置用默認的“us”就好;網絡設置可以根據需要,大部分故障修復不需要網絡連接,可不進行此項設置,選擇“No”。

 

3、接下來系統將試圖查找根分區。

 

默認在救援模式,硬盤的根分區將掛載到光盤Linux環境的/mnt/sysimage目錄下,默認選項“continue”表示掛載權限爲讀寫;“Read-only”爲只讀,如果出現檢測失敗可以選擇“skip”跳過。此處,因爲要對系統進行修復,所以需要有讀寫權限,一般選擇默認選項“continue”。進入下一步後,系統提示執行“chroot /mnt/sysimage”命令,可以將根目錄掛載到我們硬盤系統的根目錄中去。

 

2Linux救援模式應用2

當你的Linux系統出現問題時你會怎麼辦,直接重新安裝,還是用Linux救援模式。或許你對這個模式很陌生但是並不妨礙他會對你有很大的幫助,可以幫你挽回很多重要的數據,是你不必很傷腦筋的對付上級的質詢。

 

現在我來講解進入rescue (示例系統爲RHEL 3

 

1.用安裝光盤或者硬盤安裝的方式進入安裝界面,在shell中輸入 Linux rescue

 

2.然後根據提示選擇語言和鍵盤格式

 

3.選擇是否配置網卡一般系統到了要rescue了,網絡也就不需要了,所以可以選擇否跳過網卡配置,當然你如果需要也可以選擇是,具體設置過程和安裝時一樣。

 

4.選擇是否然讓系統查找硬盤上的RHEL系統,選擇繼續。

 

5.硬盤上的系統已經被找到並掛載在/mnt/sysimage

 

6.按提示chroot /mnt/sysimage

chroot 之後你就可以已經在你的要被拯救的系統下了。

grub掛了的,grub-install /dev/hdxx

配置文件改錯的,vi /etc/fstab vi /etc/inittab……

軟件包被毀的 rpm -F xxx.rpm

完成修復工作後,exit命令退出chrootexit退出rescue shell系統重啓。

 

備註:

 

如果你硬盤上的系統是非rhel系統如debian的,那麼在第4步時,rescue程序會找步不到硬盤上的系統,所以我們這是選擇"跳過",直接進入shell.假設現在硬盤上的有一個

 

debian 系統 /dev/hda1/boot分區 /dev/hda5 /分區 /dev/hda6swap.那麼我們現在這麼做。

# fdisk -l (查看分區情況)

# mkdir /mnt/Linux

# mkdir /mnt/Linux/boot (根據fdisk -l得到的信息創建目錄)

# mount -t ext3 /dev/hda5 /mnt/Linux

# mount -t ext3 /dev/hda1 /mnt/Linux/boot(掛載硬盤上的文件系統)

# chroot /mnt/Linux chroot改變工作系統)

自此我們順利進入硬盤上的debian系統,剩下來到就和先前一樣了,有冤的報冤有仇的報仇。

 

另:

 

如果你的系統是文件系統損壞那麼就不用掛載,chroot 系統了。

直接 fsck /dev/hdxx 即可。

其實我們仔細想想這個rescue會發現,所謂rescue模式只是一個帶shellLinux運行環境而已,然後通過mount chroot進入要修復的系統的。

 

所以在沒有rescue 盤的情況下我可以利用 Linux livecd或軟盤版的Linux進入shell環境然後重做

 

# fdisk -l (查看分區情況)

# mkdir /mnt/Linux

# mkdir /mnt/Linux/boot (根據fdisk -l得到的信息創建目錄)

# mount -t ext3 /dev/hda5 /mnt/Linux

# mount -t ext3 /dev/hda1 /mnt/Linux/boot(掛載硬盤上的文件系統)

# chroot /mnt/Linux chroot改變工作系統)

就可以簡單的進入一個Linux救援模式了。

 

3Linux文件系統修復

1 獲取錯誤的出錯磁盤(或者設備)塊的大小.

有很多種方法可以得到. 比如,

 

    # tune2fs -l /dev/hda4

 

其實大多數情況下是 1 K.

 

2 對當前的出錯磁盤備份.

恢復超級塊(Superblock)的過程其實也是一個有風險的過程.能做備份就做好備份.如果有其他空閒設備, dd命令把該設備上的內容備份起來.

 

3 一般來說,超級塊錯基本上也就是主超級塊錯, Ext2/Ext3文件系統創建的時候,會同時在屏幕上提示我們在已經在幾個地方備份了超級塊.那麼怎麼發現這些超級塊在什麼地方呢?我們看看幫助信息:

 

    -b superblock

    Instead of using the normal superblock, use an alternative

    superblock specified by superblock. This option is normally

    used when the primary superblock has been corrupted. The loca-

    tion of the backup superblock is dependent on the filesystem's

    blocksize. For filesystems with 1k blocksizes, a backup

    superblock can be found at block 8193; for filesystems with 2k

    blocksizes, at block 16384; and for 4k blocksizes, at block

    32768.

 

    Additional backup superblocks can be determined by using the

    mke2fs program using the -n option to print out where the

    superblocks were created. The -b option to mke2fs, which spec-

    ifies blocksize of the filesystem must be specified in order for

    the superblock locations that are printed out to be accurate.

 

    If an alternative superblock is specified and the filesystem is

    not opened read-only, e2fsck will make sure that the primary

   superblock is updated appropriately upon completion of the

    filesystem check.

4 開始恢復.如果文件系統塊大小爲1K,則我們可以用如下命令恢復:

 

    # /sbin/fsck.ext3 -b 8193 /dev/hda4

 

 

如果這個備用塊(8193)也有問題,那麼可以嘗試 24577(8192*3+1) ,或者是 40961 (8192*5+1).

 

可能您也會看出來,超級塊的保存位置是按照 1,3,5,7這樣的規律的.具體的位置在 BlockSize(8192)*N+1.

4LinuxDD命令詳解

1.dd命令簡介

       功能:把指定的輸入文件拷貝到指定的輸出文件中,並且在拷貝過程中可以進行格式轉換。可以用該命令實現DOS下的diskcopy命令的作用。先用dd命令把軟盤上的數據寫成硬盤的一個寄存文件,再把這個寄存文件寫入第二張軟盤上,完成diskcopy的功能。需要注意的是,應該將硬盤上的寄存文件用rm命令刪除掉。系統默認使用標準輸入文件和標準輸出文件。 

 

語法:dd [選項

if =輸入文件(或設備名稱)。 

of =輸出文件(或設備名稱)。 

 

ibs = bytes 一次讀取bytes字節,即讀入緩衝區的字節數。

skip = blocks 跳過讀入緩衝區開頭的ibs*blocks塊。 

obs = bytes 一次寫入bytes字節,即寫入緩衝區的字節數。 

bs = bytes 同時設置讀/寫緩衝區的字節數(等於設置ibsobs)。

cbs = byte 一次轉換bytes字節。

count=blocks 只拷貝輸入的blocks塊。

conv = ASCII EBCDIC碼轉換爲ASCIl碼。

conv = ebcdic ASCIl碼轉換爲EBCDIC碼。

conv = ibm ASCIl碼轉換爲alternate EBCDIC碼。

conv = block 把變動位轉換成固定字符。

conv = ublock 把固定位轉換成變動位。

conv = ucase 把字母由小寫轉換爲大寫。

conv = lcase 把字母由大寫轉換爲小寫。

conv = notrunc 不截短輸出文件。

conv = swab 交換每一對輸入字節。

conv = noerror 出錯時不停止處理。

conv = sync 把每個輸入記錄的大小都調到ibs的大小(用NUL填充)。

 

2.實例分析

2.1.數據備份與恢復

2.1.1整盤數據備份與恢復

備份:

dd if=/dev/hdx of=/dev/hdy

將本地的/dev/hdx整盤備份到/dev/hdy

 

dd if=/dev/hdx of=/path/to/image

/dev/hdx全盤數據備份到指定路徑的image文件

 

dd if=/dev/hdx | gzip >/path/to/image.gz

備份/dev/hdx全盤數據,並利用gzip工具進行壓縮,保存到指定路徑

 

恢復:

dd if=/path/to/image of=/dev/hdx

將備份文件恢復到指定盤

 

gzip -dc /path/to/image.gz | dd of=/dev/hdx

將壓縮的備份文件恢復到指定盤

 

2.1.2.利用netcat遠程備份

 

dd if=/dev/hda bs=16065b | netcat < targethost-IP > 1234

在源主機上執行此命令備份/dev/hda

 

netcat -l -p 1234 | dd of=/dev/hdc bs=16065b

在目的主機上執行此命令來接收數據並寫入/dev/hdc

 

netcat -l -p 1234 | bzip2 > partition.img

                netcat -l -p 1234 | gzip > partition.img

以上兩條指令是目的主機指令的變化分別採用bzip2 gzip對數據進行壓縮,並將備份文件保存在當前目錄。

 

2.1.3.備份MBR

備份:

dd if=/dev/hdx of=/path/to/image count=1 bs=512

備份磁盤開始的512Byte大小的MBR信息到指定文件

 

恢復:

dd if=/path/to/image of=/dev/hdx

將備份的MBR信息寫到磁盤開始部分

 

2.1.4.備份軟盤

dd if=/dev/fd0 of=disk.img count=1 bs=1440k

將軟驅數據備份到當前目錄的disk.img文件

 

2.1.5.拷貝內存資料到硬盤

dd if=/dev/mem of=/root/mem.bin bs=1024

將內存裏的數據拷貝到root目錄下的mem.bin文件

 

2.1.6.從光盤拷貝iso鏡像

dd if=/dev/cdrom of=/root/cd.iso

拷貝光盤數據到root文件夾下,並保存爲cd.iso文件

 

2.2.增加Swap分區文件大小

dd if=/dev/zero of=/swapfile bs=1024 count=262144

創建一個足夠大的文件(此處爲256M

 

mkswap /swapfile

把這個文件變成swap文件

 

swapon /swapfile

啓用這個swap文件

 

/swapfile swap swap defaults 0 0

在每次開機的時候自動加載swap文件,需要在 /etc/fstab文件中增加一行

 

2.3.銷燬磁盤數據

dd if=/dev/urandom of=/dev/hda1

利用隨機的數據填充硬盤,在某些必要的場合可以用來銷燬數據。執行此操作以後,/dev/hda1將無法掛載,創建和拷貝操作無法執行。

 

2.4磁盤管理

2.4.1.得到最恰當的block size

dd if=/dev/zero bs=1024 count=1000000 of=/root/1Gb.file

                dd if=/dev/zero bs=2048 count=500000 of=/root/1Gb.file

                dd if=/dev/zero bs=4096 count=250000 of=/root/1Gb.file     

                dd if=/dev/zero bs=8192 count=125000 of=/root/1Gb.file

通過比較dd指令輸出中所顯示的命令執行時間,即可確定系統最佳的block size大小

 

2.4.2測試硬盤讀寫速度

dd if=/root/1Gb.file bs=64k | dd of=/dev/null

                dd if=/dev/zero of=/root/1Gb.file bs=1024 count=1000000

通過上兩個命令輸出的執行時間,可以計算出測試硬盤的讀/寫速度    

 

2.4.3.修復硬盤

dd if=/dev/sda of=/dev/sda

當硬盤較長時間(比如12年)放置不使用後,磁盤上會產生magnetic flux point。當磁頭讀到這些區域時會遇到困難,並可能導致I/O錯誤。當這種情況影響到硬盤的第一個扇區時,可能導致硬盤報廢。上邊的命令有可能使這些數據起死回生。且這個過程是安全,高效的。

 

2.4.4.軟盤拷貝

要把一張軟盤的內容拷貝到另一張軟盤上,利用/tmp作爲臨時存儲區。把源盤插入驅動器中,輸入下述命令:

$ dd if =/dev/fd0 of = /tmp/tmpfile

 

拷貝完成後,將源盤從驅動器中取出,把目標盤插入,輸入命令:

$ dd if = /tmp/tmpfile of =/dev/fd0

 

軟盤拷貝完成後,應該將臨時文件刪除:

$ rm /tmp/tmpfile 

 

2.4.5.net.i這個文件寫入軟盤中,並設定讀/寫緩衝區的數目。(注意:軟盤中的內容會被完全覆蓋掉)

 

$ dd if = net.i of = /dev/fd0 bs = 16384 

 

2.4.6.將文件sfile拷貝到文件 dfile中。

$ dd if=sfile of=dfile

5RHEL6救援模式掛載LVM

RHEL6救援模式掛載LVM出錯:mount unknown filesystem type 'lvm2_member'

解決辦法:

1、從fdisk信息不難看出,已經加密的“* ,肯定是我的引導分區,而我的真實/安裝在/dev/sda2上的。

 

2、掛載出錯

3、查看物理卷、卷組:pvsvgs

 

4、查看邏輯卷:lvdisplay

5、如未激活,需要激活邏輯卷

 

6、掛載邏輯卷

 

這裏,在chroot之前 bash-4.1#目錄下的/是內存中的 /,也叫僞根;

chroot sh-4.1#目錄下的/纔是系統真實的/,也叫真根

 

6parted命令

 

由於MBR分區表只支持2T磁盤,所以大於2T的磁盤必須使用GPT分區表,具體方法如下:

GPT格式的磁盤相當於原來MBR磁盤中原來保留4partition table4*16個字節,只留第一個16個字節,類似於擴展分區,真正的partition table512字節之後,GPT磁盤沒有四個主分區的限制。

fdisk不支持GPT,我們可以使用parted來對GPT磁盤操作。

parted功能很強大,既可用命令行也可以用於交互式

在提示符下輸入parted就會進入交互式模式,如果有多個磁盤的話,我們需要運行select sdx x爲磁盤,來進行磁盤的選擇

代碼

parted>

parted>select sdb                假設磁盤爲sdb

parted>mklabel gpt               MBR磁盤格式化爲GPT

#parted>mklabel msdos             GPT磁盤轉化爲MBR磁盤

parted>mkpart primary 0 100      劃分一個起始位置爲0,大小爲100M的主分區

parted>mkpart primary 100 200    劃分一個起始位置爲100M,大小爲100M的主分區

#parted>mkpart primary 0 -1       將整塊磁盤分成一個分區

parted>print                     打印當前分區

parted>quit                      退出

 

parted裏邊不支持ext3的文件系統,所以如果要使用的話,要退出parted進行格式話

代碼

mkfs.ext3 /dev/sdx1

因爲fdisk是不支持GPT磁盤,所以不要使用fdisk -l來查看X磁盤剛纔分好的區,看不到的。

命令行的模式:

將硬盤轉化爲GPT磁盤後,執行下列命令

代碼

parted /dev/sdx mkpart primary 0 100  劃分一個起始位置爲0大小爲100M的主分區

7SolarisNFS教程

 

所有的測試環境都是sunsolaris系統。

1、理解nfs服務器和客戶端功能。

 

nfssun公司來建立來使用tcp/ip協議以及sun的遠程調用和外部數據表示規範的產品。nfs的使用非常方便,也比較可靠。他具有在不同操作系統之間共享文件的能力。

nfs服務器可以使用nfs來讓其他遠程機器共享它的本地資源。nfs客戶機是訪問nfs服務器的共享資源的機器。其實在實際工作中,一臺主機即可以是nfs服務器,也可以是nfs客戶機。他們可以互相共享和訪問。

只要你能理解nfs服務器和nfs客戶機之間的不同。剩下的就很easy了。

 

2 nfs服務器和nfs客戶機區別。

21 solaris使用分佈式文件系統或dfs命令公享資源。公享資源可以手動和自動設置。

nfs服務器運行兩個守侯進程:mountd nfsd

用到的文件是:

/etc/rc3.d/S15nfs.server

/etc/dfs/dfstab

/etc/dfs/sharetab

/etc/rmtab

nfs服務器使用命令是:share unshare shareall unshareall

 

nfs客戶機上運行的守侯進程是:statd lockd

用到的文件是:

/etc/vfstab

/etc/mnttab

nfs客戶機使用命令是:mount umount mountall umountall

 

22 nfs服務器設置

nfs服務器需要運行兩個守侯進程mountdnfsd來工作。當nfs客戶機試圖訪問一個遠程的nfs服務器資源。nfs客戶機通過mount命令請求與 nfs服務器的mountd守侯進程進行連接。當nfs服務器響應客戶機時候,返回給可戶機一個信息。客戶機把這個信息寫到本地的/etc/mnttab文件中。這個信息是服務器中共享文件和目錄的信息。它是資源信息的編碼:磁盤設備號、節點生成號、節點號等。這個是唯一的。

一旦可戶機得到請求信息,nfs服務器上的mountd進程就會在服務器本地的/etc/rmtab文件中添加一條信息。這是爲了保持對當前加載可戶機上文件的跟蹤。這個文件爲每一個被加載資源添加一個條目,格式是:

remote hostname: local filename name

 

注意:mountd每一次重新啓動和可戶機發一個卸載請求,都會更新服務器的/etc/rmtab文件中的舊條目。

 

23共享設置命令。

明白了以上的道理,下面說具體的操作了。nfs服務器使用/usr/sbin/share命令爲客戶機共享資源。

命令詳解:

# share ---顯示所有可以安裝的資源,不管它是否已經被安裝。

# share [ -F filesystem ] [ -o options ] [-d description ] pathname-to-resource

---指定共享文件。

* -F file system type 指定被公享的文件系統類型。

* -o options 指定客戶對資源訪問的類型。

* -d description 功享資源的簡單描述。當你share命令不帶任何參數運行,他就會被顯示。

* pathname-to-resource 在服務器上共享的資源名字。

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

*-o 指定了允許客戶訪問共享資源的用戶也權限。具體如下:

rw 表示用戶可讀/寫,是默認植。

rw=client1client2指定用戶可以有讀/寫權限。可以有很多用戶,用冒號分隔。

ro 表示只讀。

ro=client1client2指定用戶client1client2只讀。client1可以是用戶名,也可以是ip地址,或者一個網段。例如:[email protected]/24

root=clientclient2指定client1client2上的root用戶對共享資源有超級用戶的權限。但是,他的優先級小於nfs服務器的本地權限。

 

例如:用戶peng有個目錄/exprot/home/games要共享。

# share -F nfs -o rw=lnx3000:race , [email protected]/24:sune450 ,root=mmmmn -d "i love MM !" /export/home/peng/games

運行結果:共享/exprot/home/peng/games目錄,名字是lnx3000race的兩臺主機有讀/寫權限;202.88.99.0這個c類網的機器和sun450這個主機只有讀的權限;mmmmn這臺主機的root用戶可以對共享資源有超級用戶訪問權限。但是聲名一點,要是我給共享目錄/exprot/home/peng/games目錄只讀,mmmmnroot權限也沒有用,只能只讀。因爲服務器本地權限大於任何share的權限。。

 

取消share資源。

# unshare [ -F nfs ] path-to-resource

* -F nfs 指定系統類型,默認。

* path-to-resource 指定共享路徑。

例如:

# unshare /export/home/peng/games

取消這個共享資源了。

 

24開機自動共享資源。

以上的命令方法,在機器重新啓動的時候,設置消失。如何保留和開機自動啓動nfs共享。我們可以用/etc/dfs/dfstab文件來實現自動共享文件。只要主機啓動進入運行級別3nfs資源共享自動啓動。

1、編輯/etc/dfs/dfstab文件,添加:

share [ -F filesystem ] [ -o options ] [-d description ] pathname-to-resource

-----這個和命令行是一樣的。。。

2# /etc/init.d/nfs.server start

這樣就ok了。

 

3、手工快速命令。

# shareall --共享所有列在/etc/dfs/dfstab中的共享資源。

# unshareall --取消所有列在/etc/dfs/dfstab中的共享資源。

 

25資源查看。

# dfshares

用以查看服務器的共享資源。輸入格式如下:

resource server access transprot

* resource 可被遠程調用的資源的主機和路徑名。

* server 指定資源的系統名稱。

* access 服務器指定的權限,默認是rw,顯示爲“-”。

* transport 指定共享資源的端口。

 

# dfmounts命令

顯示服務器上查看共享資源被利用的狀況,輸出格式如下:

RESOURCE SERVER PATHNAME CLIENTS

* resource 共享資料名稱。

* server pathname 共享資料目錄。

* client 連接的客戶端。

 

# nfsstat

nfs的全部狀態

 

3nfs客戶機設置。

安裝好nfs服務器後,就可以用客戶端使用共享資料了。首先要檢測nfs服務器,然後安裝。

 

31檢測nfs服務器。

# showmount [ -ade ] <hostname>

* -a 顯示已經已經使用的資源和來自哪個nfs服務器。

* -d 顯示已經被遠程安裝的資源。

* -e 顯示可以被安裝的可以資源。一般用-e來查看遠程主機的可以資源。

 

32建立共享。

# mount [ -F nfs ] [ -o options ] path-to-resource path-to-local-mount-point

* -F nfs 指定共享文件系統,默認的。沒必要指定。

* -o options 指定選項,例如權限。默認rw,可讀/寫。也可以ro--只讀。

* path-to-rescource 指定nfs服務器的主機名和共享資源路徑。

* path-to-local-mount-point 指定共享資源在本地的mount點。

 

例如:

# mkdir /export/home/games

# mount peng:/export/home/peng/games /exprot/home/games

共享遠程主機peng/export/home/peng/games目錄,可讀寫,掛接在本地的/exprot/home/games目錄上。

 

33取消共享。

# umount [-F nfs] remote-path-to-resource path-to-local-mount-point

* -F nfs 默認的文件系統。

* remote-path-to-resource 遠程主機和共享目錄路徑,主機和共享目錄路徑用冒號分隔。

* path-to-local-mount-point 本地主機掛點。

 

例如:

# umount peng:/export/home/peng/games /export/home/games

取消遠程主機peng上的/exprot/home/peng/games這個目錄的在本地/export/home/games上的共享。

 

34系統開機自動共享。

修改/etc/vfstab文件,格式如下:

device to mount device to fsck mount point FS type fsck pass mount at boot mount options

 

* device to mount 指定遠程服務器名和共享路徑。遠程服務器名和共享路徑用冒號分開。

* device to fsck 這個是空的。從來不從客戶機進行文件檢測。

* mount point 指定本地的mount點。這個目錄必須是已經存在的。

* FS type 對於nfs資源系統來說,當然是nfs了。

* fsck pass 這個也是空的。表示不從客戶機進行文件系統檢測。

* mount at boot 選擇yes or noyes就是啓動時自動安裝。

* mount options 用逗號分隔的mount命令的列表。

 

例如:

# vi /etc/vfstab 添加:

peng:/export/home/peng/games - /export/home/games nfs - yes soft,bg

 

表示開機自動把遠程主機peng/export/home/peng/games目錄自動掛到本機的/export/home/games下。soft選項是目錄不能安裝,產生一個錯誤。bg選項,系統啓動過程中安裝在後臺。

關於mount options的參數,請用 man mount自己看看吧。

 

35手工調試命令。

# mountall

不帶任何參數,安裝所有列在/etc/vfstab文件中mount at boot中爲yes的資源。

# mountall -r 隻影響遠程文件

# mountall -l 隻影響本地文件

 

# umountall

不帶任何參數,謝載已經安裝的資源。不包括/ /proc/usr/var。另外,系統忙,也可能不會卸載。

# umountall -r 隻影響遠程文件

# umountall -l 隻影響本地文件

 

小節:

到這裏我想應該沒有什麼問題了。

大家只要注意一下客戶端和服務器端的區分。

nfs服務器端運行守侯進程moundnfsd

nfs服務器端使用文件/etc/dfs/dfstab/etc/dfs/sharetab/etc/rmtab

nfs服務器使用命令是:share unshare shareall unshareall

 

nfs客戶端運行守侯進程statdlockd

用到的文件是/etc/vfstab/etc/mnttab

nfs客戶機使用命令是:mount umount mountall umountall

知道這些,就ok了。

 

FAQ :

1、運行mount命令不能得到共享資源,得到信息:“nfs server not responding”。

answer:確信服務器上nfsdmountd已經運行,資源已經用共享命令正確共享。

2、當我企圖共享到本地磁盤時,錯誤爲:“mount/tmp_mount not found.

answer: 你有沒有在本地創建mount點。。。

 

 

---- 但是有時我們操作時,在機器B上執行了mount命令後,會返回"RPC: Program not registered"這樣的錯誤,這是因爲在機器A上缺少mountdnfsd這兩個守護進程(daemon)UNIX系統啓動時,系統會自動檢查/etc/dfs/dfstab文件,如果文件中有要共享的資源,則啓動這兩個守護進程,反之,則不啓動。所以如果我們在/etc/dfs/dfstab中沒有內容,則系統不能啓動mountdnfsd這兩個守護進程,用share命令共享的目錄也不能真正被別的系統共享。

---- 解決這個問題的方法很簡單,我們可以把要共享的目錄放入/etc/dfs/dfstab中,則下一次系統啓動時會自動共享這個目錄;另外,我們也可以手動啓動這兩個守護進程,方法是首先用超級用戶(root)登陸,在命令行輸入如下命令:

machine_A# /etc/rc3.d/S15nfs.server start

 

或輸入:

machine_A# /usr/lib/nfs/mountd

machine_A# /usr/lib/nfs/nfsd -a 16

就可以啓動這兩個守護進程了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章