Linux的用戶,組及文件權限管理

Linux用戶與組的創建,刪除,屬性修改,文件權限管理

 

Linux的用戶和組管理

Linux的用戶有兩種,分別是系統管理員和普通用戶,其中普通用戶又分為系統用戶和登陸用戶;

系統用戶:系統用戶從不登陸系統,是用來執行某些進程服務的賬號

登陸用戶:用戶通過輸入賬號密碼登陸

用戶創建時系統至少會為其分配兩個id號,一個是用戶id即UID,一個是組id,即GID。

普通用戶登陸是是通過輸入賬號密碼進行登陸,Linux系統識別的并不是賬號,而是識別用戶創建時系統分配的用戶id號即UID,其中UID分類如下:

系統管理員:root,其id號是0;

普通用戶:id為1-65535

        系統用戶id:1-499(centOS 6),1-999(centOS 7)

        登陸用戶id:500以上(centOS 6),1000以上(centOS 7)
GID分類與UID差不多:

系統管理員:root,其id號是0;

普通用戶:id為1-65535

        系統組id:1-499(centOS 6),1-999(centOS 7)

        非系統組id:500以上(centOS 6),1000以上(centOS 7)
一個用戶可以屬于多個組,分別為主組和附加組,主組名與用戶名相同,主組以外的組就是附加組。但是一個用戶只能有唯一一個UID號。

相關的配置文件:

/etc/passwd:用戶賬號的相關信息

/etc/group:用戶組的相關信息

/etc/shadow:用戶密碼相關信息,加密后存放

/etc/gshadow:用戶組密碼的相關信息

useradd

  • 添加用戶
  • -u:創建用戶時指定其uid
  • -g:創建用戶時指定其基本id,此組要事先存在
  • -c:創建用戶時給用戶添加附加組,多個組用逗號隔開
  • -d:創建用戶時指定其家目錄,通過復制/etc/skel并重命名實現,指定的家目錄如果事先存在則不會為用戶復制huanj環境配置文件
  • -s:創建用戶時指定其默認shell
  • -r:創建系統用戶
  • useradd -D:顯示創建用戶時的默認配置
  • useradd -D:選項:修改默認配置 useradd -D -s /bin/csh 修改默認shell為csh
  • 修改結果保存在/etc/default/useradd中

usermod

  • 修改用戶屬性信息
  • -u:修改用戶的uid
  • -g:修改用戶所屬的基本組
  • -G: 修改用戶所屬的附加組,原來的附加組會被覆蓋
  • -a:用于給用戶追加新的附加組,與-G一同使用
  • -c:修改注釋信息
  • -d:修改用戶的家目錄,原有的家目錄不會被移動至新的家目錄
  • -m:與-d一同使用,將原有的家目錄移動至新的家目錄
  • -l:修改用戶名
  • -s:修改用戶默認的shell
  • -L:鎖定用戶的密碼,即在原來用戶的密碼字符串前加上‘!’
  • -U:解鎖用戶的密碼

userdel

  • 刪除用戶
  • -r:刪除用戶時連同家目錄一起刪除

passwd

  • 修改用戶密碼
  • passwd username:修改指定用戶的密碼,僅root有此權限
  • -l,-u:鎖定和解鎖用戶密碼
  • -d:清除用戶密碼
  • -e DATE:過期期限
  • -i DATE: 非活動期限
  • -n DATE:密碼最短使用期限
  • -x DATE:密碼最長使用期限
  • –stdin:echo “passwd” | passwd –stdin USERNAME 通常在寫腳本是會以此方式給用戶添加密碼

groupadd

  • 添加組
  • -g:創建組時指定組id,默認是上一個GID+1
  • -r: 創建系統組

groupmod

  • 修改組信息
  • -g:修改GID
  • -n:修改組名

groupdel

  • 刪除組
  • groupdel [OPTION] groupname

gpasswd

  • 設置組密碼
  • 用法:gpasswd group
  • -a USERNAME:在組中添加用戶
  • -d USERNAME:在組中移除用戶

id

  • 顯示用戶相關id號信息
  • -u:顯示用戶有效的UID
  • -G:顯示用戶所屬的所有組id
  • -g:顯示用戶的GID
  • -n:顯示用戶的名字

su

  • 切換用戶
  • su USERNAME:以非登錄式的方式切換用戶,不會讀取用戶的配置信息
  • su – USERNAME:以登錄的方式切換用戶,讀取用戶的配置信息
  • su USERNAME -c ‘COMMMAND’:以用戶‘USERNAME’的身份執行‘COMMAND’

chage

  • 更改用戶密碼過期信息
  • chage [option] 登錄名

newgrp

  • 臨時切換到指定組為基本組
  • newgrp [-] [group]
  • -:會模擬用戶重新登錄以實現重新初始化其工作環境

目錄或文件權限管理

文件或者目錄的權限可通過ls -l命令查看;一般文件屬于三類用戶,分別是u(屬主),g(屬組),o(其他用戶)
例如:drwxr-xr-x 3 user group 102 Mar11 22:56 Filename
drwxr-xr-x
  • d:文件類型,d代表該文件為為目錄
  • rwx:文件對應屬主的權限,r:可讀,w:可寫,x:可執行
  • r-x:文件對應屬組的權限,r:可讀,-:不可寫,x:可執行
  • r-x:文件對其他用戶的權限,r:可讀,-:不可寫,x:可執行

chmod

  • 修改文件或目錄的權限
  • 用法:chmod [option] mode[mode] file
  • 賦權表示法:操作一類用戶的所有權限
  • 例: chmod u=rwx file chmod a=rwx file
  • 授權表示法:操作一類用戶的一個權位
  • 例:chmod u+r file chmod g-r file
  • option: -R 遞歸修改
  • 參考其他文件的屬性修改目標文件:
  • chmod [option] …–reference=RFILE(參考的文件) file(目標文件)

chown

  • 修改文件的屬主屬組
  • 用法:chown [option]…[owner][:group] file
  • 參考其他文件的屬性修改目標文件:
  • chown [option] …–reference=RFILE(參考的文件) file(目標文件)
  • 選項:-R 遞歸修改,目錄下的文件也一同修改

chgrp

  • 修改文件的屬主屬組
  • 用法:chgrp [option]…[owner][:group] file
  • 參考其他文件的屬性修改目標文件:
  • chgrp [option] …–reference=RFILE(參考的文件) file(目標文件)

umask

  • 文件權限的反向掩碼,遮掩碼
  • 文件默認權限:666減去mask
  • 目錄默認權限:777減去mask
  • 注:文件默認權限使用666減去mask是因為文件本身不能有執行權限,如果減的結果中有執行權限則需要將其加一
  • 例如:umask是023
  • 此時666減去023得643,有執行權限,則將其加一變成644
  • umask:查看當前umask
  • umask UMSK:設置umask
  • 注:此類設置只對當前shell進程有效

mktmp

  • 創建臨時文件
  • 用法:mktmp [option] [template]
  • 選項:-d 創建臨時目錄
  • 例如:mktmp file.XXX , 其中XXX用來生成隨機字符

ps:

Linux系統文件類型

通過ls -l命令查看:

  • -:常規文件
  • d:目錄文件
  • b:塊設備文件
  • c:字符設備文件
  • l:鏈接文件
  • p: 命令管道
  • s:套接字文件

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/91630

(0)
galamgalam
上一篇 2018-02-24 14:33
下一篇 2018-02-25 12:43

相關推薦

  • 用戶和組相關的配置文件

    目錄 l  用戶 l  組賬號 l  UID和GID號 l  /etc/passwd分析 l  /etc/shadow分析 l  /etc/group分析 l  /etc/gshadow分析 l  通過用戶和用戶組配置文件來查詢或管理用戶 l  總結 1、用戶(User…

    Linux干貨 2016-10-23
  • N26-第三周博客

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只 顯示一次即可。 [yang@localhost /]$ who | cut -d" " -f 1 | sort -u 2、取出最后登錄到當前系統的用戶的相關信息。 [root@localhost tmp]# last | head -1 3、取出當前系…

    Linux干貨 2017-02-08
  • bash中的算術運算及條件測試

    bash的算術運算 +, -, *, /, %取模(取余), **(乘方) 實現算術運算: (1) let var=算術表達式 (2) var=$[算術表達式] (3) var=$((算術表達式)) (4) var=$(expr arg1 arg2 arg3 …) (5) declare –i var = 數值 (6) echo ‘算術表達式’ …

    Linux干貨 2017-04-17
  • Oracle 11G 安裝圖解

    Oracle 11G 安裝圖解 wmd-preview h1 { color: #0077bb; /* 將標題改為藍色 */ } Oracle 11G 安裝圖解 oracle Oracle 介紹   Oracle Database,又名Oracle RDBMS,或簡稱Oracle 是甲骨文公司的一款關系數據庫管理系統。它是在數據庫領域一直處于領先地位的產品?!?/p>

    2017-04-24
  • 源碼編譯安裝dropbear

    tar -jxf dropbear-2013.58.tar.bz2 cd dropbear-2013.58 ./configure make PROGRAMS=”dropbear dbclient dropbearkey dropbearconvert scp” make PROGRAMS=”dropbear dbclie…

    Linux干貨 2017-10-21
  • keepalived雙主模型的實現

    一、簡介  keepalived 簡介:是服務器高可用的一個重要軟件,它的核心組件有vrrp ,stack, checker ,ipvs, warpper, watch dog  它是vrrp協議的實現,原生設計目的為高可用ipvs服務;keepalived能夠通過配置文件中定義生成ipvs規則 并能夠對RS的健康狀態進行檢測;vrrp_…

    Linux干貨 2014-05-22
欧美性久久久久