Ubuntu 软件包管理详解

Ubuntu 方便宜用,最值得让人称道的便是其安装软件的方式, 一条命令: sudo apt-get install xxx 就几乎能帮你搞定所有的软件安装难题。但是有时你可能有这样的需求,查看某个软件包是否安装、安装在哪..., 那我们就来介绍一下 Ubuntu 的软件包管理方式。

一、Ubuntu 采用 Debian 的软件包管理器 dpkg 来管理软件包, 类似 RPM. 系统中所有 packages 的信息都在 /var/lib/dpkg/
目录下, 其子目录 /var/lib/dpkg/info 用于保存各个软件包的配置文件列表:
 (1).conffiles 记录了软件包的配置文件列表
 (2).list 保存软件包中的文件列表, 用户可以从 .list 的信息中找到软件包中文件的具体安装位置.
 (3).md5sums 记录了软件包的md5信息, 这个信息是用来进行包验证的.
 (4).prerm 脚本在 Debian 包解包之前运行, 主要作用是停止作用于即将升级的软件包的服务, 直到软件包安装或升级完成.
 (5).postinst 脚本是完成 Debian 包解开之后的配置工作, 通常用于执行所安装软件包相关命令和服务重新启动.

/var/lib/dpkg/available 文件的内容是软件包的描述信息, 该软件包括当前系统所使用的 Debian 安装源中的所有软件包,
其中包括当前系统中已安装的和未安装的软件包.

/var/cache/apt/archives 目录是在用 apt-get install 安装软件时,软件包的临时存放路径

/etc/apt/sources.list 存放的是软件源站点, 当你执行 sudo apt-get install xxx 时,Ubuntu 就去这些站点下载软件包到本地并执行安装

二、相关命令使用示例:
 (1)查看某软件包的安装内容
    dpkg -L xxx

 (2)查找软件库中的软件包
    apt-cache search 正则表达式

 (3)显示系统安装包的统计信息
    apt-cache stats
 
 (4)显示系统全部可用软件包的名称
    apt-cache pkgnames

 (5)显示某软件包的详细信息
    apt-cache show xxx

 (6)查找某文件属于哪个包
    apt-file search xxx

 (7)查看已经安装了哪些软件包
    dpkg -l

 (8)查询某软件依赖哪些软件包
    apt-cache depends xxx

 (9)查询某软件被哪些软件包依赖
    apt-cache rdepends xxx

 (10)增加一个光盘源
    sudo apt-cdrom add
    注: 顾名思义, 就是安装更新软件包时让其优先从Ubuntu 光盘上找(如果你不能上网安装/更新, 但有 Ubuntu 的 DVD ISO, 这会对你非常有用)

 (11)系统升级
    sudo apt-get update

 (12)清除所有已删除软件包的残馀配置文件
    dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

 (13)编译时缺少h文件的自动处理
    sudo auto-apt run ./configure

 (14)查看安装软件时下载软件包的临时存放目录
    ls /var/cache/apt/archives

 (15)备份当前系统安装的所有软件包的列表
    dpkg --get-selections | grep -v deinstall > ~/somefile

 (16)从上面备份的安装包的列表文件恢复所有包
    dpkg --set-selections < ~/somefile
    sudo dselect

 (17)清理旧版本的软件缓存
    sudo apt-get autoclean

 (18)清理所有软件缓存
    sudo apt-get clean

 (19)删除系统不再使用的孤立软件
    sudo apt-get autoremove

 (20)查看软件包在服务器上面的地址
    apt-get -qq --print-uris install ssh | cut -d\' -f2


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

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

相关文章

Redis入门指南(第2版) Redis设计思路学习与总结

https://www.qcloud.com/community/article/222 宋增宽&#xff0c;腾讯工程师&#xff0c;16年毕业加入腾讯&#xff0c;从事海量服务后台设计与研发工作&#xff0c;现在负责QQ群后台等项目&#xff0c;喜欢研究技术&#xff0c;并思考技术演变&#xff0c;专注于高并发业务架…

智慧交通day02-车流量检测实现07:匈牙利算法

匈牙利算法&#xff08;Hungarian Algorithm&#xff09;与KM算法&#xff08;Kuhn-Munkres Algorithm&#xff09;是用来解决多目标跟踪中的数据关联问题&#xff0c;匈牙利算法与KM算法都是为了求解二分图的最大匹配问题。 有一种很特别的图&#xff0c;就做二分图&#xff0…

非线性回归(Non-linear Regression)学习笔记

非线性回归&#xff08;Non-linear Regression&#xff09; 1.概率: 1.1定义概率Probability:对一件事情发生的可能性的衡量 1.2范围 0<P<1 1.3计算方法: 1.3.1根据个人置信 1.3.2根据历史数据 1.3.3根据模拟数据 1.4条件概率:&#xff08;A发生的条件下B发生的概率&…

Linux 设备驱动模型中的class(类)

首先&#xff0c;想说明一下&#xff0c;促使我研究class&#xff08;类&#xff09;的是因为它能够自动创建/dev下的设备节点。当然class还有其另外的作用&#xff0c;且自动创建设备节点的还有udev系统&#xff0c;udev是处于用户空间的&#xff0c;其自动创建设备节点也是依…

智慧交通day02-车流量检测实现08:目标跟踪中的数据关联(将检测框bbox与卡尔曼滤波器的跟踪框进行关联匹配)

# 将YOLO模型的检测框和卡尔曼滤波的跟踪框进行匹配 def associate_detection_to_tracker(detections,trackers,iou_threshold0.3):"""将检测框bbox与卡尔曼滤波器的跟踪框进行关联匹配:param detections:检测框:param trackers:跟踪框&#xff0c;即跟踪目标:p…

回归中的相关度和R平方值 学习笔记

回归中的相关度和R平方值 自变量x和因变量y的相关度 1.皮尔逊相关系数(Pearson Correlation Coefficient): 1.1衡量两个值线性相关强度的量 1.2取值范围[-1,1]: 正向相关: >0,负向相关: <0,无相关性: 0 公式&#xff1a;correlation&#xff0c; correlationvariance(Co…

智慧交通day02-车流量检测实现09:SORT/deepSORT

SORT和DeepSORT是多目标跟踪中两个知名度比较高的算法。DeepSORT是原团队对SORT的改进版本。现在来解析一下SORT和DeepSORT的基本思路。 1.SORT SORT核心是卡尔曼滤波和匈牙利匹配两个算法。流程图如下所示&#xff0c;可以看到整体可以拆分为两个部分&#xff0c;分别是匹配…

素数环 与 算法 全排列

在说起全排列前&#xff0c;先说一下昨天碰到的一个题目&#xff08;答案不是我做出来的&#xff0c;但是我感觉有好多个亮点&#xff0c;贴出来方便日后的学习&#xff09;&#xff1a; 素数环 时间限制&#xff1a;1000 ms | 内存限制&#xff1a;65535 KB难度&#xff1a;…

简单线性回归(Simple Linear Regression)和多元线性回归(Multiple Regression)学习笔记

简单线性回归(Simple Linear Regression) 0.前提介绍: 为什么需要统计量? 统计量:描述数据特征 0.1集中趋势衡量 0.1.1均值(平均数&#xff0c;平均值) (mean)&#xff1a;&#xff08;求和除以个数&#xff0c;Ex也可以表示x求均值&#xff09; 0.1.2中位数(median) : 将数…

开机自启动和由一个APK启动另一个APK核心代码

1、开机自启动 public class BootReceiver extends BroadcastReceiver {private static final String ACTION "android.intent.action.BOOT_COMPLETED";private static final String TAG "ZED_Led_Receiver";private static final String FileName &quo…

智慧交通day02-车流量检测实现10:多目标追踪实现

在这里我们主要实现了一个多目标跟踪器&#xff0c;管理多个卡尔曼滤波器对象&#xff0c;主要包括以下内容&#xff1a; 初始化&#xff1a;最大检测数&#xff0c;目标未被检测的最大帧数 目标跟踪结果的更新&#xff0c;即跟踪成功和失败的目标的更新 初始化 def __init_…

centos安装python3.5和pip

#安装zlib openssl openssl-devel yum install -y zlib zlib-devel yum install openssl -y yum install openssl-devel -ywget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz #下载tar Jxvf Python-3.5.0.tar.xz #解压cd Python-3.5.0 #进入目录mkdi…

聚类(Clustering):hierarchical clustering 层次聚类及其应用

聚类(Clustering):hierarchical clustering 层次聚类及其应用 clustering实现&#xff1a; from numpy import * import math #基于matrix计算的pakage#定义树形结构图的结点&#xff0c;当再往上两则分为一类时则将其连接起来 #用面向对象(class)的方法实现此次的代码: clas…

具有IOctl的简单字符驱动

http://www.cnblogs.com/geneil/archive/2011/12/04/2275372.html 驱动层 #include <linux/init.h> #include <linux/module.h> #include <linux/cdev.h> #include <linux/fs.h> #include <linux/device.h> #include <linux/module.h> #i…

智慧交通day02-车流量检测实现11:yoloV3模型

yoloV3以V1&#xff0c;V2为基础进行的改进&#xff0c;主要有&#xff1a;利用多尺度特征进行目标检测&#xff1b;先验框更丰富&#xff1b;调整了网络结构&#xff1b;对象分类使用logistic代替了softmax,更适用于多标签分类任务。 1.算法简介 YOLOv3是YOLO (You Only Loo…

bzoj1992鬼谷子的钱袋(二分乱搞 二进制)

1192: [HNOI2006]鬼谷子的钱袋 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 3223 Solved: 2333Descriptio 鬼谷子非常聪明&#xff0c;正因为这样&#xff0c;他非常繁忙&#xff0c;经常有各诸侯车的特派员前来向他咨询时政。有一天&#xff0c;他在咸阳游历的时候&…

聚类(Clustering): K-means算法

聚类(Clustering): K-means算法 1.归类: 聚类(clustering)属于非监督学习(unsupervised learning) 无类别标记( class label) 3. K-means 算法&#xff1a; 3.1 Clustering 中的经典算法&#xff0c;数据挖掘十大经典算法之一 3.2 算法接受参数 k &#xff1b;然后将事先输入…

ubuntu12.04

http://blog.sina.com.cn/s/blog_92942dba01014r7z.html

智慧交通day02-车流量检测实现12:基于yoloV3的目标检测

在本章节代码编写中&#xff0c;发现之前的代码所处的环境是python3&#xff0c;因此导致了cv2.dnn.readNetFromDarknet()在代码运行中导致了i[0]的获值失败&#xff0c;故总结如下&#xff1a; cv2.dnn.readNetFromDarknet()在python3上遇到的问题_李大狗的读研日记-CSDN博客…

非线性回归(Non-linear Regression)

非线性回归应用&#xff08;Logistic Regression Application&#xff09; 理论实际应用整合到一起链接 import numpy as np import random# 一个函数为梯度下降的算法 def GradientDescent(x,y,theta,alpha,m,numInterations):# m denotes the number of examples here, not…