Linux目錄的可寫意味著,Linux權限分析 - osc_h5427nyq的個人空間 - OSCHINA - 中文開源技術交流社區...

在學習Linux的權限之前,我們先來理解幾個概念:

可讀,可寫 、可執行

Linux的文件和目錄有以下三種方式:

r ?、w 、x:可讀,可寫 、可執行

r-可讀(read)

w-可寫(write)

x-可執行(execute)

所有者 、所屬組 、其他人

Linux的文件和目錄又可以有三個所有者概念:

u、g 、o: 所有者 、所屬組 、其他人

u:所有者

g:所屬組

o:其他人

好了,開始管理我們的權限了,要管理權限,首先得知道我們的權限才能去管理吧,不然從何談管理,

下面來解讀我們的權限:

我們以/目錄下為例,cd / 就進入根目錄了。先來ls一下下,要帶-l哦,或者直接 ls -l /也可以,顯示文件或目錄的詳細信息

ls -l /

6ae0d65581d82d16463f4a9fbe5ca526.png

發現沒有?前面是不是一堆天書?什么 drwxr-xr-x ?下面我們就拿第一條來開刀吧

65acc47f7899e7f60ba713b44d846a69.png

dr-xr-xr-x : 我們可以把它拆開來解讀 , d r-x ?r-x r-x

d:代表的是文件類型,在Linux中,常用的文件類型為以下三種:

d :目錄 directory

- : 二進制文件 binary

l : 軟鏈接文件 link

所以這里的d就是指名了這是一個目錄文件。

r-x:這里代表的是這個文件或目錄所有者所擁有的權限,r是可以讀,不能寫,所以用-代替,x是可以執行,說明這個文件或目錄中,

所有者是可以讀,可以執行,不能寫

r-x?:同樣的道理,第二個代表的是所屬組對這個文件的權限,也是可以讀,可以執行,不能寫

r-x :第三個就是其他人對這個文件或目錄的權限了。

所以dr-xr-xr-x翻譯起來就是這樣的:這是一個目錄文件,它的所有者可以對它讀和執行,不能寫 、所屬組可以對它讀和執行,不可以寫 ,

其他人可以讀和執行,不能寫。

來個例子:

0d06a34c66c7a0ac2f72bba28e553d18.png

這是一個目錄文件,所有者可讀可寫可執行,所屬組可讀可執行 、不能寫,其他人可讀可執行 、不能寫。

再比如:

fe7cfbe370662a9da9f0631ff5ffab99.png

-rw-r--r--:這是一個二進制文件,所有者可讀可寫 、不能執行,所屬組可讀 、不能寫 、不能執行,其他人可讀 、不可寫 、不能執行。

好了既然知道了這些權限,那么所有者是誰呢?屬于哪個組呢?

只有留心觀察就知道了,以及打印出來給我們了:

f6727124bf9044d2266799c0971489d1.png

接下來就是要管理編輯權限了:

權限管理命令:chmod命令

命令名稱:chmod

命令英文原意:change the permission mode of a file

命令所在路徑:/bin/chmod

執行權限:所有用戶

語法: chmod ?【mode】 文件或目錄 ? ? ?此處mode是啥???是數字

功能描述:改變文件或目錄權限

mode是數字怎么來的呢?

前面我們說了一個文件或者目錄分別有所有者 (u)、所屬組u(g)和其他人(o)對其的權限,

而權限又分為:(r)可讀 、(w)可寫 、(x)可執行

為了方便表示,linux用了一個很簡單的方法來區別,r用4表示,w用2表示,x用1表示,把他們對號入座:

r - 4

w - 2

x - 1

所以

45c89f9e640315c4a29d5910f74484b8.png

其中,第一個字符d表示類型是目錄,這里不考慮,接下來的三個三位數(r-xr-xr-x)就可以這么轉換啦!!!

(4+0+1)+(4+0+1)+(4+0+1)= 555

這樣意味著555能代表啥?你懂了

其實在數字和權限之間就是按這個規則來,數字轉權限和權限轉數字

數字--->權限

例如 764 :對應的就是將7分解為4 、2 、1,將6分解為4 、2 、0,將4分解為4 、0 、0,所有對應權限為rwxrw-r--

654: 6=4+2+0, 5=4+0+1, 4=4+0+0 結果為:rw-r-xr--

權限--->數字

例如 drwxrw-r--: 第一位d代表類型,不參與計算,rwx=4+2+1=7,rw-=4+2=0=6, r-- = 4+0+0=4最終結果為764

好了,,來個練習,

drwxr-xr-x : d不管 , rwx : 4+2+1 =7, r-x:4+1 =6, r-x:4+1=6, 所以最終結果為766

我們先創建個dir目錄,然后來改變這個目錄的權限

bdde0f962ddd59042e4d4846c27cfd7b.png

初始時: drwxr-x--- :是多少? 750

我想它的權限為: drwxrwxr-x ?是多少 775

好了,有數字了,開始干吧 ?chmod 775 dir

4954429899e44e38e5aa6a70b9e3fe9c.png

怎么樣,達到了效果了吧!!!是不是很方便快捷高大上。

那么再來做個實驗,我創建個文件來試試

368755d4586df38ab99f95083b956e03.png

再改變下文件的權限

992f6f648c908ec5de0b44a45a52a71b.png

一樣也達到了效果!

大家有沒有注意到,我創建目錄和文件,默認的權限是什么呢?這目錄和文件默認的權限為什么不一樣呢?

看看初始給我們默認的權限:

1fa2730e948745d1f068388947ec0aaf.png

其實linux默認的權限是通過這個命令可以查看到:

f53cf87a5c76823c7eb26d565191db9b.png

什么???0027,貌似配不出合理的權限啊,別急,第一個0是特殊權位,具體啥也不不知道,

看后面三位027,這也不對呀,對了,忘了用777去減,其實它打印出的是正確的,需要我們用777-027 = 750

把750轉成我們的權限信息,看看 : 7= 4+2+1 , 5 = 4+1 , 0就是沒了,所以權限信息是:rwxr-x---

看看新建的目錄是不 drwxr-x---,完全正確哦!!!

12cd20fd96242c8c49b22571bb9f36de.png

可是文件呢?

907a7316d7fd390e6b20f30d972985d4.png

不對了吧??為什么,原來新創建的文件都是不可執行的,也就是說x是不能有的,所以全部去掉x,其實這就是linux安全的一個體現吧

如果我想改變這個初始的權限呢?一般不建議這么做,如果非得這么做,我們可以改, 命令是umask 0025呀,隨便計算就可以了。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/538298.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/538298.shtml
英文地址,請注明出處:http://en.pswp.cn/news/538298.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【深度學習篇】--Windows 64下tensorflow-gpu安裝到應用

一、前述 一直以為自己的筆記本不支持tensflow-gpu的運行,結果每次運行模型都要好久。偶然間一個想法,想試試自己的筆記本,結果竟然神奇的發現能用GPU。于是分享一下安裝步驟. 二、具體 因為版本之間有嚴格的對應關系,所以本文就將…

idea中Error:java: Compilation failed: internal java compiler error

Error:java: Compilation failed: internal java compiler error 原因是沒有設置好 java compiler,檢查下 File-----setting---compiler----java compoler

c#輸入三個數選出最大的_C#寫一個輸入三個整數,按大到小順序輸出的小程序...

滿意答案pf481549682013.07.05采納率&#xff1a;52% 等級&#xff1a;12已幫助&#xff1a;9321人int[] arr new int[3];for (int i 0; i < arr.Length; i){Console.WriteLine("請輸入第" (i 1) "個數");arr[i] Convert.ToInt32(Console.Read…

linux查詢內核參數命令,Linux內核啟動參數詳解

1.環境:Ubuntu 16.04Linux linuxidc 4.4.0-89-generic #112-Ubuntu SMP Mon Jul 31 19:38:41 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux2.查看當前linux內核的啟動參數:cat /proc/cmdline筆者的輸出內容如下:BOOT_IMAGE/boot/vmlinuz-4.4.0-89-generic rootUUIDbef418fa-4202-4…

access注入漏洞

and exists(select from msysobjects) >0 判斷是否為access數據庫and exists(select from sysobjects) > 0 判斷是否為sql server數據庫 and exists(select from admin) 查看是否存在admin表 代表所有&#xff0c;可修改字段名order by 數值 判斷字段長度,正常則證明字…

java中的Iterator和Iterable 區別

原文&#xff1a;http://perfy315.iteye.com/blog/1459201 ---------------------------------------------------------- java.lang.Iterable java.util.Iterator 來自百度知道&#xff1a; Iterator是迭代器類&#xff0c;而Iterable是接口。 好多類都實現了Iterable接…

linux版本fedora,技術|初級:如何更新 Fedora Linux 系統

本快速教程介紹了更新 Fedora Linux 安裝的多種方法。安裝 Fedora 之后&#xff0c;我做的第一件事就是嘗試安裝一些軟件。我打開軟件中心&#xff0c;發現該軟件中心已“損壞”。 我無法從中安裝任何應用程序。我不確定我的系統出了什么問題。在團隊內部討論時&#xff0c;Abh…

設計師學習HTML/CSS之路-11

不了解前端的UI不是好美工&#xff0c;以下是慕課網HTMLCSS基礎教程學習筆記&#xff0c;不廢話&#xff0c;Start! 第12章 CSS布局模型 11-1 元素分類 在CSS中&#xff0c;html中的標簽元素大體被分為三種不同的類型&#xff1a;塊狀元素、內聯元素(又叫行內元素)和內聯塊狀元…

yum安裝docker No package docker available

一開始以為是阿里的mirror沒有這個包。后來才知道&#xff0c;是需要更新下epel第三方軟件庫 centos6.5運行命令yum install docker.io&#xff0c;發生錯誤 No package docker available yum沒有找到docker包&#xff0c;更新epel第三方軟件庫&#xff0c;運行命令&#xff1a…

pytorch 對抗樣本_【煉丹技巧】功守道:NLP中的對抗訓練 + PyTorch實現

本文分享一個“萬物皆可盤”的NLP對抗訓練實現&#xff0c;只需要四行代碼即可調用。盤他。最近&#xff0c;微軟的FreeLB-Roberta [1] 靠著對抗訓練 (Adversarial Training)在GLUE榜上超越了Facebook原生的Roberta&#xff0c;追一科技也用到了這個方法僅憑單模型 [2] 就在CoQ…

linux 開源郵件 系統,4 個開源的命令行郵件客戶端

無論你承認與否&#xff0c;email并沒有消亡。對那些對命令行至死不渝的 Linux 高級用戶而言&#xff0c;離開 shell 轉而使用傳統的桌面或網頁版郵件客戶端并不適應。歸根結底&#xff0c;命令行最善于處理文件&#xff0c;特別是文本文件&#xff0c;能使效率倍增。幸運的是&…

kafka清理數據日志

背景問題&#xff1a; 使用kafka的路上踩過不少坑&#xff0c;其中一個就是在測試環境使用kafka一陣子以后&#xff0c;發現其日志目錄變的很大&#xff0c;占了磁盤很大空間&#xff0c;定位到指定目錄下發現其中一個系統自動創建的 topic&#xff0c;__consumer_offsets-45&a…

修改docker-倉庫資源地址Error response from daemon: Get https://index.docker.io/v1/search

[rootzengmg /]# docker search centosError response from daemon: Get https://index.docker.io/v1/search?qcentos: read tcp 52.200.132.201:443: i/o timeout docker在中國已經有了倉庫&#xff1a;https://www.docker-cn.com/registry-mirror 根據上面網站提供的修改方法…

oracle19c的版本號_Windows10安裝Oracle19c數據庫詳細記錄(圖文詳解)

1. 下載資源官網下載地址&#xff1a; 點此進入直接點擊下載&#xff0c;會自動開始下載。2. 開始安裝將下載的安裝包解壓到本地&#xff0c;右鍵-以管理員身份運行setup.exe&#xff0c;開始安裝(一定要以管理員身份運行&#xff0c;不然后面會報錯)。step1&#xff1a;選擇創…

qt調用Linux腳本范例,QT下實現對Linux Shell調用的幾種方法

使用QProcess QThread#include int main(){QProcess::execute("ls");return 0;}QProcess *poc new QProcess;poc-> start( "ping 222.207.53.1> hh ");打開hh文檔 讀取里面的內容給QTextEditQProcess *proc new QProcess;proc->addArgument(&qu…

Apache發布Groovy 2.5正式版及3.0預覽版

Apache基金會最近發布了Groovy2.5&#xff0c;新功能包括&#xff1a;\\AST轉換的改進\新的宏支持\其他雜項改進\運行Groovy 2.5至少需要JDK 7&#xff0c;在JDK 9上運行可以忽略良性警告。\\盡管最近人們把關注點轉到了其他JVM語言上&#xff08;如Kotlin&#xff09;&#xf…

virtualbox 命令

原文鏈接&#xff1a;http://418684644-qq-com.iteye.com/blog/1451000 ----------------------------------------------------------------------------------------- 查看當前虛擬機 VBxoManage list vms 查看當前正在運行的虛擬機 VBoxManage list runningvms 啟動虛擬機 …

js小學生圖區_推薦12個最好的 JavaScript 圖形繪制庫

眾多周知&#xff0c;圖形和圖表要比文本更具表現力和說服力。圖表是數據圖形化的表示&#xff0c;通過形象的圖表來展示數據&#xff0c;比如條形圖&#xff0c;折線圖&#xff0c;餅圖等等。可視化圖表可以幫助開發者更容易理解復雜的數據&#xff0c;提高生產的效率和 Web 應…

linux 關閉登錄權限,linux – /var/www/html的權限[已關閉]

我有一個虛擬CentOS服務器與GoDaddy&#xff0c;我無法設置/ var / www / html的權限。用戶不能以root用戶身份登錄&#xff0c;甚至不能將自己添加到根組中&#xff0c;因此&#xff0c;我將自己寫入的角落&#xff1a;>我使用以下命令更改了其所有者(我使用httpd.conf中的…

cifar10數據集測試有多少張圖_pytorch VGG11識別cifar10數據集(訓練+預測單張輸入圖片操作)...

首先這是VGG的結構圖&#xff0c;VGG11則是紅色框里的結構&#xff0c;共分五個block&#xff0c;如紅框中的VGG11第一個block就是一個conv3-64卷積層&#xff1a;一&#xff0c;寫VGG代碼時&#xff0c;首先定義一個 vgg_block(n,in,out)方法&#xff0c;用來構建VGG中每個blo…