命令名稱:chmod
命令英文原意:change the permissions mode of a file
有兩種角色可以執行該命令,一種是 root 用戶,另一種就是文件的所有者。
語法:
大括弧里的內容表示只能選一個,其中 u 表示該文件的所有者,g 表示所屬組,o 表示其他人,a 表示所有角色。
比如,給 abc.txt 文件的所屬組加一個寫的許可權:
也可以同時做多個授權,比如給文件所有者加上執行許可權,給其他人去掉寫許可權:
還可以用數字表示許可權。許可權的數字表示:
如果一個文件的許可權是 rw-r--r--,那麼翻譯成數字就是 644,反過來,如果要更改文件的許可權,可以這樣寫:
這樣文件的許可權就改成 rw-r----- 了。
還有一個選項 -R 是遞歸修改許可權,該選項的功能是更改某個目錄的許可權的同時更改該目錄下所有的子目錄和文件的許可權。
命令名稱: chown
英文原意:change owner
語法:chown 用戶名 文件
只有管理員賬戶可以更改文件的所屬用戶。
例如:
命令名稱:chgrp
英文原意:change group
語法:chgrp 組名 文件
例如:
命令名稱:umask
使用命令 umask -S 可以查看新建文件或目錄的默認許可權。
現在顯示的是新建目錄的默認許可權,該目錄的所有者的默認許可權是 rwx,所屬組的默認許可權是 rx,其他人的默認許可權是 rx。為什麼說這是新建目錄的默認許可權而不是新建文件的默認許可權,如果你查看新建文件的許可權,會發現是 rw-r--r-- ,與新建目錄的許可權 rwxr-xr-x 相比,每種角色的許可權都少了 x。所以說,只要知道了新建目錄的默認許可權,再去掉 x 許可權,就是新建文件的默認許可權。
如果直接執行 umask 命令,會顯示一個數字。
這個數字叫做許可權掩碼,用 777 減去其後三位 022 就得到了每種角色的許可權,即 755。翻譯成字母就是 rwxr-xr-x 。
若想更改新建目錄或文件的默認許可權,只需執行 umask 許可權掩碼 即可。
例如,我想把新建目錄的默認許可權改成 rwxr-r-- ,翻譯成數字就是 744,再用 777 減去 744 就得到了許可權掩碼 033。
雖然 Linux 系統的目錄或文件的默認許可權可以修改,但是 Linux 這樣分配許可權是有一定道理的,最好不要輕易修改。
2. linux設置許可權的命令
linux許可權設置命令用ls命令所得到的表示法的格式是類似這樣的:-rwxr-xr-x 。下面解析一下格式所表示的意思。這種表示方法一共有十位: 9 8 7 6 5 4 3 2 1 0 - r w x r - x r - x 第9位表示文件類型,可以為p、d、l、s、c、b和-: p表示命名管道文件 d表示目錄文件 l表示符號連接文件 -表示普通文件 s表示socket文件 c表示字元設備文件 b表示塊設備文件 第8-6位、5-3位、2-0位分別表示文件所有者的許可權,同組用戶的許可權,其他用戶的許可權,其形式為rwx。linux下用chmod(change file modebit)改變一個文件的許可權一般有兩種方式:1、chmod [ugoa][+-=][rwx] filename這種方法很直觀,u代表擁有者(user),g代表組(group),o代表其它用戶(other),a代表所有用戶(all)。+-=代表增加、去除、設置為相應的許可權。rwx分別代表讀(read)、寫(write)、執行(exe)。比如chmod a+x filname 表示對所有用戶增加對filename的執行許可權。2.setUid,setGid如果一個命令被設置了SUID,那麼這個命令在執行期間,執行這個命令的用戶就具有了這個命令的屬主的許可權;如果一個命令被設置了SGID,那麼這個命令在執行期間,執行這個命令的用戶就具有了這個命令的屬組的許可權.設置SetUid許可權: chmod 4xxx filename取消SetUid許可權: chmod xxx filename設置SetGid許可權: chmod 2xxx filename取消SetGid許可權: chmod xxx filename如果執行chmod 6xxx filename命令即可同時為指定文件設置SetUid和SetGid,執行命令chmod 0xxx filename,即可同時取消指定文件的SetUid和SetGid許可權。
3. Linux用戶許可權管理命令
Linux系統中的用戶是分角色的,用戶的角色是由UID和GID來識別的(也就是說系統是識別的是用戶的UID、GID,而非用戶用戶名),一個UID是唯一(系統中唯一如同身份證一樣)用來標識系統的用戶賬號(用戶名)。
文件的用戶與用戶組分為超級管理員,普通用戶和系統用戶。
1)超級管理員的UID=0,GID=0,也可以這么說系統只要是識別出某個用戶的UIDGID都為0時,那麼這個用戶系統就認為是超級管理員。
2)普通用戶(管理員添加的),默認它的UIDGID是從500-65535,許可權很小,只能操作自己的家目錄中文件及子目錄(註:nobody它的UIDGID是65534)。
3)系統用戶,也稱虛擬用戶,也就是安裝系統時就默認存在的且不可登陸系統,它們的UIDGID是1-499。
我們可以通過cat /etc/passwd命令來查看所有的用戶信息,例如下圖,第三列是UID,第四列是GID:
創建用戶
useradd user1 創建用戶user1
useradd -e 12/30/2021 user2 創建用戶user2,有效期到2021-12-30
設置用戶密碼
passwd user1 設置密碼,有設置密碼的用戶不能用
這里設置密碼時可能會碰到密碼保護機制問題,這里需要注釋掉保護機制的問題
這個時候需要在編輯/etc/pam.d/system-auth文件,將其中的password requisite
和password sufficient兩行注釋掉,如下圖:
創建用戶組
groupadd –g 888 users 創建一個組users,其GID為888
groupadd users 不用g參數,使用默認的組ID
命令 gpasswd為組添加用戶
只有root和組管理員能夠改變組的成員:
gpasswd –a user1 users 把 user1加入users組
gpasswd –d user1 users 把 user1退出users組
命令groupmod修改組
groupmod –n user2 user1 修改組名user1為user2
groupdel刪除組
groupdel users 刪除組users
真正從安全性角度上來考慮的話,是要控制用戶一定執行命令的許可權,也就是哪些用戶可以執行哪些命令,不可以執行哪些命令,因此也就有了sudo這個應用,對於sudo提權,也就是修改/etc/sudoers的配置文件。
4. 文件夾賦許可權的命令是
文件有三種許可權,即所有者(user),所屬組(group),其他人(others)
2 誰可以更改文件?文件的所有者和root(超級用戶)
語法:chmod [{ugoa} {+-=} {rwx}] [文件或目錄]
for example:
對於一個文件:daniel.txt ,假設它的許可權是-rw-r--r--
若想給所有者添加x許可權:chmod u+x daniel.txt
若想給所有者添加x許可權和所屬組減少r許可權:chmod u+x,g-r daniel.txt
暴力修改許可權,給所有者添加rwx許可權(前提不管它之前是什麼許可權):chmod u=rwx daniel.txt
然而,使用數字更改許可權確實最常見的,而不是上面提到的。
許可權對應的數字表示 r--4,w--2,x--1
對於一個文件:daniel.txt ,假設它的許可權是-rw-r--r--
我們可以通過數字來進行修改許可權
chmod 745 daniel.txt 可以將daniel.txt文件修改為-rwxr--r-x
我們必須知道,修改一個文件夾的許可權,其文件夾內部的文件許可權是不會變的。
此時若想在修改一個文件許可權的同時也修改其中文件的許可權,須用如下語法:
chmod -R 777 pets 此時會將這個目錄下的所有文件和目錄的許可權作統一的修改。
5. 怎麼用命令將user用戶添加管理員許可權
1、首先打開電腦之後,在我的電腦上,右鍵選擇管理。
6. Linux許可權命令
許可權是Linux中的重要概念,每個文件/目錄等都具有許可權,通過ls -l命令我們可以 查看某個目錄下的文件或目錄的許可權
示例:在隨意某個目錄下ls -l
第一列的內容的信息解釋如下:
這個字元串有10位,可以分為4段來解讀。
第一段(第1位)表示是目錄還是文件,-表示是文件,d表示是目錄;
第二段(第2-4位,共3個字元串)表示文件所屬用戶對它的許可權 - 屬主許可權(User);
第三段(第5-7位,共3個字元串)表示文件所屬用戶組用戶對它的許可權 - 屬組許可權(Group);
第四段(第8-10位,共3個字元串)表示其他用戶對它的許可權 - 其他許可權(other);
註:
①我們用3位8進制來表示文件的許可權,r(read)用4標識,w(write)用2標識,x(excute)用1標識
②r–可讀,w–可寫,x–可執行。
③每一段的三位順序不可變,如果沒有對應的許可權,則使用-表示
上圖中的-rwxrw-r–可以用八進制數字764表示。
案例:
-rwxrwxrwx
轉算成八進制,777,代表這是一個對所有人開發許可權的文件。
15.6.2 修改文件/目錄的許可權的命令:chmod
示例:修改/test下的aaa.txt的許可權為屬主有全部許可權,屬主所在的組有讀寫許可權,
其他用戶只有讀的許可權
chmod u=rwx,g=rw,o=r aaa.txt
上述示例還可以使用數字表示:
chmod 764 aaa.txt
15.7 free查看內存信息
15.7.1 free查看內存信息
free指令會顯示內存的使用情況,包括實體內存,虛擬的交換文件內存,共享內存區段,以及系統核心使用的緩沖區等
df df -h 命令用於顯示目前在 Linux 系統上的文件系統磁碟使用情況統計
補充:
關機命令
reboot 重新啟動操作系統
shutdown -h now 立刻關機,其中now相當於時間為0的狀態
shutdown -h 10:23
shutdown -h +10 系統再過十分鍾後自動關機
總結
Linux命令
目錄操作
cd usr/ 切換到該目錄下usr目錄
cd .. 切換到上一層目錄
cd / 切換到系統根目錄
mkdir 目錄名稱 創建目錄
ls 目錄名稱 查詢該目錄下所有的目錄和文件
ls [-a] 目錄名稱 查詢該目錄下所有的目錄和文件,包含隱藏文件
ls [-l] 目錄名稱 查詢該目錄下所有的目錄和文件的詳細信息
find / -name 目錄名稱 查找/root下的目錄(文件)
mv 目錄名稱 新目錄名稱 修改目錄名稱
mv 目錄名稱 目錄的新位置 剪切
cp -r 目錄名稱 目錄的目標位置 拷貝
rm -rf 目錄 強制刪除目錄
文件操作
touch 文件名稱 創建空文件
cat/more/less/tail 文件 查看文件內容
tail -f 文件 動態查看/實時查看文件(日誌)
grep 要搜索的字元串 要搜索的文件 關鍵字搜索
vi/vim 文件 修改文件內容
rm -rf 文件 強制刪除文件
文件的打包
tar -zcvf 文件名.tar 要打包的文件
文件的解壓
tar -xvf 文件名.tar
擴充:將文件解壓到固定位置
tar -xvf 文件名.tar -C 指定解壓的位置
查詢當前所在位置
pwd
查看進程
ps -ef | grep 進程名稱(tomcat/mysql)
殺死進程
kill -9 進程pid
查看埠號
netstat -an | grep 埠號(3306)
查看伺服器ip
ifconfig
查看網路是否能正常使用
ping 外網地址 查看是否能訪問外網
ping 內網ip 查看是否能訪問內網
許可權命令
chmod 777 文件 賦權
查看cpu
top
查看磁碟信息
df -h
查看內存信息
free
關機命令
shutdown -h now 立刻關機,其中now相當於時間為0的狀態
shutdown -h 10:23
shutdown -h +10 系統再過十分鍾後自動關機
重新啟動
reboot 重新啟動操作系統
```·
7. linux文件許可權命令
有三種不同類型的用戶可對文件或目錄進行訪問:文件所有者,同組用戶、其他用戶。所有者一般是文件的創建者。所有者可以允許同組用戶有權訪問文件,還可以將文件的訪問許可權賦予系統中的其他用戶。在這種情況下,系統中每一位用戶都能訪問該用戶擁有的文件或目錄。
每一文件或目錄的訪問許可權都有三組,每組用三位表示,分別為文件屬主的讀、寫和執行許可權;與屬主同組的用戶的讀、寫和執行許可權;系統中其他用戶的讀、寫和執行許可權。當用ls -l命令顯示文件或目錄的詳細信息時,最左邊的一列為文件的訪問許可權。例如:
$ ls-l sobsrc.tgz
-rw-r--r--1root root483997Ju1l517:3lsobsrc.tgz
橫線代表空許可。r代表只讀,w代表寫,x代表可執行。注意這里共有10個位置。第一個字元指定了文件類型。在通常意義上,一個目錄也是一個文件。如果第一個字元是橫線,表示是一個非目錄的文件。如果是d,表示是一個目錄。例如:
– rw- r– r–
普通文件 文件主 組用戶 其他用戶
是文件sobsrc.tgz 的訪問許可權,表示sobsrc.tgz是一個普通文件;sobsrc.tgz的屬主有讀寫許可權;與sobsrc.tgz屬主同組的用戶只有讀許可權;其他用戶也只有讀許可權。
確定了一個文件的訪問許可權後,用戶可以利用Linux系統提供的chmod命令來重新設定不同的訪問許可權。也可以利用chown命令來更改某個文件或目錄的所有者。利用chgrp命令來更改某個文件或目錄的用戶組。
下面分別對這些命令加以介紹。
chmod 命令
chmod命令是非常重要的,用於改變文件或目錄的訪問許可權。用戶用它控制文件或目錄的訪問許可權。
以主文件夾下的一個名為「cc」的文件夾為例。下面一步一步介紹如何修改許可權:
1.打開終端。輸入」su」(沒有引號)
2.接下來會要你輸入密碼,輸入你的root密碼。
3.假設我的文件夾在主目錄里,地址為 /var/home/dengchao/cc 。假設我要修改文件許可權為777,則在終端輸入 chmod 777 /var/home/userid/cc 文件夾的許可權就變為了777。
如果是修改文件夾及子文件夾許可權可以用 chmod -R 777 /var/home/userid/cc
具體的許可權(例如777的含意等)在下面解釋下:
1.777有3位,最高位7是設置文件所有者訪問許可權,第二位是設置群組訪問許可權,最低位是設置其他人訪問許可權。
其中每一位的許可權用數字來表示。具體有這些許可權:
r(Read,讀取,許可權值為4):對文件而言,具有讀取文件內容的許可權;對目錄來說,具有瀏覽目 錄的許可權。
w(Write,寫入,許可權值為2):對文件而言,具有新增、修改文件內容的許可權;對目錄來說,具有刪除、移動目錄內文件的許可權。
x(eXecute,執行,許可權值為1):對文件而言,具有執行文件的許可權;對目錄了來說該用戶具有進入目錄的許可權。
2. 首先我們來看如何確定單獨一位上的許可權數值,例如最高位表示文件所有者許可權數值,當數字為7時,7用「rwx」表示 –{4(r)+2(w)+1(x)=7}–又如果數值為6,則用「rw-」表示–{4(r)+2(w)+0(x)=6}–,」-」表示不具備許可權,這里表 示不具備「執行」許可權。
假如我們設定其他用戶的訪問許可權為 「r–」,則數值為4+0+0=4
一開始許多初學者會被搞糊塗,其實很簡單,我們將rwx看成二進制數,如果有則用1表示,沒有則有0表示,那麼rwx則可以表示成為:111
而二進制的111就是7。
3.我們再來看下怎麼確定3個數位上的許可權。假如我們要給一個文件設置許可權,具體許可權如下:
文件所有者有「讀」、「寫」、「執行」許可權,群組用戶有「讀」許可權,其他用戶有「讀」許可權,則對應的字母表示為」rwx r– r–「,對應的數字為744
一般都是最高位表示文件所有者許可權值,第二位表示群組用戶許可權,最低位表示其他用戶許可權。
下面來舉些例子熟悉下。
許可權 數值
rwx rw- r– 764
rw- r– r– 644
rw- rw- r– 664
該命令有兩種用法。一種是包含字母和操作符表達式的文字設定法;另一種是包含數字的數字設定法。
1. 文字設定法
chmod [who] [+ | – | =] [mode] 文件名¼
命令中各選項的含義為:
操作對象who可是下述字母中的任一個或者它們的組合:
u 表示「用戶(user)」,即文件或目錄的所有者。
g 表示「同組(group)用戶」,即與文件屬主有相同組ID的所有用戶。
o 表示「其他(others)用戶」。
a 表示「所有(all)用戶」。它是系統默認值。
操作符號可以是:
+ 添加某個許可權。
– 取消某個許可權。
= 賦予給定許可權並取消其他所有許可權(如果有的話)。
設置mode所表示的許可權可用下述字母的任意組合:
r 可讀。
w 可寫。
x 可執行。
X 只有目標文件對某些用戶是可執行的或該目標文件是目錄時才追加x 屬性。
s 在文件執行時把進程的屬主或組ID置為該文件的文件屬主。方式「u+s」設置文件的用戶ID位,「g+s」設置組ID位。
t 保存程序的文本到交換設備上。
u 與文件屬主擁有一樣的許可權。
g 與和文件屬主同組的用戶擁有一樣的許可權。
o 與其他用戶擁有一樣的許可權。
-c:若該檔案許可權確實已經更改,才顯示其更改動作
-f:若該檔案許可權無法被更改也不要顯示錯誤訊息
-v:顯示許可權變更的詳細資料
-R:對目前目錄下的所有檔案與子目錄進行相同的許可權變更(即以遞回的方式逐個變更)
–help:顯示輔助說明
–version:顯示版本
文件名:以空格分開的要改變許可權的文件列表,支持通配符。在一個命令行中可給出多個許可權方式,其間用逗號隔開。例如:chmod g+r,o+r example使同組和其他用戶對文件example 有讀許可權。
例1:
$ chmod a+x sort
即設定文件sort的屬性為:
文件屬主(u) 增加執行許可權
與文件屬主同組用戶(g) 增加執行許可權
其他用戶(o) 增加執行許可權
例2:
$ chmod ug+w,o-x text
即設定文件text的屬性為:
文件屬主(u) 增加寫許可權
與文件屬主同組用戶(g) 增加寫許可權
其他用戶(o) 刪除執行許可權
例3:
$ chmod u+s a.out
假設執行chmod後a.out的許可權為(可以用ls – l a.out命令來看):
–rws--x--x1inin users7192Nov414:22a.out
並且這個執行文件要用到一個文本文件shiyan1.c,其文件存取許可權為「–rw——-」,即該文件只有其屬主具有讀寫許可權。
當其他用戶執行a.out這個程序時,他的身份因這個程序暫時變成inin(由於chmod命令中使用了s選項),所以他就能夠讀取shiyan1.c這個文件(雖然這個文件被設定為其他人不具備任何許可權),這就是s的功能。
因此,在整個系統中特別是root本身,最好不要過多的設置這種類型的文件(除非必要)這樣可以保障系統的安全,避免因為某些程序的bug而使系統遭到入侵。
例4:
$ chmod a–x mm.txt
$ chmod–x mm.txt
$ chmod ugo–x mm.txt
以上這三個命令都是將文件mm.txt的執行許可權刪除,它設定的對象為所有使用者。
2. 數字設定法
我們必須首先了解用數字表示的屬性的含義:0表示沒有許可權,1表示可執行許可權,2表示可寫許可權,4表示可讀許可權,然後將其相加。所以數字屬性的格式應為3個從0到7的八進制數,其順序是(u)(g)(o)。
例如,如果想讓某個文件的屬主有「讀/寫」二種許可權,需要把4(可讀)+2(可寫)=6(讀/寫)。
數字設定法的一般形式為:chmod [mode] 文件名¼
例1:
$ chmod644mm.txt
$ ls–l
即設定文件mm.txt的屬性為:
-rw-r--r--1inin users1155Nov511:22mm.txt
文件屬主(u)inin 擁有讀、寫許可權
與文件屬主同組人用戶(g) 擁有讀許可權
其他人(o) 擁有讀許可權
例2:
$ chmod750wch.txt
$ ls–l
-rwxr-x---1inin users44137Nov129:22wchtxt
即設定wchtxt這個文件的屬性為:
文件主本人(u)inin 可讀/可寫/可執行權
與文件主同組人(g) 可讀/可執行權
其他人(o) 沒有任何許可權
chgrp命令
功能:改變文件或目錄所屬的組。
語法:chgrp[選項] group filename¼
參數:
-c或–changes 效果類似」-v」參數,但僅回報更改的部分。
-f或–quiet或–silent 不顯示錯誤信息。
-h或–no-dereference 只對符號連接的文件作修改,而不更動其他任何相關文件。
-R或–recursive 遞歸處理,將指定目錄下的所有文件及子目錄一並處理。
-v或–verbose 顯示指令執行過程。
–help 在線幫助。
–reference=<參考文件或目錄> 把指定文件或目錄的所屬群組全部設成和參考文件或目錄的所屬群組相同。
–version 顯示版本信息。
該命令改變指定指定文件所屬的用戶組。其中group可以是用戶組ID,也可以是/etc/group文件中用戶組的組名。文件名是以空格分開的要改變屬組的文件列表,支持通配符。如果用戶不是該文件的屬主或超級用戶,則不能改變該文件的組。
該命令的各選項含義為:
– R 遞歸式地改變指定目錄及其下的所有子目錄和文件的屬組。
例1:
$chgrp-R book/opt/local/book
改變/opt/local /book/及其子目錄下的所有文件的屬組為book。
chown命令
功能:更改某個文件或目錄的屬主和屬組。這個命令也很常用。例如root用戶把自己的一個文件拷貝給用戶yusi,為了讓用戶yusi能夠存取這個文件,root用戶應該把這個文件的屬主設為yusi,否則,用戶yusi無法存取這個文件。
語法:chown[選項] 用戶或組 文件
說明:chown將指定文件的擁有者改為指定的用戶或組。用戶可以是用戶名或用戶ID。組可以是組名或組ID。文件是以空格分開的要改變許可權的文件列表,支持通配符。
參數說明:
user : 新的檔案擁有者的使用者 ID
group : 新的檔案擁有者的使用者群體(group)
-c : 若該檔案擁有者確實已經更改,才顯示其更改動作
-f : 若該檔案擁有者無法被更改也不要顯示錯誤訊息
-h : 只對於連結(link)進行變更,而非該 link 真正指向的檔案
-v : 顯示擁有者變更的詳細資料
-R : 對目前目錄下的所有檔案與子目錄進行相同的擁有者變更(即以遞回的方式逐個變更)
–help : 顯示輔助說明
–version : 顯示版本
例1:把文件yusi123.com的所有者改為yusi。
$chownyusi yusi123.com
例2:把目錄/demo及其下的所有文件和子目錄的屬主改成yusi,屬組改成users。
$ chown-R yusi.users/demo
例如:chown qq /home/qq (把home目錄下的qq目錄的擁有者改為qq用戶)
例如:chown -R qq /home/qq (把home目錄下的qq目錄下的所有子文件的擁有者改為qq用戶)
8. linux添加執行許可權命令開機運行
文件添加執行許可權:
chmod +x 文件名
給/etc/rc.d/rc.local添加執行許可權,/etc/rc.local是前面的軟連接
chmod +x /etc/rc.d/rc.local
然後修改rc.local裡面的內容就行啦
可以寫 su -c root -s "開機啟動的程序" 這是以root用戶運行的,哎自己網路吧。。。。
9. 在linux系統中修改文件許可權使用的命令是
chmod
chmod命令
作用:修改文件、目錄的許可權
語法:chmod [對誰操作][操作符][賦予的許可權] 文件名
操作對象:u 用戶user,表現文件或目錄的所有者
g 用戶組group,表現文件或目錄所屬的用戶組
o 其他用戶other
a 所有用戶all
操作符:+ 添加許可權 - 減少許可權 =直接給定一個許可權
許可權:
r w x
二進制代表100 010 001
十進制代表 4 2 1
例:
rw-的值為4+2=6
rwxr-xr-x的值為755
語法:
1.chmod 755 文件或文件夾名字
2.chmod a=rwx 1.txt=chmod 777 1.txt