歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> linux sudo命令用法介紹

linux sudo命令用法介紹

日期:2017/3/3 15:56:01   编辑:關於Linux

1.sudo介紹

sudo是linux下常用的允許普通用戶使用超級用戶權限的工具,允許系統管理員讓普通用戶執行一些或者全部的root命令,如halt,reboot,su等等。這樣不僅減少了root用戶的登陸和管理時間,同樣也提高了安全性。Sudo不是對shell的一個代替,它是面向每個命令的。它的特性主要有這樣幾點:

sudo能夠限制用戶只在某台主機上運行某些命令。

sudo提供了豐富的日志,詳細地記錄了每個用戶干了什麼。它能夠將日志傳到中心主機或者日志服務器。

sudo使用時間戳文件--日志 來執行類似的“檢票”系統。當用戶調用sudo並且輸入它的密碼時,用戶獲得了一張存活期為5分鐘的票(這個值可以在編譯的時候改變)。

sudo的配置文件是sudoers文件,它允許系統管理員集中的管理用戶的使用權限和使用的主機。它所存放的位置默認是在/etc/sudoers,屬性必須為0411。

2.下面詳細解釋配置實例:

[root@ocm1 ~]# rpm -qa|grep sudo --查詢是否已經安裝SUDO,一般是安裝了的。

sudo-1.6.9p17-5.el5

[root@ocm1 ~]# visudo ---root使用visudo會默認打開/etc/sudoers文件,

root ALL=(ALL) ALL ---系統默認只有這一行

oracle ALL=(ALL) ALL ----為ORACLE用戶增加這一行,

3.配置中可能碰到的問題:

1、主機名配置錯誤導致sudo不能執行和日志紀錄。

錯誤提示:Sorry, user test is not allowed to execute '/bin/cat /etc/sudoers' as root on

localhost.localdomain.

解決:將其中的localhost改為真實主機名字或IP即可

test localhost=/sbin/cat /etc/sudoers

Defaults@localhost log_host /var/log/sudo.log

2、命令別名列表中命令錯誤導致sudo不能執行

錯誤提示:[jackyu@localhost jackyu]$ sudo cat /etc/sudoers

Sorry, user jackyu is not allowed to execute '/bin/cat /etc/sudoers' as root on

localhost.localdomain.

解決:由於在Cmnd alias裡定義的時候命令書寫有誤(Cmnd_Alias CAT = /bin/cat -n /etc/sudoers).

執行:sudo cat -n /etc/sudoers

更多精彩內容:http://www.bianceng.cn/OS/Linux/

Copyright © Linux教程網 All Rights Reserved