文件位置:

    系统命令:/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应用程序基础的更多相关文章

  1. Linux C 程序 基础语法(1)

    1.Linux 下第一支C程序,控制台打印一句话. vi first.c //linux新建文件 #include<stdio.h> int main() { printf("w ...

  2. Linux C 程序 基础(FOUR)

    1.标识符:C语言本身不限制变量长度,但是某些编译器会限制变量长度,命名最好不要超过8位.         以数字开头,保留字,*,空格非法 2.关键字:类型说明符,int , 语句定义符,if el ...

  3. 自学Linux Shell19.1-gawk程序基础特性

    点击返回 自学Linux命令行与Shell脚本之路 19.1-gawk程序基础特性 linux世界中最广泛使用的两个命令行编辑器: sed gawk 1. gawk概念 awk是一个强大的文本分析工具 ...

  4. linux发行版基础目录

    linux发行版基础目录 linux 基础目录 linux基础目录 目录 作用 / 根目录,起源 /boot linux引导启动目录 /lib 库目录 /bin 常用内部命令 /sbin 常用内部管理 ...

  5. LINUX二十个基础命令

    LINUX二十个基础命令 一. useradd命令 1.命令格式: useradd 选项 用户名 2.命令功能: 添加新的用户账号 3.常用参数: -c comment 指定一段注释性描述.-d 目录 ...

  6. 详细介绍Linux shell脚本基础学习

    Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提.1. Lin ...

  7. linux 脚本编写基础(一)

    1. Linux 脚本编写基础 1.1 语法基本介绍 1.1.1 开头 程序必须以下面的行开始(必须方在文件的第一行): #!/bin/sh 符号#!用来告诉系统它后面的参数是用来执行该文件的程序.在 ...

  8. Linux shell入门基础(六)

    六.Shell脚本编程详解 将上述五部分的内容,串联起来,增加对Shell的了解 01.shell脚本 shell: # #perl #python #php #jsp 不同的脚本执行不同的文本,执行 ...

  9. 服务器编程入门(5)Linux服务器程序规范

    问题聚焦:     除了网络通信外,服务器程序通常还必须考虑许多其他细节问题,这些细节问题涉及面逛且零碎,而且基本上是模板式的,所以称之为服务器程序规范.     工欲善其事,必先利其器,这篇主要来探 ...

随机推荐

  1. 手机游戏渠道SDK接入工具项目分享(二)万事开头难

    一般接到任务后程序员们通常都开始着手进行技术调研了,但我这活是项目负责人.还有一大堆事情要先期准备,没人能帮忙. 一.人力配置 考虑的之前已经有一波人搞了大半年,但没有起色,先期也没有太大人力需求,所 ...

  2. iOS之ProtocolBuffer搭建和示例demo

    这次搭建iOS的ProtocolBuffer编译器和把*.proto源文件编译成*.pbobjc.h 和 *.pbobjc.m文件时,碰到不少问题! 搭建pb编译器到时没有什么问题,只是在把*.pro ...

  3. 一键生成APP官网

    只需要输入苹果下载地址,安卓市场下载地址,或者内测下载地址,就能一键生成APP的官网,方便在网上推广. 好推APP官网 www.hotapp.cn/app

  4. 学习笔记:Maven构造版本号的方法解决浏览器缓存问题

    需要解决的问题 在做WEB系统开发时,为了提高性能会利用浏览器的缓存功能,其实即使不显式的申明缓存,现代的浏览器都会对静态文件(js.css.图片之类)缓存.但也正因为这个问题导致一个问题,就是资源的 ...

  5. Google软件构建工具Bazel原理及使用方法介绍

    近期,Google开源了强大的自动化构建工具Bazel. 正好博主近期在使用china版的Bazel--腾讯自主开发的Blade,所以准备跟大家分享一下Google Bazel这个分布式构建系统的原理 ...

  6. 在rem布局下使用背景图片以及sprite

    现在移动端页面用rem布局已经是一大流派了,成熟的框架如淘宝的flexiable.js,以及我的好友@墨尘写的更轻量级的hotcss.用rem作单位使得元素能够自适应后,还有一块需要关注的,那就是背景 ...

  7. 序列化笔记之一:Google的Protocol Buffer格式分析

    从公开介绍来看,ProtocolBuffer(PB)是google 的一种数据交换的格式,它独立于语言,独立于平台.作为一个学了多年通信的人,ProtocolBuffer在我看来是一种信源编码.所谓信 ...

  8. ABP源码分析三十五:ABP中动态WebAPI原理解析

    动态WebAPI应该算是ABP中最Magic的功能之一了吧.开发人员无须定义继承自ApiController的类,只须重用Application Service中的类就可以对外提供WebAPI的功能, ...

  9. 搭建LNAMP环境(七)- PHP7源码安装Memcached和Memcache拓展

    上一篇:搭建LNAMP环境(六)- PHP7源码安装MongoDB和MongoDB拓展 一.安装Memcached 1.yum安装libevent事件触发管理器 yum -y install libe ...

  10. Esay ui数据加载等待提示

    以视频上传为例: //视频上传    function uploadVedio(fileName){            load();//开始加载时弹出加载层        $.post('< ...