顯示具有 NFS 標籤的文章。 顯示所有文章
顯示具有 NFS 標籤的文章。 顯示所有文章

2023年10月26日 星期四

調整Ubuntu 22.04的nfsd數量方式有變

過往調整NFS daemon (nfsd)數目是去修改/etc/default/nfs-kernel-server裡面的參數 RPCNFSDCOUNT但是這招在Ubuntu 22.04上已經失效。要檢查目前系統在執行的NFS daemon有幾隻,用下列指令:

  • ps -ef | grep "\[nfsd\]" -c
至於有多少個客戶端連線,則可用下面的指令:
  • netstat -nt | grep :2049 -c

2019年6月6日 星期四

CentOS沒有程式在跑卻顯示高負載

有台CentOS 6的舊機器,使用top沒有看到甚麼高負載的程式但使用uptime卻會看到很高的負載量。通常這種狀況都會是nfs在搞鬼,大概會是下面這種狀況:
  1. 本地端使用mount nfs掛載了遠端機器的資料夾
  2. 遠端機器的nfs service掛了或是關掉了
  3. 本地端使用df, ls等去看掛載的資料夾,然後就一直在等待nfs回應
    雖然這些程式不怎麼吃資源,但卻會出現在負載上面

解決方案就是把nfs給掛好,或是刪除這些卡住的指令:

2018年8月14日 星期二

DRBL重新部署後NFS的exports設定

根據《DRBL企鵝龍重新佈署》,用下面指令重新部署clients:
  • drblpush -c /etc/drbl/drblpush.conf
這時候要注意到,原本的/etc/exports會被更新。需要從舊的檔案/etc/exports.drblsave裡面撈出一些設定,放回更新後的/etc/exports裡面,再用下面的指令重新啟動:
  • exportfs -auv   #關閉所有NFS服務
  • exportfs -arv   #啟動所有NFS服務
  • showmount -e    #檢查export的IP
_EOF_

2018年2月13日 星期二

卸載所有的NFS檔案系統

有時候因為網路的問題,或是提供NFS的伺服器掛掉,掛載的NFS會卡住,連帶的造成像是ls, df等等指令也會跟著卡住不動。解法有二:一種是重新掛載,但若是解決不了問題,則用下面指令直接卸載NFS檔案系統:
  • sudo umount -a -t nfs
若上述指令一直出現device busy訊息而遲遲無法卸載,通常是終端機還在NFS資料夾中,或是用lsof, fuser等指令看究竟是哪些程式還在使用這些NFS資料夾。懶惰的作法則是直接下:
  • sudo umount -f -a -t nfs
  • sudo umount -lf -a -t nfs
上面兩個指令可能會造成正在開啟的檔案損毀,請小心使用

_EOF_

2018年1月8日 星期一

更新exports設定檔後更新NFS服務

用NFS做的檔案伺服器,更新了分享設定檔/etc/exports之後,需要重新開啟才會使用更新後的設定檔內容。首先,取消所有分享
  • sudo exportfs -auv
接著根據/etc/exports重新分享資料夾:
  • sudo exportfs -arv
最後使用showmount指令檢查可以分享的資料夾設定:
  • showmount -e
_EOF_

2017年8月23日 星期三

NFS4的idmapping

對於NFS version4(nfs4),client上面需要從server得到idmapping所需的資訊

例如說user1, uid=1111,那就必須要在nfs server上面有這個使用者,當server用nfs4分享user1的資料夾到client上面的時候,才能夠正確顯示。這可能是因為nfs4在傳送資料夾權限的時候不是用UID,而是用ID,所以才需要用到idmapping

若是分享的資料夾在nfs server上面沒有帳號,則idmapd從server傳送uid對應id表的時候,就會出現nobody

2016年11月27日 星期日

重新掛載NFS檔案系統

某些時候像是跳電後,原本透過網路掛載的NFS檔案系統會卡住,這時候要強迫所有的NFS檔案系統重新掛載可以執行下面指令:
  • sudo mount -a -t nfs -o remount
_EOF_

2016年1月29日 星期五

DRBL企鵝龍重新佈署

裝好DRBL並佈署好之後,想要增加下面三樣功能
  • 讓不同台的node根據IP address有不同的主機名稱
  • 增加DRBL server上想要分享給nodes的目錄
  • 修改nodes上面的fstab
並不需要進去/tftpboot/nodes/裡面去每台機器一台一台的改,而是一次改完設定檔,然後重新部署就可以了