如何自動“sudo mount”?

如何自動“sudo mount”?

我的 NAS 伺服器上有幾個共享目錄,我想自動掛載它們。

目前我已嘗試將它們放入我的.bashrc文件中,但這意味著每次我打開終端時,即使它們已經安裝,它也會嘗試安裝它們。

有沒有更好的方法來自動安裝這些?如果沒有,是否有辦法sudo mount只在語句尚未安裝時才有條件地執行這些語句?

答案1

這是一種可以在啟動時進行共用安裝的方法。

首先打開一個終端,它應該在您的主目錄中打開。輸入以下內容:

touch .smbcredentials 

然後在您喜歡的編輯器中打開~/.smbcredentials並添加以下行

username=your user name
password=you user password

儲存檔案並再次開啟終端並鍵入:

sudo chmod 600 .smbcredentials

現在打開您的/etc/fstab 檔案...您可以在終端機中打開它sudo vi,或者使用您最喜歡的終端程式打開它,或使用sudo gedit 您最喜歡的GUI 編輯器(該檔案必須在根目錄中編輯,否則您將無法保存它)

在文件末尾,/etc/fstab您需要為每個共享添加一行,其格式為shared directory path/name the location of the folder it will be mapped to on your system cifs a line to your credentials file其他一些內容..我會給您一個示例,但路徑都是錯誤的..您需要更改它們以適應您正在使用的共享。

例如..如果我在名為MAIN的網路電腦上有一個名為Downloads的共用(您也可以使用IP位址,例如//192.168.1.102),並且我希望將其對應到位於/media/user/myshare 我的本機使用者名稱的文件夾是喬的話,這條線看起來像這樣:

//MAIN/Downloads /media/user/myshare cifs credentials=/home/Joe/.smbcredentials,users,iocharset=utf8,sec=ntlm 0 0 

或者

//192.168.1.102/Downloads /media/user/myshare cifs credentials=/home/Joe/.smbcredentials,users,iocharset=utf8,sec=ntlm 0 0  

根據您提供的信息,正確的行將是:

 //192.168.192.62/volume1/video/Movies /media/NAS-movies cifs credentials=/home/mark/.smbcredentials,users,iocharset=utf8,sec=ntlm 0 0

它看起來確實與你給我的一樣,但是嘗試一下..對我來說已經晚了,我可能錯過了一些東西:D

需要注意的一些事情... Linux 區分大小寫,因此如果共用名為 Downloads,您需要使用 Downloads .. downloads 不是同一個資料夾。您在本機上映射共用的資料夾必須存在,否則 fstab 將失敗。

設定此共用並儲存檔案後...卸載共用並在終端機中輸入:

sudo mount -a

並查看是否有任何錯誤...如果沒有錯誤,請檢查共享是否已安裝..如果是..那麼您所做的一切都是正確的,每次計算機啟動時都會安裝該共享...只需按照相同的步驟在您的NAS 上創建任何其他共享.. .. 當然.. 您只需執行一次smbcredential 文件,因此添加任何其他共享只會更改我們添加的行的前兩部分。

與 OP 交談後,我們發現他丟失了一些重要文件,例如 samba 和 cifs,一旦我們獲得了系統所需的所有文件,我們就能夠解決問題

相關內容