Kali 查看系统信息的一些命令及查看已安装软件包的命令

1 系统 uname -a查看内核 操作系统 CPU信息head -n 1 etc issue查看操作系统版本cat proc cpuinfo查看CPU信

1.系统

uname -a查看内核/操作系统/CPU信息
head -n 1 /etc/issue查看操作系统版本
cat /proc/cpuinfo查看CPU信息
hostname查看计算机名
lspci -tv列出所有PCI设备
lsusb -tv列出所有USB设备
lsmod列出加载的内核模块
env查看环境变量

2.资源

free -m查看内存使用量和交换区使用量
df -h查看各分区使用情况
du -sh <目录名>查看指定目录的大小
grep MemTotal /proc/meminfo查看内存总量
grep MemFree /proc/meminfo查看空闲内存量
uptime查看系统运行时间、用户数、负载
cat /proc/loadavg查看系统负载

3.磁盘和分区

mount | column -t查看挂接的分区状态
fdisk -l查看所有分区
swapon -s查看所有交换分区
hdparm -i /dev/hda查看磁盘参数(仅适用于IDE设备)
dmesg | grep IDE查看启动时IDE设备检测状况

4.网络

ifconfig查看所有网络接口的属性
iptables -L查看防火墙设置
route -n查看路由表
netstat -lntp查看所有监听端口
netstat -antp查看所有已经建立的连接
netstat -s查看网络统计信息

5.进程

ps -ef查看所有进程
top实时显示进程状态

6.用户

w查看活动用户
id <用户名>查看指定用户信息
last查看用户登录日志
cut -d: -f1 /etc/passwd查看系统所有用户
cut -d: -f1 /etc/group查看系统所有组\
crontab -l查看当前用户的计划任务

7.服务

chkconfig –list列出所有系统服务
chkconfig –list | grep on列出所有启动的系统服务

8.RPM

rpm -qa查看所有安装的软件包
在Linux 操作系统中,有一个系统软件包,它的功能类似于Windows里面的“添加/删除程序”,但是功能又比“添加/删除程序”强很多,它就是 Red Hat Package Manager(简称RPM)。此工具包最先是由Red Hat公司推出的,后来被其他Linux开发商所借用。由于它为Linux使用者省去了很多时间,所以被广泛应用于在Linux下安装、删除软件。下面就 给大家介绍一下它的具体使用方法。

我们得到一个新软件,在安装之前,一般都要先查看一下这个软件包里有什么内容,假设这个文件是:Linux-1.4-6.i368.rpm,我们可以用这条命令查看:
rpm -qpi Linux-1.4-6.i368.rpm
系统将会列出这个软件包的详细资料,包括含有多少个文件、各文件名称、文件大小、创建时间、编译日期等信息。
上面列出的所有文件在安装时不一定全部安装,就像Windows下程序的安装方式分为典型、完全、自定义一样,Linux也会让你选择安装方式,此时我们可以用下面这条命令查看软件包将会在系统里安装哪些部分,以方便我们的选择:
rpm -qpl Linux-1.4-6.i368.rpm
选择安装方式后,开始安装。我们可以用rpm-ivh Linux-1.4-6.i368.rpm命令安装此软件。在安装过程中,若系统提示此软件已安装过或因其他原因无法继续安装,但若我们确实想执行安装命 令,可以在 -ivh后加一参数“-replacepkgs”:
rpm -ivh -replacepkgs Linux-1.4-6.i368.rpm
有时我们卸载某个安装过的软件,只需执行rpm-e <文件名>命令即可。
对低版本软件进行升级是提高其功能的好办法,这样可以省去我们卸载后再安装新软件的麻烦,要升级某个软件,只须执行如下命令:rpm -uvh <文件名>,注意:此时的文件名必须是要升级软件的升级补丁
另外一个安装软件的方法可谓是Linux的独到之处,同时也是RMP强大功能的一个表现:通过FTP站点直接在线安装软件。当找到含有你所需软件的站点并 与此网站连接后,执行下面的命令即可实现在线安装,譬如在线安装Linux-1.4-6.i368.rpm,可以用命令:
rpm -i ftp://ftp.pht.com/pub/linux/redhat/...-1.4-6.i368.rpm
在我们使用电脑过程中,难免会有误操作,若我们误删了几个文件而影响了系统的性能时,怎样查找到底少了哪些文件呢?RPM软件包提供了一个查找损坏文件的 功能,执行此命令:rpm -Va即可,Linux将为你列出所有损坏的文件。你可以通过Linux的安装光盘进行修复。
Linux系统中文件繁多,在使用过程中,难免会碰到我们不认识的文件,在Windows下我们可以用“开始/查找”菜单快速判断某个文件属于哪个文件夹,在Linux中,下面这条命令行可以帮助我们快速判定某个文件属于哪个软件包:
rpm -qf <文件名>
当每个软件包安装在Linux系统后,安装文件都会到RPM数据库中“报到”,所以,我们要查询某个已安装软件的属性时,只需到此数据库中查找即可。注意:此时的查询命令不同于1和8介绍的查询,这种方法只适用于已安装过的软件包!命令格式:
rpm -参数 <文件名>

APT-GETkali

一、什么的是apt-get

高级包装工具(英语:Advanced Packaging Tools,简称:APT)是Debian及其衍生发行版(如:ubuntu)的软件包管理器。APT可以自动下载,配置,安装二进制或者源代码格式的软 件包,因此简化了 Unix系统上管理软件的过程,apt-get命令一般需要root权限执行,所以一般跟着sudo命令。

二、apt-get中文参数

用法:
apt-get [选项] 命令 apt-get [选项] install|remove pkg1 [pkg2 …]
apt-get [选项] source pkg1 [pkg2 …]

apt-get 是一个下载安装软件包的简单命令行接口。 最常用的命令是update(更新) 和install(安装)。
命令:
update - 重新获取软件包列表
upgrade - 进行更新
install - 安装新的软件包
remove - 移除软件包
autoremove - 自动移除全部不使用的软件包
purge - 移除软件包和配置文件
source - 下载源码档案
build-dep - 为源码包配置编译依赖
dist-upgrade - 发行版升级
dselect-upgrade - 依照 dselect 的选择更新
clean - 清除下载的归档文件
autoclean - 清除旧的的已下载的归档文件
check - 检验是否有损坏的依赖

选项:
-h 本帮助文件。
-q 输出到日志 - 无进展指示
-qq 不输出信息,错误除外
-d 仅下载 - 不安装或解压归档文件
-s 不实际安装。模拟执行命令
-y 假定对所有的询问选是,不提示
-f 尝试修正系统依赖损坏处
-m 如果归档无法定位,尝试继续
-u 同时显示更新软件包的列表
-b 获取源码包后编译 -V 显示详细的版本号
-c=? 阅读此配置文件
-o=? 设置自定的配置选项,如 -o dir::cache=/tmp

三,apt-get 常用实例
apt-cache search packagename 搜索包
apt-cache show packagename 获取包的相关信息,如说明、大小、版本等
apt-get install packagename 安装包
apt-get install packagename –reinstall 重新安装包
apt-get -f install 修复安装”-f = –fix-missing”
apt-get remove packagename 删除包
apt-get remove packagename –purge 删除包,包括删除配置文件等
apt-get update 更新源
apt-get upgrade 更新已安装的包
apt-get dist-upgrade 升级系统
apt-get dselect-upgrade 使用 dselect 升级
apt-cache depends packagename 了解使用依赖
apt-cache rdepends packagename 是查看该包被哪些包依赖
apt-get build-dep packagename 安装相关的编译环境
apt-get source packagename 下载该包的源代码
apt-get clean 清理无用的包
apt-get autoclean 清理无用的包
apt-get check 检查是否有损坏的依赖

apt-get工作原理简介
众所周知,在linux操作系统下,利用apt-get来安装软件是非常方便的。只要一个sudo apt-get install 软件名;就可以轻易的解决软件的安装,最关键的是他可以解决其中存在的各种复杂的依赖关系,让你不用为此头疼,而在apt-get出现之前,利用dpkg或者更早之前的./configure;make;make install来安装软件真是无法想象,安装完软件A,提示你要安装软件B,好不容易安装完了,又提示要安装软件C。。。。各种纠结!所以说apt这个高级包管理工具极大的方便了广大的linux用户,更降低了linux用户的入门的门槛。好了,零零碎碎说了这么多废话,咱们回归正题。

为了搞清其中原理,我在网上折腾了半天,最后自己摸索了好久,终于有点头绪,每当执行命令进行软件的安装或着更新,或者软件源的更新时,apt会访问/etc/apt/sources.list内的地址,并在该网站中找到对应系统的包信息例如我的操作系统是ubuntu,网站是deb http://mirrors.163.com/ubuntu/ precise main restricted universe multiverse网易的,那么当我们执行安装的命令时,他就会对应的访问http://mirrors.163.com/ubuntu/dists/lucid/main/binary-i386/的packages.gz,这个文件是服务器上软件包及其依赖关系的清单,并且用gzip压缩过了。apt-get update使用这个清单来确定能够获得哪些补充的软件包且他的内容会被保存在/var/lib/apt/lists内,通过访问这个lists确定该软件是否已安装,是否是最新版本,依赖关系是否满足,从而确定要更新内容,并进行更新,其安装过程主要是由dpkg来完成。

总体上来说apt是倾向于下载的一个管理工具。