Fork me on GitHub

命令拷屏之系统信息

系统

查看发行版本与内核版本,uname -a或者uname -r
查看发行版(及其版本)则没有统一命令
一般写在/etc/issue或者/etc/release(release可能有前缀或后缀),可以用ls /etc/*release*看看
[root@rac01 ~]# lsb_release -a            不一定有这个命令
[root@rac01 ~]# uname -a            显示系统体系结构,以下参数分别代表各字段信息
Linux rac01 2.6.18-308.el5 #1 SMP Fri Jan 27 17:17:51 EST 2012 x86_64 x86_64 x86_64 GNU/Linux
-s      -n      -r                   -v                                                    -m        -p         -i         -o
[root@Firewall ~]# head -n 1 /etc/issue        查看发行版本
CentOS release 5.5 (Final)
Red Hat Enterprise Linux Server release 5.8 (Tikanga)

内核

lsmod,modinfo ip_vs,modprobe,depmod
[root@rac01 ~]# lsmod    http://www.360doc.com/content/13/0622/19/9171956_294796609.shtml
yum update kernel kernel-devel -y
kernel kernel-devel 两个版本一致
如果安装过后  需要重启 重启后还是不行的话 需要卸载再重新安装
dmesg 查看内核日志 显示一些打印信息 警告信息 出错  对应的文件在/var/log/dmesg
kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息亦保存在/var/log目录中,名称为dmesg的文件里
[root@coreserv ~]# cd /sys/module/    此目录下是更详细的模块信息
[root@coreserv ~]# lsmod    lsmod 以美观的方式列出/proc/modules的内容。
Module(模块名)    Size(模块大小)   Used by(被...使用)
[root@coreserv ~]# less /proc/modules
insmod是一个向内核插入模块的小程序:若文件名是一个连字符'-',模块从标准输入输入。大多数用户使用modprobe,因为它比较智能化。
rmmod是一个可以从内核中删除模块的小程序,大多数用户使用modprobe -r去删除模块。
modinfo列出Linux内核中命令行指定的模块的信息。若模块名不是一个文件名,则会在/lib/modules/version 目录中搜索,就像modprobe一样。
modinfo默认情况下,为了便于阅读,以下面的格式列出模块的每个属性:fieldname : value。
[root@coreserv ~]# modinfo nfs_acl
modprobe可智能地添加和删除Linux内核模块(为简便起见,模块名中'_'和'-'是一样的)。modprobe会查看模块 目录/lib/modules/'uname -r'里面的所有模块和文件,除了可选
的/etc/modprobe.conf配置文件和/etc/modprobe.d目录外。
modprobe需要一个最新的modules.dep文件,可以用depmod来生成。该文件列出了每一个模块需要的其他模块,modprobe使用这个去自动添加或删除模块的依赖。
depmod分析可加载模块的依赖性,生成modules.dep文件和映射文件。
Linux内核模块可以为其它模块提供提供服务(在代码中使用EXPORT_SYMBOL),这种服务被称作"symbols"。若第二个模块使用了这个symbol,则该模块很明显依赖于第一个模块。这些依赖关系是非常繁杂的。depmod读取在/lib/modules/'uname -r' 目录下的所有模块,并检查每个模块导出的symbol和需要的symbol,然后创建一个依赖关系列表。默认地,该列表写入到/lib/moudules /'uname -r'目录下的modules.dep文件中。若命令中的filename有指定的话,则仅检查这些指定的模块(不是很有用)。若命令中提供了version参数,则会使用version所指定的目录生成依赖,而不是当前内核的版本(uname -r 返回的)。

 

[root@localhost modules]# rpm -qa|grep module
module-init-tools-3.9-21.el6_4.x86_64
[root@localhost modules]# rpm -ql module-init-tools
/etc/depmod.d
/etc/depmod.d/dist.conf
/etc/modprobe.d
/etc/modprobe.d/dist-alsa.conf
/etc/modprobe.d/dist-oss.conf
/etc/modprobe.d/dist.conf
/etc/modprobe.d/local.conf
/sbin/depmod
/sbin/insmod
/sbin/insmod.static
/sbin/lsmod
/sbin/modinfo
/sbin/modprobe
/sbin/rmmod
/sbin/weak-modules

所有的内核模块,全部以.ko结尾
[root@localhost kernel]# pwd
/lib/modules/2.6.32-431.el6.x86_64/kernel
[root@localhost kernel]# ls
arch  crypto  drivers  fs  kernel  lib  mm  net  sound

当前已经编译的模块
[root@localhost modules]# modprobe -l|wc -l
2002
当前已载入的模块
[root@localhost modules]# lsmod|wc -l
47

需要什么功能就去加载相应的模块
从下面开始明白了解了加载模块的含义与用法
[root@localhost ~]# lsmod |grep netconsole
[root@localhost ~]# modprobe netconsole netconsole=@/eth0,12345@10.0.0.1/00:E0:81:2B:0C:C1
[root@localhost ~]# lsmod |grep brid
[root@localhost ~]# modprobe bridge
[root@localhost ~]# lsmod |grep brid
bridge                 83177  0
stp                     2218  1 bridge
llc                     5546  2 bridge,stp
[root@localhost ~]# lsmod |grep kvm
[root@localhost ~]# modprobe kvm
[root@localhost ~]# lsmod |grep kvm
kvm                   333172  0

没有内核模块软件是通过守护进程来实现的

 

 

用户及权限
[root@Firewall ~]# w                查看活动用户信息
[root@Firewall ~]# who -a            与uname -a类似
[root@Firewall ~]# who –rH            显示当前运行级别
[root@Firewall ~]# id                查看指定用户信息
[root@Firewall ~]# last                查看用户登录日志
[root@Firewall ~]# lastlog
[root@Firewall ~]# cut -d: -f1 /etc/passwd    查看系统所有用户
[root@Firewall ~]# cut -d: -f1 /etc/group    查看系统所有组
[root@Firewall ~]# crontab -l            查看当前用户的计划任务

进程

[root@test1 ~]# ps U oracle
[root@test1 ~]# ps -He -H显示进程层次,通常与其它连用,如-a,-e等
[root@test1 ~]# ps -e e -ww e 命令之后显示环境(如:ps -d e; ps -a e),-ww避免详细参数被截断

有十几种控制进程的方法,有fg,bg,jobs,at,crontab,pstree,top,nice,renice,sleep,nohup,pgrep等

下面是一些常用的方法:
SIGKILL 和 SIGSTOP 信号不能被捕捉、封锁或者忽略,但是,其它的信号可以。所以这是你的终极武器。

[root@localhost ~]#kill -KILL [pid]
[root@localhost ~]#kill -STOP [pid]
renice +4 ‘pgrep squid‘
ps -fp $(pgrep -d, -x xterm)

服务
[root@Firewall ~]# chkconfig --list
[root@Firewall ~]# service kudzu status 用硬件检测程序kuduz探测新硬件

posted on 2014-04-19 17:30  阳光-源泉  阅读(364)  评论(0编辑  收藏  举报

导航