Linux 下常用的(软件包)安装源

Linux 下常用的(软件包)安装源,第1张

我最常用的 Linux 发行版为 CentOS。为了拥有一个“干净”的系统,尽量减少不必要的软件安装,我一般都会采用 minimal 版本安装。但安装完成后并不能满足我的基本需求;对我来说,还需要安装一些常用的(对我来说)软件包。而我需要有很多软件,在CentOS 自带的yum 源中并没有。所以就促使我去寻找其他的可用 yum 软件源。

企业级 Linux 扩展软件包(Extra Packages for Enterprise Linux 即:EPEL)是一个Fedora特殊兴趣小组为企业级 Linux创建、维护和管理的高质量的附加软件包,企业级Linux 包括但不限于 Red Hat Enterprise Linux(RHEL),CentOS,Scientific Linux(SL)和 Oracle Linux(OL)。

我一般是在 fedora 官网获取 epel-release 软件: http://fedoraproject.org/wiki/EPEL 。

我在 CentOS 6 系统下会使用如下指令安装 epel-release

Remi repository 是包含最新版本 PHP 和 MySQL 包的 Linux 源,由 Remi 提供维护。有个这个源之后,使用 YUM 安装或更新 PHP、MySQL、phpMyAdmin 等服务器相关程序的时候就非常方便了。

它依赖 EPEL 软件包。

我一般是在其官网获取 remi-release 软件: Remi's RPM repository

我在 CentOS 6 系统下会使用如下指令安装 remi-relsase:

RepoForge 的前身是 RPMForge 。

RepoForge项目维护Red Hat Enterprise Linux(RHEL),CentOS和Scientific Linux的RPM软件包。它提供了一组与各种RHEL派生版本兼容的存储库。

我一般是在其官网获取 RepoForge (rpmforge-release)软件: RepoForge

我在 CentOS 6 (x86)系统下会使用如下指令安装 rpmforge-release:

以上三个 Linux 软件源已经够我当前使用了,如果以后在Linux使用过程中有用到其他的软件源,我会在此文件下做补充。

很多时候在CentOS系统下默认的Postgresql版本并不能满足需求。如我安装GitLab时就要求Postgresql在9.1以上,但CentOS 系统 6.9 版本仅提供了Postgresql 的 8.4.20 版本,而CentOS 7 默认也无法安装Postgresql 9 及以上版本。

当然你可以使用源码安装,但对于大多数人来说应该会选择一个更简单的方法。那就去给你的系统安装一个postgresql的yum源吧。

网址: https://yum.postgresql.org/

进到首页你应该可以看到以下内容:

选一个Postgresql的发行版本点进去,会看到如下内容:

对应于不同的发行版本,针对不同的 *** 作系统有着不同的yum源。你可以根据你的 *** 作系统进行选择。

比如我选择了 Postgresql 9.6 版本,而我的 *** 作系统是 CentOS 6.9 ,x86 架构。我只需要执行以下命令:

然后在 /etc/yum.repos.d 目录下会多出一个 文件 pgdg-96-centos.repo 。

至此,你就可以使用命令 yum install postgresql96 来安装postgresql 9.6 版本最新的发行版了软件了。

在CentOS6系统中,默认能安装的MySQL最高版本为5.5.x;而到CentOS7中由于Oracle收购MySQL,因担心版权问题,CentOS7放弃了MySQL而采用了Mariadb,最高支持版本为5.5.x。对于用习惯了MySQL的,并且想使用高版本MySQL的我来说,系统默认支持已经满足不了需求。

可以从 这里 选择一个你所需要的yum源进行安装。

然后:

然后你就可以执行以下命令安装 MySQL 5.7了

在MongoDB的官网上可以找到MongoDB的yum安装源配置方式。

MongoDB 官网YUM源配置方式

然后在打开的页面中会有如下信息:

你需要根据自己的需求调整版本号,然后创建一个/etc/yum.repos.d/mongodb-org-y.x.repo文件,把上面的配置写进去。

完成以上步骤后,就可以使用以下命令安装MongoDB了。

RedHat 系统中使用的是: rpm (redhat package manager) 现在称:RPM is Package Manager

Debian : dpt

Ubuntu : apt

在安装软件的时候,有可能出现软件包的相互依赖关系;所以红帽公司推出了:yum(Yellowdog update modifier)

包的组成部分:

主包:

bind-9.7.1-1..e15.i586.rpm

子包:

bind-libs-9.7.1-1..e15.i586.rpm

bind-utils-9.7.1-1..e15.i586.rpm

包名:

PackageName-Version-Release.Arch.rpm

bind-major-minor-releases-release.arch.rpm

包名-主版本号-次版本号-发行号-rpm包的制作者的发行号.硬件平台.rpm

主版本号:重大改进;

次版本号:某个子功能发生重大变化;

发行号:修改BUG,调整了一点功能;

bind-9.7.1-1.noarch.rpm 这里的noarch表示不区分硬件平台,32和64都可以使用;如果是ppc则是在PowerPc上使用的包;

# rpm -ivh /path/to/Package_Name

-i,--install 表示安装

-v 表示显示安装过程的信息

-h 表示以#显示安装的进程,总数为50个;

-vv 显示更详细的过程;

--nodeps 安装的时候忽略依赖关系

--force 无论之前是否安装过,都强制安装,可以实现重装、降级;

--replacepkgs 重新安装,替换原有的安装;

--oldpackage 对软件包进行降级;

--test Do not install the package, simply check for and report potential conflicts. 不进行安装,只测试看在安装的时候有没有依赖包要装;

rpm -q soft_name

# rpm -q httpd

rpm -qa 查询当前系统中已经安装的rpm软件包;

# rpm -qa |grep ‘ssh*’

rpm -qi soft_name 查询软件包的安装信息:

[root@ns2 rpm]# rpm -qi zlib-devel

Name : zlib-devel Relocations: /usr

Version : 1.2.3 Vendor: CentOS

Release : 4.el5 Build Date: 2011年05月11日 星期三 18时57分15秒

Install Date: 2013年07月21日 星期日 17时02分41秒 Build Host: builder10.centos.org

Group : Development/Libraries Source RPM: zlib-1.2.3-4.el5.src.rpm

Size : 269981 License: BSD

Signature : DSA/SHA1, 2011年09月04日 星期日 03时24分25秒, Key ID a8a447dce8562897

URL : http://www.gzip.org/zlib/

Summary : Zlib 开发的头文件和库。

Description :

zlib-devel 软件包包括开发使用 zlib 压缩和解缩库的程序

所需的头文件和库。

[root@ns2 rpm]#

rpm -ql soft_name 查看该软件包在系统中存放了哪些文件;

rpm -qf /path/to/file_name 查看该文件是由哪个rpm包生成的。

rpm -qc soft_name 查看指定rpm包安装的配置文件的位置;

rpm -qd soft_name 查看指定rpm包安装的帮助文件的位置;

rpm -q --scripts soft_name 查看指定rpm包在安装、卸载、更新的前后,所要执行的shell脚本;

rpm -qp[i|l|d|c|] 即要加上一个“p”选项;

rpm -Uvh /path/to/package_name

如果安装的指定的软件包已经安装过,则进行升级 *** 作,如果没有安装过,则就使用指定的这个软件包进行安装;

rpm -Fvh /path/to/package_name

如果安装过,则升级,否则不进行任何 *** 作;

rpm -Fvh --oldpackage package_name 通常用这个来降级一个rpm包;

rpm -e package_name

--nodeps 强制卸载

rpm -V package_name 也可以使用--verify

通常用来检查安装后的文件是不是被修改过;

加密算法:

对称加密: 加密和解密使用同一个key

非对称加密:有一对密钥(公钥和私钥),公钥大家都可以知道,私钥只有持有人知道;公钥加密私钥解,私钥加密公钥也可以解。不能由公钥摧出私钥,也不能由私钥摧出公钥;私钥还用来做签名,因为只有私钥持有人自己才有;

单向加密:使用这种加密算法加密后,是不可以再还原的。通常用它来做数据完整性的验证,也就是验证数据在传输的过程中有没有被别人修改过。

在红帽的系统中,/etc/pki/rpm-gpg/目录下面存放了红帽公司的gpg-key(相当于公钥),所以只需要把这个gpgkey导入到系统中就可以验证了。导入方法如下:

# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

接下来就可以对将要安装的rpm包进行验证了:

# rpm -K /path/to/package_file

dsa,gpg验证来源的合法性,也就是验证签名。但是可以使用--nosignature 来跳过签名验证;

sha1,md5验证软件包的完整性,可以使用--nodigest 来跳过完整性验证;

rpm --rebuilddb 重建数据库

--initdb 初始化数据库

yum install -y pack1 pack2 安装指定的软件包

yum remove pack1 pack2 -y 删除指定的软件包

yum update pack1 pack2 更新指定的软件包

yum list installed 列出所有已经安装的软件包

yum update 更新源

yum search string 搜索包含string的软件包

yum install package_name 获取软件包信息

# tar zxf nginx-1.4.7.tar.gz -C /usr/src

# configure --prefix=/usr/local/nginx --conf-path=/etc

# make

# make install

由于使用的是源码包安装在非正常路径下。所以还要做以下的调整:

修改/etc/profile文件。或是在/etc/profile.d/下创建一个以.sh结尾的文件;再把二进制程序的路径export出来就行了;

在/etc/ld.so.conf.d/中创建一个以.conf文件结尾的文件,而后把要增添的路径直接写入此文件中就行了;

这样系统就会在下次启动的时候,自动加载这些新增加的库;如果想让系统马上可以找到这些新增加的库,就必须执行下面的命令:

# ldconfig 通知系统重新搜索库文件,还可以加上-v选项,表示显示过程;

默认的头文件搜索路径是:/usr/include/

要添加新的头文件搜索路径,可以使用链接的方式:

ln -s /usr/local/nginx/include/* /usr/include/

ln -s /usr/local/nginx/include /usr/include/nginx

这时可以修改/etc/man.conf文件,在里面添加以下内容:

MANPATH /usr/local/nginx/man

还有一种方式就是临时使用:

# man -M /usr/local/nginx/man nginx 这样就可以查看nginx的man手册了;

主要是分为三种。

一种是Linux系统各种发行版自己开发的软件包,例如后缀是rpm 的一种是dep的。但是不同的Linux它的软件包后缀跟格式是不一样的。反正可以这么理解,不同的Linux它的软件管理方式不一样。并且安装的命令不一样。不是像Windows系统一样都是exe。大多是。Linux系统什么样都有。并且安装方法不一样。有些是输入命令,有些是直接点击就可以了。所以很难统计。但大概就分为两种rpm包 跟dep包。他们都是打包成压缩包的。后缀名是tar gzip等等。安装时候先解压。然后输入命令。就可以。 说一下Linux系统所谓的后缀名例如exe这类的是没有任何关系的。你把安装包后缀名改成rmvb一样可以安装。Windows系统不行。

第二种软件包。就是脚本安装包也是压缩包tar之类的也要先解压。它的安装方法也是输入命令。但是它使用范围大。前面的包rpm 之类的只能安装在你下载的Linux系统上。不能用其他的Linux。

例如乌班图的dep包在红帽子Linux上不能用。脚本包就可以通用。所以不像Windows系统xp能够用的Win7也可以用。除非是脚本包。

第三种,叫做源码包。安装方法首先是解压。没有编译好的源代码。就是说它是一排排的英文代码。没有变成数字0跟1。电脑只认识0跟1。把英文变成0跟1叫做编译。

所以电脑要安装编译器。安装好了然后使用命令make安装。就可以。

为什么要用源码包。就是因为它可以在所有的Linux系统上运行。你可以修改它的代码获得新的功能。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/11130453.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-13
下一篇2023-05-13

发表评论

登录后才能评论

评论列表(0条)

    保存