*10.3*
{第七單元}
[1.進程定義]
進程就是cpu未完成的工作
[2.ps命令]
ps a #關於當前環境的所有進程
x #與當前環境無關的所有進程
f #顯示進程從屬關係
e #顯示當前用戶環境中的所有進程
l #長列表顯示進程的詳細進程
u #顯示進程的用戶信息
ps ax -o %cpu,%mem,user,group,comm,nice #指定顯示進程的某些信息
%cpu #顯示進程cpu負載
%mem #顯示進程內存負載
user #進程用戶
group #進程組
comm #進程名稱
nice #進程優先級
ps ax -o %cpu,comm --sort <+|-%cpu><+|-%mem> 按照進程信息排序
+ #正序
- #倒序
%cpu #cpu負載
%mem #內存負載
[3.進程優先級]
1.進程的優先級範圍
-20~19
2.優先級查看
ps ax -o pid,nice,comm
3.指定某個優先級開啓進程
nice -n 優先級數字 進程名稱
nice -n -5 vim & #開啓vim並且指定程序優先級爲-5
4.改變進程優先級
renice -n 優先級數字 進程pid
renice -n -5 1086 #改變1086進程的優先級爲-5
[4.環境中進程的前後臺調用]
jobs #查看被打入環境後臺的進程
ctrl+z #把佔用終端的進程打入後臺
fg #把後臺進程調入前臺
bg #把後臺暫停的進程運行
comm & #讓命令直接在後臺運行
1.常用信號等級
1 #進程重新加載配置
2 #刪除進程在內存中的數據
3 #刪除鼠標在內存中的數據
9 #強行結束單個進程
15 #正常關閉進程
18 #運行暫停的進程
19 #暫停某個進程
20 #把進程打入後臺
man 7 signal #查看信號詳細信息
kill -信號 進程名字pid
killall -信號 進程名字
pkill -u student -信號
[6.用戶登陸審計]
1. w #查看使用系統的當前用戶有哪些
w -f #-f查看使用地點
2. last #查看用戶登陸成功歷史
3. lastb #查看用戶登陸未成功歷史
[7.top命令]
top #監控系統負載工具
{8.系統服務的控制}
1.systemd
系統初始化程序,系統開始的第一個進程,pid爲1
2.systemctrl 命令
systemctrl list-units #列出當前系統服務的狀態
systemctrl list-unit-files #列出服務的開機狀態
systemctrl status sshd #查看指定服務的狀態
systemctrl stop sshd #關閉指定服務
systemctrl start sshd #開啓指定服務
systemctrl enable sshd #設定指定服務開機開啓
systemctrl disable sshd #設定指定服務開機關閉
systemctrl reload sshd #使指定服務重新加載配置
systemctrl list-dependencies sshd #查看指定服務的依賴關係
systemctrl mask sshd #凍結指定服務
systemctrl unmask sshd #啓用服務
3.服務狀態
loaded #系統服務已經初始化完成,加載過配置
active(running) #服務正在被系統利用
active(exited) #服務已經加載配置,等待被系統利用
active(waiting) #服務等待被系統處理
inactive #服務關閉
enabled #服務開機啓動
disabled #服務開機不自啓
static #服務開機啓動項不可被管理
failed #系統配置錯誤
{9.openssh-server}
[1.openssh-server]
功能:讓遠程主機可以通過網路訪問sshd服務,開始一個安全shell
[2.客戶端連接方式]
ssh 遠程主機用戶@遠程主機ip
[root@desktop Desktop]# ssh [email protected]
The authenticity of host '192.168.1.109 (192.168.1.109)' can't be established.
ECDSA key fingerprint is eb:24:0e:07:96:26:b1:04:c2:37:0c:78:2d:bc:b0:08.
Are you sure you want to continue connecting (yes/no)? yes #連接陌生主
機時需要建立認證關係
Warning: Permanently added '192.168.1.109' (ECDSA) to the list of known hosts.
[email protected]'s password: #遠程用戶密碼
Last login: Sun Oct 9 08:03:29 2016
[root@server ~]# #登陸成功
ssh 遠程主機用戶@遠程主機ip -X #調用遠程主機圖形工具
ssh 遠程主機用戶@遠程主機ip command #直接在遠程主機運行某條命令
[3.sshkey加密]
1.生成公鑰私鑰
[root@server Desktop]# ssh-keygen #生成公鑰私鑰工具
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 【enter】
#加密字符保存文件(建議默認)
Enter passphrase (empty for no passphrase): 【enter】
#密碼鑰匙,必須>4位(建議默認)
Enter same passphrase again: 【enter】 #確認密碼
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
4b:60:b6:dd:0f:80:b5:4d:bb:38:df:87:01:47:a7:fb root@server
The key's randomart p_w_picpath is:
+--[ RSA 2048]----+
| . . . . |
| o + o o |
| = o + o |
| o + + + . |
| . S + o |
| . + + + |
| . . + E |
| . |
| |
+-----------------+
[root@server Desktop]# ls /root/.ssh
id_rsa id_rsa.pub
id_rsa #私鑰,就是鑰匙
id_rsa.pub #公鑰,就是鎖
2.添加key認證方式
[root@server Desktop]# ssh-copy-id -i /root/.ssh/id_rsa.pub [email protected]
ssh-copy-id #添加key認證方式的工具
-i #指定加密key文件
/root/.ssh/id_rsa.pub #加密key
root #加密用戶爲root
172.25.254.100 #被加密主機ip
3.分發鑰匙給client主機
[root@server Desktop]# scp /root/.ssh/id_rsa [email protected]:/root/.ssh/
4.測試
[root@desktop Desktop]# ssh [email protected] #通過id_rsa直接連接
不需要輸入用戶密碼
[root@server ~]#
**10.4**
[4.提升openssh的安全級別]
1.openssh-server配置文件
/etc/ssh/sshd_config
78 PasswordAuthentication yes|no #是否允許用戶密碼認證,yes爲支持,no爲關閉
48 permitRootLogin yes|no #是否允許超級用戶登陸
49 AllowUsers student westos #用戶白名單,只有在白名單中出現的用戶可以
使用sshd建立shell
50 DenyUserrs westos #用戶黑名單
{12.不同系統之間的文件傳輸}
[1.文件歸檔]
1.文件歸檔,就是把多個文件變成一個歸檔文件
2.
tar c #創建
f #指出歸檔文件名稱
t #顯示歸檔文件中的內容
t #向歸檔文件中添加文件
--get #取出單個文件
--delete #刪除單個文件
-x #取出歸檔文件中的所有內容
-C #指定解檔目錄
-z #gz格式壓縮
-j #bz2格式壓縮
-J #xz格式壓縮
[2.壓縮]
gz
gzip etc.tar #壓縮成gz格式
gunzip etc.tar.gz #解壓gz格式壓縮包
tar zcf etc.tar.gz /etc #把文件歸檔爲tar並壓縮成gz
tar zxf etc.tar.gz #解壓並解檔gz格式壓縮包
bz2
bzip2 etc.tar #壓縮成bz2格式
bunzip2 etc.tar.bz2 #解壓bz2格式壓縮包
tar zxf etc.tar.bz2 /etc #把文件歸檔爲tar文件並壓縮成bz2
tar zxf etc.tar.bz2 #解壓並解檔bz2格式壓縮包
xz
xz etc.tar #解壓成xz格式
unxz etc.tar.xz #解壓xz格式壓縮包
tar zcf etc.tar.xz /etc #把文件歸檔爲tar並壓縮成xz
tar zcf etc.tar.xz #解壓並解檔xz格式壓縮包
zip
zip -r etc.tar.zip etc.tar #壓縮成zip格式
unzip etc.tar.zip #解壓zip格式壓縮包
[3.系統中的文件傳輸]
scp file username:/dir #上傳
scp username@ip:/dir/file /dir #下載
rsync [參數] file username@ip:/dir
rsync -r #同步目錄
-l #不忽略連接
-p #不忽略文件權限
-t #不忽略文件時間戳
-g #不忽略文件組
-o #不忽略所有人
-D #不忽略快設備
{11.管理網絡}
[1.ip基礎知識]
1.ipv4
二進制32位----10進制
172.25.254.100/255.255.255.0
172.25.254.100:ip地址
255.255.255.0:子網掩碼
子網掩碼255位對應的ip位爲網絡位
子網掩碼0對應的ip位爲主機位
[2.配置ip]
<<圖形化>>
1.圖形化 nm-connection-editor
2.文本化 nmtui
<<命令>>
ifconfig 網卡 ip netmask #臨時設定
nmcli connection add type ethernet con-name westos ifname ech0 autoconnect yes
nmcli connection add type ethernet con-name westos ifname ech0 ip4 ip/24
nmcli connection delete westos
nmcli connection show
nmcli connection down westos
nmcli connection up westos
nmcli connection modify "westos" ipv4.addresses newip/24
nmcli connection modify "westos" ipv4.<auto|manual>
nmcli device connect ech0
nmcli device disconnect ech0
nmcli device show
nmcli device status
<<文件>>
dhcp #動態獲取
vim /etc/sysconfig/network-scripts/ifcfg-ech0
DEVICE=ech0 #接口使用設備
BOOTPROTO=dhcp #網卡工作模式
ONBOOT=yes #網絡服務開啓時自動激活
NAME=ech0 #網絡接口名稱
:wq
systemctl restart network
static|none #靜態網絡
vim /etc/sysconfig/network-scripts/ifcfg-ech0
DEVICE=ech0
BOOTPROTO=static|none
ONBOOT=yes
NAME=ech0
IPADDR=172.25.254.100 #IP
NETNASK=255.255.255.0|PREFIX=24 #子網掩碼