Linux系統基礎-複習

1.一切皆文件;

2.虛擬終端(terminal):Ctrl+Alt+F1-F6 一共7個

3.su命令(switch user)
su命令選項
-, -l, --login   登錄並改變到所切換的用戶環境;

-c, --commmand=COMMAND  執行一個命令,然後退出所切換到的用戶環境;

[qq@nginx ~]$ su - root
Password:
[root@nginx ~]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[qq@nginx ~]$ su - root -c ls
Password:
anaconda-ks.cfg  install.log  install.log.syslog  t.sh
uid=504(qq) gid=504(qq) groups=504(qq) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c102
[qq@nginx ~]$ su - root -c 'ls /usr'
Password:
bin  etc  games  include  lib  libexec    local  lost+found  sbin  share    src  tmp
[qq@nginx ~]$ id
uid=504(qq) gid=504(qq) groups=504(qq) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c102


4.sudo
sudo比su安全,不需要知道root的密碼,sudo使用當前用戶密碼。
選項:

-b 在後臺執行指令。

-h 顯示幫助。

-k 結束密碼的有效期限,也就是下次再執行sudo時便需要輸入密碼。

-l 列出目前用戶可執行與無法執行的指令。

-s<shell>  執行指定的shell。

-u<user> 以指定的用戶作爲新的身份。若不加上此參數,則預設以root作爲新的身份。

-v 延長密碼有效期限5分鐘。

-V 顯示版本信息

sudo su - 的執行過程
先執行sudo 因沒有指定帳號,所以以root作爲新的身份來運行,然後執行su -,因新的執行身份爲root,所以不需要輸入root的密碼(root 執行su命令不需要輸入密碼)。


對比
[qq@nginx ~]$sudo   如果不帶用戶,則表示以root作爲新的身份來運行

[qq@nginx ~]$sudo -u qq 表示以qq用戶身份來運行

sudo -s  和 sudo su - 的不同點
sudo -s  和 sudo su - 都是切換到root的,但他們的所執行的shell是不一樣的。
sudo -s
將qq用戶的shell 改爲/bin/tcsh

[qq@nginx ~]$ echo $SHELL
/bin/tcsh
[qq@nginx ~]$ sudo -s
[sudo] password for qq:
[root@nginx qq]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@nginx qq]# echo $SHELL
/bin/tcsh
sudo su -
[qq@nginx ~]$ sudo su -
[root@nginx ~]# id
uid=0(root) gid=0(root) groups=0(root) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[root@nginx ~]# echo $SHELL
/bin/bash





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章