查看linux系統配置經常使用命令(聚集中。。。)

系統

# uname -a # 查看內核/操做系統/CPU信息linux

# head -n 1 /etc/issue # 查看操做系統版本服務器

# cat /proc/cpuinfo # 查看CPU信息網絡

# hostname # 查看計算機名多線程

# lspci -tv # 列出全部PCI設備架構

# lsusb -tv # 列出全部USB設備併發

# lsmod # 列出加載的內核模塊佈局

# env # 查看環境變量網站

資源

# free -m # 查看內存使用量和交換區使用量ui

# df -h # 查看各分區使用狀況spa

# du -sh <目錄名> # 查看指定目錄的大小

# grep MemTotal /proc/meminfo # 查看內存總量

# grep MemFree /proc/meminfo # 查看空閒內存量

# uptime # 查看系統運行時間、用戶數、負載

# cat /proc/loadavg # 查看系統負載

磁盤和分區

# mount | column -t # 查看掛接的分區狀態

# fdisk -l # 查看全部分區  www.2cto.com  

# swapon -s # 查看全部交換分區

# hdparm -i /dev/hda # 查看磁盤參數(僅適用於IDE設備)

# dmesg | grep IDE # 查看啓動時IDE設備檢測情況

網絡

# ifconfig # 查看全部網絡接口的屬性

# iptables -L # 查看防火牆設置

# route -n # 查看路由表

# netstat -lntp # 查看全部監聽端口

# netstat -antp # 查看全部已經創建的鏈接

# netstat -s # 查看網絡統計信息

進程

# ps -ef # 查看全部進程

# top # 實時顯示進程狀態

用戶

# w # 查看活動用戶

# id <用戶名> # 查看指定用戶信息

# last # 查看用戶登陸日誌

# cut -d: -f1 /etc/passwd # 查看系統全部用戶

# cut -d: -f1 /etc/group # 查看系統全部組

# crontab -l # 查看當前用戶的計劃任務

服務

# chkconfig --list # 列出全部系統服務

# chkconfig --list | grep on # 列出全部啓動的系統服務

程序

# rpm -qa # 查看全部安裝的軟件包

 

CPU

① 查看物理CPU的個數

#cat /proc/cpuinfo |grep "physical id"|sort |uniq|wc -l  

② 查看邏輯CPU的個數(假設計算機有一個物理CPU,是雙核的,支持超線程。那麼這臺計算機就是雙核四線程的。 )

#cat /proc/cpuinfo |grep "processor"|wc -l  

③ 查看CPU是幾核(核數就是指CPU上集中的處理數據的cpu核心個數,單核指cpu核心數一個,雙核則指的是兩個。一般每一個CPU下的核數都是固定的,好比你的計算機有兩個物理CPU,每一個CPU是雙核,那麼計算機就是四核的。)

#cat /proc/cpuinfo |grep "cores"|uniq  

 

做者:知乎用戶
連接:https://www.zhihu.com/question/20998226/answer/18659825
來源:知乎

架構能夠變幻無窮,面向需求、綜合考量是王道。
來,簡單舉個例子。假設如今咱們要設計一臺計算機的處理器部分的架構。如今擺在咱們面前的有兩種選擇,多個單核CPU和單個多核CPU。

若是咱們選擇多個單核CPU,那麼每個CPU都須要有較爲獨立的電路支持,有本身的Cache,而他們之間經過板上的總線進行通訊。假如在這樣的架構上,咱們要跑一個多線程的程序(常見典型狀況),不考慮超線程,那麼每個線程就要跑在一個獨立的CPU上,線程間的全部協做都要走總線,而共享的數據更是有可能要在好幾個Cache裏同時存在。這樣的話,總線開銷相比較而言是很大的,怎麼辦?那麼多Cache,即便咱們不心疼存儲能力的浪費,一致性怎麼保證?若是真正作出來,還要在主板上佔多塊地盤,給佈局佈線帶來更大的挑戰,怎麼搞定?

若是咱們選擇多核單CPU,那麼咱們只須要一套芯片組,一套存儲,多核之間經過芯片內部總線進行通訊,共享使用內存。在這樣的架構上,若是咱們跑一個多線程的程序,那麼線程間通訊將比上一種情形更快。若是最終實現出來,對板上空間的佔用較小,佈局佈線的壓力也較小。

看起來,多核單CPU完勝嘛。但是,若是須要同時跑多個大程序怎麼辦?每一個程序都須要用不少內存怎麼辦?假設倆大程序,每個程序都好多線程還幾乎用滿cache,它們分時使用CPU,那在程序間切換的時候,光指令和數據的替換就要費多大事情啊!

因此呢,大部分通常我們使用的電腦,都是單CPU多核的,好比咱們配的Dell T3600,有一顆Intel Xeon E5-1650,6核,虛擬爲12個邏輯核心。少部分高端人士須要更強的多任務併發能力,就會搞一個多顆多核CPU的機子,Mac Pro就能夠有兩顆。高端的服務器通常都是多顆多核,甚至還高頻率。

tee用法示例:

格式:tee file1
相似於>
輸出到標準輸出的同時,保存到文件file中。若是文件不存在,則建立;若是已經存在,則覆蓋之。

 

格式:tee -a file1
相似於>>
輸出到標準輸出的同時,追加到文件file中。若是文件不存在,則建立;若是已經存在,就在末尾追加內容,而不是覆蓋。

 

格式:tee file1 file2 
重定向到文件file1和file2中,tee能夠重定向到多個文件。

 

標準輸入、輸出

&>/dev/null 等價於 >/dev/null 2>&1

 

iptables和selinux

iptables用於設置防火牆(firewall), 即管理內外通訊。 iptables 能作到「控制內部機器上網與不上網,訪問哪些網站的控制」   但日誌只能記錄關於訪問ip數據的相關信息 SELinux主要用於對文件(file), 文件夾 (directory), 過程(process)的限制。  

相關文章
相關標籤/搜索