Linux.中国 - 开源社区

 找回密码
 骑士注册

QQ登录

微博登录


新手指南:在 Ubuntu 和 Fedora 上安装软件包

2016-2-5 08:15    评论: 13 收藏: 19 分享: 1    

使用包管理器安装

1.换源

发行版换源方法
Ubuntu 阿里云镜像配置请参考这里
USTC镜像配置请参考这里
Fedora 阿里云镜像配置请参考这里
USTC镜像配置请参考这里

换源是为了提升下载速度,上文的概念已经提到了,我们安装软件是从远程仓库下载安装的,自然这个远程仓库的网络连通必须要好,并且下载速度要可观。

2.更新源

更换了源的文件后,还需要更新本地数据库信息,以便与远程仓库信息一致。

发行版包管理工具参数示例解释
Ubuntu apt-get update sudo apt-get update 取回更新的软件包列表信息
Fedora dnf check-update sudo dnf check-update 取回更新的软件包列表信息

3.安装软件包

发行版包管理工具类型参数示例解释
Ubuntu apt-get 远程仓库 install sudo apt-get install packagename 安装软件包
Fedora dnf 远程仓库 install sudo dnf install packagename 安装软件包
Ubuntu dpkg 本地deb包 -i sudo dpkg -i filename.deb 安装本地二进制deb包
Fedora rpm 本地rpm包 -i sudo rpm -i filename.rpm 安装本地二进制rpm包

4.卸载软件包 

发行版包管理工具参数示例解释
Ubuntu apt-get remove sudo apt-get remove packagename 卸载软件包
Fedora dnf remove sudo dnf remove packagename 卸载软件包
Ubuntu dpkg -r sudo dpkg -r packagename 卸载软件包

5.升级所有软件包

发行版包管理工具参数示例解释
Ubuntu apt-get upgrade sudo apt-get upgrade 升级所有软件包
Fedora dnf upgrade sudo dnf upgrade 升级所有软件包

6.其它参数

发行版包管理工具参数示例解释
Ubuntu     apt-get     purge sudo apt-get purge packagename 卸载并清除软件包的配置
source apt-get source packagename 下载源码包文件
clean sudo apt-get clean 删除所有已下载的包文件
download apt-get download packagename 下载指定的二进制包到当前目录
--help apt-get --help 获取帮助
Fedora   dnf   clean sudo dnf clean 清除旧缓存
makecache sudo dnf makecache 生成新缓存
-h dnf -h 获取帮助

从源码编译安装

有些时候我们会发现有的软件包并没有包含在软件仓库中,也没有可用的二进制包,这时候我们可以尝试从源码编译安装,我在此处仍以wget 为例,示范如何编译,并解决编译遇到的问题

以下环境为 Ubuntu 15.04

$ mkdir buildwget #构建目录
$ cd buildwget
$ wget http://ftp.gnu.org/gnu/wget/wget-1.16.tar.xz         #下载源码包
$ sudo apt-get remove wget  #为了后面的测试,先把 wget 卸载了
$ xz -d wget-1.16.tar.xz  #解压 xz 文件
$ tar -xvf wget-1.16.tar #解档 tar 文件
$ cd wget-1.16
$ ls                     #列出文件
ABOUT-NLS   ChangeLog.README  GNUmakefile   maint.mk     po       util
aclocal.m4  configure         INSTALL       Makefile.am  README
AUTHORS     configure.ac      lib           Makefile.in  src
build-aux   COPYING           m4            msdos        testenv
ChangeLog   doc               MAILING-LIST  NEWS         tests

上面的文件就是我们将要编译的源文件,其中有个特别要注意的就是 INSTALL,我们要养成一个习惯,多看 INSTALL 文件,这个文件会告诉我们怎么编译,编译时需要注意什么?但由于此处的编译较简单,所以 INSTALL 也没有提到什么特别重要的事情。

按照 INSTALL 我们先执行 ./configure

$ ./configure

如果出现如下的错误

configure: error: --with-ssl=gnutls was given, but GNUTLS is not available.

错误提示说,给定的 SSL 是 gnutls 但是却不可用(因为没有安装),因此我们安装并指定 openssl 为 wget 的 SSL 。

$ sudo apt-get install openssl 
$ sudo apt-get install libssl-dev
$ ./configure --with-ssl=openssl

如果没有问题,执行完后应该显示如下

configure: Summary of build options:

  Version:           1.16
  Host OS:           linux-gnu
  Install prefix:    /usr/local
  Compiler:          gcc
  CFlags:            -g -O2 
  LDFlags:           
  Libs:              -lssl -lcrypto -ldl -lz 
  SSL:               openssl
  Zlib:              yes
  PSL:               no
  Digest:            yes
  NTLM:              yes
  OPIE:              yes
  Debugging:         yes

然后进行编译

$ make

会输出很多编译信息,不要担心,如果最后没有报错而停止,则编译成功,接下来进行安装

$ sudo make install

试试是不是 wget 命令又出来了?源码安装遇到问题,我们要善于搜索,提问和解决,根据报错内容进行相应的编译调整,缺少的依赖装上,一般就可以成功。 

总结

本文主要为新手讲解了 Ubuntu 和 Fedora 安装软件包的一些方法, 相较之前的版本,本次更改由繁化简,并且以表格的形式给出参数和命令,要熟练和体会这些命令到底是干嘛的,还必须亲自敲一敲,去理解这个命令的作用。从源码编译安装,则展示了一个遇到问题,解决问题的过程,由于编译 wget 较简单,此处也未遇到特别难处理的问题,但这清晰的展示了一个编译安装的过程,遇到错误,我们不要害怕,而要认真阅读给出的错误信息,借此搜索,提问,寻求解答。另外 Linux 下遇到问题首先要自己善于去搜索,提问,解决问题得到答案并归纳总结,不然是很难学到知识的。

12
查看其它分页:

发表评论


最新评论

我也要发表评论

来自广东广州的 Firefox 45.0|Ubuntu 用户 2016-11-13 21:21
楼主,有地方不懂呢,能在之后教程解释下吗?
configure: error: --with-ssl=gnutls was given, but GNUTLS is not available.
错误提示说,给定的 SSL 是 gnutls 但是却不可用(因为没有安装),
因此我们安装并指定 openssl 为 wget 的 SSL 。
这个openssl跟之前那个错误是什么关系呢?还有后面那个libssl-dev

然后又出现
$ sudo apt-get install openssl
$ sudo apt-get install libssl-dev
回复
linux [Chrome 54.0|Mac 10.11] 2016-10-21 22:12
1
来自河南南阳的 Firefox 49.0|Ubuntu 用户 发表于 2016-10-21 21:39 的评论:
我就是看看我的id
你没 ID ……其实我知道你是想炫耀你的 Firefox 49.0  : -d
回复
来自河南南阳的 Firefox 49.0|Ubuntu 用户 2016-10-21 21:39
我就是看看我的id
回复
ak2008 [Chrome 48.0|GNU/Linux] 2016-2-21 14:58
很适合新手
2 回复
浩浩君 [Chrome 45.0|Windows 7] 2016-2-8 17:47
假装老司机,过来瞧瞧!
6 回复
来自安徽合肥的 Internet Explorer 11.0|Windows 7 用户 2016-2-5 13:15
fedora22以前的版本用的是yum,现在换dnf了
8 回复
kashu [Chromium 47.0|Ubuntu] 2016-2-5 11:23
还是一些基础的技术教程类文章更受大家的欢迎……
4 回复
ryt [Chrome 47.0|GNU/Linux] 2016-2-5 06:40
很适合新手
7 回复
attack [QQ Browser 9.2|Windows 7] 2016-1-18 20:05
谢谢
1 回复
来自上海的 Chrome 47.0|Windows 7 用户 2015-12-27 19:14
写的非常棒!谢谢!
3 回复
yang.yusi [Firefox 43.0|Ubuntu] 2015-12-19 22:08
很实用的东西,非常不错
5 回复
大葱蘸酱就饼 [Chrome 44.0|Windows 8.1] 2015-9-7 13:50
学习了~
4 回复
dadudeng [Opera 10.5|Android 4.1] 2015-8-19 17:52
太好了,学习了
6 回复

热点评论

来自安徽合肥的 Internet Explorer 11.0|Windows 7 用户 2016-2-5 13:15
fedora22以前的版本用的是yum,现在换dnf了
8
ryt [Chrome 47.0|GNU/Linux] 2016-2-5 06:40
很适合新手
7
浩浩君 [Chrome 45.0|Windows 7] 2016-2-8 17:47
假装老司机,过来瞧瞧!
6
dadudeng [Opera 10.5|Android 4.1] 2015-8-19 17:52
太好了,学习了
6
yang.yusi [Firefox 43.0|Ubuntu] 2015-12-19 22:08
很实用的东西,非常不错
5
返回顶部

分享到微信朋友圈

打开微信,点击底部的“发现”,
使用“扫一扫”将网页分享至朋友圈。