[ubuntu入门手册]-11-如何获取和安装软件
引言
我们在Windows下想要完成某些操作,会去搜索一些提供了这些功能的软件;Linux下也是如此,Linux安装软件的方式大多是从命令行执行的,这篇文章以Ubuntu为例给大家介绍几种获取和安装软件的方法。
文章目录
0×1.使用apt-get安装软件
在实例演示之前,先简单的介绍一下apt-get:
a)apt-get是ubuntu终端下的一个指令,它可以让系统连接到互联网的软件仓库搜索、安装、升级、卸载软件,并且可以通过它来更新操作系统版本,我们可以将它看做终端模式的软件中心;我们可以通过:系统应用查找->软件更新器->设置->Ubuntu软件选项中的"下载自",在下拉列表中选择我们通过哪个软件仓库来下载软件。
b)除软件仓库外,我们还可以通过PPA(Personal Package Archives个人软件包档案),既第三方源下载安装软件,第三方源是Ubuntu Launchpad网站提供的一项源服务,允许个人或企业上传软件源代码,通过Launchpad发布为软件包,作为apt-get源供其他用户下载和更新。
c)由于Linux系统的目录结构以及文件系统与Windows系统有很大差别,apt-get安装的软件都遵从linux系统目录结构规范,根据软件作者的打包方式,将不同的文件分类复制和创建到不同的文件目录中,这和我们在windows下指定安装目录,将软件文件安装在一个文件夹中不同,稍后会介绍如何查看某个软件都释放到了系统的哪些目录中。
安装更新与卸载软件演示:
#下载软件前,更新软件仓库列表,以保证我们获取的软件是最新的,软件仓库列表就像一个目录一样,我们只需要知道目录中软件的名称,就能够直接安装名称对应的软件(这一步不是必须的,但在添加了第三方源PPA之后,必须执行这一条命令,让系统更新软件仓库列表,这样我们就能安装新加入的PPA源中的软件了) qing@qingsword.com:~$ sudo apt-get update #测试安装uget(前端)以及aria2(后端)插件 qing@qingsword.com:~$ sudo apt-get install uget aria2 #关于前端和后端的解释:Linux下程序通常不需要作为一个整体,而是模块化,于是有了可选的前端和后端——这种情况下:前端可以搭配不同后端,后端也可以搭配不同前端。前端(界面,即你操作的部分),后端(执行,运行指令的部分) #查看uget安装到了哪些目录(任何软件都可以使用这种方法查看安装到了哪些目录) qing@qingsword.com:~$ dpkg -L uget #通过apt-get下载过的软件deb安装包所保存的目录为"/var/cache/apt/archives"(感兴趣的朋友可以通过ls命令查看下这个目录,其中包含了系统从安装到现在,你通过apt安装过的所有软件包deb文件),如果系统目录空间紧张,可以使用下面的命令清除所有下载的安装包,这不会影响系统已经安装的这些软件 qing@qingsword.com:~$ sudo apt-get clean #update更新了软件仓库列表后,可以使用下面的命令更新系统中所有安装的软件到最新版,这条命令会去读取最新的软件包列表,比对系统当前安装的这些软件包的版本是否为最新版,如果不是,就执行覆盖更新操作 qing@qingsword.com:~$ sudo apt-get upgrade #如果我们需要删除安装过的软件,使用命令"sudo apt-get remove [要删除的软件包名称]",使用uget为例,命令如下(如果大家还需要使用uget去下载软件,请不要执行这条命令) qing@qingsword.com:~$ sudo apt-get remove uget #删除安装过的软件并且不保留配置文件的命令是"sudo apt-get --purge remove [要删除的软件包名称]",使用aria2为例,命令如下(同上,aria2作为uget的后端程序,如果大家需要使用uget下载,请不要执行这条命令) qing@qingsword.com:~$ sudo apt-get --purge remove aria2 #自动清除已经删除了的软件的依赖包,当我们删除一些软件包的时候,软件包安装过程中自动下载的一些依赖包不会被自动删除,可以使用下面的命令让系统自动的去清除这些已经用不到的依赖包 qing@qingsword.com:~$ sudo apt-get autoremove
第三方PPA安装演示:
#所有第三方PPA在加入到官方源以前,都会提供如下这种安装方式,标准的三条命令,以安装uget-integrator插件为例(Ps:下面三条命令只是为了演示PPA第三方安装的方法,如果不需要安装这些软件,就不要去执行它们) #1.将第三方PPA源加入软件源列表,这样我们就能通过apt去自动找到这些软件 qing@qingsword.com:~$ sudo add-apt-repository ppa:uget-team/ppa #2.更新软件源列表 qing@qingsword.com:~$ sudo apt-get update #3.安装此PPA源提供的软件 qing@qingsword.com:~$ sudo apt install uget-integrator
0×2.使用deb包安装软件
目前,Ubuntu中使用的最多的软件打包方式就是deb,它类似Windows下的exe,apt-get实际是在软件源仓库中下载了deb安装包并自动安装,并且自动安装依赖软件包,而如果直接提供给我们一个deb安装包,可以使用dpkg命令来查看、安装和卸载。
##使用搜狗输入法for linux举例 #列出deb会释放到系统的哪些位置(deb包含的内容) qing@qingsword.com:~$ dpkg --contents sogoupinyin_2.0.0.0068_amd64.deb #查看此deb包信息 qing@qingsword.com:~$ dpkg --info sogoupinyin_2.0.0.0068_amd64.deb ....#有几个比较重要的信息如下 Version: 2.0.0.0068 #版本 Architecture: amd64 #架构 Installed-Size: 41350 #安装后大小(KB) Depends: #依赖包列表 #安装 qing@qingsword.com:~$ sudo dpkg -i sogoupinyin_2.0.0.0068_amd64.deb #使用apt去自动安装依赖包列表中的软件包 qing@qingsword.com:~$ sudo apt install -f #安装后查看此软件都释放到了系统的哪些目录 qing@qingsword.com:~$ dpkg -L sogoupinyin ##注意:下面两个步骤是删除操作,如果我们还在使用搜狗拼音输入法,请不要执行它们,这里只是教大家如何删除dpkg安装的软件包的方法 #仅卸载,不删除配置文件 qing@qingsword.com:~$ dpkg -r sogoupinyin #卸载并删除配置文件 qing@qingsword.com:~$ dpkg -P sogoupinyin
0×3.使用软件中心安装软件
Ubuntu系统自带的软件中心提供了纯图形界面的安装方式,没有太多需要介绍的,唯一值得注意的是,软件中心中的软件版本一般都比较旧。
0×4.使用源码编译安装
有时候,我们在官方的软件仓库或第三方PPA中都找不到的软件,在一些代码托管网站上却实现了其部分功能,虽然有些还未完善并且存在bug,但我们如果想要尝试使用他们,就可能碰到源码的编译和安装。
下面是三个比较推荐的源码托管网站,最后一个是国产的:
Github官方网站
Sourceforge官方网站
Coding官方网站
我们从这些源码网站上获取对应软件的源代码,源代码中大多都包含了README文件,其中会有软件的安装方法,请按照对应项目提供的README文件中的安装方法安装这些软件,下面是安装这些软件的流程演示:
#1.编译安装前,需要先安装编译所需组件,每个项目所需的编译组件可能都不相同 qing@qingsword.com:~$ sudo apt-get install build-essential git #2.使用git命令从这些代码托管网站上下载软件源代码,以github举例 qing@qingsword.com:~$ git clone git://github.com/用户自定义名称/软件源码目录名称.git #3.进入刚才下载的软件目录 qing@qingsword.com:~$ cd 软件源码目录名称 #4.使用文本查看器,查看目录中README文件内容,一般会有三种安装方式 #4.1.第一种,别人打包好了deb,只需要去指定的页面下载deb包,使用下面的命令安装即可 qing@qingsword.com:~$ sudo dpkg -i 软件名称.deb #4.2.第二种,使用源码编译,在源码目录中使用下面的命令安装 qing@qingsword.com:~/src$ ./configure qing@qingsword.com:~/src$ make qing@qingsword.com:~/src$ sudo make install #4.3.第三种,自己打包成deb,然后安装,在源码目录中使用下面的命令 qing@qingsword.com:~/src$ dpkg-checkbuilddeps <-列出编译依赖 qing@qingsword.com:~/src$ sudo apt-get install <-复制粘贴:上一步列出的缺失的编译依赖到这里 qing@qingsword.com:~/src$ dpkg-buildpackage <-在上一级目录中生成deb包 qing@qingsword.com:~/src$ cd .. qing@qingsword.com:~$ sudo dpkg -i 软件包名称.deb
对于上面任何命令行安装方式,如果出现包依存提示或错误,下面这条命令是万能的:
#自动安装未安装的依存包 qing@qingsword.com:~$ sudo apt-get -f install
对第三方和编译安装,我建议先在虚拟机中安装测试,再考虑是否安装到物理环境中。
看到这里,可能有些朋友会问:"我怎么知道想要安装的软件叫什么名字?",这就回到了Windows如何寻找软件的话题,我们如果想要视频播放器,就会经过各种途径去问:"在Ubuntu下面视频播放器有哪些?",之后就会得到这些软件的名称,这些软件要么是在官方的软件仓库中,要么是第三方PPA,要么是提供的deb安装包,要么是需要用源码编译的开发版,那么就可以用上面介绍的方法来安装,去寻找Windows在Ubuntu下替代软件的过程,也是我们学习与提高的过程,最后,Enjoy yourself!