Linux模块的安装和卸载
lsmod显示模块信息
modprobe-c显示模块的依赖信息
modprobemodule_name卸载模块

```
[root@test~]Letsyouuse'mymod'inMODULES,insteadof'really_long_module_name'
aliasmymodreally_long_module_name
```
如果模块直接编译进内核,也可以通过启动管理器(GRUB,LILO或Syslinux)的内核行加入参数:
=parametercontents
column格式化输出可以让一些命令的输出看起来更舒服些.例如blkid,mount,cat/etc/fstab.
[root@test~]blkid|column-t
-s参数指定可以指定分隔符.默认是空格
Usage:
column[options][file]
Options:
-c,--columnswidthwidthofoutputinnumberofcharacters
-t,--tablecreateatable
-s,--separatorstringpossibletabledelimiters
-o,--output-separatorstring
tableoutputcolumnseparator,defaultistwospaces
-x,--fillrowsfillrowsbeforecolumns
-h,--helpdisplaythishelpandexit
-V,--versionoutputversioninformationandexit
通过pid查看进程的环境变量信息使用strings,可以格式化打印
$strings/proc/1158/environ
LANG=en_
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
NOTIFY_SOCKET=/run/systemd/notify
SSH_USE_STRONG_RNG=0
通过pid查看进程对应可执行文件的绝对路径readlink/proc/[pid]/exe
通过pid查看进程的当前工作目录pwdx[pid]
lsof一切皆文件-p[PID]只显示该进程打开的所有文件.不带参数显示所有已打开的文件
-d对FD有效,用于筛选文件列表.^txt显示除txt其他所有类型的文件.1显示所有fd为1的文件.可以使用,逗号
连接多个选择
-a表示两个参数都必须满足(AND)。如果没有-a标志,缺省的情况是显示匹配任何一个参数(OR)的文件
-n阻止网络地址转换
-P阻止端口号到端口名的转换
-iprotocol:@ip:portprotocol包括tcp和udp.显示符合该地址的文件列表-uss为用户名或者用户ID,选择该用户下的文件
lsof[name]

name是mountpoint或者文件系统对应的设备文件,则显示在该文件系统上打开的所有文件列表
name是文件夹(非mountpoint),则显示所有将该文件夹作为正常文件打开的列表.例如cwd,rtd.如果+d打印所有
在该目录下已打开的文件,但不递归查找子目录.+D则允许递归查找
谁在使用/var/log/messages
[root@test~]lsof+D/var/log/
COMMANDPIDUSERFDTYPEDEVICESIZE/OFFNODENAME
abrt-watc712root4rREG202,25559752093357/var/log/messages
rsyslogd714root3wREG202,25559752093357/var/log/messages
rsyslogd714root6wREG202,269851722094508/var/log/secure
rsyslogd714root7wREG202,273/var/log/cron
tuned732root3wREG202,277082093361/var/log/tuned/
[root@test~]#
```
列出root这个用户打开的所有文件
lsof-uroot
dd测试磁盘或者文件读写高危命令,of一定要指向正确的文件,不要指/,/dev/vda,/dev/vda1等系统重要设备.
该命令要在测试环境验证充分.
if表示从哪个设备/文件读
of表示写到哪个设备/文件
bs表示一次读写多少字节.也可以使用1K,1M这样带单位的
count表示最多读写多少次.总的读写量为bs*count
/dev/zero可以无限读取\0
ddif=/dev/zeroof=/tmp/=1Mcount=10
rpm安装/更新/卸载软件包查询系统已安装的所有软件包
rpm-qa
查询某个文件所属的软件包名.文件必须是绝对路径
rpm-qf/etc/ssh/sshd_config
rpm-qf`whichstrace`
查询包所含有的文件
rpm-qlstrace
查询包里的配置文件
rpm-qcopenssh-server
查询软件包里的脚本信息
rpm-q--scriptsopenssh-server
查询当前包的changelog.常用于查看已解决的CVE列表
rpm-q--changelogopenssh-server
查询包所能提供的CAPABILITY
rpm-q--providesglibc
查询哪些包依赖某个CAPABILITY
rpm-q--whatrequires[CAPABILITY]
查询包所依赖的CAPABILITY
rpm-q-Rglibc
查询包所有提供的CAPABILITY
rpm-q--whatprovides[CAPABILITY]
校验当前包与原始状态的差别.
5–MD5校验和
S–文件长度
L–符号链接
T–文件修改日期
D–设备
U–用户
G–用户组
M–模式(包含许可和文件类型)
?–不可读文件
如下标志文件的md5,文件长度,修改日志有变化
$rpm-Vopenssh-server
/etc/ssh/sshd_config
安装本地包-vh获得一个详细的安装进程--nodeps忽略依赖关系
卸载包
升级包





