常用linux命令20个(常用linux 命令)
linux如何執行sh命令?
我的:Linux執行sh命令,可以直接依次輸入一系列的命令,交互式地執行它們。用戶也可以把所有的這些命令按照順序保存在一個文件中,然后把這個文件作為一個程序來執行。在實際的開發中,交互式執行程序的方式不常見,一般是把語句放入一個腳本里面作為一個程序來執行。
linux服務器監控的幾個方法和命令?
概述
今天主要對mpstat、iostat、sar、vmstat命令做一下總結,這幾個命令都是屬于運維人員必須掌握的,所以,能不偷懶就不偷懶了。
1、mpstat
mpstat是Multiprocessor Statistics的縮寫,是實時監控工具,報告與cpu的一些統計信息這些信息都存在/proc/stat文件中,在多CPU系統里,其不但能查看所有的CPU的平均狀況的信息,而且能夠有查看特定的cpu信息,mpstat最大的特點是:可以查看多核心的cpu中每個計算核心的統計數據;而且類似工具vmstat只能查看系統的整體cpu情況。
實例:查看多核cpu當前運行的狀況,每兩秒更新一次,一共更新5次
# mpstat 2 5
說明:
%user 在internal時間段里,用戶態的CPU時間(%),不包含nice值為負進程 (usr/total)*100
%nice 在internal時間段里,nice值為負進程的CPU時間(%) (nice/total)*100
%sys 在internal時間段里,內核時間(%) (system/total)*100
%iowait 在internal時間段里,硬盤IO等待時間(%) (iowait/total)*100
%irq 在internal時間段里,硬中斷時間(%) (irq/total)*100
%soft 在internal時間段里,軟中斷時間(%) (softirq/total)*100
%idle 在internal時間段里,CPU除去等待磁盤IO操作外的因為任何原因而空閑的時間閑置時間(%) (idle/total)*100
2、iostat
iostat用于輸出CPU和磁盤I/O相關的統計信息.
語法:
iostat | ALL ] | ALL ] ] ]
實例1:
--參數-d表示顯示設備磁盤的使用狀態;-k表示某些使用block為單位的列強制使用kilobytes為單位,2表示數據每隔2秒刷新一次 6表示一共刷新6次
# iostat -d -k 2 6
說明:
tps:該設備每秒的傳輸次數(Indicate the number of transfers per second that were issued to the device.)。
"一次傳輸"意思是"一次I/O請求"。多個邏輯請求可能會被合并為"一次I/O請求"。"一次傳輸"請求的大小是未知的。
kB_read/s:每秒從設備(drive expressed)讀取的數據量;
kB_wrtn/s:每秒向設備(drive expressed)寫入的數據量;
kB_read:讀取的總數據量;
kB_wrtn:寫入的總數量數據量;這些單位都為Kilobytes。
實例2:
--可以把K單位換成M
# iostat -d -m 2 6
實例3:
--使用iostat查看cpu統計信息使用-C參數
# iostat -c 2 6
實例4:-X參數
--iostat還有一個比較常用的-X參數,該選項將用于顯示和io相關的擴展數據。
# iostat -d -x -k 1 6
3、sar
sar(System ActivityReporter系統活動情況報告)是目前Linux上最為全面的系統性能分析工具之一,可以從多方面對系統的活動進行報告,包括:文件的讀寫情況、系統調用的使用情況、磁盤I/O、CPU效率、內存使用狀況、進程活動及IPC有關的活動等,sar命令有sysstat安裝包安裝。
語法:
sar ]
--Options are:
-A:所有報告的總和
-b:顯示I/O和傳遞速率的統計信息
-B:顯示換頁狀態
-d:輸出每一塊磁盤的使用信息
-e:設置顯示報告的結束時間
-f:從制定的文件讀取報告
-i:設置狀態信息刷新的間隔時間
-P:報告每個CPU的狀態
-R:顯示內存狀態
–u:輸出cpu使用情況和統計信息
–v:顯示索引節點、文件和其他內核表的狀態
-w:顯示交換分區的狀態
-x:顯示給定進程的裝
-r:報告內存利用率的統計信息
實例1:
--每2秒采樣一次,連續4次,觀察cpu的使用情況,并將采樣的結果以二進制形式存入當前目錄下的文件sar中,如下:
# sar -u -o sar 2 4
實例2:
--從二進制中調取
# sar -u -f /root/sar
實例3:
--報告每個cpu的狀態,1秒一次,一共4次
# sar -p 1 4
實例4:
--查看平均負載
#sar -q
實例5:
--查看內存使用情況
#sar -r
實例6:
--查看系統swap分區的統計信息
# sar -w
實例7:
--磁盤使用統計信息
# sar -d
默認監控:
sar 5 5 // CPU和IOWAIT統計狀態
(1) sar -b 5 5 // IO傳送速率
(2) sar -B 5 5 // 頁交換速率
(3) sar -c 5 5 // 進程創建的速率
(4) sar -d 5 5 // 塊設備的活躍信息
(5) sar -n DEV 5 5 // 網路設備的狀態信息
(6) sar -n SOCK 5 5 // SOCK的使用情況
(7) sar -n ALL 5 5 // 所有的網絡狀態信息
(8) sar -P ALL 5 5 // 每顆CPU的使用狀態信息和IOWAIT統計狀態
(9) sar -q 5 5 // 隊列的長度(等待運行的進程數)和負載的狀態
(10) sar -r 5 5 // 內存和swap空間使用情況
(11) sar -R 5 5 // 內存的統計信息(內存頁的分配和釋放、系統每秒作為BUFFER使用內存頁、每秒被cache到的內存頁)
(12) sar -u 5 5 // CPU的使用情況和IOWAIT信息(同默認監控)
(13) sar -v 5 5 // inode, file and other kernel tablesd的狀態信息
(14) sar -w 5 5 // 每秒上下文交換的數目
(15) sar -W 5 5 // SWAP交換的統計信息(監控狀態同iostat 的si so)
(16) sar -x 2906 5 5 // 顯示指定進程(2906)的統計信息,信息包括:進程造成的錯誤、用戶級和系統級用戶CPU的占用情況、運行在哪顆CPU上
(17) sar -y 5 5 // TTY設備的活動狀態
(18) 將輸出到文件(-o)和讀取記錄信息(-f)
4、vmstat
vmstat命令是最常見的Linux/Unix監控工具,可以展現給定時間間隔的服務器的狀態值,包括服務器的CPU使用率,內存使用,虛擬內存交換情況,IO讀寫情況。這個命令是我查看Linux/Unix最喜愛的命令,一個是Linux/Unix都支持,二是相比top,我可以看到整個機器的CPU,內存,IO的使用情況,而不是單單看到各個進程的CPU使用率和內存使用率(使用場景不一樣)。
實例1:
--第一個參數是采樣的時間間隔數,單位是秒,第二個參數是采樣的次數
--如果想在一段時間內一直監控可執行# vmstat 2
# vmstat 2 6
說明:
r 表示運行隊列(就是說多少個進程真的分配到CPU),當這個值超過了CPU數目,就會出現CPU瓶頸了。這個也和top的負載有關系,一般負載超過了3就比較高,超過了5就高
,超過了10就不正常了,服務器的狀態很危險。top的負載類似每秒的運行隊列。如果運行隊列過大,表示你的CPU很繁忙,一般會造成CPU使用率很高。
b 表示阻塞的進程
swpd 虛擬內存已使用的大小,如果大于0,表示你的機器物理內存不足了,如果不是程序內存泄露的原因,那么你該升級內存了或者把耗內存的任務遷移到其他機器。
free 空閑的物理內存的大小
buff Linux/Unix系統是用來存儲,目錄里面有什么內容,權限等的緩存
cache cache直接用來記憶我們打開的文件,給文件做緩沖
si 每秒從磁盤讀入虛擬內存的大小,如果這個值大于0,表示物理內存不夠用或者內存泄露了,要查找耗內存進程解決掉。
so 每秒虛擬內存寫入磁盤的大小,如果這個值大于0,同上
bi 塊設備每秒接收的塊數量,這里的塊設備是指系統上所有的磁盤和其他塊設備,默認塊大小是1024byte
bo 塊設備每秒發送的塊數量,例如我們讀取文件,bo就要大于0。bi和bo一般都要接近0,不然就是IO過于頻繁,需要調整。
in 每秒CPU的中斷次數,包括時間中斷
cs 每秒上下文切換次數
us 用戶CPU時間
sy 系統CPU時間,如果太高,表示系統調用時間長,例如是IO操作頻繁。
id 空閑 CPU時間
wt 等待IO CPU時間。
這種基礎命令一定要會,建議大家熟記,后面會分享更多devops和DBA方面的內容,感興趣的朋友可以關注下~
linux查詢命令?
1. find
find是最常見和最強大的查找命令,你可以用它找到任何你想找的文件。
2. locate
locate命令其實是"find -name"的另一種寫法,但是要比后者快得多,原因在于它不搜索具體目錄,而是搜索一個數據庫。
3. whereis
whereis命令只能用于程序名的搜索,而且只搜索二進制文件(參數-b)、man說明文件(參數-m)和源代碼文件(參數-s)。
4. which
which命令的作用是,在PATH變量指定的路徑中,搜索某個系統命令的位置,并且返回第一個搜索結果。
5. type
type命令其實不能算查找命令,它是用來區分某個命令到底是由shell自帶的,還是由shell外部的獨立二進制文件提供的。
linux開啟端口命令?
1、查看哪些端口被打開netstat -anp。
2、關閉端口號:iptables -AINPUT -ptcp --drop 端口號-jDROP,iptables -AOUTPUT -ptcp --dport
端口號-jDROP。
3、打開端口號:iptables -AINPUT -ptcp --dport 端口號-jACCEPT。
4、以下是linux打開端口命令的使用方法。nc -lp22&(打開22端口,即telnet),netstat -an| grep 22 (查看是否打開22端口)。
5、linux打開端口命令每一個打開的端口。
關閉端口號:iptables -AINPUT -ptcp --drop 端口號-jDROP,iptables -AOUTPUT -ptcp --dport
端口號-jDROP。
擴展資料:
liunx常見端口詳細說明 :
1、端口:7
服務:Echo
說明:能看到許多人搜索Fraggle放大器時,發送到X.X.X.0和X.X.X.255的信息。
2、端口:21
服務:FTP
說明:FTP服務器所開放的端口,用于上傳、下載。最常見的攻擊者用于尋找打開anonymous的FTP服務器的方法。這些服務器帶有可讀寫的目錄。木馬Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所開放的端口。
3、端口:22
服務:Ssh
說明:PcAnywhere建立的TCP和這一端口的連接可能是為了尋找ssh。這一服務有許多弱點,如果配置成特定的模式,許多使用RSAREF庫的版本就會有不少的漏洞
存在。
4、端口:23
服務:Telnet
說明:遠程登錄,入侵者在搜索遠程登錄UNIX的服務。大多數情況下掃描這一端口是為了找到機器運行的操作系統。還有使用其他技術,入侵者也會找到密碼。木馬Tiny Telnet Server就開放這個端口。
5、端口:25
服務:SMTP
說明:SMTP服務器所開放的端口,用于發送郵件。入侵者尋找SMTP服務器是為了傳遞他們的SPAM。入侵者的帳戶被關閉,他們需要連接到高帶寬的E-MAIL服務器上,將簡單的信息傳遞到不同的地址。木馬Antigen、Email Password Sender、Haebu Coceda、Shtrilitz Stealth、WinPC、WinSpy都開放這個端口。
6、端口:53
服務:Domain Name Server(DNS)
說明:DNS服務器所開放的端口,入侵者可能是試圖進行區域傳遞(TCP),欺騙DNS(UDP)或隱藏其他的通信。因此防火墻常常過濾或記錄此端口。
7、端口:80
服務:HTTP
說明:用于網頁瀏覽。木馬Executor開放此端口。
8、端口:102
服務:Message transfer agent(MTA)-X.400 over TCP/IP
說明:消息傳輸代理。
9、端口:110
服務:pop3
說明:POP3(Post Office Protocol
服務器開放此端口,用于接收郵件,客戶端訪問服務器端的郵件服務。POP3服務有許多公認的弱點。關于用戶名和密碼交換緩沖區溢出的弱點至少有20個,這意味著入侵者可以在真正登陸前進入系統。成功登陸后還有其他緩沖區溢出錯誤。
10、端口:137、138、139
服務:NETBIOS Name Service
說明:其中137、138是UDP端口,當通過網上鄰居傳輸文件時用這個端口。而139端口:通過這個端口進入的連接試圖獲得NetBIOS/SMB服務。這個協議被用于windows文件和打印機共享和SAMBA。還有WINS Regisrtation也用它。
11、端口:143
服務:Interim Mail Access Protocol v2
說明:和POP3的安全問題一樣,許多IMAP服務器存在有緩沖區溢出漏洞。
記住:一種LINUX蠕蟲(admv0rm)會通過這個端口繁殖,因此許多這個端口的掃描來自不知情的已經被感染的用戶。當REDHAT在他們的LINUX發布版本中默認允許IMAP后,這些漏洞變的很流行。這一端口還被用于IMAP2,但并不流行。
12、端口:161
服務:SNMP
說明:SNMP允許遠程管理設備。所有配置和運行信息的儲存在數據庫中,通過SNMP可獲得這些信息。許多管理員的錯誤配置將被暴露在Internet。Cackers將試圖使用默認的密碼public、private訪問系統。他們可能會試驗所有可能的組合。
SNMP包可能會被錯誤的指向用戶的網絡。
13、端口:389
服務:LDAP、ILS
說明:輕型目錄訪問協議和NetMeeting Internet Locator Server共用這一端口 。
14、端口:443
服務:Https
說明:網頁瀏覽端口,能提供加密和通過安全端口傳輸的另一種HTTP。
15、端口:993
服務:IMAP
說明:SSL(Secure Sockets layer)
16、端口:1433
服務:SQL
說明:Microsoft的SQL服務開放的端口。
17、端口:1503
服務:NetMeeting T.120
說明:NetMeeting T.120
18、端口:1720
服務:NetMeeting
說明:NetMeeting H.233 call Setup。
19、端口:1731
服務:NetMeeting Audio Call Control
說明:NetMeeting音頻調用控制。
20、端口:3389
服務:超級終端
說明:WINDOWS 2000終端開放此端口。
21、端口:4000
服務:QQ客戶端
說明:騰訊QQ客戶端開放此端口。
22、端口:5631
服務:pcAnywere
說明:有時會看到很多這個端口的掃描,這依賴于用戶所在的位置。當用戶打開pcAnywere時,它會自動掃描局域網C類網以尋找可能的代理(這里的代理是指agent而不是proxy)。入侵者也會尋找開放這種服務的計算機。所以應該查看這種掃描的源地址。一些搜尋pcAnywere的掃描包常含端口22的UDP數據包。
23、端口:6970
服務:RealAudio
說明:RealAudio客戶將從服務器的6970-7170的UDP端口接收音頻數據流。這是由TCP-7070端口外向控制連接設置的。
24、端口:7323
服務:
說明:Sygate服務器端。
25、端口:8000
服務:OICQ
說明:騰訊QQ服務器端開放此端口。
26、端口:8010
服務:Wingate
說明:Wingate代理開放此端口。
27、端口:8080
服務:代理端口
說明:WWW代理開放此端口。
5?怎么安裝Linux命令?
LINUX下安裝軟件包常有三種,不同的軟件包有不同的安裝方法:
tar包,整個安裝過程可以分為以下幾步:
1) 取得應用軟件:通過下載、購買光盤的方法獲得;
2) 解壓縮文件:一般tar包,都會再做一次壓縮,如gzip、bz2等,所以你需要先解壓。如果是最常見的gz格式,則可以執行:“tar –xvzf軟件包名”,就可以一步完成解壓與解包工作。如果不是,則先用解壓軟件,再執行“tar –xvf 解壓后的tar包”進行解包; 閱讀附帶的INSTALL文件、README文件;
3) 執行“./configure”命令為編譯做好準備;
4) 執行“make”命令進行軟件編譯;
5) 執行“makeinstall”完成安裝;
6) 執行“makeclean”刪除安裝時產生的臨時文件。
7) 運行應用程序:一般來說,Linux的應用軟件的可執行文件會存放在/usr/local/bin目錄下!不過這并不是“放四海皆準”的真理,最可靠的還是看這個軟件的 INSTALL和README文件,一般都會有說明。
8) 卸載:通常軟件的開發者很少考慮到如何卸載自己的軟件,而tar又僅是完成打包的工作,所以并沒有提供良好的卸載方法。有兩個軟件能夠解決這個問題,那就是Kinstall和Kife,它們是tar包安裝、卸載的黃金搭檔
rpm包,安裝過程如下:
1) 操作系統:RedHat(Red Hat/Fedora)
2) 常見的安裝包格式 rpm包,安裝rpm包的命令是“rpm -參數”
3) 包管理工具 yum
4) 支持tar包
5)1rpm命令:安裝: rpm –ivh 軟件包名.rpm( -I 安裝軟件,-t測試安裝,不是真的安裝,-p顯示安裝進度,-f忽略任何錯誤,-U升級安裝,-v檢測套件是否正確安裝) 卸載: rpm –e 軟件名(注意使用的是軟件名,而不是軟件包名) 查詢:查詢當前系統安裝的軟件包: rpm –qa ‘*軟件包名*’
deb包,安裝過程:
1) 操作系統:Debian系列(Ubuntu)
2) 常見的安裝包格式 deb包,安裝deb包的命令是“dpkg -參數”
3) 包管理工具apt-get
4) 支持tar包
5)dpkg命令:安裝: dpkg –i 軟件包名.deb, 卸載: dpkg –e 軟件名,查詢:查詢當前系統安裝的軟件包: dpkg –l ‘*軟件包名*’
總結
以上是生活随笔為你收集整理的常用linux命令20个(常用linux 命令)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 反应灵敏且性能卓越的Spray + Ak
- 下一篇: (linux if -o)