因為root使用者的許可權太大,容易對系統造成強大破壞,安全風險極高,所以通常情況下生產環境的伺服器對外都是禁止root使用者直接登入的,通常都是使用普通使用者來管理系統,為了讓普通使用者擁有root許可權又能保證伺服器的安全,就需要用到su與sudo命令。
2、sudo:提取部分管理員許可權,不用切換到root賬戶下。
在linux中shell可以分兩類:
shell的使用有兩種:
bash配置檔案(主要儲存使用者的工作環境)
全域性配置檔案:
個人配置檔案:
profile類檔案:設定環境變數,登入前執行的指令碼和命令。
bashrc類檔案:設定本地變數,定義命令別名。
注:如果全域性配置和個人配置衝突,以個人配置為準。
配置檔案載入順序
/etc/profile -> /etc/profile.d/*.sh -> ~/.bash_profile -> ~/.bashrc -> /etc/bashrc
~/.bashrc -> /etc/bashrc -> /etc/profile.d/*.sh
# 非登入式shell:只切換使用者身份
su 使用者名稱
# 登入式shell:身份與環境都切換
su - 使用者名稱
# -c選項切換身份執行命令
su - 使用者名稱 -c 「命令」
# root切換到普通使用者不需要,反之需要。
sudo命令不需要知道root使用者密碼,並且能僅劃分一部分許可權給普通使用者,相比於su更安全。sudo可以切換
sudo配置
/etc/sudoers配置方式
# 基本格式
user/group all=(all) all
第乙個all:
第二個all:
第三個all:
sudo執行流程
sudo常用選項
-l:登入使用者下,執行命令顯示當前使用者有哪些許可權。
-k:刪除/var/db/sudo下面對應的時間戳的資訊,下次執行sudo需要輸入當前使用者的密碼,系統預設是五分鐘。
-u:指定使用者,可以指定/sbin/nologin使用者,不指定則為root。
-b:將命令放入後台執行。
[chirou@duorou ~ ]$ tail /etc/passwd
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
# 指定/sbin/nologin使用者
[chirou@duorou ~ ]$ sudo -u gdm touch /tmp/gdm
[sudo] chirou 的密碼:
[chirou@duorou ~ ]$ ll /tmp/gdm
-rw-r--r--. 1 gdm gdm 0 10月 31 20:55 /tmp/gdm
切換使用者su 使用者提權sudo命令詳解
su切換使用者 su 使用普通使用者登入,然後執行su命令切換到root使用者 su username 非登入式shell 下文會講 su username 登入式shell passwd 兩者區別就是載入的配置檔案不一樣如下 使用者的工作環境相關工作 個人配置檔案 root bash profil...
Linux使用者管理及sudo提權
目錄 一 使用者及組管理 1.管理使用者帳號 1.1 新增使用者 useradd 1.2 檢查使用者屬性 id 1.3 修改使用者屬性 usermod 1.3 設定登陸密碼 passwd 1.4 設定帳號有效期 chage 1.5 鎖定使用者帳號 passwd 1.6 刪除使用者 userdel 2...
su與su 切換使用者
本文 linux為安全計,把普通使用者設定為預設的賬戶 這一點跟windows不一樣,windows的預設使用者是管理員。由於linux的預設賬戶是普通使用者,而更改系統檔案或者執行某些命令,必需要root 即linux中的管理員 身份才能進行,這就需要從當前使用者切換到root使用者。linux中...