日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

9.特殊权限 软连接 硬链接

發布時間:2025/3/17 编程问答 11 豆豆
生活随笔 收集整理的這篇文章主要介紹了 9.特殊权限 软连接 硬链接 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

2019獨角獸企業重金招聘Python工程師標準>>>

6月7日任務

2.18?特殊權限set_uid

2.19?特殊權限set_gid

2.20?特殊權限stick_bit

2.21?軟鏈接文件

2.22?硬連接文件

?

?

2.18?特殊權限set_uid

會發現有些文件的前三位并不是rwx而是rws,而s就代表的set_uid的權限

要更改passwd,就要更改系統文件,而這個系統文件就是/etc/shadow,而shadow是---權限無法更改,所以就用到了set_uid這個權限,他可以讓普通用戶臨時擁有root的權限,來修改passwd

所以set_uid的意思就是:他可以讓普通用戶臨時擁有該命令所有者的身份(u=所有者),有了這個的權限,就可以修改這個帶s的文件

那么給一個文件設置set_uid的前提是這個文件必須是二進制文件、可執行文件

(二進制文件比如ls命令,.txt就不是二進制文件)

su - 可切換用戶

那么如何給一個文件加上set_uid權限呢,寫法如下:

chmod u+s /user/bin/passwd

-s可取消set_uid權限

chmod u-s /user/bin/passwd

實例:

我們先用su - 切換到普通用戶下,并查看/root/,發現查看不了,因為沒有權限

我們把ls加上set_uid權限,然后在查看ls,會發現ls已經變成了rws

?

我們再回到普通用戶下,再查看/root,就會發現可以打開了

注意:目錄頁可以加set_uid,但是沒意義,我們不執行目錄

總結:

set_uid是可以讓普通用戶臨時擁有這個文件所有者身份的權限

對一個文件加set_uid的寫法是:

chmod u+s

chmod u-s 可取消set_uid權限

---------------------------------------------------------------------------------------------------------------------------------------

?

2.19?特殊權限set_gid:

?

set_gid是作用在所屬組者個權限位上的

set _gid是可以讓這個文件臨時擁有所屬組的身份(g=所屬組)

寫法為 chmod g+s

set_gid加在文件上的時候是跟set_uid是一樣的,但是他是可以加在目錄上的

?

實例:

我們新建一個叫111的目錄,給他增加set_gidde quanxian ,更改他的所屬組,我們發現在里面新建的子目錄和子文件就都是wangxin了

然后我們在取消掉set_gid,再給他增加子文件和子目錄,就會發現這時候就都是root了

總結:

作用在文件上時用set_uid類似,可以讓執行這個文件的普通用戶臨時擁有這個所屬組的權限

作用在目錄上時,當你創建子目錄或者子文件,子目錄和子文件的所屬組和該目錄的所屬組保持一致

寫法也是 chmod g+a

取消為 chmod g-a

---------------------------------------------------------------------------------------------------------------------------------------

?

2.20?特殊權限stick_bit:

stick_bit防止別人刪除自己的文件(root用戶除外)

stick_bit通常用在/tmp/下

在一個用戶/tmp/建了一個文件,在另一個用戶/tmp/下是可以看到的,但是不能刪

---------------------------------------------------------------------------------------------------------------------------------------

?

2.21?軟鏈接文件:

?

軟連接相當于Windows的快捷方式,把一個文件的路徑放到另一個目錄下,就可以執行這個目錄的名字,比較節省空間

如圖:

ls就是在bin下的,所以我們執行哪個都可以

那么給一個目錄做軟連接的寫法是:

ln -s /root/123/12/1.txt /tmp/456/45/6.txt

源文件路徑 目的地文件路徑

軟連接不僅可以做文件也可以做目錄,但是最好使用絕對路徑

實例:

假如有一個叫aming的服務一直在往/boot下寫日志(.log),而/boot已經快滿了,再寫就滿了,我們可以這樣做

cp /boot/aming.log /aming.log 先把這個服務的日志復制到根下

rm /boot/aming.log 再把原有這個服務的日志刪掉,讓他往根下面寫,那現在這個服務的原路徑就在跟下了

ln -s /aming.log /boot/aming.log 再把現在這個的源文件路徑軟連接給/boot下就好了

?

---------------------------------------------------------------------------------------------------------------------------------------

?

2.22?硬連接文件:

寫法為ln (源文件絕對路徑) (目的地絕對路徑)

?

不支持對目錄做硬鏈接,硬鏈接只能對文件做硬鏈接

不能跨分區做硬鏈接

硬鏈接可以刪除,因為還有其他iNode使用了這個硬鏈接,

比如創建了一個文件,他跟一個文件有一樣的iNode號,那這兩個文件相互為硬鏈接

硬鏈接相當于是一個文件多了一張皮,我可以刪掉其中一個,或者哪個都無所謂,真正儲存該信息的是inode

相當于備份

?

?

?

轉載于:https://my.oschina.net/u/3866149/blog/1826378

總結

以上是生活随笔為你收集整理的9.特殊权限 软连接 硬链接的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。