Linux常用命令(長期更新...)

用戶與組

用戶

用戶添加—useradd
參數 描述
-d 指定用戶主目錄,若目錄不存在則使用-m 創建主目錄
-g 指定用戶某個用戶組
-G 指定用戶的附加組
-s 指定用戶的登錄shell(查看系統登錄shellchsh -l/etc/shells
# 添加登錄用戶/bin/sh,主目錄/home/tom,主組developer,又屬於組root
useradd –d /home/tom -m tom -g developer -s /bin/sh -G root
用戶管理

用戶管理文件/etc/passwd

# 用戶名:口令:用戶標識號:組標識號:註釋性描述:主目錄:登錄Shell
mysql:x:997:995::/home/mysql:/sbin/nologin
nginx:x:996:994::/home/nginx:/bin/bash
tom:x:1000:1010::/home/tom:/bin/bash
密碼口令

添加修改密碼passwd 選項 用戶名

passwd tom
Old password:****** 
New password:******* 
Re-enter new password:*******
用戶權限sudo

修改文件/etc/sudoers

# 給文件添加寫權限
chmod u+w /etc/sudoers
# root下添加一行
tom ALL=(ALL) ALL
# 關閉寫權限
chmod u-w /etc/sudoers

添加組—groupadd

參數 描述
-g 指定該組的標識號
# 添加編號1010的developer組
groupadd -g 1010 developer
組管理

組信息/etc/group

mysql:x:995:
nginx:x:994:
developer:x:1010:

文件壓縮

1. tar 打包工具—(tar 參數 壓縮名 壓縮文件)
  • 添加-c參數創建壓縮包,-f參數指定文件名
# 打包 test 目錄爲 test.tar
tar -cf test.tar test/
  • 創建*.tar.gz,添加-z參數,使用gzip工具打包
# 打包 test 目錄爲 test.tar.gz
tar -czf test.tar test/
  • 解壓
tar -zxvf test.tar.gz
2. unzip 解壓縮
# 將 test.zip 解壓到當前目錄
unzip test.zip

磁盤與目錄

1. du

# 查看所有文件大小(以KB顯示)
du -h
# 查看當前目錄下所有文件的大小(以M顯示)
du -sh *
12K ./html
72K ./conf
8.5M    ./sbin
8.6M    ./

2. df

參數 描述
-h 常用的容易閱讀方式顯示
-a 列出所有文件系統
# df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        40G  6.0G   32G  16% /
devtmpfs        911M     0  911M   0% /dev
tmpfs           920M     0  920M   0% /dev/shm
tmpfs           920M  380K  920M   1% /run

3. ls

# 查看指定目錄
ls /path/to
# -a是顯示隱藏文件
ls -al 
# -l是以更詳細的列表形式顯示,與`ll`作用相同
ls -l

4. cd

# 切換目錄
cd /path/to 
# 切換到用戶主目錄
cd ~ 
# 回退到上次所在的目錄
cd - 
# 什麼路徑都不帶,則回到用戶的主目錄
cd 

5. find

find PATH option action
參考:http://man.linuxde.net/find

# -name 查找指定名稱的文件 -iname 忽略大小寫
find /home/tom -name "*.sh" -ls         //查找tom下.sh結尾的文件,以 ls 命令列出

# -type 文件類型 一般文件(f),目錄 (d)
find /home/ -name "foo*" -type d        // 查找home下,名稱foo開頭的目錄

# -user 用戶
find /home/ -user tom                   // 查詢home下屬於tom用戶的文件

# -perm 權限
find . -type f -perm 777                // 當前目錄權限爲777的文件

# -exec 與其他命令結合
find /home/ -name "*.sh" -exec cp {} shell \;    //查找的.sh文件複製到shell文件夾中
find /home/ -name "*.sh" -exec rm {} \;          //查找的.sh文件並刪除

5. cat

# 顯示aop.text
cat apo.text

5. tail

# -f 實時偵測文件的後續寫入內容,查看日誌的寫入,-n 顯示幾行
tail -50f err.log                         // 實時查看err.log,最初顯示50行

權限管理

u文件的擁有者,g文件所屬組,o其他用戶,a表示三者
+增加權限,-取消權限,=唯一設定權限|
普通權限:
r4
w2
x1執行
特殊權限:

權限 表示 描述
SUID=4 s出現在文件所有人的x權限上 1)SUID只能用於二進制可執行文件,對目錄無效
2)執行者若具有該文件的x權限,則將具有文件所有人的權限
3)權限只在文件執行時有效,執行完畢不再擁有所有人權限
SGID=2 s出現在文件所屬羣組的x權限上 1)使用者若有此目錄的x,w權限,則可進入和修改此目錄
2)使用者在此目錄下的羣組將變成該目錄的羣組,新建的文件,羣組是此目錄的羣組
SGID對於文件來說:
1)SGID只對二進制可執行文件有效
2)執行者若具有該文件的x權限,則將具有文件所屬羣組的權限
3)權限只在文件執行時有效,執行完畢不再擁有所屬羣組權限
SBIT=1 t出現在文件其他用戶的x權限上 1)和SUID,SGID不同的是,只能用於目錄
2)使用者在該目錄下,僅目錄所有人與root纔有權力刪除新建的目錄或文件

1. chmod

# 可使此程序具有root的權限
chmod 4755 filename                     // 特殊權限設置

# 使程序具有全部權限
chmod 777 file

# 使用戶與組有可寫權限
chmod ug+w file.txt

# 遞歸目錄全部可執行
chmod -R a+x /file/
發佈了23 篇原創文章 · 獲贊 18 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章