查看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)的限制。  

相关文章
相关标签/搜索