1. 程式人生 > >Linux系統操作命令三

Linux系統操作命令三

1.服務操作

  • 查詢所有服務
    chkconfig
  • 對服務進行操作
  1. 檢視防火牆(iptables)服務執行狀態service iptables status
  2. 關閉防火牆(iptables)服務service iptables stop
  3. 開啟防火牆(iptables)服務service iptables start
  4. 永久關閉/開啟防火牆(iptables)服務 , 需要重啟生效chkconfig iptables on/off
  • 新增服務

/etc/rc.d 目錄下 rc0.d-rc6.d對應init 0-6
/etc/init.d 包含了系統服務的啟動停止的指令碼
1).寫一個指令碼 myservice 寫入:
#chkconfig: 2345 80 90


#description:auto_run
result='ntpdate cn.ntp.org.cn'
echo $result > /寫入檔案/
2).將指令碼移動到/etc/init.d目錄下
3).加入服務
chkconfig --add myservice
4).重啟伺服器
5).寫入檔案產生

  • 服務預設執行等級更改 init 0-6 on/off
    chkconfig --lever 2345 myservice off|on
  • 刪除服務chkconfig --del myservice

刪除指令碼rm -rf myservice

2.定時

定時

1.編輯定時任務

crontab -e

/var/spool/mail 存放個使用者定時任務執行後的資訊
/var/spool/cron 存放每個使用者的定時任務
“*”:任意數字 “/”:每隔多久 “-”:從某個數字到某個數字 ","分散的數字
格式:minute hour day month dayofweek command
每分鐘輸出一句hello:***** echo 'hello'
每天12點30-40 30-40 12 ***
每天12點30和40 30,40 12 ***
每天12點之後每5 0/5 12 ***

2.檢視當前使用者的定時任務 contab -l

3.Linux安全

Selinux是Linux的一個安全策略DAC–MAC,但是,實際應用中,很多人會遇到這樣那樣的問題.很多編譯安裝軟體的文件,也特意註明了,建議關閉SeLinux。

0.permissive:寬容模式,SELinux執行中,只有警告訊息不會實際限制,用來SELinux的debug.
1.enforcing:強制模式,限制domain/type;
2.disabled:關閉

  • 檢視SELinux狀態:

sestatus -v

  • 關閉SELinux(臨時關閉):

permissive模式:setenforce 0
enforcing模式:#setenforce 1
關閉SELinux(需重啟):

  1. 修改/etc/selinux/config 檔案
  2. SELinux=enforcing修改為SELinux=disabled
  3. 重啟

4.Linux程序操作

  • 檢視程序

ps -aux
ps -ef

  • a 列出所有
  • u 列出使用者
  • x 詳細列出,如cpu、記憶體等
  • e 顯示所有程序
  • f 全格式
  • 簡易檢視程序

jps

  • 檢視所有ssh的程序資訊

ps -ef | grep ssh

  • PID 程序編號
  • TTY 命令所執行的位置(終端)
  • TIME 執行著的該命令所佔用的CPU處理時間
  • CMD 該程序所執行的命令
  • 效能分析
    top命令是Linux下常用的效能分析工具,能夠實時顯示系統中各個程序> > 的資源佔用狀況,常用於服務端效能分析

top [-] [d] [p] [q] [c] [C] [S] [s] [n]

  1. d 指定每兩次螢幕資訊重新整理之間的時間間隔。當然使用者可以使用s交>> 互命令來改變之。
  2. p 通過指定監控程序ID來僅僅監控某個程序的狀態。
  3. q 該選項將使top沒有任何延遲的進行重新整理。如果呼叫程式有超級使用者許可權,那麼>> top將以儘可能高的優先順序執行。
  4. S 指定累計模式
  5. s 使top命令在安全模式中執行。這將去除互動命令所帶來的潛在危>>險。
  6. i 使top不顯示任何閒置或者僵死程序。
  7. c 顯示整個命令列而不只是顯示命令名。

total 程序總數
running 正在執行的程序數
sleeping 睡眠的程序數
stopped 停止的程序數
zombie 殭屍程序數
Cpu(s):
us 使用者空間佔用CPU百分比
sy 核心空間佔用CPU百分比
ni 使用者程序空間內改變過優先順序的程序佔用CPU百分比
id 空閒CPU百分比
wa 等待輸入輸出的CPU時間百分比
hi:硬體CPU中斷佔用百分比
si:軟中斷佔用百分比
st:虛擬機器佔用百分比
Mem:
total 實體記憶體總量
used 使用的實體記憶體總量
free 空閒記憶體總量
buffers 用作核心快取的記憶體量
Swap:
total 交換區總量
0k used 使用的交換區總量
free 空閒交換區總量
cached 緩衝的交換區總量,記憶體中的內容被換出到交換區,而後又被換入到記憶體,但使用過的交換區尚未被覆蓋,該數值即為這些內容已存在於記憶體中的交換區的大小,相應的記憶體再次被換出時可不必再對交換區寫入。

  • 後臺程序
  1. 新增程序,將一個程式放入後臺執行,只要在命令後面加**&**ping www.baidu.com > test.log &
  2. 檢視所有後臺程序,jobs命令只看當前終端生效的 jobs -l
  3. 檢視所有後臺程序,包括關閉終端後的ps -ef | grep ping
  4. 新增程序,後臺程序有時執行一段時間後,系統會自動把該程序掛起來,導致程序無法正常執行。故後臺經常一般和nohup命令結合使用,告訴系統不要把該程序掛起,這樣子該命令就可以24*7小時不間斷的運行了。nohup ping www.baidu.com 2>&1 test2.log &
  5. 殺死程序kill -9 [程序PID]

5.常用命令

1.wget

wget 是一個從網路上自動下載檔案的自由工具,支援通過 HTTP、HTTPS、FTP 三個最常見的 TCP/IP協議 下載,並可以使用 HTTP 代理
安裝wget:yum install wger -y
wget用法:wget [option] 網址 -O 下載儲存的路徑

2.yum

yum是一個在Fedora和RedHat(IBM收購)以及CentOS中的Shell前端軟體包管理器。基於RPM包管理,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。
yum:yum install vim -r

3.rpm

RPM(RedHat Packge Manager)是RedHat公司出的軟體包管理器,使用它可以很容易地對rpm形式的軟體包進行安裝、升級、解除安裝、驗證、查詢等操作,安裝簡單,而解除安裝時也可以將軟體安裝在多處目錄中的檔案刪除乾淨
安裝rpm包rpm -ivh xxx.rpm

i:表示安裝
v:顯示安裝過程
h:顯示安裝進度

4.tar

-z gzip進行解壓或壓縮,帶.gz需要加,壓縮出來.gz也需要加
-x 解壓
-c 壓縮
-f 目標檔案,壓縮檔案新命名或解壓檔名
-v 解壓縮過程資訊列印

  • 解壓.tar.gz:tar -zvxf [xxx.tar.gz]
  • 解壓.tar:tar -xvf [xxx.tar]
  • 解壓 tar.bz2:tar -xjvf [xxx.tar.bz2]
  • 解壓tar.Z:tar -xZvf [xxx.tar.Z]
  • 壓縮:tar -zvxf [xxxx.tar.gz]

5.zip

-c:將解壓縮的結果
-l:顯示壓縮檔案內所包含的檔案
-p:與-c引數類似,會將解壓縮的結果顯示到螢幕上,但不會執行任何的轉換
-t:檢查壓縮檔案是否正確
-u:與-f引數類似,但是除了更新現有的檔案外,也會將壓縮檔案中的其它檔案解壓縮到目錄中
-v:執行是時顯示詳細的資訊
-z:僅顯示壓縮檔案的備註文字
-a:對文字檔案進行必要的字元轉換
-b:不要對文字檔案進行字元轉換
-r:遞迴處理,將指定目錄下的所有檔案和子目錄一併處理
-C:壓縮檔案中的檔名稱區分大小寫
-j:不處理壓縮檔案中原有的目錄路徑
-L:將壓縮檔案中的全部檔名改為小寫
-M:將輸出結果送到more程式處理
-n:解壓縮時不要覆蓋原有的檔案
-o:不必先詢問使用者,unzip執行後覆蓋原有檔案
-P:使用zip的密碼選項
-q:執行時不顯示任何資訊
-s:將檔名中的空白字元轉換為底線字元
-V:保留VMS的檔案版本資訊
-X:解壓縮時同時回存檔案原來的UID/GID

  • 先安裝zip:yum install zip -y
  • 安裝unzio: yum install unzip -y
  • 解壓檔案:unzip [xxx.zip]
  • 壓縮檔案:zip -r [報名] [被壓縮檔案路徑]