標籤:ges lis note samba word 尋找 顯示 net res
Debian8.1安裝配置完成並成功與window共用檔案但在系統重啟後訪問時出現如下問題
(圖)的解決方案
出現問題後手動重啟samba
sudo /etc/init.d/samba start
再次從window端訪問成功,所以一本人現在的認知決定手動寫一個指令碼開機自動啟動samba伺服器
如何添加這一個開機自動運行指令碼
1.指令碼內容及其簡單
#!/bin/bash### BEGIN INIT INFO# Provides: start_samba# Required-Start: $all# Required-Stop:# Default-Start: 2 3 4 5# Default-Stop: 0 1 6# Short-Description: Run /etc/init.d/start_samba if it exist### END INIT INFOsudo /etc/init.d/samba start
上面那一堆還不知道有什麼意義,但是沒有就會有警告不知道去掉會不會對指令碼的執行有沒有影響。
2.指令碼寫完成後增加執行許可權並複製到啟動目錄下
sudo chmod
sudo cp start_samba /etc/init.d/
3.測試回合發現問題
[email protected]:~$./start_samba [sudo] password for fa:
4.開始尋找關於sudo的配置的問題總結如下
一,sudo有以下特點:
1.sudo能夠限制指定使用者在指定主機上運行某些命令。
2.sudo可以提供日誌,忠實地記錄每個使用者使用sudo做了些什麼,並且能將日誌傳到中心主機或者Log Service器。
3.sudo為系統管理員提供設定檔,允許系統管理員集中地系統管理使用者的使用許可權和使用的主機。它預設的存放位置是/etc /sudoers。
4.sudo使用時間戳檔案來完成類似“檢票”的系統。當使用者執行sudo並且輸入密碼後,使用者獲得了一張預設存活期為5分鐘的 “入場券”(預設值可以在編譯的時候改變)。逾時以後,使用者必須重新輸入密碼。
sudo其它常用的一些常用參數:
選項 含義與作用
- sudo -h Help列出使用方法,退出。
- sudo -V Version顯示版本資訊,並退出。
- sudo -l List列出目前使用者可以執行的命令。只有在sudoers裡的使用者才能使用該選項。
- sudo -u username#uidUser以指定使用者的身份執行命令。後面的使用者是除root以外的,可以是使用者名稱,也可以是#uid。
- sudo -k Kill清除“入場卷”上的時間,下次再使用sudo時要再輸入密碼。
- sudo -K Surekill與-k類似,但是它還要撕毀“入場卷”,也就是刪除時間戳記檔案。
- sudo -b commandBackground在後台執行指定的命令。
三.配置sudo
通過編輯/etc/sudoers檔案,而且只有超級使用者才可以修改它,還須使用visudo編輯。之所以使用visudo有兩個原因,一是它能夠防止
兩個使用者同時修改它;二是它也能進行有限的語法檢查。所以,即使只有你一個超級使用者,你也最好用visudo來檢查一下文法。
其設定檔內容部分如下:
# User privilege specificationroot ALL=(ALL:ALL) ALLfa ALL=(ALL:ALL) ALL# Allow members of group sudo to execute any command%sudo ALL=(ALL:ALL) ALL# See sudoers(5) for more information on "#include" directives:#includedir /etc/sudoers.d
其中三個ALL:第一個是指網路中的主機;第二個括弧中的兩個分別是指 sudo -u命令時可以以誰的身份去執行(兩個選一個)例子中的ALL就是
可以以任何使用者身份去執行;第三個時可以執行的指令名 。其中第二個可以在sudoers 檔案中設定一個為預設
Defaults:user runas_default=user1
例如:
讓使用者user可以通過sudo執行任何root可執行檔命令
user ALL=(ALL:ALL)ALL
也可以指定user使用sudo 可執行檔命令
user localhost=/sbin/ifconfig,/bin/ls
再執行其他的不屬於上面限定的命令就得到如下輸出
Sorry,user is not allowed to execute ‘/usr/bin/’
Defaults後面如果有冒號,是對後面使用者的預設,如果沒有,則是對所有使用者的預設。就像設定檔中內建的一行: Defaultsenv_reset
現在到了本文最關鍵的時候就是讓運行
sudo /etc/init.d/samba start
時不再需要輸入密碼
user NanoPi2=NOPASSWD:/etc/init.d/samba
然後上面哪個指令碼就可以運行了。
如何開機自動運行
參考博文: http://www.jb51.net/article/48390.htm
https://www.magentonotes.com/ubuntu-config-autostart-shell-script.html
Debian8.1 安裝samba與windows共用檔案無法自起解決方案