程序員必知必會的 Linux系列 —— 文件權限篇

1. 文件權限

1.1 文件基本權限

-rw-r--r--
複製代碼
  • 文件類型
    • - 文件
    • d 目錄
    • l 軟連接文件
  • 全部者 所屬組 其它人
  • r 讀 w 寫 x 執行

1.2 基本權限的修改

chmod [選項] 模式 文件名markdown

  • 選項
    • -R 遞歸
  • 模式
    • [ugoa][+-=][rwx]
  • 權限數字
    • r 4
    • w 2
    • x 1
chmod 000 1.txt
chmod u+w 1.txt
chmod g+x 1.txt
chmod o+r 1.txt

chmod g+x,o+x 1.txt

chmod u-w 1.txt

chmod u=rwx 1.txt

chmod 777 1.txt
複製代碼

1.3 權限的做用

  • 對文件來講最高權限是x
  • 對目錄來說最高權限是w,只有讀權限沒有意義,對目錄有了寫權限,裏面能夠作任何事情

1.3.1 文件權限

權限 含義 示例
r 讀取文件內容 cat more head tail
w 編輯、新增、修改文件內容,不能刪除文件,除非對目錄有寫權限 vi echo
x 可執行

1.3.2 目錄權限

權限 含義 示例
r 能夠查看目錄下的文件名 ls
w 具備修改目錄結構的權限。如新建、刪除和重命名此目錄下的文件和目錄 touch rm mv cp
x 進入目錄 cd
useradd zf1
passwd zf1

cd /home/zf1
mkdir folder
touch folder/1.txt 默認755
chmod 750 folder
chmod 640 folder/1.txt
chmod 754 folder
chmod 755 folder
chmod 644 folder/1.txt
chmod 646 folder/1.txt
chmod 757 folder
複製代碼

1.1.3 其它權限命令

1.1.3.1 chown
  • chown 用戶名 文件名spa

  • 若是想讓一個用戶擁有 7 權限,能夠把這個文件的全部者改爲這個用戶名code

chmod 755 folder
chown zf1 folder
複製代碼
1.1.3.2 chgrp
  • chgrp 組名 文件名
  • 建立用戶名的時候會爲它建立一個所屬組
chgrp zf1 folder
chown root:root folder
複製代碼

2.默認權限

2.1 umask

  • 查看默認權限
  • 0022
    • 第一位 0 文件特殊權限
    • 022 文件默認權限

2.2 文件權限

  • 默認權限就是文件一建立後就擁有的權限
  • 文件默認不能創建可執行文件,必須手工賦予執行權限
  • 文件默認權限最大爲666
  • 默認權限須要換算成字母再相減
  • 創建文件以後的默認權限,爲 666 減去 umask 值
666 - 022 = 744;
複製代碼

2.3 目錄

  • 目錄默認權限最大爲 777
  • 創建目錄以後的默認權限,爲 777 減去 umask 值
777 - 022 = 755;
複製代碼

2.4 修改 umask 值

  • 臨時修改
umask 0002
複製代碼
  • 永久修改
vi / etc / profile;
複製代碼

3. sudo 權限

  • root 把原本只有超級管理員可使用的命令賦予普通用戶來使用
  • sudo 操做的對象是系統命令

4.1 visudo

  • 經過visudo能夠由超級用戶賦權
  • 實際修改的是/etc/sudoers文件
  • 命令必須寫絕對路徑
root ALL=(ALL) ALL
用戶名 被管理主機地址=(可以使用的身份) 受權命令(絕對路徑)

stu2 ALL=(root) ALL //新增長用戶行
複製代碼
相關文章
相關標籤/搜索