Linux入职基础-5.10_软件安装卸载(命令实例)

软件安装卸载(命令实例)

一:命令列表

declare 设置/显示shell环境变量

enable 启动/关闭shell内部命令

lsmod  显示已载入系统的模块

modinfo查看模块信息来判定这个模块的用途

depmod 可检测模块的相依性,供modprobe在安装模块时使用

modprobe加载新模块以及新模块相依赖的模块

rmmod  删除模块

rpm  软件包管理(详见专题)

mkkickstart根据目前系统的设置来建立组态文件,供其他电脑在安装时使用。

dmesg 显示开机信息

eval重新运算求出参数的内容

export用来显示和设置环境变量

env   用来显示当前用户的环境变量

set  显示当前shell的变量,包括当前用户的变量

unset  删除自定义变量或函数

二、实例解说

名称:declare

功能:设置/显示shell环境变量

语法:declare [+/-][afrix]

参数:

+/-  “-“可用来指定变量的属性,“+”则是取消变量所设的属性。

-a 定义为数组array

-f 定义为函数function

-i 定义为整数integer

-r 定义为只读

-x 定义为通过环境输出变量

范例:

#1声明整数型变量

[root@localhost /]# declare  -i a

[root@localhost /]# a=56

[root@localhost /]# echo $a

#2声明数组变量

[root@localhost /]# declare -acd='([0]=”a” [1]=”b” [2]=”c”)’

[root@localhost /]# echo ${cd[1]}    //显示变量内容

[root@localhost /]# echo ${cd[@]}   //显示整个数组变量内容

名称: enable

功能:启动或关闭 shell 内建指令

语法:enable [-n][-all][内建指令]

参数:

-a 显示所有的内部命令

-n 禁止内部命令,如果没有-n参数,则充许所有的内部命令。

-p 显示所充许的内部命令,-p-n合用,显示被禁止的内部命令。

范例:

#1禁止cd命令

[root@localhost ~]# enable -n cd

#2显示被禁止的命令

[root@localhost ~]# enable –np

#3启用shell 内建指令

[root@localhost ~]# enable cd

名称:lsmod

功能:显示已载入系统的模块

语法:lsmod

参数:

范例:

#1显示所有已经载入的系统模块

[root@localhost ~]# lsmod

Module               Size  Used  by

ip_tables              17029  1   iptable_filter

1列:表示模块的名称,如ip_tables表示ip_tables模块。

2列:表示模块的大小,如17029表示scsi_mod模块的大小为17029字节。

3列:表示依赖模块的个数,如1表示有1个模块依赖ip_tables模块。

4列:表示依赖模块的内容,如iptable_filter表示它需要ip_tables模块。

#1先确认模块是否已经安装,安装完成后可以用modprobe来加载

[root@localhost ~]# lsmod | grep ext3

[root@localhost ~]# lsmod | grep usb

[root@localhost ~]# lsmod | grepusb_storage

名称:modprobe

功能:可载入指定的个别模块,或是载入一组相依的模块,modprobe会根据depmod所产生的相依关系,决定要载入哪些模块。若在载入过程中发生错误,在modprobe会卸载整组的模块。modprobe读取 /lib/modules/2.6.xx/modules.dep 档案得知相依性的。而该档案是透过depmod所建立。

语法:modprobe [-acdlrtvV][–help][模块文件][符 名称 = 符 值]

参数:

-a–all  载入全部的模块。

-c–show-conf  显示所有模块的设置信息。

-d–debug  使用排错模式。

-l–list  显示可用的模块。

-r–remove  模块闲置不用时,即自动卸载模块。

-t–type  指定模块类型。

-v–verbose  执行时显示详细的信息。

范例:

#1查看modules的配置文件

[root@localhost ~]# modprobe -c

#2列出内核中所有已经或者未挂载的所有模块

[root@localhost ~]# modprobe –l  // modprobe -l读取的模块列表就位于/lib/modules/`uname-r`目录中。

#3挂载vfat模块

[root@localhost ~]# modprobe vfat

#4移除已经加载的模块

[root@localhost ~]# modprobe -r usb_storage   //移除模块

[root@localhost ~]# lsmod | grepusb_storage   //查看模块是否存在

[root@localhost ~]#  modprobe usb_storage  //添加模块

注意:内核模块的开机自动挂载模块一般是位于一个配置文件,一般的Linux发行版本都有 /etc/modules.conf /etc/modprobe.conf

名称:modinfo

功能:显示模块的信息

语法:modinfo [-adhpV][模块文件]

参数:

-a–author  显示模块开发人员。

-d–description  显示模块的说明。

-h–help  显示modinfo的参数使用方法。

-p–parameters  显示模块所支持的参数。

范例:

#1 显示jbd模块信息

[root@localhostwireless]# modinfo jbd

名称:depmod

功能:检测模块的相依性,供modprobe在安装模块时使用。本质就是为所有列在/etc/modprobe.conf /etc/modules.conf 中的所有模块创建依赖关系,并且写入到modules.dep文件。modprobe调用文件modules.dep加载模块

语法:depmod [-adeisvV][-m 文档>][–help][模块名称]

参数:

-a–all  分析任何可用的模块。

-ddebug  执行排错模式。

-e  输出无法参照的符 。

-i  不检查符 表的版本。

-m文档>system-map文档>  使用指定的符 表文档。

-s–system-log  在系统记录中记录错误。

-v–verbose  执行时显示周详的信息。

范例:

#1安装新模块案例

//首先,编译了一个新的wifi驱动r8192se_pci.ko

//其次,将其拷贝到/lib/modules/$(uname-r) /kernel/net/wireless

//然后,到/lib/modules/$(uname-r)/kernel/net/wireless运行depmod -a

[root@localhost ~]# depmod –a

//最后,可以在任意目录运行modprober8192se_pci

[root@localhost ~]# modprobe r8192se_pci

名称:rpm

功能:Red Hat Linux发行版专门用来管理Linux各项套件的程序

语法:

参数:

-a  查询所有套件。

-b完成阶段>套件档>+-t 完成阶段>套件档>+  设置包装套件的完成阶段,并指定套件档的文件名称。

-c  只列出组态配置文件,本参数需配合“-l”参数使用。

-e  套件档>–erase套件档>  删除指定的套件。

-f  文件>+  查询拥有指定文件的套件。

-h  –hash  套件安装时列出标记。

-i  显示套件的相关信息。

-I  套件档>–install套件档>  安装指定的套件档。

-l  显示套件的文件列表。

-p  套件档>+  查询指定的RPM套件档。

-q  使用询问模式,当遇到任何问题时,rpm指令会先询问用户。

-R  显示套件的关联性信息。

-s  显示文件状态,本参数需配合“-l”参数使用。

-U   套件档>–upgrade套件档>   升级指定的套件档。

-v  显示指令执行过程。

-vv  详细显示指令执行过程,便于排错。

安装参数

–force 即使覆盖属于其它包的文件也强迫安装

–nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。

范例:

#1安装一个包

[root@localhost ~]# rpm –ivh

#2升级一个包

[root@localhost ~]# rpm –Uvh

#3移走一个包

[root@localhost ~]# rpm –e

#4查询一个包是否被安装

[root@localhost ~]# rpm -q

#5得到被安装的包的信息

[root@localhost ~]#rpm -qi

#6列出该包中有哪些文件

[root@localhost ~]#rpm –ql  

[root@localhost ~]#rpm –ql  httpd

#7列出服务器上的一个文件属于哪一个RPM

[root@localhost ~]#rpm –qf

#8列出所有被安装的rpm package

[root@localhost ~]# rpm -qa

#9列出一个未被安装进系统的RPM包文件中包含有哪些文件

[root@localhost ~]#rpm -qilp

名称:dmesg

功能:显示开机信息

语法:dmesg [-cn][-s 缓冲区大小>]

参数:

-c  显示信息后,清除ring buffer中的内容。

-s   缓冲区大小>  预设置为8196,刚好等于ringbuffer的大小。

-n  设置记录信息的层级。

范例:

#1检查硬盘是否运行在DMA模式

[root@localhost ~]# dmesg | grep DMA

#2显示每个 卡的硬件配置信息

[root@localhost ~]# dmesg | grep eth

#3探测系统内核模块的加载情况

[root@localhost ~]# dmesg | grep acpi       

名称:export

功能:设置环境变量

语法:export [-fnp][变量名称]=[变量设置值]

参数:

-f  代表[变量名称]中为函数名称。

-n  删除指定的变量。变量实际上并未删除,只是不会输出到后续指令的执行环境中。

-p  列出所有的shell赋予程序的环境变量。

范例:

#1查看已经存在的环境变量

[root@localhost ~]# export –p

名称:set

功能:主要是显示系统中已经存在的shell变量,以及设置shell变量的新变量值。set命令不能够定义新的shell变量。如果要定义新的变量,可以使用declare命令。

语法:set(选项)(参数)

参数:

-a:标示已修改的变量,以供输出至环境变量。

-b:使被中止的后台程序立刻回 执行状态。

-C:转向所产生的文件无法覆盖已存在的文件。

-dShell预设会用杂凑表记忆使用过的指令,以加速指令的执行。使用-d参数可取消。

-e:若指令传回值不等于0,则立即退出shell

-f:取消使用通配符。

-h:自动记录函数的所在位置。

-H Shell:可利用“!”指令编 >的方式来执行history中记录的指令。

-k:指令所给的参数都会被视为此指令的环境变量。

-l:记录for循环的变量名称。

-m:使用监视模式。

-n:只读取指令,而不实际执行。

-p:启动优先顺序模式。

-P:启动-P参数后,执行指令时,会以实际的文件或目录来取代符 连接。

-t:执行完随后的指令,即退出shell

-u:当执行时使用到未定义过的变量,则显示错误信息。

-v:显示shell所读取的输入值。

-x:执行指令后,会先显示该指令及所下的参数。

范例:

#1设置shell变量的新变量值

//定义一个新的环境变量“myfun”

 [root@localhost ~]# declare myfun=’c++’

//将新定义的变量输出为环境变量

[root@localhost ~]# set  myfun    //执行该命令后,将会新添加对应的环境变量

//用户可以使用env命令和grep命令分别显示和搜索环境变量“mylove”

[root@localhost ~]#env | grep myfun

#2删除环境变量

[root@localhost ~]# unset myfun1

[root@localhost ~]# unset myfun

 

文章知识点与官方知识档案匹配,可进一步学习相关知识CS入门技能树Linux入门在线安装软件25065 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2018年2月2日
下一篇 2018年2月2日

相关推荐