一、配置靜態IP地址
輸入ifconfig后沒有配置IP地址,接下來進行手動配置。
輸入以下命令進入IP配置文件進行配置
原始內容
進入vi后,輸入i進入編輯狀態,編輯完成后,按esc鍵退出編輯狀態,輸入:wq進行保存退出。
編輯后的內容
重新啟動一下
遇到的問題:
IP配置完成,重啟后,可以和本機ping通,但是無法ping通百度。
原因猜測:
IP地址沖突;網關不對
解決:
最后經檢查是網關配置錯誤
二、history命令
該命令可以回顯從開機到當前時間輸入過的所有指令
三、
在剛進入系統時所處的當前目錄是root目錄下
四、日志
存在於/var/log目錄下
日志文件
日志文件 |
含義 |
/var/log/secure |
Linux系統安全日志,記錄用戶和工作組的情況、用戶登陸認證情況 |
/var/log/boot.log |
該文件記錄了系統在引導過程中發生的事件 |
/var/log/messages |
內核及公共信息日志,是許多進程日志文件的匯總 |
/var/log/dmesg |
系統引導日志,該日志使用dmesg命令快速查看最后一次系統引導的引導日志 |
/var/log/lastlog |
該日志不能用諸如cat、tail等查看,因為該日志里面是二進制文件,可以用lastlog命令查看,它根據UID排序顯示登錄名、端口號(tty)和上次登錄時間。如果一個用戶從未登錄過,lastlog顯示 Never logged。 |
/var/log/wtmp |
該日志文件永久記錄每個用戶登錄、注銷及系統的啟動、停機的事件。該日志為二進制文件,不能用諸如tail/cat/等命令,使用last命令查看。 |
/var/log/mailog |
記錄郵件的收發 |
/var/log/btmp |
此文件是記錄錯誤登錄的日志,可以記錄有人使用暴力破解ssh服務的日志。該文件用lastb打開 |
/var/log/utmp |
該日志記錄當前用戶登錄的情況,不會永久保存記錄。可以用who/w命令來查看 |
who 和 w命令
五、安裝vmtool
出現問題:
解決:yum groupinstall "Perl Support"
說明:這個安裝文件應該是用Perl寫的,需要Perl的運行環境,安裝好"Perl Support"之后,重新執行 ./vmware-install.pl
六、根據等保測評中對Linux的要求進行學習
1、身份鑒別
1)對登陸操作系統和數據庫系統的用戶進行身份表示和鑒別
1、密碼文件中的口令字段是否不為空
2、檢查各個用戶主目錄下的.rhosts文件
3、查看/etc/hosts.equiv
學習:
1、用戶主目錄
~代表用戶主目錄
對一般用戶而言,~表示/home/(用戶名)
對root用戶而言,~表示/root
root用戶主目錄
顯示當前目錄
pwd 顯示當前目錄
pwd –p 顯示當前目錄的絕對路徑
4、查看/etc/passwd文件中各種用戶的第二段處是否不為空
5、輸入find / -name “.rhosts”,查看那各個.hosts文件
6、查看/etc/hosts.equiv
學習:
/etc/passwd文件默認是隱藏的,可以用ls –al /etc/查看或者直接cat /etc/passwd讀取內容
passwd的文件內容
含義
在passwd中的內容
每行信息代表每個用戶信息,用“:”分割開來,一共7個字段
含義如下:
用戶名:
代表用戶身份的字符串,但是在Linux中真正識別用戶身份的是UID,這個字符串就是為了用戶方便記憶。
密碼:
“x”代表該用戶設置了密碼,但真正的密碼內容沒有顯示出來(保存在/etc/shadow中)
UID:
是用戶的ID,讓Linux來識別不同用戶的。
UID取自0~65535之間的數,不同范圍代表不同的含義
UID含義
GID:
全稱是“Group ID”,簡稱“組ID”,表示用戶初始組的ID號。
初始組,指用戶登陸時就擁有這個用戶組的相關權限。每個用戶的初始組只能有一個,通常就是將和此用戶的用戶名相同的組名作為該用戶的初始組。比如說,我們手工添加用戶 lamp,在建立用戶 lamp 的同時,就會建立 lamp 組作為 lamp 用戶的初始組。
附加組,指用戶可以加入多個其他的用戶組,並擁有這些組的權限。每個用戶只能有一個初始組,除初始組外,用戶再加入其他的用戶組,這些用戶組就是這個用戶的附加組。附加組可以有多個,而且用戶可以有這些附加組的權限。
舉例來說,剛剛的 lamp 用戶除屬於初始組 lamp 外,又把它加入了 users 組,那么 lamp 用戶同時屬於 lamp 組和 users 組,其中 lamp 是初始組,users 是附加組。
初始組和附加組的身份是可以修改的,但是在工作中不修改初始組,只修改附加組,因為修改了初始組有時會讓管理員邏輯混亂。
描述性信息:
該字段就是解釋該用戶的一些意義。
主目錄:
就是用戶登錄后有操作權限的訪問目錄,通常稱為用戶的主目錄。
默認的shell:
就是命令解釋器(命令提示符,終端),該字段也可以理解為用戶登陸之后所擁有的的權限。
shadow文件查看:
文件內容
密碼存儲的結構。
賬戶名:賬戶名與/etc/passwd里面的賬戶名是一一對應的關系。
密碼:這里可以看到3類,分別是字符串、*和!!其中,字符串就是加密過的密碼文件;*代表帳號被鎖定;!!表示這個密碼已經過期了。字符串是以$6$開頭的,表示是用SHA-512加密的;$1$ 表示是用MD5加密的;$2$ 表示是用Blowfish加密的;$5$表示是用 SHA-256加密的。
修改日期:這個是表示上一次修改密碼的日期與1970-1-1相距的天數密碼不可改的天數:假如這個數字是8,則8天內不可改密碼,如果是0,則隨時可以改。
密碼需要修改的期限:如果是99999則永遠不用改。如果是其其他數字比如12345,那么必須在距離1970-1-1的12345天內修改密碼,否則密碼失效。
修改期限前N天發出警告:比如你在第五條規定今年6月20號規定密碼必須被修改,系統會從距離6-20號的N天前向對應的用戶發出警告。
密碼過期的寬限:假設這個數字被設定為M,那么帳號過期的M天內修改密碼是可以修改的,改了之后賬戶可以繼續使用。
帳號失效日期:假設這個日期為X,與第三條一樣,X表示的日期依然是1970-1-1相距的天數,過了X之后,帳號失效。
保留:被保留項,暫時還沒有被用上。
查看/etc/login.defs內容,該文件記錄的是所設置的密碼長度以及跟換周期
查看/etc/pam.d/system-auth內容,該文件記錄的是密碼復雜度要求
指令:
ls –al ~
ls -al ~
ls –a -l ~
上述三種命令的輸寫方式並不一樣,但是他們的輸出結果是一樣的
date <
Date <
DATE <
上面三個命令,雖然只是改變了字母的大小寫,但是輸出的結果並不一樣
注意:在Linux中任何命令都是區分大小寫的,大小寫不一樣代表的命令是不一樣的。
locale 回顯目前所支持的語系
其中包括輸出方面,時間輸出等方面的表示
最后一行LC_ALL= 是指全部的數據同步更新的設置值
如果語系為中文系則上述的命令輸入后,回顯的會是一串亂碼,不會正常顯示。
基礎指令操作:
date 回顯當前日期與時間
cal 回顯日歷
date輸出格式化
這里我錯把“:”輸成了“;”,導致回顯錯誤。
cal 2019 | more 以翻頁的形式回顯2019年整年的日歷
cal的語法格式如下:
cal [month] [year]
如要想回顯2016年12月日歷
TAB鍵功能
具有文件補全和命令補全的功能
當輸入cl后連續按兩次tab鍵就會顯示出cl開頭的命令
ls –al ~/.bash按兩次tab鍵,回顯以.bash開頭的文件
總結:
tab鍵接在一串指令的第一個字后面是“命令補全”
tab鍵接在一串指令的第二個字以后是“文件補全”
Ctrl+c 強制停止程序
Ctrl+d 鍵盤輸入結束
shift+page up和shift+page down
上下翻頁,對於輸出結果很長的情況下。
info 查詢指令的用法或者文件的格式
按“q”退出
按“?”
按“d”返回初始界面
按“h”
關機
將數據同步寫入的硬盤 sync
慣用關機指令 shutdown
重啟 reboot,halt,poweroff
shutdown語法:
控制台終端:在 Linux 系統中,計算機顯示器通常被稱為控制台終端,也有人叫工作組。
以下三幅圖是kali中的圖形化的表示
/dev/pts 虛擬終端,應該是在圖形化的系統中使用的是這種
tty是Teletype的縮寫。
默認情況下,Linux 中有 7 個 tty。它們被稱為 tty1、tty2……tty7。1 到 6 的 tty 只是命令行。第 7 個 tty 是 GUI(你的 X 桌面會話)。你可以使用 CTRL+ALT+Fn 鍵在不同的 TTY 之間切換。
w命令:
行首將以下面這個順序展示:當前的時間,系統已經運行了多久,當前系統有多少用戶在登錄,系統在過去的1,5,15分鍾的平均負載。
第二行展示每個用戶:登錄名,tty 名,遠程的(登錄)主機,登錄時間,空閑時間,JCPU,PCPU,以及當前進程的命令行。
ps –ax
控制終端(/dev/tty)
如果當前進程有控制終端(Controlling Terminal)的話,那么/dev/tty就是當前進程的控制終端的設備特殊文件。可以使用命令”ps –ax”來查看進程與哪個控制終端相連。對於你登錄的shell,/dev/tty就是你使用的終端,設備號是(5,0)。使用命令”tty”可以查看它具體對應哪個實際終端設備。/dev/tty有些類似於到實際所使用終端設備的一個聯接。
通信:
echo “hello word” > /dev/tty1
停止tty
ps –ef | grep tty1 查看該tty的PID
kill -9 [PID] 結束進程
文件屬性
> [-][rwx][r-x][r--] > 1 234 567 890
1 為:代表這個文件名為目錄或文件,本例中為文件(-);
當為[ d ]則是目錄,
當為[ - ]則是文件,
當為[ l ]則表示為鏈接文件(link file);
當為[ b ]則表示為設備文件里面的可供儲存的周邊設備(可隨機存取設備);
若是[ c ]則表示為設備文件里面的序列埠設備,例如鍵盤、鼠標(一次性讀取設備)。
234為:擁有者的權限,本例中為可讀、可寫、可執行(rwx);
567為:同群組使用者權限,本例中為可讀可執行(rx);
890為:其他使用者權限,本例中為可讀(r),就是只讀之意。
改變屬性:
這里新建的一個1.txt文件,
屬性為:
文件;
擁有者root的權限為可讀,可寫,不可執行;
同群組使用者root的權限為可讀,不可寫,不可執行;
其他使用者的權限為可讀,不可寫,不可執行。
改變所屬群組:
將1.txt文件的所屬群組由root改為users
將1.txt文件的擁有者由root改為bin
也可以用cp命令更改文件擁有者,將文件復制給你之外的其他人時。
cp [來源文件] [目標文件]
top命令:
查看系統進程
第一行的含義:
PID:進程的ID
USER:進程的所有者
PR:進程的優先級別,越小越優先被執行
NInice:值
VIRT:進程占用的虛擬內存
RES:進程占用的物理內存
SHR:進程使用的共享內存
S:進程的狀態。S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值為負數
%CPU:進程占用CPU的使用率
%MEM:進程使用的物理內存和總內存的百分比
TIME+:該進程啟動后占用的總的CPU時間,即占用CPU使用時間的累加值。
COMMAND:進程啟動命令名稱
可以使用
shift+p切換至按照CPU排序(或P)
shift+m切換至按照MEM排序(或M)
結束進程
kill -9 [PID]
lsop –p [PID] 可以查看該進程打開的文件
file [文件名] 查看文件類型
strings [文件名] 顯示二進制文件中可讀字符
安裝lsof命令
yum install lsof
tailf [文件名] 適合動態讀取日志