Linux终端生存指南 软件管理(linux系统终端)

这是一系列基础命令的集合,我会从使用角度介绍,看完这些以后你能够在Linux终端下完成大部分之前需要鼠标和键盘才能完成的操作。

今天是第三篇,介绍Linux下软件管理。

  • 软件包管理
  • 软件源切换
  • 软件安装和卸载
  • 软件升级

软件包管理

Windows我们下载软件常见的动作是:1、百度搜索一个安装包,然后一直点击“下一步”,直到完成安装,桌面出现对应的软件的图标完成;2、下载一个包含运行文件的压缩包,解压出来以后,双击运行文件运行即可。

Linux下也有几种软件包,我觉得主要分为2种:一种是源码安装包;另一种是二进制软件包。

源码安装包是你直接可以下载到软件的源代码,自己编译属于自己系统的运行软件。

二进制安装包是可以直接在电脑上运行并安装成软件的安装包,和Windows下的安装包很相似,我们前面的文章介绍过Ubuntu安装edge浏览器和Chrome浏览器,下载的deb安装包就是这种的。当然Linux下也有可以直接运行的二进制软件,只不过它没有像Windows的EXE那样一个固定的后缀名。

Linux下软件包管理工具比较多,最常用到的是deb和rpm这两种。

deb是Debian系统的软件包管理工具,而Ubuntu正好是Debian的分支系统,Debian本身也是一个发行版,感兴趣可以自己去看一下,除了Ubuntu还有很多基于Debian的发行版系统,你在使用一个Linux发行版的时候可以关注一下。deb软件包管理的基础命令是apt和dpkg

rpm是Redhat系统的软件包管理工具,基于Redhat发行版的Linux发行版系统一般就是用这个作为软件管理工具,如CentOSFedora系统都是Redhat的分支系统。rpm使用yum命令进行进行软件管理。

我们后面的内容还是基于Ubuntu系统的apt命令介绍的,yum命令的用法类似,了解了软件管理的基本原理后,可以自己去查一下相关的命令参数即可使用。

软件源切换

虽然我并不想在这一篇文章介绍软件包管理的原理,但是对于软件源的理解我必须简单介绍一下。

deb的软件包管理采用集中仓库管理的方式,类似于App Store的管理方式,远程的一个用用服务器上面存储着我们前面讲的软件包。

Linux系统向应用商店服务器请求一个应用列表清单在本地,我们就知道了我们支持安装哪些应用。

同时远程应用商店的应用如果更新了或者增加了,本地这个清单是可以更新的,这样我们又知道了哪些软件可以更新和新支持了。

而远程的应用服务器的地址就是软件源,Linux有很多的软件源。

Ubuntu是国外的系统,默认的软件源也在国外或者采用国内转国外的方式,所有经常出现国内安装了Ubuntu以后下载软件非常慢或者直接就不能信下载的情况,这种情况我们就可以更换一下系统的软件源,更换为国内的软件源,下载速度就正常了。

Ubuntu更换软件源可以图像化操作,打开系统一个叫“软件与更新”的应用,可以看到一个“下载自”的单选框,这里就可以设置Ubuntu的软件源。

Linux终端生存指南 软件管理(linux系统终端)

软件和管理

推荐在选择界面让Ubuntu自动选择最优的服务器地址,这样Ubuntu会依次测试记录的中国服务器,并向你推荐速度最快的。

下面介绍通过命令行的方式修改软件源为阿里的服务器:

  • 查看版本代号

ubuntu@ubuntu-virtual-machine:/etc/apt$ lsb_release -cCodename: focal

  • 修改sources.list文件

ubuntu@ubuntu-virtual-machine:/etc/apt$ sudo mv sources.list sources.list.bkubuntu@ubuntu-virtual-machine:/etc/apt$ sudo vi /etc/apt/sources.listubuntu@ubuntu-virtual-machine:/etc/apt$ cat /etc/apt/sources.list# 将下面的内容写入文件中,注意代号与你在第一步查到的代号一致deb <http://mirrors.aliyun.com/ubuntu/> focal main multiverse restricted universedeb <http://mirrors.aliyun.com/ubuntu/> focal-backports main multiverse restricted universedeb <http://mirrors.aliyun.com/ubuntu/> focal-proposed main multiverse restricted universedeb <http://mirrors.aliyun.com/ubuntu/> focal-security main multiverse restricted universedeb <http://mirrors.aliyun.com/ubuntu/> focal-updates main multiverse restricted universedeb-src <http://mirrors.aliyun.com/ubuntu/> focal main multiverse restricted universedeb-src <http://mirrors.aliyun.com/ubuntu/> focal-backports main multiverse restricted universedeb-src <http://mirrors.aliyun.com/ubuntu/> focal-proposed main multiverse restricted universedeb-src <http://mirrors.aliyun.com/ubuntu/> focal-security main multiverse restricted universedeb-src <http://mirrors.aliyun.com/ubuntu/> focal-updates main multiverse restricted universe

  • 获取软件列表

ubuntu@ubuntu-virtual-machine:/etc/apt$ sudo apt update# 耐心等待执行完毕

至此,软件源就修改OK了。

软件安装和卸载

apt命令

我以VIM软件为例子给大家介绍apt命令怎么安装和卸载软件,其他的软件类似。

软件操作的命令一般都需要管理员权限运行,所以apt前请加sudo,并输入用户密码。

  • 安装

命令格式 :apt install soft_name

ubuntu@ubuntu-virtual-machine:/etc/apt$ vimCommand 'vim' not found, but can be installed with:sudo apt install vim # version 2:8.1.2269-1ubuntu5.7, orsudo apt install vim-tiny # version 2:8.1.2269-1ubuntu5.7sudo apt install vim-athena # version 2:8.1.2269-1ubuntu5.7sudo apt install vim-gtk3 # version 2:8.1.2269-1ubuntu5.7sudo apt install vim-nox # version 2:8.1.2269-1ubuntu5.7sudo apt install neovim # version 0.4.3-3ubuntu@ubuntu-virtual-machine:/etc/apt$ sudo apt install vim正在读取软件包列表... 完成正在分析软件包的依赖关系树正在读取状态信息... 完成建议安装: ctags vim-doc vim-scripts下列【新】软件包将被安装: vim升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 85 个软件包未被升级。需要下载 1,238 kB 的归档。解压缩后会消耗 3,112 kB 的额外空间。获取:1 <http://mirrors.aliyun.com/ubuntu> focal-security/main amd64 vim amd64 2:8.1.2269-1ubuntu5.7 [1,238 kB]已下载 1,238 kB,耗时 0秒 (4,567 kB/s)正在选中未选择的软件包 vim。(正在读取数据库 ... 系统当前共安装有 213952 个文件和目录。)准备解压 .../vim_2:8.1.2269-1ubuntu5.7_amd64.deb ...正在解压 vim (2:8.1.2269-1ubuntu5.7) ...正在设置 vim (2:8.1.2269-1ubuntu5.7) ...update-alternatives: 使用 /usr/bin/vim.basic 来在自动模式中提供 /usr/bin/vim (vim)update-alternatives: 使用 /usr/bin/vim.basic 来在自动模式中提供 /usr/bin/vimdiff (vimdiff)update-alternatives: 使用 /usr/bin/vim.basic 来在自动模式中提供 /usr/bin/rvim (rvim)update-alternatives: 使用 /usr/bin/vim.basic 来在自动模式中提供 /usr/bin/rview (rview)update-alternatives: 使用 /usr/bin/vim.basic 来在自动模式中提供 /usr/bin/vi (vi)update-alternatives: 使用 /usr/bin/vim.basic 来在自动模式中提供 /usr/bin/view (view)update-alternatives: 使用 /usr/bin/vim.basic 来在自动模式中提供 /usr/bin/ex (ex)ubuntu@ubuntu-virtual-machine:/etc/apt$ vim --versionVIM - Vi IMproved 8.1 (2018 May 18, compiled Feb 01 2022 09:16:32)

可以发现我在没有vim软件的情况下使用vim命令,系统会自动提示安装的命令。

安装完成以后输入 —version查看软件版本成功说明软件安装完成。

就这么简单。

  • 卸载

命令格式 :apt remove soft_name

ubuntu@ubuntu-virtual-machine:/etc/apt$ sudo apt remove vim正在读取软件包列表... 完成正在分析软件包的依赖关系树正在读取状态信息... 完成下列软件包是自动安装的并且现在不需要了: vim-runtime使用'sudo apt autoremove'来卸载它(它们)。下列软件包将被【卸载】: vim升级了 0 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 85 个软件包未被升级。解压缩后将会空出 3,112 kB 的空间。您希望继续执行吗? [Y/n] y(正在读取数据库 ... 系统当前共安装有 213961 个文件和目录。)正在卸载 vim (2:8.1.2269-1ubuntu5.7) ...update-alternatives: 使用 /usr/bin/vim.tiny 来在自动模式中提供 /usr/bin/vi (vi)update-alternatives: 使用 /usr/bin/vim.tiny 来在自动模式中提供 /usr/bin/view (view)update-alternatives: 使用 /usr/bin/vim.tiny 来在自动模式中提供 /usr/bin/ex (ex)update-alternatives: 使用 /usr/bin/vim.tiny 来在自动模式中提供 /usr/bin/rview (rview)ubuntu@ubuntu-virtual-machine:/etc/apt$ vim-bash: /usr/bin/vim: 没有那个文件或目录

dpkg命令

dpkg命令我们一般用来直接安装 .deb 格式的安装包,我们前面文章下载的edge安装包就是 .deb格式的。

ubuntu@ubuntu-virtual-machine:~/下载$ ls microsoft-edge-stable_100.0.1185.36-1_amd64.debmicrosoft-edge-stable_100.0.1185.36-1_amd64.deb

当时介绍的图像化的安装方式,直接双击,现在介绍使用dpkg命令安装的方式:

  • 安装

ubuntu@ubuntu-virtual-machine:~/下载$ sudo dpkg -i microsoft-edge-stable_100.0.1185.36-1_amd64.deb正在选中未选择的软件包 microsoft-edge-stable。(正在读取数据库 ... 系统当前共安装有 213804 个文件和目录。)准备解压 microsoft-edge-stable_100.0.1185.36-1_amd64.deb ...正在解压 microsoft-edge-stable (100.0.1185.36-1) ...正在设置 microsoft-edge-stable (100.0.1185.36-1) ...update-alternatives: 使用 /usr/bin/microsoft-edge-stable 来在自动模式中提供 /usr/bin/microsoft-edge (microsoft-edge)正在处理用于 gnome-menus (3.36.0-1ubuntu1) 的触发器 ...正在处理用于 desktop-file-utils (0.24-1ubuntu3) 的触发器 ...正在处理用于 mime-support (3.64ubuntu1) 的触发器 ...正在处理用于 man-db (2.9.1-1) 的触发器 ...

  • 卸载

ubuntu@ubuntu-virtual-machine:~/下载$ sudo dpkg -P microsoft-edge-stable(正在读取数据库 ... 系统当前共安装有 213952 个文件和目录。)正在卸载 microsoft-edge-stable (100.0.1185.36-1) ...正在清除 microsoft-edge-stable (100.0.1185.36-1) 的配置文件 ...正在处理用于 man-db (2.9.1-1) 的触发器 ...正在处理用于 gnome-menus (3.36.0-1ubuntu1) 的触发器 ...正在处理用于 desktop-file-utils (0.24-1ubuntu3) 的触发器 ...正在处理用于 mime-support (3.64ubuntu1) 的触发器 ...

软件升级

  • 更新为最新的版本

直接使用前面的安装命令就会使用当前的最新版本自动更新软件,前提是更新本地软件列表信息。

  • 更新(或安装)指定版本软件

dpkg命令要做到这一点当然就是下载指定版本的软件安装包文件就可以了。

apt命令也可以指定软件版本,命令格式是:

apt-get install <<package name>>=<<version>>

ubuntu@ubuntu-virtual-machine:~/下载$ apt-cache madison treetree | 1.8.0-1 | http://mirrors.aliyun.com/ubuntu focal/universe amd64 Packagestree | 1.8.0-1 | http://mirrors.aliyun.com/ubuntu focal/universe Sourcesubuntu@ubuntu-virtual-machine:~/下载$ sudo apt install tree=1.8.0-1正在读取软件包列表... 完成正在分析软件包的依赖关系树正在读取状态信息... 完成下列软件包是自动安装的并且现在不需要了:vim-runtime使用'sudo apt autoremove'来卸载它(它们)。下列【新】软件包将被安装:tree升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 85 个软件包未被升级。需要下载 43.0 kB 的归档。解压缩后会消耗 115 kB 的额外空间。获取:1 http://mirrors.aliyun.com/ubuntu focal/universe amd64 tree amd64 1.8.0-1 [43.0 kB]已下载 43.0 kB,耗时 0秒 (344 kB/s)正在选中未选择的软件包 tree。(正在读取数据库 ... 系统当前共安装有 213804 个文件和目录。)准备解压 .../tree_1.8.0-1_amd64.deb ...正在解压 tree (1.8.0-1) ...正在设置 tree (1.8.0-1) ...正在处理用于 man-db (2.9.1-1) 的触发器 ...

这个例子我先使用apt-cache命令查看了tree支持安装的所有版本,然后特定安装了1.8.0-1版本。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

(0)
上一篇 2022年6月22日 上午9:59
下一篇 2022年6月22日 上午10:01

相关推荐

  • 省应急管理厅开展“四下基层、福行八闽——尊老爱幼、扶困助残”志愿服务活动

    尊老爱幼、扶困助残”志愿服务活动 为深入学习贯彻党的二十大精神,进一步弘扬“尊老爱幼、扶困助残”的传统美德,12月16日,省应急管理厅文明办联合省安科院、省应急技术中心、省应急救援…

    科研百科 2023年1月22日
    246
  • 研究生没有课题能毕业吗

    研究生没有课题能毕业吗? 作为一名研究生,拥有一份令人兴奋的工作是许多人的梦想。然而,对于一些学生来说,他们可能面临着没有课题毕业的困境。这对于那些想要追求自己的学术梦想的人来说,…

    科研百科 2024年10月18日
    6
  • 廉洁四川丨副市长的“串标术”

    2022年5月21日,四川省纪委监委权威发布:凉山州住房和城乡建设局副局长、三级调研员冉洪全涉嫌严重违法,目前正接受监察调查。消息一经发布,在凉山州西昌市引发强烈反响。冉洪全,曾任…

    科研百科 2023年10月6日
    161
  • 交通工程项目管理系统

    交通工程项目管理系统 随着交通工程的不断发展,交通工程项目管理系统变得越来越重要。这个系统可以优化交通流量,提高道路的利用率,减少交通事故的发生,从而提高交通效率。本文将介绍交通工…

    科研百科 2024年7月14日
    52
  • 安阳市教育局:2020年度全市教育系统全面从严治党工作会议召开

    4月17日下午, 2020年全市教育系统全面从严治党工作会议在教育局召开。会议分析了当前教育系统全面从严治党的形势,明确了纪检监察工作重点,安排部署了2020年度全面从严治党工作,…

    科研百科 2022年12月31日
    197
  • 山东省有什么分校

    山东省有什么分校山东省有什么分校分别是山东省、山东省、山东省、湖南省、山东省。山东省是山东省哪些分校?山东省现在是什么位置?山东省大学其实是山东省、山东省共建的,相当于山东省国粹,…

    科研百科 2024年11月26日
    0
  • 东安县税务局:“湘税党建”云平台助推党建提质增效

    东安县税务局召开“湘税党建”云平台培训会议。 红网通讯员 王乙明 张朦之 永州报道 11月23日,国家税务总局东安县税务局“湘税党建”云平台考评系统试启动,实现了支部“五化”建设的…

    科研百科 2023年1月15日
    244
  • mac项目管理软件

    标题:Mac项目管理软件:探索最佳实践和强大功能 随着Mac电脑的普及,越来越多的人开始使用Mac项目管理软件来高效地管理项目和团队。本文将介绍Mac项目管理软件的一些最佳实践和强…

    科研百科 2024年5月23日
    105
  • 软件项目管理软件 免费

    软件项目管理软件:免费版本与付费版本有何区别? 随着软件开发行业的不断发展,软件项目管理软件已经成为了软件开发过程中必不可少的工具。虽然软件项目管理软件的免费版本和付费版本在功能上…

    科研百科 2024年7月23日
    80
  • 真视通修订内控制度董事投出反对票:称制定前未充分沟通

    8月12日,真视通发布公告称,公司于当日上午10时召开董事会审议了印章管理、货币资金管理、财务管理制度等三项议案。目前三项议案均已通过,但董事马亚对三项议案均投出反对票,独董吕天文…

    科研百科 2024年7月11日
    62