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

相关推荐

  • 惠州海事局释放党建力量:战风斗浪筑堡垒显本色(惠州海事局领导分工)

    来源:今日惠州网 2020年疫情防控期间,惠州海事局党员突击队坚守登船点,对陆岛运输交通艇登轮检查,对乘坐交通艇的职工测量体温,并护航交通艇至马鞭洲岛,守护了有关石化企业18251…

    科研百科 2024年7月5日
    72
  • 清华大学南方科技大学博士专项联培计划

    清华大学南方科技大学博士专项联培计划 近年来,中国的高等教育事业取得了长足的发展,越来越多的高水平大学开始启动博士专项联培计划,为优秀的博士生提供更加优质、专业的培养服务。在这样的…

    科研百科 2024年10月8日
    17
  • 科研课题经费管理办法(科研经费管理细则)

    齐鲁网·闪电新闻4月14日讯4月14上午,山东省政府新闻办举行新闻发布会,邀请省财政厅负责同志等介绍改革完善财政科研经费管理,持续激发创新创造活力有关情况,并回答记者提问。 近日,…

    科研百科 2022年5月10日
    233
  • 中央高校博士科研项目

    中央高校博士科研项目 近年来,随着教育的不断发展,中央高校的博士学位项目也越来越受到关注。作为高等教育的重要组成部分,中央高校的博士学位项目不仅为学者提供了更高的学术成就和职业发展…

    科研百科 2025年3月19日
    1
  • 协同办公市场

    协同办公市场概述 随着数字化时代的到来,协同办公市场的需求日益增长。在这个市场中,企业需要使用各种软件和工具来协作和协调员工的工作,以提高效率和生产力。协同办公市场包括了各种办公软…

    科研百科 2024年8月24日
    53
  • 客户关系管理的三大阶段为

    客户关系管理(CRM)的三大阶段 客户关系管理是一种用于维护和提升客户满意度的方法,它涉及从客户接触点到客户离开点的整个生命周期。客户关系管理可以分为三个阶段:识别阶段、分析阶段和…

    科研百科 2024年8月26日
    50
  • 张家界项目管理系统价格

    张家界项目管理系统:提升工作效率和质量的神器 随着现代旅游业的不断发展,张家界景区的项目管理也变得越来越复杂。传统的项目管理方式已经无法满足现代旅游业的需求,因此,张家界项目管理系…

    科研百科 2025年6月29日
    0
  • 项目管理系统比较

    项目管理系统比较 随着项目管理在现代组织中的重要性不断提高,各种项目管理系统也不断涌现。这些系统旨在帮助项目经理更高效地管理项目,提高项目质量和效率。本文将比较常用的几种项目管理系…

    科研百科 2024年8月18日
    45
  • 微信小程序开发大概需要花多少钱(微信小程序开发大概需要花多少钱呢)

    伴随着商业竞争的持续加大,目前很多卖家挑选开拓新的运营方式。为了方便占有渠道优势,很多企业挑选小程序定制开发。现在市面上有许多专业为顾客定制开发小程序的店家,质量参差不齐。如今,定…

    科研百科 2023年4月5日
    339
  • 科研合同管理(科研合同管理办法)

    职能变更经理和团队成员对变更后的工作计划中的项目进度达成共识。 确保所有角色矩阵和沟通计划附录都能获得的职能经理和团队成员的接受。 安排变更审核会议后,立即安排项目变更评估文件审核…

    科研百科 2022年8月6日
    181