4.1如何安装本地预编译包:equivs
有时也许我们会希望安装一个特定版本的程序,但是却没有Debian包而只有源码包.但是当这样做时包管理系统会遇到麻烦.假如我们要编译一个新版本的邮件服务器.一切顺利,但是在Debian系统上许多的软件包要依赖MTA(Mail Transport Agent).因为所安装的这些内容是我们自己编译的,所以包管理系统并不知道这些.
这就是我们需要equivs的原因.要使用这个程序我们先要安装这个程序.equivs可以创建一个空的包,但是在这个包中充满着依赖关系,这样就使得包管理系统认为已经满足了依赖关系.
在我们开始之前,我们还是要提醒一下朋友们,有更安全的方法可以用来编译由不同的选项为Debain打好包的程序,如果我们对我们现在所做的没有确切的把握我们最好不要用equivs来替换依赖关系.
下面让我们来继续我们MTA的例子.我们已经安装好了我们新编译的postfix,然后我们要继续安装mutt.但是突然我们发现mutt需要安装另外一个MTA,但是此时我们已经安装了.
这时我们可以来到某一个目录(如/tmp)然后运行下面的命令:
# equivs-control name
在这里我们可以用我们要创建的控制文件的名字来替换name.文件将会以下面的方式来进行创建:
Secton: misc
Priority: optional
Standards-Version: 3.0.1
Package: <enter package name; defaults to equivs-dummy>
Version: <enter version here; defaults to 1.0>
Maintainer:<your name and email address; defaults to username>
Pre-Depends:<packages>
Depends:<packages>
Recommends:<package>
Suggests:<package>
Provides:<(virtual)package>
Architecture: all
Copyright: <copyright file; defaults to GPL2>
Changelog: <changelog file; defaults to a generic changelog>
Readme: <README.Debian file; defaults to a generic one>
Extra-Files: <additional files for the doc directory, comma-separated>
Description: <short description; defaults to some wise words>
long description and info
.
second paragraph
我们只需要修改这些来完成我们所希望做的.我们可以查看一下各区域的格式以及他们的描述,在这里并没有必要解释每一行.让我们来做所需要的内容:
Section: misc
Priority: optional
Standards-Version: 3.0.1
Package: mta-local
Provides: mail-transport-agent
是的.所有的只是这些.mutt依赖于mail-transport-agent,这是由所有的MTA提供了虚拟包,我们只是简单的将他命名为mail-transport-agent,但是我们只是希望使用这个虚拟包的模式.
现在我们所需要做的只是来创建这个包:
# equives-build name
dh_testdir
touch build-stamp
dh_testdir
dh_testroot
dh_clean -k
#可以在这里加入命令将这个包安装到debian或是/tmp中
touch install-stamp
dh_testdir
dh_testroot
dh_installdocs
dh_installchangelogs
dh_compress
dh_fixperms
dh_installdeb
dh_gencontrol
dh_md5sums
dh_builddeb
dpgk-deb: building package 'name' in '../name_1.0_all.deb'.
The package has been created.
Attention, the package has been created in the current directory,and install the resulting .deb.
从这里我们可以看到,equives有许多的用法.例如我们可以用这个程序依据我们平常所安装的软件可以创建我们最喜欢的安装包.发挥你的想像,但是切记要小心.
很重要的一点就是我们要注意/usr/share/doc/equives/examples目录下的例子控制文件.
4.2移除无用的locale文件:localepurge
许多的Debian用户只使用一个locale.例如一个巴西用户只使用pt_BR locale而并不关心es locale.
localepurge对于这样的用户来说是一个非常有用的工具.只保留一个我们使用的locale可以释放大量的磁盘空间.要这样做我们只需要执行下面的命令:
apt-get install localepurge
配置这个工具是相当容易的,debconf问题向导可以引导一步一步的进行配置.但是对于第一个问题我们一定要小记,错误的答案也许就会移除所有的locale文件,包括我们正在使用的这一个.而如果是这样那么恢复的唯一办法就是重新安装提供这些locale文件的包.
4.3 如何知道要升级哪些软件包
apt-show-versions程序可以显示在我们的系统中哪些包要进行升级以及其他的一些有用的信息.而-u选项可以显示可升级包的列表:
debian:/home/mylxiaoyi# apt-show-versions -u
libgnome2-0/unstable upgradeable from 2.12.0.1-3 to 2.12.0.1-4
kpovmodeler/stable upgradeable from 4:3.3.2-2sarge1 to 4:3.3.2-2sarge3
libopensc1 0.9.6-3.0.1 newer than version in archive
而如果我们发现没有这个命令,我们可以用apt进行安装:
# apt-get install apt-show-versions
分享到:
相关推荐
### APT学习资料知识点解析 #### 一、APT软件简介 **APT**(Alternative Transients Program)是一款...通过对APT的学习和使用,用户可以深入了解电力系统的动态特性,为电力系统的规划、设计和维护提供有力的支持。
在Linux系统中,尤其是Ubuntu和Debian这类...这个“apt和dpkg包工具的学习文档汇总及学习笔记”压缩包,应该包含了详细的操作步骤和案例,对于提升这方面技能非常有帮助。建议按照文档逐步学习,结合实际操作加深理解。
二、apt-cyg的安装与使用 1. 安装:用户可以从指定的下载地址(http://apt-cyg.googlecode.com/svn/trunk/apt-cyg)获取apt-cyg的最新版本,如"apt-cyg201602"。下载完成后,只需在命令提示符下运行该脚本即可完成...
针对APT的检测,机器学习已经成为一种有效的工具。本文主要探讨了基于机器学习的APT检测过程中遇到的四个关键难点及其相应的解决方案。 首先,难点一涉及到如何从原始病毒文件中提取可分析的数据。解决这个问题的...
在基于机器学习的APT(Advanced Persistent Threat)检测中,面临多个挑战,这些挑战主要涉及到数据预处理、模型训练与持久化、模型匹配、软件开发流程以及模型参数优化。以下是对这些难点的详细解析: **难点一:从...
恶意软件基因可以被理解为软件中承载恶意行为特征的二进制片段,它能够以最小的单位映射出某个APT组织的普遍性状或独有特征。通过提取这些恶意软件基因,可以构建起可观察的序列来表征多步骤的攻击行为,形成基因...
二、APT攻击的特征与防范 1. 隐蔽性:APT攻击通常通过复杂的技术手段隐藏踪迹,如使用零日漏洞和定制的恶意软件。为了防御,企业需要建立强大的威胁情报系统,监测网络中不寻常的行为模式。 2. 持续性:攻击者会在...
6. **人工智能**:涵盖机器学习、深度学习等技术的应用。 7. **工业互联网**:实现制造业智能化升级的基础平台。 #### 二、“新基建”带来的影响 “新基建”不仅能够推动科技创新和产业升级,还能通过“补短板”...
使用`apt-diff`,用户可以比较两个软件包的控制信息(如版本号、依赖关系、作者信息等)、文件列表、配置文件以及二进制文件。这些比较可以帮助用户识别可能的冲突,预估升级可能带来的影响,甚至发现潜在的安全问题...
#### 二、电力系统防护APT攻击方案 为了有效防御APT攻击,电力系统需要采取一系列综合措施,包括但不限于: - **加强网络安全意识培训**:提高员工对于网络安全威胁的认识。 - **强化身份认证机制**:采用多因素...
在提供的文件列表中,"使用说明.txt" 提供了关于如何安装和使用APT_stats库的重要信息。在实际操作中,这个文本文件会指导用户如何利用pip来安装wheel文件,例如: ``` pip install APT_stats-0.0.4-py3-none-any....
#### 二、区块链用于APT情报共享 **1. 去中心化账本的优势** - **安全且不可变的情报存储:** 去中心化的账本能够安全地存储APT情报,并且由于其不可变性,这些情报的完整性得到了保障。 - **实时情报共享:** ...
- **预编译二进制包(bin)**: 使用`sudo ./*.bin`或`sudo ./packagename.bin`命令安装。 - **源码包安装**: 解压后依次执行`./configure`, `make`, `make install`。 这些基本知识覆盖了Ubuntu入门的各个方面,从...
### LabVIEW与APT指南知识点详解 #### 一、引言:LabVIEW与APT简介 - **LabVIEW**:LabVIEW是一种基于图形化编程语言的软件开发环境...通过这些知识点的学习,可以帮助读者更好地理解和掌握LabVIEW及APT的使用方法。
2. 在一个多因素APT模型中,假设有两个因素,股票A的预期回报率为17.6%,对第一因素的贝塔系数为1.45,对第二因素的贝塔系数为0.86。如果不存在套利机会,第一因素的风险溢价为3.2%,无风险回报率为5%,那么第二因素...
APT语言编程技术系列讲座(数控)涵盖了数控自动编程的过程、APT语言的基本组成、几何定义语句、刀具运动语句、工艺数据语句等方面的知识点,为数控编程技术的学习者提供了系统性的指导和参考。
1. 软件安装:使用`apt-get`命令安装各类软件,如Web服务器Apache、数据库MySQL等。 2. GPIO扩展板:如Cobbler Plus,方便快速连接GPIO引脚,简化硬件实验。 3.树莓派摄像头模块:可添加摄像头模块,实现拍照、录像...
通过Apt,你可以安装、更新和卸载软件,例如使用`sudo apt update`和`sudo apt install <package_name>`命令。 3. 更新与安全:定期更新系统和软件包是保持Ubuntu安全的关键。使用`sudo apt upgrade`和`sudo apt ...
### 从零开始学习OpenWrt完美教程 #### 第一部分:了解OpenWrt与搭建编译环境 **一、OpenWrt简介** OpenWrt是一款开源的嵌入式Linux发行版,主要用于网络设备,尤其是无线路由器。它不仅提供了一个稳定的基础系统...
通过命令行,你可以使用`sudo apt update`来更新软件源,`sudo apt upgrade`升级所有已安装软件,`sudo apt install <软件名>`安装软件,`sudo apt remove <软件名>`卸载软件。 六、Ubuntu Linux网络配置 Ubuntu...