Ubuntu 運用CIFS掛載網路磁碟機至本機
1. 安裝CIFS
sudo apt-get install cifs-utils
2. 把網路硬碟掛載到本機路徑
sudo mount -t cifs //172.16.1.123/public /home/user/public -o vers=2.0,user=userName,pass=password
指令說明:
//172.16.1.123/public --> 代表在網路上硬碟的位置,包含IP、欲連接的資料夾名稱
/home/user/public --> 代表你設定要放在本機的路徑(資料夾要先創建好)
user=userName --> 網路硬碟登入時的使用者名稱
pass=password --> 網路硬碟登入時的使用者密碼
有些網路硬碟因版本的差異,可能需更改"vers=2.0",目前經驗是vers=1.0或vers=2.0 嘗試過後可運用
3. 設定開機自動載入網路硬碟
建立一個*.sh檔
裡面寫入以下SAMPLE指令
echo sudoPassword|sudo -S mount -t cifs //172.16.4.167/public /home/user/public -o vers=2.0,user=etd,pass=7130,gid="1000",uid="1000"
指令說明:
sudoPassword --> sudo指令使用的密碼
gid="1000" uid="1000" --> GID與UID是給與可寫入權限用,代號意義不清楚
備註1:在BASH檔裡寫入SUDO密碼並不是很好的做法,不過目前會的就這個方法。就先暫用囉
備註2:製作好*.sh檔後,可把檔案複製到/usr/local/bin/下或其他路徑,並且在開機時利用自動啟動bash檔載入網路硬碟(在Startup Applications Preferences裡設定執行路徑)
備註3:其他很多指令我也只是照網路上KEY的,意義並不完全明白。總之這樣可以把網路硬碟掛載到本機,並且開機自動執行
4. 設定在BASH檔裡不用輸入密碼也可執行BASH檔
開啟終端機,並輸入指令:
sudo visudo
之後會開啟一個視窗,再最後一行加入指令:
username ALL=(ALL) NOPASSWD:/usr/local/bin/*.sh
之後按儲存並關閉(CTRL+X)
以後執行指定好的*.sh就不用再輸入密碼就可以執行了
之後在startup裡設定開機執行指令:
sudo /usr/local/bin/*.sh
並給與*.sh權限(沒有給與權限無法直接執行):
sudo chmod +x /usr/local/bin/*.sh
之後就會自動執行我們設定好的BASH檔了
PS: 記得執行我們要的BASH的指令,直接把SUDO -S拿掉喔
例如:mount -t cifs //172.16.4.167/public /home/user/public -o vers=2.0,user=etd,pass=7130,gid="1000",uid="1000"
參考 reference:
CIFS設定的參考網址
https://forum.libreelec.tv/thread/10485-can-t-mount-smb-share-in-ubuntu-16-04/
https://blog.csdn.net/xushx_bigbear/article/details/12966625
https://blog.csdn.net/stelalala/article/details/16827611
BASH檔無需密碼執行的參考網址
https://unix.stackexchange.com/questions/430451/how-to-run-sudo-command-in-a-bash-script
https://www.tecmint.com/run-sudo-command-without-password-linux/
sudo apt-get install cifs-utils
2. 把網路硬碟掛載到本機路徑
sudo mount -t cifs //172.16.1.123/public /home/user/public -o vers=2.0,user=userName,pass=password
指令說明:
//172.16.1.123/public --> 代表在網路上硬碟的位置,包含IP、欲連接的資料夾名稱
/home/user/public --> 代表你設定要放在本機的路徑(資料夾要先創建好)
user=userName --> 網路硬碟登入時的使用者名稱
pass=password --> 網路硬碟登入時的使用者密碼
有些網路硬碟因版本的差異,可能需更改"vers=2.0",目前經驗是vers=1.0或vers=2.0 嘗試過後可運用
3. 設定開機自動載入網路硬碟
建立一個*.sh檔
裡面寫入以下SAMPLE指令
echo sudoPassword|sudo -S mount -t cifs //172.16.4.167/public /home/user/public -o vers=2.0,user=etd,pass=7130,gid="1000",uid="1000"
指令說明:
sudoPassword --> sudo指令使用的密碼
gid="1000" uid="1000" --> GID與UID是給與可寫入權限用,代號意義不清楚
備註1:在BASH檔裡寫入SUDO密碼並不是很好的做法,不過目前會的就這個方法。就先暫用囉
備註2:製作好*.sh檔後,可把檔案複製到/usr/local/bin/下或其他路徑,並且在開機時利用自動啟動bash檔載入網路硬碟(在Startup Applications Preferences裡設定執行路徑)
備註3:其他很多指令我也只是照網路上KEY的,意義並不完全明白。總之這樣可以把網路硬碟掛載到本機,並且開機自動執行
4. 設定在BASH檔裡不用輸入密碼也可執行BASH檔
開啟終端機,並輸入指令:
sudo visudo
之後會開啟一個視窗,再最後一行加入指令:
username ALL=(ALL) NOPASSWD:/usr/local/bin/*.sh
之後按儲存並關閉(CTRL+X)
以後執行指定好的*.sh就不用再輸入密碼就可以執行了
之後在startup裡設定開機執行指令:
sudo /usr/local/bin/*.sh
並給與*.sh權限(沒有給與權限無法直接執行):
sudo chmod +x /usr/local/bin/*.sh
之後就會自動執行我們設定好的BASH檔了
PS: 記得執行我們要的BASH的指令,直接把SUDO -S拿掉喔
例如:mount -t cifs //172.16.4.167/public /home/user/public -o vers=2.0,user=etd,pass=7130,gid="1000",uid="1000"
參考 reference:
CIFS設定的參考網址
https://forum.libreelec.tv/thread/10485-can-t-mount-smb-share-in-ubuntu-16-04/
https://blog.csdn.net/xushx_bigbear/article/details/12966625
https://blog.csdn.net/stelalala/article/details/16827611
BASH檔無需密碼執行的參考網址
https://unix.stackexchange.com/questions/430451/how-to-run-sudo-command-in-a-bash-script
https://www.tecmint.com/run-sudo-command-without-password-linux/
留言
張貼留言