linux是最常用的伺服器端作業系統;
可以在日常工作中,通過linux命令解決,快速排查、解決問題;
任何語言都要編譯成作業系統api,擅長linux,對於深入理解程式語言極有幫助。
冰凍三尺,非一日之寒。
坑,其實未必是坑,只是因為當時我們還年輕。
1、使用者與使用者組
linux系統中,預設情況下,賬號都是記錄在 /etc/passwd 這個檔案中;個人密碼則是記錄在 /etc/shadow 這個檔案下;所有的組名都記錄在 /etc/group
2、檔案許可權的概念
檔案許可權,對於使用者組的設定,是相當重要的,尤其對於初學者來說,因為檔案的許可權於屬性是學習linux的乙個相當重要的關卡,如果沒有這部分的概念,那麼你很可能老是聽不懂別人在講什麼。尤其是螢幕出現了「permission deny」,不要擔心,肯定是許可權設定錯誤。
3、隱藏檔案
就是檔名第乙個字元為「.」的檔案
4、設定許可權
修改 linux 檔案與目錄的屬性之前,一定要先搞清楚,什麼資料是可變的,什麼是不可變的。
5、目錄與檔案的許可權意義
許可權對檔案的重要性:對於檔案的rwx,主要都是針對「檔案的內容」而言,與檔名的存在與否是沒有關係的。因為檔案記錄的是實際的資料。w是更新檔案內容(但不含刪除檔案)
許可權對目錄的重要性:r(read contents in directory),w(modify contents of directory),x(access directory)進入目錄的許可權,作為工作目錄。工作目錄對於命令的執行是非常重要的,如果你在某目錄下不具有x的許可權,那麼你就無法切換到該目錄下,也就無法執行該目錄下的任何命令,即使你具有該目錄的r許可權。
1、chgrp:改變檔案所屬使用者組
2、chown:改變檔案所有者,這個命令即可以修改所有者,也可以修改使用者組織,完全可以代替chgrp;比如chown owner:group directory
3、chmod:改變檔案的許可權 ,數字型別改變檔案許可權(chmod 777 filename),符號型別改變檔案許可權(chmod u=rwx,go=rx filename、chmod r+x )
chgrp/chown的使用場景:複製行為(cp),會複製執行者的屬性於許可權,如果複製問題給別人使用,複製完畢後,要修改users/group,以讓目標使用者可以使用。
由於命令的執行需要變數的支援,若你的執行檔案放置在本目錄,並且本目錄並非正規的執行檔案目錄(/bin、/usr/bin 等為正規目錄),此時要執行命令就得要嚴格指定該執行檔案。「./」 代表 「本目錄」 的意思,所以 「./run.sh」 代表執行本目錄下名為 run.sh 的檔案。
賬號只是為了人們容易記憶,linux只會認識id,而id與賬號的對應關係就在 /etc/passwd當中;組相關的資訊在 /etc/group 中; 密碼相關的資訊在 /etc/shadow 中。
uname -r
lsb_release -a
增加使用者:學習階段,可以一步一步的加,使用者、組、主目錄、shell等;日常應用中用perl指令碼:adduser(/usr/sbin/adduser),截圖如下:
修改密碼:passwd pumatest
顯示使用者的id:id pumatest
刪除使用者:userdel pumatest
su是最簡單的身份切換命令,它可以進行任何身份的切換,使用總結:
1、若要完整地切換到新使用者的環境,必須要使用 「su -username」 或 「su -l username」,才會連同 path/user/mail 等變數都轉成新使用者的環境;
2、如果僅想要執行一次 root 的命令,可以使用「su - -c 命令串」 的方式來處理;
3、使用 root 切換成為任何使用者時,並不需要輸入新使用者的密碼。
sudo的執行僅需要自己的密碼即可,根據 /etc/sudoers 決定可以執行什麼許可權,這個檔案的配置使用工具 visudo,會有語法檢查,使用 visudo ,可以通過使用者、使用者組、別名等方式進行配置。
sudo的不用輸入密碼的時間間隔,預設5分鐘,也可以在 /etc/sudoers 中設定,不用輸入密碼。
sudo 和 su 搭配的技巧,sudo su -,不需要root密碼,也能切換到root身份。
還有一種配置:sudo -u 某賬號 -i
常用命令:cd、pwd、mkdir、rmdir、echo、ls、mv、cp、rm
取得路徑的檔名與目錄名稱:basename、dirname
檔案內容查詢:cat、tac、nl、more、less、head、tail、od、touch
head -n 3 file 頭部3行;head -n +3 頭部3行;head -n -3 去掉最後3行的所有頭部;
tail -n 3 file 末尾3行;tail -n -3 末尾三行;tail -n +3 從頭部第三行開始的所有末尾
幾個時間的概念:mtime(modification time)、ctime(status)、atime(access)
檔案預設許可權:umask
檢視檔案型別:file
檔案查詢:
which 是根據path查詢,所以一般用來查詢命令;
whereis 根據linux的檔案系統資料庫查詢,所以可能不是最新的,linux的檔案資料庫系統一般是一天更新一次;
find 是直接搜尋磁碟,功能強勁,但是速度不如以上兩種。
find . -type f -mtime 4 代表 4天之前的「一天之內」被更改過的檔案
find . -type f -mtime +4 代表 4天之前(不含4天本身)被更改過的檔案
find . -type f -mtime -4 代表4天之內(含4天之內)被更改過的檔案
Linux賬號和許可權管理
要求 一,建立使用者目錄 建立目錄 tech benet和 tech accp,分別用於存放各專案組中使用者賬戶的宿主檔案。步驟 如圖所示 二,新增組賬號 為兩個專案新增組賬號benet accp,gid號分別設定為1001 1002 為技術部新增組賬號tech,gid號設定為200 步驟 如圖所示...
Linux賬號和許可權管理
linux基於使用者身份對資源訪問進行控制 使用者帳號 超級使用者root 普通使用者 程式使用者 組帳號 基本組 私有組 附加組 公共組 useradd相關命令 格式 useradd 選項 使用者名稱 u 指定 uid 標記號 d 指定宿主目錄,預設為 home 使用者名稱 e 指定帳號失效時間 ...
Linux 賬號和許可權管理
二 檔案目錄的許可權和歸屬 1.超級使用者 root使用者是linux作業系統中預設的超級使用者賬號,對本主機擁有最高的許可權。系統中超級使用者是唯一的。2.普通使用者 由root使用者或其他管理員使用者建立,擁有的許可權會受到限制,一般只在使用者自己的宿主目錄中擁有完整許可權。3.程式使用者 在安...