Linux基礎指令(2)
shell 命令
shell直面翻譯為外殼,而Linux為核心,因此從字面意義上我們可以將shell理解為保護核心的一個裝置。
從技術層面上來說,shell是命令列直譯器,核心並不能直接理解我們輸入的命令,shell的功能是將使用者的命令翻譯給核心處理,同時將核心的處理結果反饋給使用者。
同時我們意識到shell為了防止自己“中毒”死亡,會對每一個命令開啟一個子執行緒,假如子執行緒掛了/當機,避免自己死亡。
Linux許可權相關
Linux作業系統下有兩種使用者,超級使用者root(有最高許可權)和普通使用者。
su -username #切換使用者名稱
1
Linux許可權相關
檔案訪問者的分類(人)
1、檔案和檔案目錄的所有者 u
2、檔案和檔案目錄的所有者所在組的使用者 g
3、其他使用者o Others
檔案型別
d:資料夾
-:普通檔案
l:軟連結(類似Windows的快捷方式)
b:塊裝置檔案(例如硬碟、光碟機等)
p:管道檔案
c:字元裝置檔案(例如螢幕等串列埠裝置)
s:套介面檔案
基本許可權
Ⅰ、讀(若有許可權顯示為r,無許可權顯示為-)Read對檔案而言,具有讀取檔案內容的許可權;對目錄來說,具有瀏覽該目錄資訊的許可權
Ⅱ、寫(若有許可權顯示為w,無許可權顯示為-)Write對檔案而言,具有修改檔案內容的許可權;對目錄來說具有刪除移動目錄內檔案的許可權
Ⅲ、(若有許可權顯示為x,無許可權顯示為-)execute對檔案而言,具有執行檔案的許可權;對目錄來說,具有進入目錄的許可權
檔案許可權值的表示方法
一、字元表示方法
例項:
Linux表示 說明
r- - 只讀
- -x 僅可執行
-wx 可寫和可執行
二、八進位制數值表示方法
許可權符號 八進位制 二進位制
r - - 4 100
r w - 6 110
r w x 7 111
- - - 0 000
檔案訪問權相的相關設定方法
a)chmod
功能:設定檔案的訪問許可權
格式:chmod [引數] 許可權 檔名
常用選項:
R -> 遞迴修改目錄檔案的許可權
說明:只有檔案的擁有者和root才可以改變檔案的許可權
chmod命令許可權值的格式
① 使用者識別符號+/-=許可權字元
+:向許可權範圍增加許可權代號所表示的許可權
-:向許可權範圍取消許可權代號所表示的許可權
=:向許可權範圍賦予許可權代號所表示的許可權
使用者符號:
u:擁有者
g:擁有者同組用
o:其它使用者
a:所有使用者
chmod u+w /home/text.txt
chmod o-w /home/text.txt
1
2
②三位8進位制數
chmod 664 /home/abc.txt
chmod 640 /home/abc.txt
1
2
b) chown
功能:修改檔案的擁有者
格式:chown [引數] 使用者名稱 檔名
例項:
chown user1 f1
chown -R user1 filegroup1
1
2
c)chgrp
功能:修改檔案或目錄的所屬組
格式:chgrp [引數] 使用者組名 檔名
常用選項: -R 遞迴修改檔案或目錄的所屬組
d)umask
我們發現新建檔案不需要我們自己設定許可權,自己已經會帶有檔案/檔案目錄預設許可權
新建資料夾預設許可權=666
新建檔案預設許可權=777
而實際上看到的許可權並不是這個值,而實際值=預設許可權&(~umask)
我們可以透過具體的指令來修改umask 從而達到修改預設許可權
# umask 755
# umask //檢視
# umask 044//設定
1
2
3
file指令
功能許可權:辨識檔案型別
語法:file [選項] 檔案或目錄
常用選項:
-c 詳細顯示指令執行過程,便於排錯或分析程式執行的情形。
-z 嘗試去解讀壓縮檔案的內容。
粘滯位與目錄的許可權
我們發現雖然others沒有讀寫執行某個檔案或資料夾的許可權,但是它依然可以刪除,這就使得安全性難以得到保障,所以Linux系統提供了粘滯位功能。
當一個目錄被設定為"粘滯位"(用chmod +t),則該目錄下的檔案只能由
一、超級管理員刪除
二、該目錄的所有者刪除
三、該檔案的所有者刪除
chmod +t /home #新增粘滯位
1
許可權總結
1、目錄的可執行許可權是表示你可否在目錄下執行命令。
2、如果目錄沒有-x許可權,則無法對目錄執行任何命令,甚至無法cd 進入目, 即使目錄仍然有-r 讀許可權(這個地方很容易犯錯,認為有讀許可權就可以進入目錄讀取目錄下的檔案)
3、而如果目錄具有-x許可權,但沒有-r許可權,則使用者可以執行命令,可以cd進入目錄。但由於沒有目錄的讀許可權
4、所以在目錄下,即使可以執行ls命令,但仍然沒有許可權讀出目錄下的文件
————————————————
版權宣告:本文為CSDN博主「Skyline-sjc」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本宣告。
原文連結:https://blog.csdn.net/weixin_54225634/article/details/119180327
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/30239065/viewspace-2784296/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 指令碼迴圈基礎(2)指令碼
- Linux基礎五(shell指令碼)Linux指令碼
- Linux 指令碼編寫基礎Linux指令碼
- Linux指令碼編寫基礎Linux指令碼
- Linux shell基礎2Linux
- Linux shell 指令碼基礎介紹Linux指令碼
- Linux指令碼編寫基礎(五)Linux指令碼
- Linux 指令碼編寫基礎(轉)Linux指令碼
- vue基礎指令Vue
- django 基礎指令Django
- Linux基礎命令---bzip2Linux
- Linux基礎命令---bunzip2Linux
- Linux必須掌握的shell指令碼基礎Linux指令碼
- Linux基礎服務巡檢指令碼模板Linux指令碼
- Linux Shell指令碼程式設計-基礎1Linux指令碼程式設計
- Shell指令碼基礎指令碼
- 01、docker基礎指令Docker
- Anaconda 基礎指令
- Linux基礎命令---e2imageLinux
- Linux基礎命令---mke2fsLinux
- Linux基礎命令—e2fsckLinux
- Linux基礎命令—tune2fsLinux
- Linux基礎命令---tune2fsLinux
- Linux基礎命令---resize2fsLinux
- Linux基礎命令—dumpe2fsLinux
- Linux基礎命令---e2fsckLinux
- Linux基礎命令---dumpe2fsLinux
- 【Linux學習筆記29】shell指令碼基礎Linux筆記指令碼
- Pandas 基礎 (2) - Dataframe 基礎
- Linux 基礎教程 30-tcpdump命令-2LinuxTCP
- redis學習——基礎指令Redis
- 基礎2
- Linux 指令大全(2)(轉)Linux
- linux指令大全[2](轉)Linux
- Linux 指令大全(2) (轉)Linux
- UNITY指令碼基礎感悟:速度;Unity指令碼
- liunx基礎背景與操作指令
- MySQL基礎(2)MySql