如何把乙個命令加入到某個使用者sudo的列表中

2021-08-26 05:59:51 字數 1690 閱讀 8364

有時候我們只需要執行一條root許可權的命令也要su到root,是不是有些不方便?這時可以用sudo代替。預設新建的使用者不在sudo組,需要編輯/etc/sudoers檔案將使用者加入,該檔案建議使用visudo命令進行編輯(其使用方法跟vim基本一致)

1,首先進行visudo的當前使用者必須是root使用者,因此需要切換到root, su - (注意有- ,這和su是不同的,在用命令"su"的時候只是切換到root,但沒有把root的環境變數傳過去,還是當前用乎的環境變數,用"su -"命令將環境變數也一起帶過去,就象和root登入一樣)

2,visudo移動游標,到一行root all=(all)all

的下一行,按i,插入模式,輸入

your_user_name all=(all)all

然後按esc,

輸入「:」

再輸入:wq!

儲存退出

這樣就把自己加入了sudo組,可以使用sudo命令了。

3,預設5分鐘後剛才輸入的sodo密碼過期,下次sudo需要重新輸入密碼,如果覺得在sudo的時候輸入密碼麻煩,把剛才的輸入換成如下內容即可:

your_user_name all=(all) nopasswd: all

前面介紹的是如何把乙個使用者新增到sudo列表中,那麼如何把乙個命令新增到sudo列表呢,我們以/usr/bin/make這個命令為例子進行說明。首先需要了解該命令是需要新增到哪個使用者組,比如使用者user_00,對應的使用者組是users,所有屬於該users使用者組的使用者都可以通過sudo命令使用/usr/bin/make,則:

1,執行visudo,找到如下的使用者組:

%users all=nopasswd:/usr/sbin/tcpdump, \

/usr/local/apache/bin/*, \

/usr/local/apache/admin/*, \

/usr/local/php/admin/*,/usr/local/nginx/admin/*,/usr/local/pws/admin/*, \

/usr/local/qza_restaurant/admin/*,/usr/local/agw_workshop/admin/*,/usr/local/squid*/admin/* , \

/usr/local/stat/admin/*,/usr/local/services/cmagent-1.0/admin/*

2,在最後新增:/usr/bin/make,如下:

%users all=nopasswd:/usr/sbin/tcpdump, \

/usr/local/apache/bin/*, \

/usr/local/apache/admin/*, \

/usr/local/php/admin/*,/usr/local/nginx/admin/*,/usr/local/pws/admin/*, \

/usr/local/qza_restaurant/admin/*,/usr/local/agw_workshop/admin/*,/usr/local/squid*/admin/* , \

/usr/local/stat/admin/*,/usr/local/services/cmagent-1.0/admin/*,/usr/bin/make

3,儲存退出

4,驗證:sudo /usr/bin/make, ok,如果想看當前使用者可以sudo操作的命令列表,可以執行如下命令:sudo -l 進行檢視。

如何把乙個專案發布到tomcat中

需求 如何能讓其他電腦訪問我這台電腦的資源。localhost 本機位址http localhost 8080 檔名 http localhost 8080 xml 檔名 使用ip位址訪問 使用localhost 8080開啟tomcat首頁,在左側找到tomcat的文件入口,點選進去後,在左側接著...

如何乙個命令停止某個埠的服務程序 Linux

我們先看看這麼做的過程,把處理方式整理一下,然後才能用程式處理 1 netstat nlp 檢視占用埠號的服務 2 找到該埠號的程序 3 找到該程序id 4 kill它 程式可以一點一點來 1 檢視占用埠號的服務 省掉了一些內容 2 可以用grep篩選一下,看看規律,找到有 3306 的一行就好 用...

oracle如何把乙個表的資料複製到另乙個表中

1.新增乙個表,通過另乙個表的結構和資料 create table xthame.tab1 as select from dsknow.combdversion 2.如果表存在 insert into tab1 select from tab2 3.同乙個表中,將a欄位的指賦給b欄位 update ...