歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux技術 >> Linux 第六天: (08月03日) 練習和作業

Linux 第六天: (08月03日) 練習和作業

日期:2017/3/3 10:57:18   编辑:Linux技術

Linux 第六天: (08月03日) 練習和作業

當用戶xiaoming對/testdir目錄無執行權限時, 無法做哪些操作?

無法 ls -l 無法cd

當用戶xiaoqiang對/testdir目錄無讀權限時, 無法做哪些操作?

無法查看目錄文件列表

當用戶wangcai對/testdir目錄無寫權限時, 該目錄下只讀文件file是否可以修改刪除?

無法刪除文件 無法創建文件 可以修改文件

復制/etc/fstab到var/tmp, 設置所有者wangcai讀寫權限, 屬組sysadmins組讀寫權限, 其它無權限

groupadd sysadmins

cp /etc/fstba /var/tmp/

ll /var/tmp/fstab

chown wangcai:sysadmins /var/tmp/fstab

chmod ug=rw /var/tmp/fstab

ll /var/tmp/fstab

誤刪了用戶wangcai的家目錄, 請重建並恢復該用戶家目錄及相應權限屬性

cp -r /etc/skel USERdir

chown -R USER:USER USERdir/

chmod 700 USERdir

在/data/testdir裡創建的新文件自動屬於g1組,

組g2的成員如:alice能對這些新文件有讀寫權限,

組g3的成員如:tom只能對新文件有讀權限,

其它用戶(不屬於g1,g2.g3)不能訪問這個文件夾

mkdir testdir

groupadd g1

groupadd g2

groupadd g3

charp g1 testdir 更改目錄所有者

chmod 2770 testdir

charp g1 testdir

setfacl -m g:g2:rw testdir

setfacl -m g:g3:r testdir

getfacl testdir

三種權限rwx對文件和目錄的不同意義

文件

r 查看內容

w 修改內容

x 提請啟動到進程

目錄

r 查看目錄文件列表

w 創建文件刪除文件

x ls-l查看文件列表, cd進入此目錄

umask和acl mask區別和聯系

umask值是默認的文件或目錄擁有的權限

ACL mask對每個文件或目錄能不相同

三種特殊權限的應用場景和作用

SUID

應用場景: 只能作用在二進制的可執行文件,也就是說它本身運行起來就是一個進程

效果: 沒有suid權限的二進制文件,能否執行取決於當前用戶有無對該文件執行權限,

執行之後,進程的擁有者也是當前系統用戶。 被服務suid後,當文件被運行後,進程的擁有者不是系統當前的用戶,而是文件的所屬者

作用: chmod u+s 文件

SGID

SGID權限分為兩種情況

作用在文件上,文件被賦予SGID的權限,無論當前的用戶有無執行權限,用戶運行該程序,會自動繼承該程序所屬組的權限

命令:chmod g+s 文件

作用在目錄上,作用效果完全不同於文件,該目錄內新建的文件或則目錄的所屬組會自動繼承該目錄的所屬組

命令:chmod g+s 目錄

Sticky 一個文件一旦被賦予Sticky位的話,只有文件的所有者或root才可以刪除該文件

Sticky為是作用在目錄下,當目錄設置為Sticky位的話,目錄下只能被root用戶和文件所有者刪除

命令格式:

chmod o+t DIR ..

chmod o-t DIR ..

stickyid

o+t 針對目錄,當一個目錄上有t權限時,這個目錄中的文件只能被文件擁有者刪除

chmod o+t directroy

chmod 1777 directory

sgid

g+s 針對目錄,在目錄中創建的文件都自動歸屬到目錄所在組,針對二進制文件,文件內記錄的程序在執行時和執行者的組身份沒有關系,而是以二進制文件的所有組的身份執行的

chmod g+s file|directory

chmod 2777 file|directory

suid

u+s 針對文件,文件記錄動作在執行時是以文件所有人身份執行的,與是誰發起的無關

chmod u+s file

chmod 4777 file

設置/testdir/f1的權限,使user1用戶不可以讀寫執行,g1組可以讀寫

設置/testdir/dir的權限,使新建文件自動具有acl權限 user1:rw,g1:---

備份/testdir目錄中所有文件的ACL,清除/testdir的所有ACL權限,並利用備份還原

mkdir /testdir/f1

mkdir /testdir/dir

useradd user1

groupadd g1

setfacl -m u:user1 /testdir/f1

setfacl -m g:g1 rw /testdir/f1

setfacl -m d: u:user1 rw /testdir/dir

setfacl -m d: g:g1:0 /testdir/dir

setfacl -R --set-file=acl.txt /testdir

setfacl -b /testdir

getfacl -R /testdir

在/data/testdir裡創建的新文件自動屬於g1組,

組g2成員alice對新文件有讀寫權限,

組g3成員tom只對新文件有讀權限,

其它用戶(不屬於g1,g2,g3)不能訪問這個文件夾

mkdir /data/testdir

chown g1 /data/testdir

chmod g+s /data/testdir

setfacl m g:g2 rw /data/testdir

setfacl m g:g3 r /data/testdir

setfacl m g:o /data/testdir

Copyright © Linux教程網 All Rights Reserved