用戶與用戶組

用戶與組常見命令與用法

一 ? ?用戶與用戶組

Linux下所有的東西都是文件、不管是具體文件還是目錄。那么當多人同機操作的時候、考慮到每個人的隱式權和個人喜好,文件擁有者就相當重要了,比如A有一個存放情書的文件夾,那A估計不會喜歡誰都能看這些情書,那么A就可以用密碼箱鎖起來,別人就不能隨意翻動了。A就是這個密碼箱(可看成文件夾)的擁有者。

? ?用戶(user)和用戶組(group)概念

我們知道,Linux是一個多用戶多任務的分時操作系統,如果要使用系統資源,就必須向系統管理員申請一個賬戶,然后通過這個賬戶進入系統。這個賬戶和用戶是一個概念,通過建立不同屬性的用戶,一方面,可以合理的利用和控制系統資源,另一方面也可以幫助用戶組織文件,提供對用戶文件的安全性保護。每個用戶都用一個唯一的用戶名和用戶口令,在登錄系統時,只有正確輸入了用戶名和密碼,才能進入系統和自己的主目錄。用戶組是具有相同特征用戶的邏輯集合,有時我們需要讓多個用戶具有相同的權限,比如查看、修改某一個文件的權限,一種方法是分別對多個用戶進行文件訪問授權,如果有10個用戶的話,就需要授權10次,顯然這種方法不太合理;另一種方法是建立一個組,讓這個組具有查看、修改此文件的權限,然后將所有需要訪問此文件的用戶放入這個組中,那么所有用戶就具有了和組一樣的權限。這就是用戶組,將用戶分組是Linux 系統中對用戶進行管理及控制訪問權限的一種手段,通過定義用戶組,在很大程度上簡化了管理工作。

用戶和用戶組的對應關系是:一對一、多對一、一對多或多對多;

一對一:某個用戶可以是某個組的唯一成員;
多對一:多個用戶可以是某個唯一的組的成員,不歸屬其它用戶組;比如beinan和linuxsir兩個用戶只歸屬于beinan用戶組;
一對多:某個用戶可以是多個用戶組的成員;比如beinan可以是root組成員,也可以是linuxsir用戶組成員,還可以是adm用戶組成員;
多對多:多個用戶對應多個用戶組,并且幾個用戶可以是歸屬相同的組;其實多對多的關系是前面三條的擴展;理解了上面的三條,這條也能理解;

 

 

二 ??用戶和用戶組相關的配置文件、命令或目錄

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

 

/etc/passwd:用戶及其屬性信息(名稱、UID、主組ID等)

/etc/group:組及其屬性信息

/etc/shadow:用戶密碼及其相關屬性

/etc/gshadow:組密碼及其相關屬性

/etc/skel目錄一般是存放用戶啟動文件的目錄

/etc/login.defs:?創建用戶時的一些規劃

管配置文件理用戶和用戶組的相關工具或命令

管理用戶的工具或命令

useradd??? 注:添加用戶

-u UID
-o 配合-u 選項,不檢查UID的唯一性
-g GID:指明用戶所屬基本組,可為組名,也可以GID
-c “COMMENT”:用戶的注釋信息
-d HOME_DIR:以指定的路徑(不存在)為家目錄
-s SHELL: 指明用戶的默認shell程序
可用列表在/etc/shells文件中
-G GROUP1[,GROUP2,…]:為用戶指明附加組,組須事先存在
-N 不創建私用組做主組,使用users組做主組
-r: 創建系統用戶CentOS 6: ID<500,CentOS 7: ID<1000
-m 創建家目錄,用于系統用戶
-M 不創建家目錄,用于非系統用戶

passwd???? 注:為用戶設置密碼

-l:鎖定指定用戶
-u:解鎖指定用戶
-e:強制用戶下次登錄修改密碼
-n mindays: 指定最短使用期限
-x maxdays:最大使用期限
-w warndays:提前多少天開始警告
-iinactivedays:非活動期限
–stdin:從標準輸入接收用戶密碼
echo “PASSWORD” | passwd–stdinUSERNAME

usermod? 注:修改用戶命令,可以通過usermod 來修改登錄名、用戶的家目錄等等;

-u UID: 新UID
-g GID: 新主組
-G GROUP1[,GROUP2,…[,GROUPN]]]:新附加組,原來的附加組將會被覆蓋;若保留原有,則要同時使用-a選項
-s SHELL:新的默認SHELL
-c ‘COMMENT’:新的注釋信息
-d HOME: 新家目錄不會自動創建;若要創建新家目錄并移動原家數據,同時使用-m選項
-l login_name: 新的名字;
-L: lock指定用戶,在/etc/shadow 密碼欄的增加!
-U: unlock指定用戶,將/etc/shadow 密碼欄的! 拿掉
-e YYYY-MM-DD: 指明用戶賬號過期日期
-f INACTIVE: 設定非活動期限

userdel ?? 注:刪除用戶
-r: 刪除用戶家目錄

pwcov?????? 注:同步用戶從/etc/passwd 到/etc/shadow
pwck???????? 注:pwck是校驗用戶配置文件/etc/passwd 和/etc/shadow 文件內容是否合法或完整;
pwunconv? 注:是pwcov 的立逆向操作,是從/etc/shadow和 /etc/passwd 創建/etc/passwd ,然后會刪除 /etc/shadow 文件;
finger??????? 注:查看用戶信息工具
id????????????? 注:查看用戶的UID、GID及所歸屬的用戶組

-u: 顯示UID
-g: 顯示GID
-G: 顯示用戶所屬的組的ID
-n: 顯示名稱,需配合ugG使用

chsh ? ?注:指定shell
chfn????????? 注:更改用戶信息工具

chage[OPTION]… LOGIN
-d LAST_DAY
-E –expiredateEXPIRE_DATE
-I –inactive INACTIVE
-m –mindaysMIN_DAYS
-M –maxdaysMAX_DAYS
-W –warndaysWARN_DAYS
–l 顯示密碼策略
?示例:
chage-d 0 tom 下一次登錄強制重設密碼
chage-m 0 –M 42 –W 14 –I 7 tom
chage-E 2016-09-10 tom
su???????????? 注:用戶切換工具

cat /etc/passwd = getent passwd 查看用戶信息

authconfig–passalgo=sha256 –update 更改加密算法

openssl rand -base64 30 隨機生成30位口令

suUserName:非登錄式切換,即不會讀取目標用戶的配置文件,不改變當前工作目錄
su-UserName:登錄式切換,會讀取目標用戶的配置文件,切換至家目錄,完全切換
?root su至其他用戶無須密碼;非root用戶切換時需要密碼

 

管理用戶組的工具或命令

groupadd? 注:添加用戶組;
-g GID: 指明GID號;[GID_MIN, GID_MAX]
-r: 創建系統組
CentOS 6: ID<500
CentOS 7: ID<1000

groupdel???????? 注:刪除用戶組;
groupmod??????? 注:修改用戶組信息

-n group_name: 新名字
-g GID: 新的GID

gpasswd ? 注?:組密碼
gpasswd[OPTION] GROUP
-a user 將user添加至指定組中
-d user 從指定組中移除用戶user
-A user1,user2,… 設置有管理權限的用戶列表

gpasswd[OPTION] GROUP
-a user 將user添加至指定組中
-d user 從指定組中移除用戶user
-A user1,user2,… 設置有管理權限的用戶列表

newgrp命令:臨時切換主組
如果用戶本不屬于此組,則需要組密碼

groupmems
-g, –group groupname更改為指定組(只有root)
Actions:
-a, –add username 指定用戶加入組
-d, –delete username 從組中刪除用戶
-p, –purge 從組中清除所有成員
-l, –list 顯示組成員列表

groups???? 注:顯示用戶所屬的用戶組

grpconv?? 注:通過/etc/group和/etc/gshadow 的文件內容來同步或創建/etc/gshadow ,如果/etc/gshadow 不存在則創建;

grpunconv?? 注:通過/etc/group 和/etc/gshadow 文件內容來同步或創建/etc/group ,然后刪除gshadow文件;

chown ? 注:修改文件的屬主

-R: 遞歸

chgrp ? ?? 注:修改文件的屬組

-R: 遞歸

批量創建用戶

newusers user.txt
cat pass.txt |chpasswd

 

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

(2)
張雷張雷
上一篇 2017-11-17 23:32
下一篇 2017-11-18 11:50

相關推薦

  • ?HA專題: Corosync+Pacemaker+drbd實現MySQL高可用

    HA專題: Corosync+Pacemaker+drbd實現MySQL高可用 前言 實驗拓撲 實驗環境 實驗步驟 安裝前準備工作 配置DRBD 配置MySQL 配置Corosync+Pacemaker 測試 我遇到的問題 總結 前言 上篇文章我們介紹了drbd的相關原理、編譯安裝、簡單的實現. drbd雖然可以保證數據的可靠性但是我們上次的實現還…

    Linux干貨 2016-04-13
  • corosync+pacemaker+drbd+mysql配置安裝詳解

    一,  基本環境介紹及基本環境配置 節點1: node1.hulala.com      192.168.1.35     centos6.5_64    添加8G新硬盤 節點2: node1.hulala.com      192.168.1.36…

    Linux干貨 2016-05-08
  • Linux yum客戶端的配置及yum命令

    一、什么是yum我們在Linux系統上安裝處理軟件,一般是使用RPM,它是通過預先編譯完成并且把軟件打包為RPM文件格式后,再加以安裝的一種方式,使用者只要拿到這個打包好的軟件,然后將里頭的文件放置到應該擺放的目錄,這樣就完成了安裝。但是,由于有些軟件是有依賴于其他軟件的,當你要安裝某個RPM類型的軟件時,RPM會檢驗RPM軟件數據庫,它所依賴的相關軟件包是…

    2017-06-11
  • 文件系統知一二

    文件系統知一二 What?文件系統是什么?     我們經常說文件系統,那么文件系統是什么東西呢?    計算機的文件系統是一種存儲和組織計算機數據的組織結構。 常見的文件系統有哪些?           &n…

    Linux干貨 2016-03-09
  • GOPS 2016全球運維大會 ? 北京站

    GOPS 2016全球運維大會 ? 北京站已經圓滿落幕,最新GOPS大會推薦:GOPS2017全球運維大會 ? 深圳站 基本信息: GOPS2017全球運維大會 ? 深圳站 時間:2017-04-21 08:00:00 至 2017-04-22 18:00:00結束 地點:深圳    會議規模:5000人 會議詳情:http://www.…

    Linux干貨 2016-11-03
  • 網絡配置——CentOS7

    CentOS 7 網絡屬性配置 使用傳統命名方式: (1) 編輯/etc/default/grub 配置文件 GRUB_CMDLINE_LINUX ="rhgb quiet net.ifnames=0" 或:修改/boot/grub2/grub.cfg (2) 為grub2 生成其配置文件 grub2-mkconfig -o /etc/g…

    Linux干貨 2016-09-11
欧美性久久久久