今天咱們一塊兒來看看Linux系統下經常使用的系統級命令,包括軟硬件查看、修改命令,有CPU、內存、硬盤、網絡、系統管理等命令。mysql
說明:全部命令是在Centos 6.4 64位的虛擬機系統進行測試的。這些命令是須要你們深深的記在腦海裏的哦linux
硬件篇sql
CPU相關shell
lscpu ubuntu
#查看的是cpu的統計信息.centos
cat /proc/cpuinfo 網絡
#查看CPU信息詳細信息,如每一個CPU的型號,主頻等app
內存相關tcp
free -m ide
#概要查看內存狀況 這裏的單位是MB
cat /proc/meminfo
#查看內存詳細信息
磁盤相關
lsblk
#查看硬盤和分區分佈,顯示很直觀
df -h
#查看各分區使用狀況
cat /proc/partitions
#查看硬盤和分區
mount | column -t
#查看掛接的分區狀態
網卡相關
lspci | grep -i 'eth'
#查看網卡硬件信息
ifconfig -a
#查看系統的全部網絡接口
ethtool eth0
#若是要查看某個網絡接口的詳細信息,例如eth0的詳細參數和指標
軟件篇
內核相關
uname -a
#查看版本當前操做系統內核信息
cat /proc/version
#查看當前操做系統版本信息
cat /etc/issue
#查看版本當前操做系統發行版信息
cat /etc/redhat-release
#同上
cat /etc/SuSE-release
#suse系統下才可以使用
lsb_release -a
#用來查看linux兼容性的發行版信息
lsmod
#列出加載的內核模塊
網絡
ifconfig
#查看全部網絡接口的屬性
iptables -L
#查看防火牆設置
service iptables status
#查看防火牆狀態
service iptables stop
#關閉防火牆
route -n
#查看路由表
netstat -lntp
#查看全部監聽端口
netstat -antp
#查看全部已經創建的鏈接
netstat -s
#查看網絡統計信息進程
netstat -at
#列出全部tcp端口
netstat -au
#列出全部udp端口
netstat -lt
#只列出全部監聽tcp端口
系統管理
top
#查看系統全部進程的詳細信息,好比CPU、內存等,信息不少!
df -lh
#查看硬盤大小及使用率
mount
#掛接遠程目錄、NFS、本地共享目錄到linux下
hostname
#查看/修改計算機名
w
#查看活動用戶
id
#查看指定用戶信息
last
#查看用戶登陸日誌
cut -d: -f1 /etc/passwd
#查看系統全部用戶
cut -d: -f1 /etc/group
#查看系統全部組
crontab -l
#查看當前用戶的計劃任務服務
chkconfig –list
#列出全部系統服務
chkconfig –list | grep on
#列出全部啓動的系統服務程序
rpm -qa
#查看全部安裝的軟件包
uptime
#查看系統運行時間、用戶數、負載
/sbin/chkconfig --list
#查看系統自動啓動列表
/sbin/chkconfig –add mysql
#把MySQL添加到系統的啓動服務組裏面
文件相關
ls -lht
#列出一個文件夾下全部文件及大小、訪問權限
du -sh <dir>
#查看指定目錄的大小
du -lh <dir>
#查看指定目錄及各文件的大小
ln -s
#創建軟連接
進程相關
pstree -p pid
#查看一個進程下的全部線程
pstree -a
#顯示全部進程的全部詳細信息,遇到相同的進程名能夠壓縮顯示。
ps -ef
#查看全部進程
kill -9 pid
#殺死進程
kill all test
#殺死進程
kill -9 `pgrep test`
#殺死進程
./test.sh &
#使程序在後臺運行
nohup ./test.sh &
#使程序在後臺運行
壓縮解壓縮
zip -r dir.zip dir file
#將目錄dir、文件file等壓縮到zip包,
zip -re dir.zip dir file
#建立zip包,且加密
unzip dir.zip
#解壓
tar -zcvf dir.tar.gz dir file
#將目錄dir、文件file等壓縮到tar包
tar -xf dir.tar.gz
#解壓
screen命令
screen命令組最大的好處就是當你的shell退出或關閉後,你運行的服務不會關係,也就是說,咱們能夠在screen裏開啓一組服務,且不受終端斷開的影響。
screen -S test
#建立一個名字爲test的screen
screen -r test
#打開名字爲test的screen
screen -r pid
#打開進程號爲pid的screen
screen -ls
#列出全部的screen
ctrl + a,d
#當在一個screen時,退出screen
ctrl + a,n
#當在一個screen時,切換到下一個窗口
ctrl + a,c
#當在一個screen時,建立一個新的窗口
scp命令
scp local_file remote_username@remote_ip:remote_dir
#拷貝本地文件到遠程機器上
scp -r local_dir remote_username@remote_ip:remote_dir
#拷貝本地整個目錄到遠程機器上
軟件包安裝管理命令
假設你想要安裝的軟件包叫作app,注意,這裏的命令一般須要sudo或者root權限。
//centos系統、redhat系統
rpm -qa | grep app
#查找本機是否安裝了app;
rpm -ivh app.rpm
#假設你有app的rpm包,這樣直接安裝
sudo yum install app
#不然就在線安裝
yum update app
#更新app
rpm -e app
#刪除已安裝的app包
//suse、opensuse系統
zypper search app
#查找本機是否安裝了app;
zypper install app
#安裝
zypper update app
#更新
zypper remove app
#刪除
zypper lr
#列出全部已定義的安裝源。
zypper ar
#添加新安裝源。
zypper rr
#刪除指定的安裝源
zypper mr
#修改指定的安裝源
//ubuntu系統
apt-get install app
#安裝
apt-get update app
#更新
apt-get remove app
#刪除
apt-cache search app
#搜索軟件包
dpkg -i app.deb
#假設你有app的deb包,這樣直接安裝