搭建linux NFS和SSH伺服器

2021-06-26 15:22:45 字數 1944 閱讀 3555

嵌入式除錯常常需要做nfs掛載除錯,和ssh遠端伺服器除錯。

記錄下nfs和ssh遠端伺服器的搭建過程:

nfs伺服器搭建:

1.安裝nfs server:

sudo 

apt-get install nfs-kernel-server

2.配置nfs目錄(/etc/exports)

sudo vi /etc/

exports

在最後新增 /opt/nfs *(rw,sync,no_root_squash),其中"/opt/nfs"是我的nfs掛載目錄。這樣就有可以工作,如果需要其他一些配置,

參考如下:

*代表允許所有的網路段訪問,rw是可讀寫許可權,sync是資料同步寫入記憶體和硬碟,no_root_squash是ubuntu nfs客戶端分享目錄使用者的許可權,如果客戶端使用的是root使用者,那麼對於該共享目錄而言,該客戶端就具有root許可權。

nfs常用的引數有:

ro 唯讀訪問

rw 讀寫訪問sync 所有資料在請求時寫入共享

async nfs在寫入資料前可以響應請求

secure nfs通過1024以下的安全tcp/ip埠傳送

insecure nfs通過1024以上的埠傳送

wdelay 如果多個使用者要寫入nfs目錄,則歸組寫入(預設)

no_wdelay 如果多個使用者要寫入nfs目錄,則立即寫入,當使用async時,無需此設定。

hide 在nfs共享目錄中不共享其子目錄

no_hide 共享nfs目錄的子目錄

subtree_check 如果共享/usr/bin之類的子目錄時,強制nfs檢查父目錄的許可權(預設)

no_subtree_check 和上面相對,不檢查父目錄許可權

all_squash 共享檔案的uid和gid對映匿名使用者anonymous,適合公用目錄。

no_all_squash 保留共享檔案的uid和gid(預設)

root_squash root使用者的所有請求對映成如anonymous使用者一樣的許可權(預設)

no_root_squas root使用者具有根目錄的完全管理訪問許可權

anonuid=*** 指定nfs伺服器/etc/passwd檔案中匿名使用者的uid

anongid=*** 指定nfs伺服器/etc/passwd檔案中匿名使用者的gid

3.啟動服務和驗證:

sudo /etc/init.d/portmap restart

sudo /etc/init.d/nfs-kernel-server restart

執行 showmount -e:看到如下說明成功

或者可以使用以下命令把它掛載在本地磁碟上,例如將掛載到/mnt下:

$ sudo mount -t nfs localhost:/opt/nfs /mnt

可以執行df命令檢視是否掛載成功。檢視後可以使用以下命令解除安裝:

$ sudo umount /mnt

ssh伺服器搭建:

1.安裝ssh server:

ubuntu預設安裝了ssh cliet,需要我們安裝ssh server

sudo apt-get install openssh-server

2.配置登入埠和使用者授權等:

修改/etc/ssh/sshd_config:

"#permitrootlogin yes"改為"permitrootlogin no" "

#port 22

"改為"

port 22

"允許使用埠22

新增 allowusers xx xx2  xx和xx2等是允許登入的使用者列表。

3.啟動或重啟ssh服務:

sudo /etc/init.d/ssh restart

這時可以通過ssh 127.0.0.1在伺服器上測試ssh服務是否正常。

Linux NFS服務搭建

本專案是乙個外包出去的web專案。硬體涉及同一區域網內的若干工控機及乙個伺服器。工控機內執行python工作指令碼,伺服器部署專案前後端等。現有需求 前端實時展示各個伺服器的python指令碼日誌檔案。外包使用的日誌方式是重定向python指令碼輸出到檔案,再將文字寫入mysql中。該方法會導sql...

linux搭建SSH服務 外網訪問內網的伺服器

埠對映 如果還解決不了,可以先切換軟體源,再安裝openssh client openssh server 啟動ssh的服務 sudo service ssh start 檢視是否啟動 ps e grep ssh,或者sudo service sshd status檢視服務狀態 有sshd 說明啟動...

python socket簡單實現SSH伺服器端

server import socket,os server socket.socket server.bind localhost 9999 server.listen while true conn,addr server.accept while true data conn.recv 102...