linux的group
1. linux 怎樣查看所有group
/etc/group 文件是用戶組的配置文件。
/etc/passwd 文件是用戶的配置文件。
使用cat、more、less、head、tail以及vim等命令都可以查看、修改這兩個配置文件。
2. Linux的介紹與應用
體系結構主要分為用戶態的內核態。所謂內核本質上是一段管理計算機硬體設備的程序。所謂用戶態上層應用程序的活動空間。內核必須為上層應用提供資源,CPU,存儲,IO資源,這被稱為系統調用,系統調用是不能被簡化的操作,其他復雜調用都是多個系統調用組合的結果。
我們要查看所有的系統調用,可以使用命令
所得到的列表如下
其中 2 代表的意思是系統調用, 3 指的是公共庫函數。公共庫函數是封裝系統調用,一組定義好的系統調用的組合。
Shell 是指一種應用程序,這個應用程序提供了一個界面,用戶通過這個界面訪問操作系統內核的服務。
Linux 的 Shell 常見的有:
在指定目錄下查找文件。
find + 路徑 + -name + 「文件名」
之上的命令使用遞歸查找的方式查找到了 test 文件。如果我們想全局搜索則使用
當然find指令也支持表達式如果要查找所有以test開頭的問題,查找方式可以使用
* 表示通配符,可以實現模糊查詢。
如果要忽略大小寫查詢可以使用
對於grep使用過Linux的人基本都有接觸過。下面列舉一下grep的一些常用操作。
Linux系統用戶是根據用戶ID來識別的,默認ID長度為32位,用戶ID限制在60000以下。
linux系統中的用戶組(group)就是具有相同特性的用戶(user)集合,通過組可以更加方便的管理用戶,每個組擁有一個GroupID,每個用戶屬於一個主組,屬於一個或多個附屬組,一個用戶最多有31個附屬組。
Linux許可權是操作系統用來限制對資源訪問的機制,許可權一般分為讀、寫、執行。系統中每個文件都擁有特定的許可權、所屬用戶及所屬組,通過這樣的機制來限制哪些用戶或用戶組可以對特定文件進行相應的操作,Linux許可權授權,默認是授權給三種角色,分別是user、group、other(其他用戶)。
test目錄詳解如下:
d 表示目錄,同一位置如果為-則表示普通文件;
rwxr-xr-x 表示三種角色的許可權,每三位為一種角色,依次為u,g,o許可權,如上則表示user的許可權為rwx,group的許可權為r-x,other的許可權為r-x;
2表示文件夾的鏈接數量,可理解為該目錄下子目錄的數量;
4096表示該文件夾占據的位元組數;
+、-、=代表加入、刪除和等於對應許可權
授予用戶、組、其他人對test目錄擁有rwx許可權
撤銷用戶、組、其他人對test目錄擁有x許可權
Linux許可權可以將rwx用二進制來表示,其中有許可權用1表示,沒有許可權用0表示。
Linux許可權用二進制顯示如下:
rwx=111
r-x=101
rw-=110
r--=100
依次類推,轉化為十進制,對應十進制結果顯示如下:
rwx=111=4+2+1=7
r-x=101=4+0+1=5
rw-=110=4+4+0=6
r--=100=4+0+0=4
得出結論,用r=4,w=2,x=1來表示許可權。
所以我們有時候使用
為文件賦予所有許可權。
除了普通許可權,Linux還有三個特殊許可權
3. linux下基本組和附屬組有什麼區別
基本組:創建用戶的時候系統會同時創建一個和這個用戶名同名的組,這個組就是基本組,不可以把用戶從基本組中刪除。
附加組:除了基本組之外,用戶所在的其他組,都是附加組。用戶是可以從附加組中被刪除的。
一個用戶可以屬於多個附加組。但是一個用戶只能有一個基本組。
就像樓上說的,一個孩子誕生了,他的基本組就是親生父母;他的附加組就是其他的乾爹干媽。就這個意思。
4. linux中的group ownership是什麼
group是所有組的意思,owner是所有者。
所有組和所有者合起來稱為ownership
這個功能參數是chown命令使用的,合起來使用是這樣的:
chown OWNER:GROUP FILE
5. linux(空間) 許可權裡面的group是什麼東西
group是「用戶組」的意思,前面有人說的很清楚了,我這里只是解釋一下linux為什麼對group和all user設置成只能讀和運行。
假如,你是用戶a,論壇里的普通用戶,然後上傳了一個文件到自己的目錄,可能是一個程序,可能是一張圖片,你的許可權當然是7,可讀可寫可運行。這時,另一個用戶b,也是經過注冊的,瀏覽到你的帖子,然後開始下載你上傳的文件。他當然需要有讀取和運行的權利,所以許可權是5。但是如果許可權是7,他也可以寫的話,那他就可以修改你上傳的文件了。所以,我覺得在這里是不能給group以寫許可權的。
all user的許可權更低,all user其實就是win裡面的guest,如果架設論壇,那些沒有登錄的guest就是all user。所以,給all user全部權利是非常危險的。
6. Linux中如何創建用戶和用戶組
Linux中創建用戶和用戶組的具體操作步驟如下:
1、首先我們在Linux系統命令行中輸入groupadd命令,用它創建一個用戶組。
7. linux中group群組文件和passwd帳戶文件的關系
passwd決定默認組,group決定還屬於其他哪個組。
上面那種情況group2里的user2和group3里的user3是不應該出現的,因為他們是那兩個用戶的默認組。只有非默認組才會在group文件中出現
8. linux的ls - l命令,group~是什麼意思
你好!
可以看到,用ls -l命令查看某一個目錄會得到一個9個欄位的列表.
第1行:總用量(total)
這個數值是該目錄下所有文件及目錄列表第5個欄位的和(以k為單位),也就是該目錄的大小.請注意和該目錄下的文件和子目錄下文件的總合做區分.這個數字和 /root 得到的數字的大小是不一樣的.可以用awk命令來驗證.
用awk累加第5欄位得到的數值:
[root@gucuiwen root]# ls -l |awk 'BEGIN{sum=0}{sum+=$5}END{print sum}'
4104092
轉化成以K為單位:
[root@gucuiwen root]# ls -l |awk 'BEGIN{sum=0}{sum+=$5}END{print sum/1024}'
4007.9
用ls -l得到的數值:
總用量 4055
用 -sh /root得到的數值:
[root@gucuiwen root]# -sh /root
127M /root
可以看到累加第5個欄位得到的值和total顯示的是一樣的(因為具體演算法的不同,略微有差別).得到的數值實際上是root目錄的大小(把root目錄看成是一個特殊的文件,就可以理解什麼是目錄的大小).而用得到的數值是root目錄下所由文件和子目錄下全部文件的大小的總合.
第1欄位:
文件屬性欄位
文件屬性欄位總共有10個字母組成,第一個字母表示文件類型,如果這個字母是一個減號"-",則說明該文件是一個普通文件.字母"d"表示該文件是一個目錄,字母"d",是dirtectory(目錄)的縮寫.請注意,一個目錄或者說一個文件夾是一個特殊文件,這個特殊文件存放的是其他文件和文件夾的相關信息.
如果該字母是"l",表示該文件是一個符號鏈接.符號鏈接的概念類似於windows里的快捷方式.字母"l"是link(鏈接)的縮寫.在UNIX類系統中,一個文件可以有多個文件名,一個文件的多個文件名之間互稱為硬鏈接(hard link).這些文件頭可以指向同一個文件,刪除其中一個文件名並不能刪除該文件,只有把指向該文件的所有硬鏈接都刪除,這個文件所佔用的空間才真正被釋放,該文件才真正被刪除.這和windows是有很大區別的,windows中不允許一個文件有兩個以上文件名,如果存在這中情況,則被認為是文件系統錯誤.如果你以前在windows下玩過DEBUG就知道,可以用DEBUG修改一張軟盤上的根目錄,使一個文件同時具有兩個文件名.但是修改好後用 scandisk監測的時候會被認為是交叉鏈接錯誤.
開頭為b的表示塊設備文件(block),,設備文件是普通文件和程序訪問硬體設備的入口,是很特殊的文件.它的沒有文件大小,只有一個主設備號和一個輔設備號.上面的hda1就是一個設備文件,具有主設備號3和輔設備號1.表示第一個硬碟第一個分區.
另外,如果第一個字母為c表示該文件是一個字元設備文件(character),一次傳輸一個位元組的設備被稱為字元設備,比如鍵盤,字元終端等,傳輸數據的最小單位為一個位元組.一次傳輸數據為一整塊的被稱為塊設備,比如硬碟,光碟等.最小數據傳輸單位為一個數據塊(通常一個數據塊的大小是512位元組).
第一欄位的後面9個字母表示文件的許可權.
r表是讀 (Read)
w表示寫 (Write)
x表示執行 (eXecute)
其中前三個表示文件屬主的許可權,中間三個表示組用戶許可權,最後三個表示其他用戶許可權.
比如:
-rw-r--r-- 1 root root 1581 11月 24 18:14 anaconda-ks.cfg
表示文件的擁有者root對文件有讀寫許可權,其他人(同組用戶和其他用戶只有讀的許可權)
另外,許可權組還有一些特殊的表示法.比如/usr/X11R6/bin/XFree86具有如下許可權:
[root@gucuiwen root]# ll /usr/X11R6/bin/XFree86
-rws--x--x 1 root root 1960262 2003-02-28 /usr/X11R6/bin/XFree86
其中的s表示這個是網路介面程序"s"是socket的縮寫.該程序在運行過程中會打開一個網路介面.
其他UNIX類系統如FreeBSD中還有t許可權,表示一個臨時(temporary)文件
在freeBSD中用ls -l /tmp 可以看到這樣的許可權:
drwxrwxrwt
它的最後一位是字母"t"
第2欄位
如果一個文件不是目錄那麼這一欄位表示,這個文件所具有的硬鏈接數,即這個文件總共有多少個文件名.查看第一個文件:
-rw-r--r-- 1 root root 1581 11月 24 18:14 anaconda-ks.cfg
第2欄位的值為1,說明這個文件只有anaconda-ks.cfg這一個文件名.即只有一個指向該鏈接的硬鏈接.
如果我用ln,做一個指向該文件的硬鏈接再查看該文件,該文件的第2欄位就會變成2:
[root@gucuiwen root]# ln anaconda-ks.cfg anaconda-ks.cfg.hardlink
[root@gucuiwen root]# ls -l
總用量 4071
-rw-r--r-- 2 root root 1581 11月 24 18:14 anaconda-ks.cfg
-rw-r--r-- 2 root root 1581 11月 24 18:14 anaconda-ks.cfg.hardlink
此時,anaconda-ks.cfg 和anaconda-ks.cfg.hardlink 稱為互為硬鏈接.他們指向同一個文件,無論是修改哪一個文件,另一個里也做相應的變化,因為實際上他們指向同一個文件.
用ls -i anaconda-ks.cfg可以查看它的文件節點(inode)
互為硬鏈接的文件具有相同的文件節點. 以下是驗證實驗:
[root@gucuiwen root]# ls -i anaconda-ks.cfg
18102 anaconda-ks.cfg
[root@gucuiwen root]# ls -i anaconda-ks.cfg.hardlink
18102 anaconda-ks.cfg.hardlink
可以看到,這兩個文件具有相同的文件節點號:18102
如果你知道一個文件有多個文件名,如何查找他的其他文件名分布在什麼地方呢?
可以先用ls -i 獲得它的節點號,然後用find查找,如/etc/sysconfig/networking/devices/ifcfg-eth0就具有多個文件名,我要查找與它互為硬鏈接的文件:
[root@gucuiwen devices]# ls -i /etc/sysconfig/networking/devices/ifcfg-eth0
147181 /etc/sysconfig/networking/devices/ifcfg-eth0
得到它的節點號為 147181
再用find查找:
[root@gucuiwen devices]# find /etc -inum 147181
/etc/sysconfig/networking/devices/ifcfg-eth0
/etc/sysconfig/networking/profiles/default/ifcfg-eth0
這樣就得到了同一個文件的不同文件名的位置.
如果是一個目錄,第2欄位的含義:
如果是一個目錄,則第2欄位表示該目錄所含子目錄的個數.
新建一個空目錄,這個目錄的第二欄位就是2,表示該目錄下有兩個子目錄.為什麼新建的目錄下面會有兩個子目錄呢?
因為每一個目錄都有一個指向它本身的子目錄"." 和指向它上級目錄的子目錄"..",這兩個默認子目錄是隱藏的.用ls -a可以看到.
每次在目錄下新建一個子目錄,該目錄第2欄位的值就增1,但是新建一個普通文件該欄位值不增加.
第3欄位:
文件擁有者
該欄位表示這個文件是屬於哪個用戶的.UNIX類系統都是多用戶系統,每個文件都有它的擁有者.只有文件的擁有者才具有改動文件屬性的權利.當然, root用戶具有改動任何文件屬性的權利.對於一個目錄來說,只有擁有該目錄的用戶,或者具有寫許可權的用戶才有在目錄下創建文件的權利.
如果某一個用戶因為某種原因,被刪除,而該用戶的文件還存在,那麼用ls -l 查看該文件將顯示一個代表用戶存在前ID號的數字.
以下是演示:
先創建一個用戶並用su過去:
[root@gucuiwen root]# useradd gucuiwen -g users
[root@gucuiwen root]# su - gucuiwen
用新建的用戶創建一個測試文件:
[gucuiwen@gucuiwen gucuiwen]$ touch testfile
[gucuiwen@gucuiwen gucuiwen]$ ls -l testfile
-rw-r--r-- 1 gucuiwen users 0 1月 4 16:31 testfile
最後用ls -l 看到第三欄位的文件擁有者為gucuiwen
然後我將gucuiwen用戶刪除:
[root@gucuiwen root]# userdel gucuiwen
[root@gucuiwen root]# cd /home/gucuiwen/
[root@gucuiwen gucuiwen]# ls -l
總用量 0
-rw-r--r-- 1 501 users 0 1月 4 16:31 testfile
可以看到,第三欄位成了一個數字,這個數字是原gucuiwen用戶的ID號.因為文件系統對每個文件記錄文件所有者的ID,而非用戶名.
第4欄位:
文件擁有者所在的組
組的概念可以想像成是一個共同完成一個項目的團隊.通過組的概念,可以控制文件讓特定的用戶查看,修改或運行.而不是一棍子打死,要麼全不讓看,要麼全讓看.
一個用戶可以加入很多個組,但是其中有一個是主組,就是顯示在第4欄位的明稱.
可以在adser的時候用-g指定該用戶所在的主組,用-G指定其他組.
第5欄位:
文件文件大小(以位元組為單位)
第5欄位表示文件大小,如果是一個文件夾,則表示該文件夾的大小.請注意是文件夾本身的大小,而不是文件夾以及它下面的文件的總大小!
很多人不能理解文件夾是一個特殊的文件的含義,這樣的話理解文件夾大小的含義就比較困難了.
第6欄位:
文件創建月份
#
第7欄位:
文件創建日期
第8欄位:
文件創建時間
文件創建的時間可以通過touch命令來修改.如:
#touch testfile
可以把testfile的創建時間修改為當前時間.
touch的詳細用法請看鏈接文檔.
#man touch
另外,一個文件還有最後訪問時間,最後修改時間等屬性.
這些屬性可以用ls 的其它參數顯示出來.
第9欄位:
文件名
如果是一個符號鏈接,那麼會有一個 "->" 箭頭符號,後面根一個它指向的文件名.
9. Linux 用戶(user)和用戶組(group)管理概述
一、理解linux的單用戶多任務,多用戶多任務概念;
linux
是一個多用戶、多任務的操作系統;我們應該了解單用戶多任務和多用戶多任務的概念;
1、linux
的單用戶多任務;
單用戶多任務;比如我們以beinan
登錄系統,進入系統後,我要打開gedit
來寫文檔,但在寫文檔的過程中,我感覺少點音樂,所以又打開xmms
來點音樂;當然聽點音樂還不行,MSN
還得打開,想知道幾個弟兄現在正在做什麼,這樣一樣,我在用beinan
用戶登錄時,執行了gedit
、xmms以及msn等,當然還有輸入法fcitx
;這樣說來就有點簡單了,一個beinan用戶,為了完成工作,執行了幾個任務;當然beinan這個用戶,其它的人還能以遠程登錄過來,也能做其它的工作。
2、linux
的多用戶、多任務;
有時可能是很多用戶同時用同一個系統,但並不所有的用戶都一定都要做同一件事,所以這就有多用戶多任務之說;
舉個例子,比如linuxSir.Org
伺服器,上面有ftp
用戶、系統管理員、web
用戶、常規普通用戶等,在同一時刻,可能有的弟兄正在訪問論壇;有的可能在上傳軟體包管理子站,比如luma
或Yuking
兄在管理他們的主頁系統和FTP
;在與此同時,可能還會有系統管理員在維護系統;瀏覽主頁的用的是nobody
用戶,大家都用同一個,而上傳軟體包用的是FTP用戶;管理員的對系統的維護或查看,可能用的是普通帳號或超級許可權root帳號;不同用戶所具有的許可權也不同,要完成不同的任務得需要不同的用戶,也可以說不同的用戶,可能完成的工作也不一樣;
值得注意的是:多用戶多任務並不是大家同時擠到一接在一台機器的的鍵盤和顯示器前來操作機器,多用戶可能通過遠程登錄來進行,比如對伺服器的遠程式控制制,只要有用戶許可權任何人都是可以上去操作或訪問的;
3、用戶的角色區分;
用戶在系統中是分角色的,在linux
系統中,由於角色不同,許可權和所完成的任務也不同;值得注意的是用戶的角色是通過UID和識別的,特別是UID;在系統管理中,系統管理員一定要堅守UID
唯一的特性;
root
用戶:系統唯一,是真實的,可以登錄系統,可以操作系統任何文件和命令,擁有最高許可權;
虛擬用戶:這類用戶也被稱之為偽用戶或假用戶,與真實用戶區分開來,這類用戶不具有登錄系統的能力,但卻是系統運行不可缺少的用戶,比如bin、daemon、adm、ftp、mail等;這類用戶都系統自身擁有的,而非後來添加的,當然我們也可以添加虛擬用戶;
普通真實用戶:這類用戶能登錄系統,但只能操作自己家目錄的內容;許可權有限;這類用戶都是系統管理員自行添加的;
4、多用戶操作系統的安全;
多用戶系統從事實來說對系統管理更為方便。從安全形度來說,多用戶管理的系統更為安全,比如beinan用戶下的某個文件不想讓其它用戶看到,只是設置一下文件的許可權,只有beinan一個用戶可讀可寫可編輯就行了,這樣一來只有beinan一個用戶可以對其私有文件進行操作,linux
在多用戶下表現最佳,linux能很好的保護每個用戶的安全,但我們也得學會linux
才是,再安全的系統,如果沒有安全意識的管理員或管理技術,這樣的系統也不是安全的。
從伺服器角度來說,多用戶的下的系統安全性也是最為重要的,我們常用的Windows
操作系統,它在系紡許可權管理的能力只能說是一般般,根本沒有沒有辦法和linux或Unix
類系統相比;
二、用戶(user)和用戶組(group)概念;
1、用戶(user)的概念;
通過前面對linux
多用戶的理解,我們明白linux
是真正意義上的多用戶操作系統,所以我們能在linux系統中建若干用戶(user)。比如我們的同事想用我的計算機,但我不想讓他用我的用戶名登錄,因為我的用戶名下有不想讓別人看到的資料和信息(也就是隱私內容)這時我就可以給他建一個新的用戶名,讓他用我所開的用戶名去折騰,這從計算機安全形度來說是符合操作規則的;
當然用戶(user)的概念理解還不僅僅於此,在linux系統中還有一些用戶是用來完成特定任務的,比如nobody和ftp
等,我們訪問linuxSir.Org
的網頁程序,就是nobody用戶;我們匿名訪問ftp
時,會用到用戶ftp或nobody
;如果您想了解linux系統的一些帳號,請查看
/etc/passwd
;
2、用戶組(group)的概念;
用戶和用戶組的對應關系是:一對一、多對一、一對多或多對多;
一對一:某個用戶可以是某個組的唯一成員;
多對一:多個用戶可以是某個唯一的組的成員,不歸屬其它用戶組;比如beinan和linuxsir兩個用戶只歸屬於beinan用戶組;
一對多:某個用戶可以是多個用戶組的成員;比如beinan可以是root組成員,也可以是linuxsir用戶組成員,還可以是adm用戶組成員;
多對多:多個用戶對應多個用戶組,並且幾個用戶可以是歸屬相同的組;其實多對多的關系是前面三條的擴展;理解了上面的三條,這條也能理解;
三、用戶(user)和用戶組(group)相關的配置文件、命令或目錄;
1、與用戶(user)和用戶組(group)相關的配置文件;
1)與用戶(user)相關的配置文件;
/etc/passwd
註:用戶(user)的配置文件;
/etc/shadow
註:用戶(user)影子口令文件;
2)與用戶組(group)相關的配置文件;
/etc/group
註:用戶組(group)配置文件;
/etc/gshadow
註:用戶組(group)的影子文件;
2、管理用戶(user)和用戶組(group)的相關工具或命令;
10. linux中 group和group- shadow和shadow-有什麼區別
1、/etc/passwd包含用戶信息
2、/etc/shadow包含passwd裡面用戶對應的密碼
3、/etc/group包含組信息
4、/etc/gshadow包含組加密信息
5、*-應該是相應文件的備份,如果誤操作可用此文件恢復:
/etc/passwd-
/etc/group-
/etc/shadow-
/etc/gshadow-
6、diff
group
group-看兩個文件的區別。