最常用LINUX常用命令

來源:互聯網
上載者:User

LINUX常用命令(基礎)

1. man 對你熟悉或不熟悉的命令提供協助解釋

eg:man ls 就可以查看ls相關的用法

註:按q鍵或者ctrl+c退出,在linux下可以使用ctrl+c終止當前程式運行。

2. ls 查看目錄或者檔案的屬*,列舉出任一目錄下面的檔案

eg: ls /usr/man

ls -l

a.d表示目錄(directory),如果是一個"-"表示是檔案,如果是l則表示是一個串連檔案(link)

b.表示檔案或者目錄許可許可權.分別用可讀(r),可寫(w),可運行(x)。

3. cp 拷貝檔案

eg: cp filename1 filename2 //把filename1拷貝成filename2

cp 1.c netseek/2.c //將1.c拷到netseek目錄下命名為2.c

4. rm 刪除檔案和目錄

eg: rm 1.c //將1.c這個檔案刪除

5. mv 移走目錄或者改檔案名稱

eg: mv filename1 filename2 //將filename1 改名為filename2

mv qib.tgz ../qib.tgz //移到上一級目錄

6. cd 改變目前的目錄 pwd 查看當前所在目錄完整路徑

eg: pwd //查看當前所在目錄路徑

cd netseek //進入netseek這個目錄

cd //退出目前的目錄

7. cat,more命令

將某個檔案的內容顯示出來。兩個命令所不同的是:cat把檔案內容一直列印出來,而 more則分屏顯示

eg; cat>1.c //就可以把代碼粘帖到1.c檔案裡,按ctrl+d 儲存代碼。

cat 1.c 或more 1.c //都可以查看裡面的內容。

gcc -o 1 1.c //將1.c編譯成.exe檔案,我們可以用此命編譯出代碼。

8.chmod 命令 許可權修改 用法:chmod 一位8進位數 filename。

eg: chmod u+x filenmame //只想給自己運行,別人只能讀

//u表示檔案主人, g 表示檔案檔案所在組。 o 表示其他人 ;r 表可讀,w 表可寫,x 表可以運行

chmod g+x filename //同組的人來執行

9. clear,date命令

clear:清屏,相當與DOS下的cls;date:顯示目前時間。

10. mount 載入一個硬體裝置

用法:mount [參數] 要載入的裝置 載入點

eg: mount /dev/cdrom

cd /mnt/cdrom //進入光碟片目錄

11. su 在不退出登陸的情況下,切換到另外一個人的身份

用法: su -l 使用者名稱(如果使用者名稱預設,則切換到root狀態)

eg:su -l netseek (切換到netseek這個使用者,將提示輸入密碼)

12.whoami,whereis,which,id

//whoami:確認自己身份

//whereis:查詢命令所在目錄以及協助文檔所在目錄

//which:查詢該命令所在目錄(類似whereis)

//id:列印出自己的UID以及GID。(UID:使用者身份唯一標識。GID:使用者組身份唯一標識。每一個使用者只能有一個唯一的UID和 GID)

eg: whoami //顯示你自已登陸的使用者名稱

whereis bin 顯示bin所在的目錄,將顯示為:/usr/local/bin

which bin

13. grep,find

grep:常值內容搜尋;find:檔案或者目錄名以及許可權屬主等匹配搜尋

eg: grep success *    /*尋找目前的目錄下面所有檔案裡面含有success字元的檔案

14. kill 可以殺死某個進行中或者已經是dest狀態的進程

eg; ps ax

15. passwd 可以設定口令

16. history 使用者用過的命令

eg: history //可以顯示使用者過去使用的命令

17. !! 執行最近一次的命令

18. mkdir命令

eg: mkdir netseek //建立netseek這個目錄

19. tar 解壓命令

eg: tar -zxvf nmap-3.45.tgz //將這個解壓到nmap-3.45這個目錄裡

20. finger 可以讓使用者查詢一些其他使用者的資料

eg: finger //查看所用使用者的使用資料

finger root //查看root的資料

add user

所以建立新帳號的過程也就是和這幾個檔案在打交道,不過不要害怕,通過 useradd 命令來建立新帳號,系統會自動與這些檔案進行操作不用咱手動一個一個的來更改,這樣也不用擔心出錯的問題。 呵呵。

useradd 文法結構:

有事找“男人”是Linux最有效方法,咱先來看一下useradd的文法結構,因為本人現在系統是Fedora11,其man語句直接用的中文,雖然方便閱讀卻也難免有錯誤,不過基本還好,大家看到下面的漢字勿怪,呵呵:

名 稱 useradd – 帳 號 建 立 或 更 新 新 使 用 者 的 資 訊

語 法 useradd [-c comment] [-d home_dir]
[-e expire_date] [-f inactive_time]
[-g initial_group] [-G group[,...]]
[-m [-k skeleton_dir] | -M] [-s shell]
[-u uid [ -o]] [-n] [-r] username

useradd -D [-g default_group] [-b default_home]
[-f default_inactive] [-e default_expire_date]
[-s default_shell]

首先來說一下這個 -D 參數,如果加上此參數當 useradd 會顯示出現建立新帳號的一些預設值,或是通過指定參數內容來更新預設值。 這個咱們稍候再來討論,暫且略過。

看其沒有-D參數的各個選項,下面簡單為大家描述一二,有個印象,一會兒再看我給列位的樣本時也不至於頭暈。呵呵。

參數名 描述
-u 後面接UID,是一組數字。直接給這個帳號指定一個特定的UID。
-g 後面接的使用者組名稱就是之前提到的初始使用者組。
該group ID(GID)會放置到 /etc/passwd 的第四個欄位內。
-G 後面接的使用者組名稱是這個帳號還可以屬於哪些使用者組。
此參數會修改 /etc/group 內的相關資料。
-M 強制不建立家目錄。
-m 強制必須建立家目錄。
-c 就是 /etc/passwd 第五欄的使用者說明資訊,可以隨便設定,各位隨意。
-d 用此參數後面指定的路徑做為新帳號的家目錄,而不使用預設值。
-r 建立的帳號為系統帳號:該帳號的UID會有限制(/etc/login.defs)
-s 指定新帳號的預設shell

useradd 樣本:

說了這麼半天,咱也來動手用 useradd 命令建立幾個帳號,提升一下咱的動手能力。另外,算是做個示範吧,畢竟實踐出真知嘛。呵呵,不過我忘了這是哪位偉人說的話了。嗯。

# 不加任何參數,直接預設建立一個新使用者 chongpig 
[ simaopig@ xiaoxiaozi ~] $ useradd chongpig
bash : / usr/ sbin/ useradd: 許可權不夠
[ simaopig@ xiaoxiaozi ~] $ su 
密碼:
[ root@ xiaoxiaozi simaopig] # useradd chongpig 
[ root@ xiaoxiaozi simaopig] # ls -l /home/ 
總計 24 
drwx------.  4 chongpig chongpig  4096 07-21 21 :58 chongpig
drwx------.  2 root     root     16384 07-12 13 :08 lost+found
drwxr-xr-x. 44 simaopig simaopig  4096 07-21 21 :21 simaopig

# 在和使用者相關聯的幾個檔案裡面搜一下chongpig這個帳號 

[ root@ xiaoxiaozi simaopig] # grep chongpig /etc/passwd /etc/shadow /etc/group 
/ etc/ passwd :chongpig:x:501:501::/ home/ chongpig:/ bin/ bash 
/ etc/ shadow:chongpig:!! :14446 :0 :99999 :7 :::
/ etc/ group:chongpig:x:501 :# 建立一個新帳號 simaopig2 ,且看一下 UID 888 不存在,那麼就指定給simaopig2, 
# 並且把它加到 mysql 組中 
[ root@ xiaoxiaozi simaopig] # grep 888 /etc/passwd 
[ root@ xiaoxiaozi simaopig] # useradd -u 888 -g mysql simaopig2 
[ root@ xiaoxiaozi simaopig] # grep simaopig2 /etc/passwd /etc/shadow /etc/group 
/ etc/ passwd :simaopig2:x:888:27::/ home/ simaopig2:/ bin/ bash 
/ etc/ shadow:simaopig2:!! :14446 :0 :99999 :7 :::# 建立一個系統帳號simaopig3 看一下系統帳號有啥不同 
[ root@ xiaoxiaozi simaopig] # useradd -r simaopig3 
[ root@ xiaoxiaozi simaopig] # grep simaopig3 /etc/passwd /etc/shadow /etc/group 
/ etc/ passwd :simaopig3:x:490:484::/ home/ simaopig3:/ bin/ bash 
/ etc/ shadow:simaopig3:!! :14446 ::::::
/ etc/ group:simaopig3:x:484 :

系統帳號的 UID 與 GID 竟然不同,而且在 /etc/group 裡面有對應關係。

細心的同學一定會發現,用 useradd 建立的帳號是沒有登入功能的,因為其在 /etc/shadow 中的密碼欄是不可能登入的,以 ! 開頭 。所以近日我們還會討論 Linux 給使用者更改密碼的方法。

useradd 預設值:

上面的樣本可以讓我們瞭解到,系統其實已經規範好了一些新增使用者時的參數了,像我沒有指定使用者的家目錄,也沒有指定使用者的 UID 和 GID 可是系統會幫我們為使用者加上,同時其預設shell被設定成了 /bin/bash ,也讓我知道了,使用 useradd 命令一定要有 root 許可權。那麼, useradd 去新增使用者時,其預設值是多少呢?

使用上面所說的 useradd 的 -D 參數可以顯示出其預設值,各位可以看出,其值完全與 /etc/default/useradd 這個檔案裡面的內容相同。原來在 linux 中使用 useradd 去新增使用者時,一些在 /etc/passwd 中的值是會去參考 /etc/default/useradd 這個檔案的 。其檔案內容基本如下:

# useradd defaults file 
# 預設的使用者組 
GROUP =100 
# 家目錄的地址 
HOME =/ home 
# 密碼到期的寬限時間,對應 /etc/shadow 的第七欄 
INACTIVE =-1             
# 帳號失效日期,對應 /etc/shadow 的第八欄 
EXPIRE =                 
# 預設使用的shell 
SHELL =/ bin/ bash          
# 使用者家目錄裡面的內容參照檔案(裡面基本上全為隱藏檔案——>以“.”開頭的檔案) 
SKEL =/ etc/ skel            
# 建立使用者的mailbox 
CREATE_MAIL_SPOOL =yes

總結及囉嗦:

簡簡單單的先介紹至此,傳說中 linux 建立帳號還可以使用 adduser 命令,其實這與 useradd 是同一個命令的不同名字罷了。因為大家用 man adduser 進入的完全是 useradd 的介紹頁。當然有更簡單的通過圖形介面建立使用者的方法,但是這我就不教大家了。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.