笔记-Linux包管理命令
一、apt, apt-get, dpkg命令
apt-get是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。使用apt-get的主流Linux系统包括Debian和Ubuntu变异版本。
ackagename指代为软件包的名称
命令 | 说明 |
---|---|
apt-get update | 在修改/etc/apt/sources.list或/etc/apt/preferences之后运行该命令。此外您需要定期运行这一命令以确保您的软件包列表是最新的。 |
apt-get install packagename | 安装一个新软件包(参见下文的aptitude) |
apt-get remove packagename | 卸载一个已安装的软件包(保留配置文档) |
apt-get remove --purge packagename | 卸载一个已安装的软件包(删除配置文档) |
apt-get autoremove packagename | 删除包及其依赖的软件包 |
apt-get autoremove --purge packagname | 删除包及其依赖的软件包+配置文件,比上面的要删除的彻底一点 |
apt-get autoclean | apt会把已装或已卸的软件都备份在硬盘上,所以假如需要空间的话,能够让这个命令来删除您已卸载掉的软件的备份。 |
apt-get clean | 这个命令会把安装的软件的备份也删除,但是这样不会影响软件的使用。 |
apt-get upgrade | 可以使用这条命令更新软件包,apt-get upgrade不仅可以从相同版本号的发布版中更新软件包,也可以从新版本号的发布版中更新软件包 |
apt-get dist-upgrade | 在运行apt-get upgrade命令时加上-u选项很有用(即:apt-get -u upgrade)。这个选项让APT显示完整的可更新软件包列表。不加这个选项,你就只能盲目地更新。APT会下载每个软件包的最新更新版本,然后以合理的次序安装它们。注意在运行该命令前应先运行 apt-get update更新数据库,更新任何已安装的软件包 |
apt-get dist-upgrade | 将系统升级到新版本 |
apt-cache search string | 在软件包列表中搜索字符串 |
apt-cache showpkg pkgs | 显示软件包信息。 |
apt-cache dumpavail | 打印可用软件包列表。 |
apt-cache show pkgs | 显示软件包记录,类似于dpkg –print-avail。 |
apt-cache pkgnames | 打印软件包列表中任何软件包的名称。 |
apt-file search filename | 查找包含特定文档的软件包(不一定是已安装的),这些文档的文档名中含有指定的字符串。apt-file是个单独的软件包。您必须先使用apt-get install来安装他,然后运行apt-file update。假如apt-file search filename输出的内容太多,您能够尝试使用apt-file search filename |
apt-get autoclean | 定期运行这个命令来清除那些已卸载的软件包的.deb文档。通过这种方式,您能够释放大量的磁盘空间。假如您的需求十分迫切,能够使用apt-get clean以释放更多空间。这个命令会将已安装软件包裹的.deb文档一并删除。大多数情况下您不会再用到这些.debs文档,因此假如您为磁盘空间不足而感到焦头烂额,这个办法也许值得一试。 |
apt-get与apt-config、apt-cache(后两者可能对于新入坑的用户来说较为陌生)一样都是较为底层同时又包含众多功能的命令。对于一些常用的包管理命令(除了安装以外,还有查询、搜索等等),都被分散在这三个命令里面(例如,用apt-get install来安装软件包,用apt-cache search来查询/搜索软件包)
而apt命令的引入就是解决常用功能分散的功能,简单来说,apt命令是apt-get,apt-cache,apt-config三个命令中一些常用功能的集合。
apt 命令 | 取代的命令 | 命令的功能 |
---|---|---|
apt install | apt-get install | 安装软件包 |
apt remove | apt-get remove | 移除软件包 |
apt purge | apt-get purge | 移除软件包及配置文件 |
apt update | apt-get update | 刷新存储库索引 |
apt upgrade | apt-get upgrade | 升级所有可升级的软件包 |
apt autoremove | apt-get autoremove | 自动删除不需要的包 |
apt full-upgrade | apt-get dist-upgrade | 在升级软件包时自动处理依赖关系 |
apt search | apt-cache search | 搜索应用程序 |
apt show | apt-cache show | 显示装细节 |
apt list | 列出包含条件的包(已安装,可升级等) | |
apt edit-sources | 编辑源列表 |
dpkg
dpkg是基于Debian的系统的软件包管理器。它可以安装,删除和构建软件包,但是与其他软件包管理系统不同,它无法自动下载和安装软件包或其依赖项。本节介绍如何使用 dpkg管理本地安装的软件包:
命令 | 说明 |
---|---|
dpkg -l | 要列出系统上安装的所有软件包 |
dpkg -l | grep apache2 | 根据系统上软件包的数量,这可能会产生大量输出。通过grep传递输出, 以查看是否安装了特定的软件包: |
dpkg -L ufw | 要列出软件包安装的文件(在本例中为ufw软件包),请输入 |
dpkg -S /etc/host.conf | 如果不确定哪个软件包安装了文件,则dpkg -S可能会告诉您 |
sudo dpkg -i zip_3.0-4_i386.deb | 安装本地.deb文件 |
sudo dpkg -r zip | 卸载软件包 |
笔记-Linux包管理命令的更多相关文章
- Linux各主要发行版的包管理命令对照
Linux各主要发行版的包管理命令对照 Debian使用的是apt和dpkg,Gentoo则用的是emerge,Redhat的yum.Suse的zypper.Arch的pacman.Slackware ...
- Linux 包管理
1 文集 <Linux 包管理基础:apt.yum.dnf 和 pkg>,由Snapcrafter翻译,英文原创(作者Brennen)地址在这里. 这是一篇不错的概括性的文章,系统介绍了D ...
- 12个Linux进程管理命令介绍(转)
12个Linux进程管理命令介绍 [日期:2015-06-02] 来源:Linux中国 作者:Linux [字体:大 中 小] 执行中的程序在称作进程.当程序以可执行文件存放在存储中,并且运行的 ...
- [转帖]十二 个经典 Linux 进程管理命令介绍
https://www.cnblogs.com/swordxia/p/4550825.html 接了 http referer 头 没法显示图片 可以去原始blog 里面去查看. 随笔- 109 ...
- visual studio NuGet 常用包管理命令
visual studio NuGet 常用包管理命令 查找包 Find-Package [包名] Find-Package [包名] -AllVersions 安装包 Install-Package ...
- linux笔记:用户管理命令和用户组管理命令
用户管理命令 命令名称:useradd功能:添加用户(添加完后不能立即使用,必须用passwd修改用户密码后才能使用)用法:useradd [选项] 用户名选项参数:-u 手工指定用户的UID-d 手 ...
- linux下包管理命令yum与apt-get以及开发环境配置
一般来说市面上常见的Linux系统分为两大类: RH类:Redhat.centOS和Fedora等 Debian类:ubuntu.Debian等. 上述两类系统对应的包管理工具命令分别是yum和apt ...
- RPM包管理命令rpm
RPM包管理器是Linux系统中最早的软件包管理软件之一,也是目前最流行的软件包管理器,许多发行版都使用RPM作为默认的软件包管理软件. RPM软件包名称格式: samba-client-3.0.33 ...
- Ubuntu包管理命令 dpkg、apt和aptitude
起初GNU/Linux系统中仅仅有.tar.gz.用户 必须自己编译他们想使用的每个程序.在Debian出现之後,人们觉得有必要在系统 中加入一种机 制用来管理 安装在计算机上的软件包.人们将这套系统 ...
随机推荐
- springMVC框架入门案例
控制器: package cn.mepu.controller; import org.springframework.stereotype.Controller; import org.spring ...
- 案例:forEach和some区别
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- android5.1 隐藏状态栏
修改frameworks/base/core/res/res/values/dimens.xml文件中 <!-- Height of the status bar --> <!-- ...
- https原理 就是两次http
客户端在使用HTTPS方式与Web服务器通信时有以下几个步骤: (1)客户使用https的URL访问Web服务器,要求与Web服务器建立SSL连接. (2)Web服务器收到客户端请求后,会将网站的证书 ...
- JavaScript代码/ES6语法笔记一
1. new Set()/去重一个数组 let arr = [1, 2, 2, 3, 3]; let set = new Set(arr); let newArr = Array.from(set); ...
- nodejs进阶:密码加盐:随机盐值
demo var crypto = require('crypto'); function getRandomSalt(){ return Math.random().toString().slice ...
- 【记坑】Oracle数据库Date类型查询结果多出".0"的解决方法
oracle设置数据库某张表的字段类型为date,数据库存值为 2019-11-25 18:51:47 格式,但是从数据库查询出来之后格式为 String stopTime = map.get(&qu ...
- shell脚本进行设置启动/关闭
vi /etc/init.d/confluence ----------------------------- #!/bin/bash# chkconfig: 2345 85 15# Provides ...
- hibernate3.6异常
WARN DTDEntityResolver:73 - recognized obsolete hibernate namespace http://hibernate.sourceforge.net ...
- js正则删除字符串中的部分内容
// 例如 let a = `(ID)444` a.replace(/\(ID\)/ig, '') // 结果 "444"