首页 > 代码库 > Linux应用程序基础
Linux应用程序基础
文件位置:
????系统命令:/bin和sbin目录,或shell内部指令;
????应用程序:/usr/bin和/usr/sbin目录。
????????/usr/bin:普通执行程序文件;
????????/usr/sbin:服务器执行程序或管理程序。
?
常见软件包:
????rpm:扩展名.rmp软件包;
????deb:扩展名.deb软件包;
????源代码软件包:一般打包为.tar.gz或.tar.bz2等格式。
????附带安装程序的软件包:如提供install.sh,setup等安装程序,或以.bin格式的单个执行文件提供;
????绿色免安装的软件包:压缩包内已有编译好的执行程序文件,解压即可使用;
?
RPM包:
????由red hat提出,被众多linux发行版采用的方案;
????软件包格式:
?
查询已安装的rpm软件信息:
????rpm –q[子选项] [软件名]
例: rpm –qa :查看系统所有已安装的软件信息;
????rpm –qc httpd:查看httpd软件的配置文件;
????rpm –ql httpd:查看httpd软件所安装的目录和文件列表;
????rpm –q httpd:查看httpd是否安装。
????rpm –qf 文件或目录名:查看某个文件或目录属于哪个RPM软件。
?
如果查询未安装的RPM软件包信息,可使用:rpm –qp[子选项] 软件包全称。
例:????rpm –qpi ethool-3.5-1.el6.x86_64.rpm:查询该软件包要安装的目录和文件。
?
安装或升级RPM软件:rpm [选项] rpm包文件
????选项:
????-i:安装新软件,加vh显示进度条;
????-U:升级软件,未装则进行安装;
????-F:升级软件,未装则放弃;
卸载RPM软件:rpm –e 软件
?
实际上,安装RPM软件包并不容易,因为软件包有依赖关系。
?
RPM数据库:
????记录linux系统中安装、卸载、升级应用程序的相关信息;
????RPM包管理系统自动完成维护,一般不需要用户干预
????存放位置:/var/lib/rpm
????文件名:__db.001, __db.002 ……
重建RPM数据库:
????rpm –rebuilddb
????重建前先删除原有的数据库文件:rm –rf /var/lib/rpm/--db.*
?
RPM软件包公钥:用于验证软件包完整性。
????查看是否有公钥:rpm –qa gpg-pubkey
????导入公钥:rpm –import /media/RPM-GPG-KEY-redhat-release
????查看公钥信息:rpm –qi 公钥名
????验证软件包完整性:
????????rpm –K /media/Packages/httpd-2.2.15-29.e16_4.x86_64.rpm
????????如果要显示更详细的验证信息,可以用-vvK。
????卸载公钥:
????????rpm –e 公钥名
?
YUM(Yellowdog Updater Modified)概述:
????基于RPM包构建的软件更新机制,可自动解决软件依赖关系。
????所有软件包由集中的YUM软件仓库提供。
????软件仓库的提供方式:
????????FTP服务:ftp://....
????????HTTP服务:http://....
????????本地目录:fiel:///….
????RPM软件包来源:
????????red hat发布;第三方组织;用户自定义。
????????EPEL软件源:Fedora小组维护的一个软件仓库项目,提供他们默认不提供的软件包。
????安装EPEL软件源:
????查看EPEL源是否添加:
????????yum repolist
????YUM仓库位置:/etc/yum.repos.d/*.repo
????YUM的配置文件:
????????基本设置:/etc/yum.conf
仓库设置:/etc/yum.repos.d/*.repo
日志文件:/var/log/yum.log
????查询软件包命令:
????????yum list [软件名]:可省略软件名查看所有软件包;
????????yum info [软件名]:查看某个软件包的信息;
????????yum search <关键词>: 搜索某个软件包;
????????yum provides <关键词>: 搜索某个文件是属于哪个软件包的(此命令很常用)。
????查询软件包组:软件包是用于对一系列软件分组,方便安装和管理。
????????yum grouplist [包组名]:查询所有软件包。
????????yum groupinfo <包组名>:查询某个软件包的信息。
????安装软件:
????????yum install [软件名]
????????yum groupinstall <包组名>
????升级软件:
????????yum update
????????yum groupupdate
????卸载:
????????yum remove <软件名>
????????yum groupremove <包组名>
????????yum grouperase <包组名>
????
????
Linux应用程序基础