1. 用戶賬號最重要的兩個文件就是”/etc/passwd”與”/etc/shadow”,可以用man 5 passwd查看。
/etc/passwd中”:”分隔開7部分內容,分別是:賬號名稱,密碼(顯示為x表示密碼已經移到shadow這個加密後的文件中去了),UID,GID,用戶信息說明欄,家目錄,登陸Shell(比如,如果想讓用戶登陸後直接進入vi,把這個shell直接改為/usr/bin/vi就好了)。
/etc/shadow中”:”分隔開9個字段,分別是:賬號名稱,密碼(如果此欄第一個字符為*或!,表示這個賬號並不會用來登錄),最近更改密碼的日期,密碼不可更改的天數,密碼需要重新更改的天數,密碼更改期限前的警告期限,密碼過期的寬限時間,賬號失效日期,保留。
相關閱讀:
Linux學習筆記(一)——認識linux和主機 http://www.linuxidc.com/Linux/2012-03/56917.htm2. 如果忘記root密碼怎麼辦?
以各種可行的方法啟動進入Linux,如單用戶維護模式,或者是以Live CD進入Linux系統,之後,順利掛載硬盤,然後進入/etc/shadow文件中,將root密碼這一欄全部清空。然後登陸Linux,這時root不需要密碼就可以登陸了。最後用passwd設置root密碼。
3. 有效用戶組與初始用戶組,查看所屬的用戶組groups,切換用戶組newgrp。
4. Linux賬號管理
新增用戶useradd,默認值參考/etc/default/useradd,用戶家目錄參考/etc/skel/*,與密碼及UID/GID有關的設置參考/etc/login.defs中。
設置用戶數據usermod,刪除用戶userdel。
如果想要完整地將某個賬號刪除,最好在執行userdel–r username之前,先以”find / -user username”查出整個系統內屬於username的文件,然後再刪除。
5. 切換用戶身份
su - 使用root的環境設置參數文件
-l username 使用username的環境設置參數文件
sudo 這是讓用戶“輸入用戶自己的密碼“,參考/etc/sudoers。建議一定要用visudo去編輯/etc/sudoers文件,因為visudo會去檢查/etc/sudoers內部的語法。若要使用sudo時不輸入密碼,則可以修改為”username ALL = (ALL) NOPASSWD: ALL”。
6. 當/etc/nologin文件存在時,任何一個一般身份賬戶在嘗試登陸時,僅會獲得/etc/nologin內容的信息,而無法登陸主機。
7. 查詢用戶:w、who、last、lastlog
用戶對話:talk、mesg、wall
8. 例行性命令
at 僅進行一次的工作任務分配
atq和atrm查看和刪除需要at執行的任務
cron 循環執行的例行性命令
cron執行的每一項工作都記錄到/var/log/cron這個登錄文件中。
crontab -e(編輯) -l(查看) -r(刪除,注意這會刪除全部的工作,刪除一項工作的時候使用cron -e)
對於想要每天、每小時執行的命令,可以查看/etc/crontab。
9. 作業管理:
& 將命令放到後台執行
[Ctrl]-z 將“當前”作業放到後台“暫停”
jobs 觀察當前後台作業狀態
fg 將後台作業拿到前台處理
bg 讓作業在後台運行
kill 管理後台作業
10. dmesg 查看開始過程中的消息
11. 進程的執行順序
PRI(new) = PRI(old) + nice,PRI越小,表示該進程“優先級越高”,PRI是由系統動態產生的,不是一直固定的值。一般用戶的nice值為0~19,root可用的nice值為-20~19。
開始執行進程就立即提供一個特定的nice值,用nice命令,如nice -n-5 vi。
調整某個已經存在的PID的nice值,用renice命令,top同樣也可以調整nice值。
注意,整個nice值是可以在父進程-子進程之間傳遞的。
12. /proc文件系統
對於/proc文件系統的詳細說明,可以man5 proc查看。
其中/proc/cmdline,加載kernel執行的相關參數,查看此文件,可以了解系統是如何啟動的。
13. fuser 由文件或設備去找出使用該文件或設備的進程
lsof 查詢某個進程打開或使用的文件與設備
pidof 查詢某一進程對應的PID