Ubuntu 包管理

news2025/2/12 13:54:46

APT&dpkg

查看已安装包

查看所有已经安装的包

dpkg -l

 

 查找包

  •  apt search <package_name>
  • 搜索软件包列表,找到与搜索关键字匹配的包

dpkg与grep结合查找特定的包 

dpkg -s <package>:查看某个安装包的详细信息

安装包

apt安装命令

  • 更新包索引:sudo apt update
  • 安装软件包:sudo apt install <package_name>

安装特定版本的包

  •  sudo apt install <package_name>=<version>:指定一个要安装的版本进行安装

dpkg 和 apt的区别

  • dpkg:主要用于处理本地.deb包的安装、卸载查询等操作,操作不会自动处理依赖关系
  • apt:高级包管理工具,除了管理本地的.deb包外,还可以从远程软件源中下载并自动解决包的依赖关系

例如安装一个本地的.deb包,直接使用dpkg即可

sudo dpkg -i package.deb

如果有缺失的依赖包,那么就要用apt解决

sudo apt-get install -f

安装.deb包

sudo dpkg -i <package_file>.deb

删除包

通过dpkg卸载已经安装的包

  • dpkg -r <package>:卸载已经安装的包
  • dpkg -P <package>:完全卸载已经安装的包,包括其中的配置文件

apt命令删除

  • sudo apt remove <package_name>:删除 软件包,但是会保存配置文件
  • sudo apt purge <package_name>:删除配置文件

自动删除不再需要的包

  • sudo apt autoremove
     

snap

基本了解

主要特点

  • 自动更新: Snap 包会自动更新,所有的应用都是最新版本。这个特性特别方便,因为你永远不需要担心遗漏了更新或者需要手动去处理安全修复
  • 沙箱机制: Snap 包运行在一个隔离的“沙箱”环境里,就像把应用放在一个透明的盒子里。这样,应用就算有问题,也不会影响到系统的其他部分。这可以提高系统的安全性,防止恶意软件或有缺陷的应用对系统造成破坏
  • 包含所有依赖: 一个 Snap 包自带了运行该应用所需的所有文件和依赖库。你不用担心缺少某个库,或者库的版本不兼容等问题。它就像一个“自给自足”的软件包,安装后可以直接使用,不会因为缺少其他程序或文件而无法运行

如果在新系统环境中可以使用snap,如果服务器中已经使用了其他包管理器,不建议更换

常用命令

安装命令

  • sudo snap install <package_name>
     

查看已经安装的包

  • snap list
     

更新已经安装的包

  • sudo snap refresh

卸载snap包

sudo snap remove <package_name>

判断动态库的安装方式

利用项目中的jsoncpp动态库为例分析

查看jsoncpp动态库

分别检查系统库和本地库路径下的jsoncpp

也可以通过ldconfig命令直接查找

判断安装来源 

apt list --installed | grep jsoncpp:输出说明1.9.5是通过包管理器安装的,而1.8.4是手动编译进行安装的

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2250937.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mac访达打开终端

选择文件夹打开 选中文件夹&#xff0c;然后右键即可&#xff1a; 在当前文件夹打开 在访达的当前文件夹长按option键 左下角出现当前文件夹路径 右键即可打开终端

数据结构--二叉树的创建和遍历

目录 引入 定义 性质 二叉树的创建 迭代法 注意事项&#xff1a; 递归法 注意事项&#xff1a; 二叉树的遍历 深度优先 广度优先 先序遍历&#xff08;前序遍历&#xff09; 中序遍历 后序遍历 层序遍历 查找树结构中是否存在某数值 方法一&#xff1a; 方法…

Linux零基础入门--Makefile和make--纯干货无废话!!

Makefile的概念与使用 Makefile其实是linux中的一种包含构建指令的文件&#xff0c;用于自动化构建 一个工程中的源文件不计数&#xff0c;其按类型、功能、模块分别放在若干个目录中&#xff0c;makefile定义了一系列的 规则来指定&#xff0c;哪些文件需要先编译&#xff0c;…

数据结构与算法——N叉树(自学笔记)

本文参考 N 叉树 - LeetBook - 力扣&#xff08;LeetCode&#xff09;全球极客挚爱的技术成长平台 遍历 前序遍历&#xff1a;A->B->C->E->F->D->G后序遍历&#xff1a;B->E->F->C->G->D->A层序遍历&#xff1a;A->B->C->D->…

如何使用 Chrome 无痕浏览模式访问网站?

无痕浏览&#xff08;Incognito Mode&#xff09;是 Google Chrome 浏览器提供的一种隐私保护功能&#xff0c;它允许用户在一个独立的会话中浏览网页&#xff0c;而不会记录用户的浏览历史、下载历史、表单数据等。这对于希望保护个人隐私或进行临时性匿名浏览的用户来说非常有…

0.shell 脚本执行方式

1.脚本格式要求 &#x1f951;脚本以 #!/bin/bash 开头 &#x1f966; 脚本要有可执行权限 2.执行脚本的两种方式 &#x1f96c; 方式1&#xff1a;赋予x执行权限 &#x1f952; ​​​​​​​方式2&#xff1a; sh执行 ​​​​​​​

基于大数据python 酒店数据分析可视化大屏系统(源码+LW+部署讲解+数据库+ppt)

&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 很对人不知道选题怎么选 不清楚自己适合做哪块内容 都可以免费来问我 避免后期給自己答辩找麻烦 增加难度&#xff08;部分学校只有一次答辩机会 没弄好就延迟…

扩展欧几里得——acwing

数论—快速幂&#xff0c;欧几里得及其扩展&#xff0c;逆元&#xff0c;单位元_数论单位元函数-CSDN博客 之前做的数论笔记&#x1f446;&#x1f446;&#x1f446; 题目一&#xff1a;扩展欧几里得算法 877. 扩展欧几里得算法 - AcWing题库 分析 代码 #include<bits/…

数字信号处理实验报告四:IIR数字滤波器设计及软件实现

1.实验目的 (1)熟悉用双线性变换法设计IIR数字滤波器的原理与方法; (2)学会调用MATLAB信号处理工具箱中滤波器设计函数(或滤波器设计分析工具fdatool)设计各种IIR数字滤波器,学会根据滤波需求确定滤波器指标参数。 (3)掌握IIR数字滤波器的MATLAB实现方法。 (3)…

53 基于单片机的8路抢答器加记分

目录 一、主要功能 二、硬件资源 三、程序编程 四、实现现象 一、主要功能 首先有三个按键 分别为开始 暂停 复位&#xff0c;然后八个选手按键&#xff0c;开机显示四条杠&#xff0c;然后按一号选手按键&#xff0c;数码管显示&#xff13;&#xff10;&#xff0c;这…

Vue教程|搭建vue项目|Vue-CLI新版脚手架

一、安装Node环境 安装Node及Npm环境 Node下载地址:Node.js — Run JavaScript EverywhereNode.js is a JavaScript runtime built on Chromes V8 JavaScript engine.https://nodejs.org/en/ 安装完成后,检查安装是否成功,并检查版本,命令如下: node -v npm -v mac@Macd…

小米澎湃OS2跟蜂窝网络相关的设置和调试【功能设计】

界面功能 开发者模式下&#xff0c;支持数据和WLAN网络相关的设置&#xff0c;跟数据有关的主要如下&#xff1a; 蜂窝网络调试 > 5G-A 特性中心始终开启移动数据网络&#xff08;便于WiFi和数据快速切换&#xff0c;在国外北美运营商有些需求中明确定义要开着&#xff09…

buuctf-reverse-reverse2

进main分析代码 printf("input the flag:");__isoc99_scanf("%20s", s2);if ( !strcmp(&flag, s2) )return puts("this is the right flag!");//提示用户输入 flag。elsereturn puts("wrong flag!");//读取用户输入的字符串&#…

ubuntu24.04安装Kubernetes1.31.0(k8s1.30.0)高可用集群

ubuntu24.04安装Kubernetes1.30.0(kubernetes1.30.0)高可用集群 一、总体概览 目前最新版的K8S版本应该是1.31.0,我们安装的是第二新的版本1.30.0,因为有大神XiaoHH Superme指路,所以基本上没踩坑,很顺利就搭建完成了。所有的机器都采用的最新版Ubuntu-Server-24.04长期支…

学成在线day08

部署静态页面 相关操作&#xff1a;https://mx67xggunk5.feishu.cn/wiki/FLozwxrrxihTJbkyTHgchDt4nUc nginx的最终配置文件&#xff1a; worker_processes 1; events {worker_connections 1024; } http {include mime.types;default_type application/octet-strea…

mysql之找回忘记的root密码

mysql之找回忘记的root密码 1.方法1&#xff0c;init-file重置密码2.方法2&#xff0c;–skip-grant-tables重置密码 1.方法1&#xff0c;init-file重置密码 使用init-file参数来对密码进行重新设置 1.停止mysql服务进程 首先将mysql的服务停用掉&#xff1b; 输入命令&#x…

ROS VSCode调试方法

VSCode 调试 Ros文档 1.编译参数设置 cd catkin_ws catkin_make -DCMAKE_BUILD_TYPEDebug2.vscode 调试插件安装 可在扩展中安装(Ctrl Shift X): 1.ROS 2.C/C 3.C Intelliense 4.Msg Language Support 5.Txt Syntax 3.导入已有或者新建ROS工作空间 3.1 导入工作…

力扣--LCR 152.验证二叉搜索树后序遍历

请实现一个函数来判断整数数组 postorder 是否为二叉搜索树的后序遍历结果。 提示&#xff1a; 数组长度 < 1000 postorder 中无重复数字代码 class Solution { public boolean verifyPostorder(int[] postorder) { if(postorder null){ return true; } return f(postor…

LeetCode 力扣 热题 100道(十一)字母异位词分组(C++)

给你一个字符串数组&#xff0c;请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。字母异位词 是由重新排列源单词的所有字母得到的一个新单词。 排序字符&#xff1a;对于每个字符串&#xff0c;我们将其字符排序&#xff0c;得到一个唯一的 "排序后的字母&qu…

【Anaconda】 创建环境报错:CondaHTTPError: HTTP 000 CONNECTION FAILED for url

问题描述 使用 Anaconda 创建环境时报错&#xff1a; CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://repo.anaconda.com/pkgs/free/noarch/repodata.json.bz2> Elapsed: -An HTTP error occurred when trying to retrieve this URL. HTTP errors are o…