touch /etc/nologin
echo system is maintanining >> /etc/nologin
可以控制非管理員root之外的所有普通用戶不能登陸
7版本里面
cd /run/
touch /run/nologin
效果一樣讓普通用戶不能登陸
ehho weihu > /run/nologin
useradd -ou0 root2
通過強制該成UID=0 生成管理員用戶
cp -r /etc/skel/. /home/zczx
cp -r /etc/skl/.[^.]* /home/zczx
補齊家目錄的文件
組
groupadd
-g 指明GID號
-r 創建系統組
centos 6:ID<500
centos 7:ID<1000
groupmod
-n 新名字
-g 新的GID
groupdel
刪除輔助組,用戶的主組刪除不了。
gpasswd
-a user:將user添加至指定組
-d user: 從指定組中移除用戶user
-A user1,user2,…..:設置有管理權限的用戶列表
-M 指定成員作用跟-A差不多
-r:刪除密碼
-R:限制用戶登入組,只有組成員才能可以用newgrp加入
newgrp 命令:臨時切換基本組
如果用戶不屬于此組,則需要密碼
newgrp + 組名
' ' 直接當字符串輸出
" " 變量能識別
` ` 反向引用,變量輸出
具體輸出要看使用
權限
r read 讀
w write 寫
x excute 執行
文件 -rw-r–r–
rw- r– r–
用戶 組 other
chmod
change mode 修改權限
chmod who opt per file…
who:u,g,o,a
pot:+,-,=
per:
chmod u=rwx f1
chmod a=rwx f1 所有人a
文件的
有r權限的,能夠讀出文本,但是不能修改文本
有w權限的,可以將文件修改寫空,有一定危險性,但沒有權限刪除文件
有x權限的,針對可執行的二進制程序或腳本
X:不會增加x,(前提本身無x權限)
目錄的
r:可以查看目錄內的文件列表,但不能訪問文件,不能cd,也不能查看文件的元數據
w:可以創建或刪除文件,要配合x權限。
x:可以進去目錄,可以訪問目錄的文件,不顯示目錄下文件,但可以直接通過文件名字訪問
X:不會增加x(前提本身無x權限)
目錄中有 w和x,寫和執行權限就可以操作目錄的內容,可以刪除目錄下的文件
chmod -R a=rwx dir1/
chmod -R a=rwX dir1/
八進制數字
rw-r—–
110100000 二進制
420400000 四進制
640 八進制
640:rw-r—–
755:rwxr-xr-x
chomd 640
chomd
u 文件屬主權限
g 同組用戶權限
o 其它用戶權限
a 所有用戶(含以上3種)
+ 增加權限
– 取消權限
= 唯一設定權限
chmod –reference /etc/shadow dir1 參考文件dir1的權限設置
如何修復用戶根目錄被刪去
rm -rf wangcai
cp -r /etc/skel wangcai
chown -R wangcai.wangcai wangcai /
chmod 700 wangcai
chown 修改文件的屬主
更改每個文件的所有者或所屬組
-R遞歸處理所有文件及子目錄
chgrp 修改文件的屬主
改變文件的組所有權
-R遞歸的改變目錄和它的內容的組所有權
umask 可以用來保留在創建文件權限
-S :以字符的形式顯示當前掩碼
-p :帶umask開頭以數字的形式顯示當前掩碼
umask + default per =file 666/dir 777
umask +數值 umask 022
可以通過加入文件 .bashrc 永久生效
umaks 本質從目錄或文件上屏蔽掉最大權限相應的位,從而得出默認權限。
umask 125
最大權限 110 110 110 666
二進制: 001 010 101 125
110 100 010 642
目錄:dir 777-umask 目錄直接減法計算
文件:file 666-umask 有奇數加1,偶數保留
umask 127
touch fff
666-127=54-1
=640
-rw-r—–
umask u=rw,g= ,o=
umask -S
直接顯示出文件權限
umask -p 輸出可被調用
非特權用戶umask 是002
root 的 umask 是 022
umask :查看
umask #:設定
文件所有者 | 文件所屬組用戶 | 其他用戶
r w x | r w x | r w x
4 2 1 | 4 2 1 | 4 2 1
特殊權限
suid s 4
sgid s 2
sticky t 1
權限數字在原來數字基礎前面加一位數字
啟動為進程之后,其進程的屬主為發起者,進程的屬組為發起者的屬主
特殊權限要在x執行權限生效的時候才生效
ll
suid
passwd
ll /usr/bin/passwd
-rwsr-xr-x
suid 用數字4表示
普通用戶執行屬主的權限
在文件修改chmod u+s 要注意安全性問題,因為大部分文件屬主都是root用戶
只針對二進制進程生效
sgid
組權限
root 組權限不大,跟root用戶有根本上區別
sgid 用數字2表示
chomd u-s,g-s /testdir
作用在二進制程序
作用在目錄上,目錄下的新建文件都屬于該目錄的同一個組,新建的目錄與子目錄同樣屬于目錄的組。
sticky
粘滯位
chomd o+t /testdir
可以建立和刪除自己的文件,但不能刪除其他用戶的文件(root)用戶除外
作用在目錄上
chattr
修改文件在Linux第二擴展文件系統上特有屬性
-R 遞歸修改目錄及其下內容的屬性
chattr +A user.txt 鎖定user.txt atime 讀取的時間
chattr -A user.txt 消除atime時間鎖定
lsattr user.txt 可以顯示文件是否帶A
lsattr 顯示文件在Linux 第二擴展文件系統上特有屬性
-R 遞歸列出目錄及一下內容的屬性
-v 顯示文件版本
-a 列出目錄中的所有文件,包括.開頭的文件屬性
chattr 避免你的文件誤操作
+ i 不能刪除,改名,更改
+ a 只能增加
lsattr 顯示特定屬性
ACL:
具有能再添加局限權限的能力,實現靈活的權限管理
Centos 7 默認創建xfs 和ext4 文件系統有ACL功能。
Centos 7 版本之前,默認手工創建的ext4文件系統無ACL功能。
手動添加:
tune2fs -o acl /dve/sdb1
mount -o acl /dve/sbd1 /mnt
ACL 生效順序:所有者,自定義用戶,自定義組,其他人。
setfacl 設定文件訪問控制列表
-m :改變文件的訪問控制列表
-M :從文件讀取訪問控制列表條目更改
-x : 根據文件中訪問控制列表移除條目
-X :從文件讀取訪問控制列表條目并刪除
-b : 刪除所有擴展訪問控制列表條目
-k : 移除默認訪問控制列表
-n : 不重新計算有效權限掩碼
-d : 應用到默認訪問控制列表的操作
-R :遞歸操作子目錄
-v : 顯示版本并退出
-d : 應用到默認訪問控制列表的操作
setfacl -m u:zczx:rwx
用戶
-m g:zczx:0
組
setfacl -x u:zczx f1
-x g:zczx fi
清除ACL權限
setfacl -b
完全清除ACL痕跡
getfacl f1
可以看到特殊權限
u:wang
u:wangcai
setfacl -X a.txt
刪除a文件中名單用戶的ACL權限
setfacl -m m::x f1 mask::–x
一但設置了ACL權限之后,修改g組的權限等于修改mask權限
setfacl -m m::rw f1
設置了mask權限
除了所有者的權限,其他用戶和組的權限都被限制成為rw或者不夠rw.
只能比小和相等。(user 和 other 不影響)
setfacl -m d:u:wangcai:rwX
getfacl 可以看到特殊權限
base ACL 不能刪除
setfacl -k dir 刪除默認ACL權限
setfacl -b file 清除所有ACL權限
getfacl f1 | getfacl –set-file=- f2
復制f1的ACL權限給f2
cp -a f1 /root/
cp -p f1
getfacl -R /tmp/dir1 > acl.txt
setfacl -R -b /tmp/dir1
setfacl -R –set-file=acl.txt /tmp/dir1
getfacl -R /tmp/dir1
mkdir test
groupadd g1
groupadd g2
groupadd g3
chgrp g1 test
chmod 2770 test
chgrp g1 test
setfacl -m g:g2:rwx test
setfacl -m g:g3:rwx test
setfacl -m d:g:g2:rwx test
setfacl -m d:g:g3:rwx test
setfacl -m d:g:g3:r test
getfacl test
gpasswd -a user g2
原創文章,作者:swzczx,如若轉載,請注明出處:http://www.www58058.com/29077
如果能有一些對應的示例,就更好了。