用戶及文件權限管理
實驗內容
1.查看用戶
(1)查看用戶 $ who am i或者$ who mom likes
輸出的第一列表示打開當前偽終端的用戶的用戶名(要查看當前登錄用戶的用戶名,去掉空格直接使用 whoami 即可),第二列的 pts/0 中 pts 表示偽終端,所謂偽是相對于 /dev/tty 設備而言的,偽終端就是當你在圖形用戶界面使用 /dev/tty7 時每打開一個終端就會產生一個偽終端, pts/0 后面那個數字就表示打開的偽終端序號。
(2)who 命令其它常用參數
-a 打印能打印的全部
-d 打印死掉的進程
-m 同am i,mom likes
-q 打印當前登錄用戶數及用戶名
-u 打印當前登錄用戶登錄信息
-r 打印運行等級
- 創建用戶 (1)我們一般登錄系統時都是以普通賬戶的身份登錄的,要創建用戶需要 root 權限,這里就要用到 sudo 這個命令了。不過使用這個命令有兩個大前提,一是你要知道當前登錄用戶的密碼,二是當前用戶必須在 sudo 用戶組。shiyanlou 用戶也屬于 sudo 用戶組。 (2)su,su- 與 sudo su 可以切換到用戶 user,執行時需要輸入目標用戶的密碼,sudo 可以以特權級別運行 cmd 命令,需要當前用戶屬于 sudo 組,且需要輸入當前用戶的密碼。su - 命令也是切換用戶,同時環境變量也會跟著改變成目標用戶的環境變量。 (3)新建一個叫 lilei 的用戶: $ sudo adduser lilei 3.用戶組 在 Linux 里面每個用戶都有一個歸屬(用戶組),用戶組簡單地理解就是一組用戶的集合,它們共享一些資源和權限,同時擁有私有資源。 (1)查看自己所在的用戶組 方法一:使用 groups 命令 $ groups shiyanlou 其中冒號之前表示用戶,后面表示該用戶所屬的用戶組。這里可以看到 shiyanlou 用戶屬于 shiyanlou 用戶組,每次新建用戶如果不指定用戶組的話,默認會自動創建一個與用戶名相同的用戶組。 方法二:查看 /etc/group 文件 $ cat /etc/group | sort 這里 cat 命令用于讀取指定文件的內容并打印到終端輸出,| sort 表示將讀取的文本進行一個字典排序再輸出,然后你將看到如下一堆輸出,你可以在最下面看到 shiyanlou 的用戶組信息 etc/group 文件格式說明 /etc/group 的內容包括用戶組(Group)、用戶組口令、GID 及該用戶組所包含的用戶(User),每個用戶組一條記錄。格式如下: group_name:password:GID:user_list (3)將其它用戶加入 sudo 用戶組 默認情況下新創建的用戶是不具有 root 權限的,也不在 sudo 用戶組,可以讓其加入 sudo 用戶組從而獲取 root 權限 (4)刪除用戶 $ sudo deluser lilei --remove-home 4.查看文件權限 ls 命令來列出并顯示當前目錄下的文件 使用較長格式列出文件: $ ls -l 輸出: 文件類型和權限 鏈接數 所有者 用戶所有組 文件大小 最后修改時間 drwxr-xr-x 2 shiyanlou shiyanlou 4096 11月 13 15:27 Documents
文件名
5.變更文件所有者
假設目前是 lilei 用戶登錄,新建一個文件,命名為 “ iphone6 ”:
$ touch iphone6
$ ll iphone6 可見文件所有者是 lilei
現在,換回到 shiyanlou 用戶身份,使用以下命令變更文件所有者為 shiyanlou :
$ cd /home/lilei
$ ls iphone6
$ sudo chown shiyanlou iphone6
現在查看,發現 文件所有者成功修改為 shiyanlou
$ ll iphone6
6.修改文件權限
方式一:二進制數字表示
每個文件的三組權限(擁有者,所屬用戶組,其他用戶,記住這個順序是一定的)對應一個 " rwx ",也就是一個 “ 7 ” ,所以如果我要將文件“ iphone6 ”的權限改為只有我自己可以用那么就這樣:
為了演示,先在文件里加點內容:
$ echo "echo \"hello shiyanlou\"" > iphone6
然后修改權限:
$ chmod 700 iphone6
現在,其他用戶已經不能讀這個“ iphone6 ”文件了
方式二:加減賦值操作
$ chmod go-rw iphone6
g、o 還有 u 分別表示 group、others 和 user,+ 和 - 分別表示增加和去掉相應的權限
7.adduser 和 useradd 的區別是什么?
答:useradd 只創建用戶,創建完了用 passwd lilei 去設置新用戶的密碼。adduser 會創建用戶,創建目錄,創建密碼(提示你設置),做這一系列的操作。其實 useradd、userdel 這類操作更像是一種命令,執行完了就返回。而 adduser 更像是一種程序,需要你輸入、確定等