笔记-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出现之後,人们觉得有必要在系统 中加入一种机 制用来管理 安装在计算机上的软件包.人们将这套系统 ...
随机推荐
- flex属性设置
flex是一个复合属性,所以有三个值设置,这也就造成了flex可以只设置一个值或两个值: 如果flex只设置一个值: 没有单位的数,则这个值是flex-grow, 并且flex-basis变为0 有单 ...
- springboot整合jsp 遇到的问题
1,在idea中新建jsp文件 首先需要在springboot项目 在src 中webapp /WEB-INF/JSP 当我右键想新建一个jsp文件时默认没有 File->Project Str ...
- java获取网页源代码并写入本地文件中
import java.io.*; import java.net.*; public class URLDemo { public static void main(String args[]){ ...
- ASP.NET MVC 学习笔记之View 和Redriect的区别
首先先说一下Redriect 和RedirectToAction 两个没什么区别,都是向浏览器发送302 Found相应,再有浏览器向对应的url进行请求 只是参数的意义不同而已 再说Redirect ...
- 【CSS】text-align:justify 的使用
工作需要写一个全是文本的网页,规范格式的时候发现很多css属性不是很熟悉,比如text-align:justify. 这个是两端对齐,css3中新增了text-justify属性 语法:text-ju ...
- ssh-key添加之后依旧需要密码输入Bug的解决
场景重现 要求从10.183.93.181的root用户ssh免密登录至10.110.155.26的boss用户 1.在10.110.155.26 的boss用户下面新建目录.ssh 2.在10.11 ...
- TCP协议解析及相关问题
TCP协议是什么: TCP是一种传输控制层的协议(TCP,Transmission Control Protocol)是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议.也就是要 ...
- cmake build
{ //cmake CMakeLists.txt -G "Visual Studio 15 2017" }
- 基础(三):yum(RedHat系列)和apt-get(Debian系列 )用法及区别
文章转载来自:http://blog.csdn.net/chengly0129/article/details/70169760 一般来说著名的linux系统基本上分两大类:1.RedHat系列:Re ...
- Sqli labs系列-less-1 详细篇
要说 SQL 注入学习,网上众多的靶场,就属 Sqli labs 这个系列挺不错的,关卡达到60多关了,我自己也就打了不几关,一个挺不错的练习SQL注入的源码. 我一开始就准备等我一些原理篇总结完了, ...