Linux檔案及許可權
Linux檔案及許可權
1. 檢視檔案許可權
(1).ls -l 命令 (ll命令)
顯示詳細資訊
例:
[[email protected] Desktop]# ll
total 178752
-rwxr-xr-x. 1 root root 2092 Nov 20 13:05 1
drwx------. 4 root root 4096 Jan 29 2016 1.22xiancheng2
drwx------. 5 root root 54 Nov 24 2011 16計算機組成原理實驗講稿
-rw-r--r--. 1 root root 0 Dec 21 22:14 1.c
註釋:
上述“ls -l”的結果一共有 9 列,分為 7 個部分.下面從左向右對這 7 部分資訊進行解釋,
我們以 file1 檔案為例:
(1)"-rw-r—r—.":檔案許可權資訊,有 10 個字元(不要忽略最後一個字元.)。
第一列的資訊,它主要描述了檔案的許可權資訊,可以看到一共有 11個字元
第一個字母表示檔案型別
- 普通檔案
l link連結檔案,指向另一個檔案,類似快捷方式
d direct 目錄檔案
b block塊檔案 硬碟 二進位制檔案
c 字元裝置檔案
s socket套接字檔案
p 命名管道檔案
共有3組rwx:
u所屬使用者 g所屬組 o不同組的其他使用者
r(4) 讀 w (2)寫 x(1)可執行
rwx =4+2+1= 7
(2)"1":檔案的連線數(在軟連結和硬連結中會進行講解)。
(3)"root":檔案所屬使用者。
(4)"root":檔案所屬的組。
(5)"54":檔案容量(預設單位為 bytes)
(6)"Nov 20 13:05":這個檔案的建立日期或者是最近一次的修改日期。
(7)"f1.c":檔名稱。
2..許可權及修改許可權命令
在修改檔案許可權方面 linux 為我們提供了以下 3 個命令
chown 改變檔案的擁有者
chgrp 改變檔案所屬的組
chmod 改變檔案的許可權,SUID、SGID
(1)。修改檔案的擁有者
例:chown haha file
將file的所屬改使用者為haha
chown root.haha file
" . "前表示檔案所屬使用者,後表示檔案所屬組,也可以用“ : ”代替
(2)。修改檔案所屬組
例: chgrp haha file
(3)。改變檔案許可權
格式:chmod u=rwx,g=rw,o=r file 設定
chmod +x file 加入
chmod g-r file 除去
chmod 666 file
3.三種特殊許可權的管理:SUID、SGID、SBIT
SUID(Set UID)
當 s 這個標誌出現在檔案擁有者 x 許可權上時,此時就被稱為 Set UID,簡稱為 SUID 的特殊許可權。 那麼 SUID 的許可權對於一個檔案有這樣的限制和功能:
(1)SUID 許可權僅對二進位制程式(binary program)有效;
(2)執行者對於該程式需要具有 x 的可執行許可權;
(3)本許可權僅在執行該程式在的過程中有效 (run-time);
(4)執行者將具有該程式擁有者 (owner) 的許可權。
,注意:非常關鍵的是,SUID 所針對的只能是二進位制檔案,而不是可執行檔案,例如 shell
指令碼就不可以被賦予 SUID 的許可權。
,SGID
SGID 可以針對檔案或者目錄進行設定。
(1) 如果 SGID 針對的是檔案的話有以下限定:
SGID 對二進位制程式有用;程式執行者對於該程式來說,需具備 x 的許可權;
執行者在執行的過程中將會獲得該程式群組的支援
(2)如果 SGID 使用在目錄上,它將具有以下的功能:
使用者對於此目錄具有 r 和 x 的許可權時,該使用者能夠進入此目錄。
使用者在此目弽下癿有效群組(effective group)將會變成該目弽癿群組;
若使用者在此目錄下具有 w 的許可權(可以新建檔案),則使用者所建立的新檔案的
所屬組與此目錄的組群相同。
Sticky Bit
這個許可權只針對目錄有效,對於檔案是沒有效果的,簡稱為 SBIT。SBIT 對於目錄的作用是:
(1) 當用戶對於此目錄具有 r 與 x 的許可權時,該使用者能夠進入此目錄。
(2) 當用戶在該目錄下建立檔案時,只有自己和 root 能夠進行刪除,其他使用者不能夠
進行刪除。
SUID、SGID 和 SBIT 許可權的設定:
(1) 使用符號進行設定:
SUID ====>chmod u+s 二進位制檔案
SGID ====>chmod g+s 目錄或者二進位制檔案
SBIT ====>chmod o+t 目錄
(2) 使用數字進行設定:
4 為 SUID
2 為 SGID
1 為 SBIT
可以使用 chmod 進行賦值,以前我們檔案許可權的修改是三位數字(例如:777),如果要新增上 SUID 的許可權,則為四位數字:4777,新增 SGID 和 SBIT 的方法類似。
4.設定檔案與目錄的預設許可權
在 linux 作業系統中檔案的預設許可權由 umask 值決定,檔案和目錄的預設許可權是有所區別的:
(1).檔案的 x 許可權預設情況下是被取消的,也就是說檔案預設的滿許可權是 666。主要考慮
以下兩個原因:
1)一般情況下檔案只起記錄的作用,所以能夠進行讀寫即可。
2)取消 x 許可權也是出於安全的考慮。畢竟直建立的檔案就可以執行指令碼是非常危險的隱患。
(2).目錄的滿許可權是包含 x 的,也就是 777。
(3).檔案和目錄的初始許可權就是由其滿許可權減去 umask 值決定的。在檔案/etc/profile 檔案中我們對 umask 值進行了設定:
只有當用戶的 id 大於 199,並且使用者名稱稱和其組名稱相等的時候,它的 umask 值為002,使用 666 和 777 分別減去 002 會得到結果
5.軟連結與硬連結
(1)。hard Link(硬連結,或者稱作實體連結)
在瞭解硬連結之前我們需要清楚以下幾個知識:
1) 每個檔案都會佔用一個 inode ,檔案內容由 inode 的記錄來指向;
2) 想要讀取該檔案的內容,必須通過目錄所記錄的檔名來找到正確的 inode 號進行讀取。
接下來我們舉例建立一個檔案的硬連結:
我們設定了/mnt/crontab 為/etc/crontab 的硬連結檔案,通過列出詳細資訊可以發現二者的inode 號是相同的,而且連結數目變為了 2。通過 1 和 2 的目錄的 inode 號找到指定的塊(block),在這兩個塊中有不同的文件名,但是這兩個文件名都可以指定 real 這個 inode 號去找到最終讀取的資料。
使用硬連結時,磁碟空間和 inode 數量都不會發生變化。硬連結只是在所指定的目錄的block 多寫入一個關聯資料,既不會增加 inode 數也不會耗用 block 數。
硬鏈 接的使用有以下限制:
1) 不能跨越檔案系統;
2) 不能對目錄進行硬連結;
解釋:
跨越檔案系統會造成連結上的錯亂,而如果使用 hard link 連結到目錄時, 連結的資料需要連同被連結目錄底下的所有資料都要建立連結,舉例來說,如果你要將/etc 使用硬連結建立一個 /etc_hd 的目錄時,那在 /etc_hd 底下的所有檔案同時都與/etc 底下的檔案要建立 hard link ,而不僅是兩個目錄名之間建立硬連結而已。
例:
[[email protected] mnt]# ll -l /etc/crontab
-rw-r--r--. 1 root root 451 Dec 28 2013 /etc/crontab
[[email protected] mnt]# ln /etc/crontab ./crontab
[[email protected] mnt]# ll -i /etc/crontab
135288839 -rw-r--r--. 2 root root 451 Dec 28 2013 /etc/crontab
[[email protected] mnt]# ll -i ./crontab
135288839 -rw-r--r--. 2 root root 451 Dec 28 2013 ./crontab
[[email protected] mnt]#
(2)。 soft Link(軟連結,又稱作符號連結)
通過軟連結建立的檔案是一個獨立的檔案,它相當於是一個“指標”。這個檔案會讓資料
的讀取指向它 link 的檔案。因為只是一種指向動作,如果軟連結的原始檔被修改,它進行讀
取也會發生改變,如果原始檔被刪除,則連結檔案無法進行讀取了。
例:
[[email protected] c]# ln -s fork.c ./fork.c.bak
[[email protected] c]# ll -i fork.c
3190163 -rw-r--r--. 1 root root 393 Dec 10 14:55 fork.c
[[email protected] c]# ll -i fork.c.bak
137866169 lrwxrwxrwx. 1 root root 6 Jan 8 16:00 fork.c.bak -> fork.c
相關推薦
Linux檔案及許可權
Linux檔案及許可權 1. 檢視檔案許可權 (1).ls -l 命令 (ll命令) 顯示詳細資訊 例: [[email protected] Desktop]# ll total 178752
Linux--檔案/目錄 許可權及修改
首先所有許可權對於三類使用者分別設定: User(所有者) / Group(組群) / Others(其他)。 許可權也是有三種:Read / Write / eXecute,這三種許可權對於文件和目錄有不同的意義。 1. 對於文件: Read:可以檢視文件的內容 Wri
linux 檔案及資料夾操作總結
文章目錄 檔案基本操作 檢視 複製刪除移動 建立 其他 許可權(包括資料夾) 檢視許可權 許可權含義 修改許可權 修改許可權(數字)
java程式設計師菜鳥進階(十四)linux基礎入門(二)linux檔案及目錄命令管理
大家都知道,熟悉命令操作的開發人員,Linux作業系統命令操作效率要高於圖形介面的操作,所以瞭解和學習linux基本命令操作是學習linux作業系統的首要任務,本文主要介紹以下四個知識點: 1. She
linux -- 檔案特殊許可權和程序
<0>.建立目錄和檔案的預設許可權[umask] (1)umask ---> 檢視系統目錄預設預留許可權位;檔案預設預留許可權位 ---> 目錄許可權減去<111> (2)umask 007 ---> 臨時修改系統目錄預設預留許可權位 為 00
Linux指令及許可權(部分)
一、常見指令 1.ls:列出目錄下的所有檔案 2.pwd:顯示使用者當前所在目錄 3.cd:進入指定目錄 cd ..:返回上級目錄 cd -:返回最近訪問目錄 4.touch:更改文件或目錄的日期時間,或建一個不存在的檔案
Linux檔案系統許可權詳解
Linux許可權說明: 444 r--r--r-- 600 rw------- 644 rw-r--r-- 666 rw-rw-rw- 700 rwx------ 744 rwxr--r-- 755 rwxr-xr-x 777 rwxrwxrwx
linux檔案及目錄操作
1.建立檔案 touch 檔名 vim 檔名 2.複製檔案 cp 檔名 新路徑名稱 3.移動檔案也可以修改名稱 mv 檔名 新路徑名稱 4.建立資料夾 mkdir 資料夾名稱 5.複製檔案目錄 cp -r 資料夾名稱 新路徑名稱 -r
linux 檔案訪問許可權chmod
常用下面這條命令: chmod 777 檔案或目錄 示例:chmod 777 /etc/squid 執行命令後,squid資料夾(目錄)的許可權就被修改為777(可讀可寫可執行)。 如果是Ubuntu系統,可能需要加上sudo來執行: sudo chmod
Linux檔案操作許可權說明和設定
所謂的檔案許可權,是指對檔案的訪問許可權,包括對檔案的讀、寫、刪除、執行。Linux 是一個多使用者作業系統,它允許多個使用者同時登入和工作。因此 Linux 將一個檔案或目錄與一個使用者和組聯絡起來。 我們設定許可權時會有777、666等數字出現,下面看下具
linux檔案 特殊許可權的使用
1.說明 i屬性不能修改 a只能追加在6以後 [[email protected] ~]# chattr +i a.txt [[email protected] ~]# chattr +a a.txt [[email protected] ~]# lsattr-------
Linux檔案的許可權詳解
檔案許可權 1. ls -l列印該目錄下的檔案 #輸出入下:-rw-rw-r--. 1 oldboy oldboy 134 10月 14 01:57 text.txt #解釋:-rw-rw-r-- *10個字元來確定不同使用者對檔案能做什麼 *第1個字元-:-普通檔案,d
Linux檔案目錄許可權、隱藏屬性、特殊許可權
一、 Linux檔案及目錄許可權概念 1.1 檢視目錄或者檔案的許可權 “ls -al”命令可以檢視 1.2 目錄及檔案許可權分析 從上面的圖中可以看到,目錄或者檔案的屬性欄位為: - - - - - - - - - - 從左至
Linux檔案特殊許可權SUID,SGID,SBIT
SUID:Set UID (s) 當s這個標誌出現在檔案的擁有者(owner)的x許可權上時,此時稱為Set UID,簡稱為SUID的特殊許可權。例如:/usr/bin/password [[email protected] ~]# ls -l /usr/bin
Linux使用者及許可權管理--總結
1、Linux作業系統使用者及使用者組 Linux作業系統是多工(Multi-tasks)多使用者(Multi-users)分時作業系統,Linux作業系統的使用者就是讓我們登入到Linux的許可權;每當我們使用使用者名稱登入作業系統時,Linux都會對該使用者進行認證、授權審計等操作。作業系統為了識別每個
LINUX檔案及目錄管理命令基礎
Linux命令列組成結構 Linux命令結構 在Linux中一切皆檔案,一切皆命令! 命令提示符: [[email protected] ~]# [[email protected] ~]$ L
LINUX檔案及目錄管理命令基礎(2)
Linux檔案型別 檔案作為Linux作業系統中最常見的物件,在系統中被分為了多種型別 如下: - 普通檔案 d 目錄 l 連結 b 塊裝置 c 字元裝置 p 管道裝置 s 套接字檔案 Linux目錄結構 絕對路徑及相對路徑
Linux檔案列表許可權
轉載自:http://blog.csdn.net/jenminzhang/article/details/9816853 1.使用 ls -l 命令 執行結果如下(/var/log) : drwxr-x--- 2 root adm
Linux使用者及許可權管理
一、使用者管理 1、建立使用者 //建立monitor使用者,使用者id為501,所屬組為monitor,附加群組為admin,起始目錄為/monitor useradd -u 501 -g monitor -G admin -d /monitor
Linux檔案特殊許可權——SetUID、SetGID、Sticky BIT
對於 SetUID、SetGID、Sticky BIT 這三個檔案特殊許可權,分別介紹如下: 1. SetUID 許可權 只有可以執行的二進位制程式才能設定SetUID許可權,並且命令執行者要對該程式