天天看點

搞它!!!linux賬号和權限管理一、使用者賬号群組賬号概述二、使用者賬号群組賬号管理三、查詢賬号資訊四、檢視目錄或檔案的屬性五、檢視目錄或檔案的權限六、檢視目錄或檔案的歸屬重點了解

前言:

Linux登陸需要使用者名、密碼。/etc/passwd 檔案儲存使用者名。登入Linux時,Linux 先查找 /etc/passwd 檔案中是否有這個使用者名,沒有則跳出,有則讀取使用者名的user ID 、 group ID 、使用者名對應的根目錄路徑以及所使用的 shell ,最後在 /etc/shadow 中核對該 UID 對應的 PWD 是否正确,正确則登入到該使用者的 shell。

一、使用者賬号群組賬号概述

1.linux基于使用者身份對資源通路進行控制

使用者賬号

超級使用者(root,不可被替代)

普通使用者(自己建立,取使用者名)

程式使用者(人無法登入,是給程式使用的,以使程式可以正常運轉)

匿名使用者(windows的guest,linux的nobody,普通使用者中的最低權限使用者)

組賬号(使用者權限的集合)

基本組(私有組,伴随着使用者的建立而建立,與使用者同名)

附加組(公有組,直接建立一個空組,可以添加已有使用者,給組設定相關權限,該組中的所有使用者都具備此權限)

UID和GID(标簽,辨別号)

UID(User IDentity,使用者辨別号)

GID(group IDentify,組辨別号)

二、使用者賬号群組賬号管理

1、使用者賬号檔案/etc/passwd

儲存使用者名稱、宿主目錄、登入Shell等基本資訊

檔案位置:/tec/passwd

每一行對應一個使用者的賬号記錄

搞它!!!linux賬号和權限管理一、使用者賬号群組賬号概述二、使用者賬号群組賬号管理三、查詢賬号資訊四、檢視目錄或檔案的屬性五、檢視目錄或檔案的權限六、檢視目錄或檔案的歸屬重點了解

賬号記錄用冒号分隔

使用者賬号:使用者名

密碼占位符:代表有密碼,不會起到密碼的個數和内容的屬性

使用者賬号 ID :UID

uid序号:

序号 使用者
root
1-999 程式使用者
1000-60000 普通使用者
99 nobody使用者

組賬号ID:GID,GID基本上指私有組,名稱與UID基本上是一緻

使用者說明:描述性資訊

宿主目錄:家目錄

登入shell:是否可以登入系統,/bin/bash /sbin/bash 是可以 /sbin/nologin 無法人為登入

2、使用者密碼檔案/etc/shadow

搞它!!!linux賬号和權限管理一、使用者賬号群組賬号概述二、使用者賬号群組賬号管理三、查詢賬号資訊四、檢視目錄或檔案的屬性五、檢視目錄或檔案的權限六、檢視目錄或檔案的歸屬重點了解

影子檔案,shadow,密碼記錄對應格式解釋,用冒号分開

使用者名:密碼被加密:從1970.1.1日誕生日起過了14374天:0代表密碼最短使用期限,代表随時可以修改密碼:99999代表最長密碼使用期限:7代表會提前7天提醒你修改密碼:還有失效時間,過了99999天之後,多少天後賬号會失效

bin:*,!,!!代表無法登陸

3、添加使用者賬号useradd

useradd指令用來建立新的使用者或更改使用者的資訊。
-u 指定UID

-d 指定家目錄

-e 指定失效時間,可以使用年-月-日格式

-g 指定基本組(若指定基本組,則必須先存在基本組)

-G 指定附加組 (組必須要已存在)

-M 指定不建立家目錄

-s 指定是否允許從shell 登入           

複制

3、 設定/更改使用者密碼passwd

passwd指令用于設定使用者的認證資訊,包括使用者密碼、賬戶鎖定、密碼失效等。直接運作passwd指令修改目前的使用者密碼,對其他使用者的密碼操作需要管理者權限。

-d 清除密碼

-l 指鎖定賬号密碼

-u 指解鎖賬号密碼

-S 檢視使用者目前狀态是否被鎖定

vim /etc/passwd vim編輯檢視passwd

[root@localhost ~]# vim /etc/passwd     #進入passwd檢視使用者資訊,也可以用tail檢視
[root@localhost ~]# useradd -d /opt/lisi -s /sbin/nologin lisi	
#建立lisi使用者,根目錄在/opt/lisi,-s /sbin/nologin 不可以登入
[root@localhost ~]# tail -2 /etc/passwd    # 檢視/etc/passwd賬号檔案的後兩行
gsy:x:1000:1000:gsy:/home/gsy:/bin/bash          
lisi:x:1001:1001::/opt/lisi:/sbin/nologin     #剛才新建立的使用者
[root@localhost ~]# passwd lisi    # 設定李四密碼
更改使用者 lisi 的密碼 。    # linux密碼設定時看不到
新的 密碼:
無效的密碼: 密碼是一個回文
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# su - lisi    # 加載lisi
This account is currently not available.    # 這個賬戶目前不可用           

複制

用vim在passwd中修改參數,将lisi行末尾的nologin改為bash,lisi就可以登入

lisi:x:1001:1001::/opt/lisi:/sbin/nologin    #之前李四賬号資訊末尾為nologin           

複制

lisi:x:1001:1001::/opt/lisi:/bin/bash     
#修改為/bin/bash,然後儲存(lisi不是管理者,不可以用sbin)           

複制

:wq!儲存vim編輯

[root@localhost ~]# vim /etc/passwd     
[root@localhost ~]# su - lisi     #加載lisi
上一次登入:五 11月  1 11:32:10 CST 2019pts/0 上     #登陸成功           

複制

試一試passwd -l 指令

[root@localhost ~]# passwd -S lisi   #檢視lisi賬号密碼狀态 passwd -S 
lisi PS 2019-11-01 0 99999 7 -1 (密碼已設定,使用 SHA512 算法。)     #顯示賬号密碼狀态
[root@localhost ~]# passwd  -l lisi     #鎖定lisi密碼     passwd -l
鎖定使用者 lisi 的密碼 。     #系統回報密碼已鎖定
passwd: 操作成功
[root@localhost ~]# passwd -S lisi    # 再次檢視lisi賬号密碼狀态
lisi LK 2019-11-01 0 99999 7 -1 (密碼已被鎖定。)     #密碼已被鎖定	
[root@localhost ~]# su - lisi     #加載lisi賬号
上一次登入:五 11月  1 11:36:07 CST 2019pts/0 上
su: failed to execute /sbin/bash: 沒有那個檔案或目錄 
#這裡把passwd中的lisi末尾資訊改為/bin/bash即可
[root@localhost ~]# vim /etc/passwd     
[root@localhost ~]# su - lisi     #再次加載lisi
上一次登入:五 11月  1 11:42:55 CST 2019pts/0 上   
#從最高權限root登入次級使用者不需要密碼,登入成功
[lisi@localhost ~]$ pwd    #檢視目前~的絕對路徑
/opt/lisi     #~也就是使用者的根目錄
[lisi@localhost ~]$ exit    # 登出退出
登出
[root@localhost ~]# su - gsy     #加載gsy使用者
上一次登入:三 10月 23 13:44:51 CST 2019:0 上
[gsy@localhost ~]$ su - lisi    # 同級别使用者去加載lisi
密碼:     輸入密碼
su: 鑒定故障     無法登陸           

複制

小結:

passwd -l 鎖定使用者密碼,導緻的結果是本地圖形界面登入端不能登陸,但字元界面可以登入,(僅限于高權限使用者切換到李四使用者)

/sbin/nologin 使用者無法直接登陸和被切換登入

system使用者權限最大,但是無法人為登入

passwd 後面不指定使用者名,就是修改目前密碼,即預設使用者名為目前使用者

4、修改(配置)使用者賬号的屬性usermod

usermod指令用于修改使用者賬号 。usermod可用來修改使用者賬号的各項設定,修改系統賬号檔案來反映通過指令行指定的變化。

-u:修改使用者的UID号

-d:修改使用者的家目錄

-e:修改使用者的賬戶失效時間

-s:指定使用者的登入shell

-l 更改使用者賬号的登入名稱

-L 鎖定使用者賬戶

-U 解鎖使用者賬戶           

複制

[gsy@localhost ~]$ exit   把之前的gsy使用者登出,回到root		#exit
登出
[root@localhost ~]# passwd -S lisi    檢視lisi目前密碼狀态		#passwd -S 
lisi LK 2019-11-01 0 99999 7 -1 (密碼已被鎖定。) 	
#系統回報密碼已被鎖定,之前是用passwd -l去鎖定
[root@localhost ~]# usermod -U lisi		#使用usermod -U指令去解鎖lisi密碼
[root@localhost ~]# passwd -S lisi		#檢視lisi目前密碼狀态
lisi PS 2019-11-01 0 99999 7 -1 (密碼已設定,使用 SHA512 算法。)		
#此時回報密碼是可以正常使用的
[root@localhost ~]# usermod -L lisi		#用usermod -L 去鎖定lisi密碼
[root@localhost ~]# passwd -S lisi		#此時再用passwd -S 去檢視lisi狀态
lisi LK 2019-11-01 0 99999 7 -1 (密碼已被鎖定。)		#系統回報lisi密碼已被鎖定
[root@localhost ~]# passwd -u lisi  		#用passwd -u 指令去解鎖lisi的密碼
解鎖使用者 lisi 的密碼。   		#回報成功解鎖
passwd: 操作成功           

複制

小結:usermod的密碼鎖定解鎖權限和passwd的密碼鎖定解鎖權限一樣高,可以互相使用

6、删除使用者賬号userdel

userdel指令用于删除指定的使用者及與該使用者相關的檔案,英文全稱即“user delete”。其實userdel指令實際上是修改了系統的使用者賬号檔案 /etc/passwd、/etc/shadow以及/etc/group檔案。這與Linux系統”一切操作皆檔案”的思想正好吻合。

值得注意的是,但是如果有該要删除使用者相關的程序正在運作,userdel指令通常不會删除一個使用者賬号。如果确實必須要删除,可以先終止使用者程序,然後再執行userdel指令進行删除。但是userdel指令也提供了一個面對該種情況的參數,即”-f”選項。

ls -l 詳細資訊 ls -d本目錄路徑

root@localhost ~]# useradd wangwu		#建立wangwu使用者	useradd 
[root@localhost ~]# passwd wangwu 		#建立wangwu密碼	passwd
更改使用者 wangwu 的密碼 。
新的 密碼:
無效的密碼: 密碼是一個回文		#強制執行,Enter鍵
重新輸入新的 密碼:
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# ls /home		
#檢視/home目錄下   建立使用者時沒有指定根目錄,就會自動設定到/home下
gsy  wangwu 		#顯示/home 中有兩個目錄,即兩個普通使用者的根目錄
[root@localhost ~]# id wangwu		#檢視wangwu的id,即UID和GID
uid=1002(wangwu) gid=1002(wangwu) 組=1002(wangwu)
[root@localhost ~]# id lisi			#檢視lisi的UID和GID
uid=1001(lisi) gid=1001(lisi) 組=1001(lisi)
[root@localhost ~]# useradd wangwu		
useradd:使用者“wangwu”已存在
[root@localhost ~]# userdel wangwu			#删除wangwu使用者	userdel 
[root@localhost ~]# ls /home			#檢視被删除wangwu的根目錄
gsy  wangwu			#	依舊存在
[root@localhost ~]# userdel -r gsy		#用附加選項-r
[root@localhost ~]# ls /home
wangwu				#被删除的gsy的根目錄已被删除
[root@localhost ~]#            

複制

7、使用者賬号的初始配置檔案

檔案來源

建立賬戶時,從/etc/skel/目錄複制而來你

主要的使用者初始配置檔案以隐藏檔案存在

~/.bash_profile 指定環境變量,在每次登陸shell時,就會加載其中的參數

~/.bashrc 在使用者登入時就會被加載

~/.bash_logout 指登出時會起作用

[root@localhost ~]# id wangwu		#這是wangwu使用者已被删除,id檢視其資訊
id: wangwu: no such user		#顯示沒有這個使用者
[root@localhost ~]# ls -a /home/wangwu	#但是他的根目錄還在,ls -a 檢視/home/wangwu
.  ..  .bash_logout  .bash_profile  .bashrc  .mozilla		#顯示隐藏檔案
#沒啥用了,可以直接rm -rf 删掉wangwu目錄           

複制

8 、組賬号檔案

搞它!!!linux賬号和權限管理一、使用者賬号群組賬号概述二、使用者賬号群組賬号管理三、查詢賬号資訊四、檢視目錄或檔案的屬性五、檢視目錄或檔案的權限六、檢視目錄或檔案的歸屬重點了解
與/etc/passwd類似
/etc/group:儲存組帳号基本資訊
/etc/group:儲存組帳号基本資訊
[root@localhost ~]# groupadd -g 1000 market
[root@localhost ~]# tail -1 /etc/group
market:x:1000:

-g 指定組GID 人可用的組也是從1000開始排序           

複制

9、 添加删除組成員gpasswd

搞它!!!linux賬号和權限管理一、使用者賬号群組賬号概述二、使用者賬号群組賬号管理三、查詢賬号資訊四、檢視目錄或檔案的屬性五、檢視目錄或檔案的權限六、檢視目錄或檔案的歸屬重點了解

-M 多使用者添加

–stdin 标準性輸入,免互動

[root@localhost ~]# tail -5 /etc/passwd		#檢視/etc/passwd末尾五行
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
lisi:x:1001:1001::/opt/lisi:/bin/bash			#現在和隻有一個普通使用者lisi
[root@localhost ~]# useradd zhangsan		#另外建立zhangsan使用者
[root@localhost ~]# tail -5 /etc/passwd		#檢視/etc/passwd是否更新
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
lisi:x:1001:1001::/opt/lisi:/bin/bash		#lisi賬号資訊
zhangsan:x:1002:1002::/home/zhangsan:/bin/bash		#zhangsan賬号資訊
[root@localhost ~]# echo "111111" |passwd --stdin zhangsan		#免互動設定張三賬号
密碼為111111
更改使用者 zhangsan 的密碼 。
passwd:所有的身份驗證令牌已經成功更新。
[root@localhost ~]# useradd wangwu		#再建立一個wangwu賬号
正在建立信箱檔案: 檔案已存在
[root@localhost ~]# tail -5 /etc/passwd		#檢視/etc/passwd是否更新
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
lisi:x:1001:1001::/opt/lisi:/bin/bash			#lisi賬号資訊
zhangsan:x:1002:1002::/home/zhangsan:/bin/bash		#zhangsan賬号資訊
wangwu:x:1003:1003::/home/wangwu:/bin/bash			#zhangwu賬号資訊
[root@localhost ~]# groupadd caiwu			#建立組,名字叫caiwu	groupadd
[root@localhost ~]# tail -5 /etc/group		#檢視/etc/group 組檔案
tcpdump:x:72:	
lisi:x:1001:			#lisi的基本組
zhangsan:x:1002:		#zhangsan的基本組
wangwu:x:1003:		#wangwu的基本組
caiwu:x:1004:			#建立的公有組
[root@localhost ~]# gpasswd -a zhangsan caiwu	#把一個zhangsan使用者添加到caiwu組中
正在将使用者“zhangsan”加入到“caiwu”組中
[root@localhost ~]# id zhangsan		#id 檢視zhangsanUID,GID資訊
uid=1002(zhangsan) gid=1002(zhangsan) 組=1002(zhangsan),1004(caiwu)		
#這裡顯示組内多了一個1004(caiwu)
[root@localhost ~]# tail -5 /etc/group	#相應的,也去檢視一下/etc/group組檔案的狀态
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:zhangsan		#後面多了一個使用者,就是剛才添加的zhangsan
[root@localhost ~]# gpasswd -M lisi,wangwu caiwu		#用gpasswd -M 指令添加多個
使用者(使用者之間用,隔開)到caiwu組中
[root@localhost ~]# id lisi		#檢視lisi的id資訊
uid=1001(lisi) gid=1001(lisi) 組=1001(lisi),1004(caiwu)		#多了一個caiwu組
[root@localhost ~]# id wangwu		#檢視wangwuid資訊
uid=1003(wangwu) gid=1003(wangwu) 組=1003(wangwu),1004(caiwu)		#多了一個caiwu組
[root@localhost ~]# id zhangsan	#此時去檢視zhangsan,zhangsan之前就已經被添加到caiwu組中
uid=1002(zhangsan) gid=1002(zhangsan) 組=1002(zhangsan)			#發現消失了
[root@localhost ~]# tail -5 /etc/group		#此時檢視/etc/group組檔案資訊,後五行
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:lisi,wangwu	
#caiwu組後面的成員變成用M指令添加的lisi和wangwu,之前添加的lisi不見了
[root@localhost ~]# gpasswd -M lisi caiwu		#用gpasswd -M去添加lisi到caiwu組
[root@localhost ~]# tail -5 /etc/group		#檢視/etc/group組檔案資訊
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:lisi		#此時之前的zhangsan,wangwu不見,隻有最新添加的lisi
[root@localhost ~]# gpasswd -a wangwu caiwu		
#用gpasswd -a 一個一個添加使用者到caiwu組,此時添加wangwu
正在将使用者“wangwu”加入到“caiwu”組中
[root@localhost ~]# gpasswd -a zhangsan caiwu  #用gpasswd -a 添加zhangsan到caiwu組
正在将使用者“zhangsan”加入到“caiwu”組中
[root@localhost ~]# tail -5 /etc/group		#檢視/etc/group組檔案資訊
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:lisi,wangwu,zhangsan		#沒有把之前的lisi覆寫掉
[root@localhost ~]# gpasswd -d lisi caiwu	#gpasswd -d 把lisi使用者從caiwu組中三處
正在将使用者“lisi”從“caiwu”組中删除
[root@localhost ~]# tail -5 /etc/group			#檢視組檔案資訊是否更新
tcpdump:x:72:
lisi:x:1001:
zhangsan:x:1002:
wangwu:x:1003:
caiwu:x:1004:wangwu,zhangsan		#lisi已經被删除掉           

複制

小結:

如果用M添加成員,就會對這個組進行覆寫,把之前所在使用者全部覆寫

-a 不會覆寫,相當于追加含義

删除使用者隻能一個一個删

10、删除組賬号groupdel

groupdel指令
groupdel組帳号名
■示例
[root@localhost ~ ]# groupdel market
[root@localhost ~]# grep " market" /etc/group           

複制

三、查詢賬号資訊

1、groups指令

查詢使用者所屬的組

groups 【使用者名】

2、id指令

查詢使用者身份辨別

id 【使用者名】

3、finger

查詢使用者賬戶的詳細資訊

finger 【使用者名】

4、w、who、users指令

查詢已登入到主機的使用者資訊

w who users

5、lastb

查詢曆史使用者登入記錄

lastb

[root@localhost dev]# who	#查詢已登入主機的曆史使用者登入時間
root     pts/0        2019-11-01 19:24 (192.168.139.1)
root     :0           2019-11-01 22:03 (:0)
root     pts/1        2019-11-01 22:04 (192.168.139.1)
[root@localhost dev]# w	#查詢使用者登入資訊
 00:08:51 up  3:05,  3 users,  load average: 0.00, 0.01, 0.05
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.139.1    19:24    3:49m  0.08s  0.08s -bash
root     :0       :0               22:03   ?xdm?  46.63s  0.09s /usr/libexec/gnome-sess
root     pts/1    192.168.139.1    22:04    3.00s  0.33s  0.02s w
[root@localhost dev]# users	#查詢登入使用者
root root root
[root@localhost dev]# lastb	#查詢嘗試登陸使用者資訊
gsy      :0           :0               Fri Nov  1 22:03 - 22:03  (00:00)    
gsy      :0           :0               Fri Nov  1 22:03 - 22:03  (00:00)    

btmp begins Fri Nov  1 22:03:10 2019           

複制

四、檢視目錄或檔案的屬性

1、檔案/目錄的權限和歸屬

搞它!!!linux賬号和權限管理一、使用者賬号群組賬号概述二、使用者賬号群組賬号管理三、查詢賬号資訊四、檢視目錄或檔案的屬性五、檢視目錄或檔案的權限六、檢視目錄或檔案的歸屬重點了解

檔案類型檔案下,自己也包含一個子檔案,大小,日期,類型

-rw-r--r--.	   1     root	 root		513		11月		5	2016  updatedb.conf           

複制

1.- 檔案類型(資料檔案),除了-還有d 目錄,l連結檔案,c負責輸入輸出的裝置(字元)檔案,b負責存儲的塊裝置檔案

2.rw- r-- r-- 三個一組,分别代表各個權限

rw- 屬主權限,可讀可寫,r代表讀,w代表寫,後面的x代表執行,沒有相應的權限就在相應的位置用-代替

r-- 屬組權限,代表可讀,不可寫,不可執行

r-- 其他使用者(other)權限,代表隻讀,即可讀,不可寫,不可執行

第一個root代表屬主

第二個root代表屬組

513代表容量大小,預設機關為位元組

11月 5 2016 代表建立時間

即:

首字元表示檔案類型(-資料檔案)d 目錄 l連結檔案 c 字元裝置檔案(控制輸入輸出) b塊裝置檔案(控制存儲)

權限,三個一組,分為三塊,分别是屬主,屬組,所有人

頭一塊代表屬主權限 最多的是rwx

第二塊是屬組權限 rw- 能讀能寫不能執行 r-x 能都能寫不能執行

第三塊r-- 所有人權限, other 其他 r-- 隻讀權限

1 子檔案,自己

root 屬主

root 屬組

513 大小 機關:位元組

11yue 5 2016 建立時間

這一條目整體叫做元資訊

五、檢視目錄或檔案的權限

搞它!!!linux賬号和權限管理一、使用者賬号群組賬号概述二、使用者賬号群組賬号管理三、查詢賬号資訊四、檢視目錄或檔案的屬性五、檢視目錄或檔案的權限六、檢視目錄或檔案的歸屬重點了解

資料檔案最高權限666

目錄最高權限777

預設建立755或者644或者700.600.

1 設定檔案和目錄的權限chmod

搞它!!!linux賬号和權限管理一、使用者賬号群組賬号概述二、使用者賬号群組賬号管理三、查詢賬号資訊四、檢視目錄或檔案的屬性五、檢視目錄或檔案的權限六、檢視目錄或檔案的歸屬重點了解

六、檢視目錄或檔案的歸屬

1、 設定檔案和目錄的歸屬chown

■chown指令

chown屬主檔案或目錄

chown :屬組檔案或目錄

chown屬主:屬組檔案或目錄

■常用選項

●-R:遞歸修改指定目錄下所有檔案、子目錄的歸屬

[root@localhost dev]# cd /opt	'切換到/opt'
[root@localhost opt]# ls
rh
[root@localhost opt]# touch demo01.txt	'建立一個空白檔案demo01.txt'
[root@localhost opt]# ls -l
總用量 0
-rw-r--r--. 1 root root 0 11月  2 00:13 demo01.txt	'權限是644'
drwxr-xr-x. 2 root root 6 3月  26 2015 rh	'權限是755'
[root@localhost opt]# mkdir test	'建立一個test目錄'
[root@localhost opt]# ls -l
總用量 0
-rw-r--r--. 1 root root 0 11月  2 00:13 demo01.txt
drwxr-xr-x. 2 root root 6 3月  26 2015 rh
drwxr-xr-x. 2 root root 6 11月  2 00:14 test	'權限是755'           

複制

[root@localhost opt]# vim demo01.txt	'vim建立并編輯demo01内容為this is test'
[root@localhost opt]# cat demo01.txt 	'檢視'
this is test:
[root@localhost opt]# ls -l		'詳細顯示'
總用量 8
-rw-r--r--.  1 root root    14 11月  5 19:48 demo01.txt		'權限為644'
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
[root@localhost opt]# chmod 600 demo01.txt 		'把demo01.txt權限設為600'
[root@localhost opt]# ls -l		'檢視詳細資訊'
總用量 8
-rw-------.  1 root root    14 11月  5 19:48 demo01.txt		'已修改'
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
[root@localhost opt]# su gsy		'切換到gsy普通使用者'
[gsy@localhost opt]$ id gsy		'檢視gsy所屬組'
uid=1000(gsy) gid=1000(gsy) 組=1000(gsy)
[gsy@localhost opt]$ cat demo01.txt 	'以gsy身份去檢視demo01.txt'
cat: demo01.txt: 權限不夠	'顯示權限不夠'           

複制

[gsy@localhost opt]$ mkdir test		'以gsy身份建立目錄'
mkdir: 無法建立目錄"test": 權限不夠	'權限不夠'
[gsy@localhost opt]$ su root		'切換為超管root'
密碼:
[root@localhost opt]# mkdir test		'建立test目錄'
[root@localhost opt]# ls
demo01.txt  httpd-2.4.2  rh  test
[root@localhost opt]# mv demo01.txt  test		'把demo01.txt移動到test'
[root@localhost opt]# ls
httpd-2.4.2  rh  test
[root@localhost opt]# ls -l test
總用量 4
-rw-------. 1 root root 14 11月  5 19:48 demo01.txt		'權限為600'
[root@localhost opt]# ls -l
總用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr-xr-x.  2 root root    24 11月  5 19:56 test	'test權限為755'
[root@localhost opt]# chmod 744 test/	'将test目錄權限設為744'
[root@localhost opt]# ls -l
總用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr--r--.  2 root root    24 11月  5 19:56 test	'修改成功'
[root@localhost opt]# su gsy	'切換到gsy普通使用者'           

複制

[gsy@localhost opt]$ cd /opt/test/	'切換到/opt/test目錄'
bash: cd: /opt/test/: 權限不夠		'回報權限不夠'
[gsy@localhost opt]$ ls -l /opt/test/	'檢視/opt/test/下資訊'
ls: 無法通路/opt/test/demo01.txt: 權限不夠
總用量 0
-????????? ? ? ? ?            ? demo01.txt	'雖然權限不夠,但是還是可以看到名字'
[gsy@localhost opt]$ cat /opt/test/demo01.txt 	'可以tab補全'
cat: /opt/test/demo01.txt: 權限不夠	'看不到deomo01.txt内容'
[gsy@localhost opt]$ su root	'切換到root'
密碼:
[root@localhost opt]# touch /opt/test/demo02.txt	'重新建立一個測試檔案demo02.txt'
[root@localhost opt]# ls /opt/test/
demo01.txt  demo02.txt
[root@localhost opt]# su gsy	'切換到gsy普通使用者'
[gsy@localhost opt]$ ls /opt/test/
ls: 無法通路/opt/test/demo01.txt: 權限不夠
ls: 無法通路/opt/test/demo02.txt: 權限不夠	'權限依舊不夠,但是仍然可以檢視到檔案名'
demo01.txt  demo02.txt           

複制

[gsy@localhost opt]$ su root	'切換到root'
密碼:
[root@localhost opt]# chown gsy test	'将test目錄的主屬改為gsy'
[root@localhost opt]# ls -l
總用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr--r--.  2 gsy  root    42 11月  5 20:02 test	'已修改'
[root@localhost opt]# chown :gsy test	'将組屬也改為gsy'
[root@localhost opt]# ls
httpd-2.4.2  rh  test
[root@localhost opt]# ls -l
總用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr--r--.  2 gsy  gsy     42 11月  5 20:02 test	'奏效'
[root@localhost test]# ls
demo01.txt  demo02.txt
[root@localhost test]# chown gsy dem*	'給測試檔案demo也修改主組屬'
[root@localhost test]# ls
demo01.txt  demo02.txt
[root@localhost test]# ls -l
總用量 4
-rw-------. 1 gsy root 14 11月  5 19:48 demo01.txt
-rw-r--r--. 1 gsy root  0 11月  5 20:02 demo02.txt
[root@localhost test]# chown :gsy dem*
[root@localhost test]# ls -l
總用量 4
-rw-------. 1 gsy gsy 14 11月  5 19:48 demo01.txt
-rw-r--r--. 1 gsy gsy  0 11月  5 20:02 demo02.txt	'修改完畢'
[root@localhost test]# cd .
[root@localhost test]# ls -l
總用量 4
-rw-------. 1 gsy gsy 14 11月  5 19:48 demo01.txt
-rw-r--r--. 1 gsy gsy  0 11月  5 20:02 demo02.txt	'驗證'
[root@localhost test]# cd ..
[root@localhost opt]# ls -l
總用量 4
drwxr-xr-x. 12  501 games 4096 11月  5 13:27 httpd-2.4.2
drwxr-xr-x.  2 root root     6 3月  26 2015 rh
drwxr--r--.  2 gsy  gsy     42 11月  5 20:02 test	'驗證'
[root@localhost opt]# su gsy	'切換到gsy'
[gsy@localhost opt]$ cat /opt/test/demo01.txt
this is test:	'可以檢視内容'           

複制

改屬主屬組用.分隔也可以

2 、權限掩碼umask

■umask作用

●控制建立的檔案或者目錄的權限

●預設權限去除umask的權限就為建立的檔案或者目錄的權限

■umask設定: umask 022

■umask檢視: umask

●-R:遞歸修改指定目錄下所有檔案、子目錄的歸屬

重點了解

■使用者賬号管理(useradd. passwd. usermod. userdel)

■組賬号管理(groupadd、 gpasswd、groupdel)

■組賬号管理(groupadd、 gpasswd、groupdel)

■查詢賬号相關資訊的指令(groups、 id、 finger. w)

■設定目錄與檔案權限(chmod)

■設定目錄與檔案歸屬(chown)