银河麒麟制作deb安装包(转)

本文详细介绍了在银河麒麟操作系统中如何制作deb安装包的步骤,包括准备hsclient文件夹、设置control和desktop文件内容,以及制作安装包的dpkg-deb命令。强调了各文件的作用,如control文件定义包信息,desktop文件配置应用启动参数,同时提到了预安装和后安装脚本的重要性。最后,讨论了程序图标和DEBIAN目录中其他可选文件的用途。

今天讲一讲银河麒麟下如何制作deb安装包。

制作安装包的命令很简单,以我近期的项目为例:

在hsclient文件夹的路径的终端输入:

dpkg -b hsclient/ hsclient_1.0.0_arm64.deb

以上命令会将hsclient文件夹的内容制作成hsclient_1.0.0_arm64.deb安装包。制作时间取决于hsclient文件夹的大小。

所以,主要工作量在于hsclient文件夹的准备。

使用tree命令查看hsclient目录结构如下:

可执行文件及相关依赖存放在HSClient目录,这里为了方便展示,我将里面的内容清空了,deb包安装完成后,可执行文件所在目录即为/opt/hbfec/HSClient。

control文件内容如下:

package: hsclient
version: 1.0.0
architecture: arm64
maintainer: hbfec
description: hsclient application

主要指定包名、版本号、系统架构、维护者、描述,根据实际情况填写即可。

desktop文件内容如下:

[Desktop Entry]
Name=HSClient
Name[zh_CN]=会商客户端
Comment=HSClient application
Exec=/opt/hbfec/HSClient/HSClient
Icon=/usr/share/icons/hsclient.png
Terminal=false
Type=Application
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;
StartupNotify=true

主要指定可执行文件相关配置:名称、可执行文件路径、图标、应用类型等。

注意:需要给desktop文件增加可执行权限(如:744)

程序图标这块没有固定的实现。简单实现,就放在/usr/share/icons目录下即可,推荐48*48大小,desktop中需要写绝对路径Icon=/usr/share/icons/hsclient.png。完整实现的话,icons目录下需要创建hicolor目录、kylin-icon-theme目录以及kylin-icon-theme-one目录,目录下都需要放置对应大小的图片,desktop中可以直接写文件名Icon=hsclient,可参考已安装的其他应用程序。

以上内容都准备好以后,就可以通过文章开始处提到的命令制作安装包了。

需要指出的是,在DEBIAN目录中至少要有control文件,还可以有preinst(preinstallation)、postinst(postinstallation)、prerm(preremove)、postrm(postremove)、copyright (版权)、changlog (修订记录)和conffiles等。

preinst文件:解包前运行的脚本。
postinst文件:解包完成并将目录文件拷贝到系统后,所需要执行的配置工作。
prerm文件:软件卸载前需要执行的脚本。
postrm文件:软件卸载后需要执行的脚本。
control文件:描述软件包的名称(Package),版本(Version),描述(Description)等,是deb包必须具备的描述性文件,以便于软件的安装管理和索引。

至此,银河麒麟下制作deb安装包的内容就讲完了,希望可以帮到有需要的人。

 转自:https://www.openwit.net/archives/kylindeb

参考:https://www.cnblogs.com/young525/p/5873806.html

<think>首先,用户的问题是关于在银河麒麟系统上安装deb安装包的方法。我需要基于提供的引用信息来回答。 回顾引用: - 引用[1]:提到了在银河麒麟离线环境中安装deb的方法。例如,使用能上网的虚拟机下载deb(如apt download zlib1g-dev),然后拷贝到离线机器上安装。 - 引用[2]:给出了针对银河麒麟V10早期版本的安装方法,括安装kylin-installer(sudo apt install kylin-installer),然后双击deb安装,并提到了修复依赖的方法(sudo apt-get install -f)。 用户的上一次问题和我的回答:用户的问题是“我想查找在银河麒麟系统上安装deb安装包的方法”,所以这是一个新问题,没有之前的对话历史。我需要直接回答这个问题。 关键点: - 用户想知道安装deb的方法。 - 系统是银河麒麟,这是一个基于Linux的系统,类似于Ubuntu或Debian,因为它使用apt。 - 方法应该括在线和离线场景,因为引用提到了离线安装。 结构化我的回答: 1. **介绍**:简要说明银河麒麟系统支持deb安装。 2. **在线安装方法**:如果系统可以上网。 3. **离线安装方法**:如果系统不能上网。 4. **常见问题和解决方案**:比如依赖问题。 5. **总结**:给出一般建议。 6. **生成相关问题**:根据系统指令,我需要生成相关问题。 系统指令要求: - 所有行内数学表达式使用$...$,但这里可能不需要数学,因为是关于系统安装的。 - 独立公式使用$$...$$,但同样,可能不适用。 - LaTeX语法正确。 - 使用中文回答。 - 生成相关问题。 - 在回答中引用的段落末尾添加引用标识,例如[^1]。 所以,在回答中引用引用[1]和[^2]时,需要添加引用标识。 回答内容: - **在线安装**:使用apt install命令。引用[2]提到安装kylin-installer后双击deb。 - **离线安装**:引用[1]提到的方法是下载deb到本地,然后使用dpkg -i安装。 - 修复依赖:sudo apt-get install -f(如果有依赖问题)。 步骤: 1. 确认系统版本:银河麒麟可能有不同版本(如V10)。 2. 在线安装: - 打开终端。 - 运行sudo apt update更新列表。 - 使用sudo apt install <package>安装包。 - 或者,安装kylin-installer后图形化安装。 3. 离线安装: - 在有网的相同系统上下载deb:apt download <package>。 - 拷贝到离线机器。 - 安装:sudo dpkg -i <deb-file>。 - 处理依赖:如果有依赖错误,运行sudo apt-get install -f。 4. 其他方法:使用gdebi或手动安装。 相关问题生成: - 基于主题,生成几个相关问题,比如: 1. 如何处理银河麒麟安装deb时的依赖问题? 2. 银河麒麟系统中deb安装失败有哪些常见原因? 3. 如何在没有网络的环境下管理银河麒麟的软件? 4. 银河麒麟系统支持哪些软件管理工具? 5. 如何创建银河麒麟系统的离线软件源? 确保回答真实可靠:基于提供的引用信息构建。 最终回答结构: - 开头:直接回答问题。 - 方法步骤:分点清晰列出。 - 结尾:生成相关问题。 </think>### 银河麒麟系统安装deb安装包的方法 在银河麒麟系统(如基于Linux的麒麟操作系统)上安装.deb安装包,可以通过多种方法实现,具体取决于系统是否联网以及系统版本(如V10)。以下是详细的安装步骤和注意事项,基于引用信息和标准Linux实践整理而成。如果系统在线,推荐使用apt命令;离线时,则需下载deb文件手动安装。 #### 1. **在线安装方法(推荐,适用于联网环境)** 如果您的银河麒麟系统可以连接到互联网,这是最简单的方式: - **步骤1:更新软件源** 打开终端(快捷键:Ctrl+Alt+T),运行以下命令更新列表: ```bash sudo apt update ``` 这将确保您的系统获取最新的软件信息。 - **步骤2:安装deb** - **方法A:使用apt命令直接安装** 如果您知道软件名称(如zlib1g-dev),运行: ```bash sudo apt install <package-name> # 替换<package-name>为实际名,例如sudo apt install zlib1g-dev ``` APT会自动处理依赖关系。 - **方法B:使用图形化安装器(适用于银河麒麟V10早期版本)** 首先安装kylin-installer工具: ```bash sudo apt install kylin-installer ``` 安装完成后,双击.deb文件即可通过图形界面安装。此方法更直观,适合桌面用户[^2]。 - **遇到依赖问题时的修复**: 如果安装失败(如缺少依赖),运行修复命令: ```bash sudo apt-get install -f ``` 这命令会自动修复依赖关系[^2]。 #### 2. **离线安装方法(适用于无网络环境)** 银河麒麟系统常用于离线项目(如涉密环境),这时需手动下载deb。引用[1]描述的方法可靠: - **步骤1:在有网环境中下载deb** 使用相同系统版本(如银河麒麟V10)的虚拟机或另一台机器,下载需要的deb: ```bash apt download <package-name> # 例如:apt download zlib1g-dev ``` 这会将deb文件保存在当前目录(如zlib1g-dev.deb)。下载后,拷贝文件到U盘或共享存储。 - **步骤2:在离线机器上安装** 将拷贝的deb文件传输到离线银河麒麟系统,然后在终端运行: ```bash sudo dpkg -i /path/to/package.deb # 替换/path/to/package.deb为实际文件路径,例如sudo dpkg -i ~/Downloads/zlib1g-dev.deb ``` `dpkg -i`用于手动安装deb。 - **步骤3:处理离线依赖问题** - 如果安装时报错(如"dependency problems"),需提前下载所有依赖。在有网机器上,使用`apt-rdepends`工具(先安装:`sudo apt install apt-rdepends`)递归下载依赖: ```bash apt download $(apt-rdepends <package-name> | grep -v "^ ") # 自动下载及其所有依赖 ``` 然后将所有deb文件拷贝到离线机器,逐一安装。 - 或者,在离线机器上运行修复命令(部分依赖可能已内置): ```bash sudo apt-get install -f ``` 但此命令在离线环境下可能无效,因此优先下载完整依赖[^1]。 #### 3. **注意事项** - **系统版本兼容性**:银河麒麟V10及早期版本支持上述方法。如果使用图形安装器(kylin-installer),确保系统为V10桌面版[^2]。 - **权限要求**:所有安装命令需root权限(前缀sudo),输入密码确认。 - **常见问题**: - **安装失败**:可能因依赖缺失或deb损坏。检查deb文件完整性,或重新下载。 - **版本冲突**:确保下载的deb与系统架构(如arm64或x86_64)匹配。查询架构命令:`uname -m`。 - **替代工具**:推荐使用`gdebi`(安装:`sudo apt install gdebi`),它能自动解决依赖:`sudo gdebi package.deb`。 #### 4. **总结建议** - **优先在线安装**:联网时用`sudo apt install <package>`或图形界面,高效可靠。 - **离线解决方案**:通过下载deb手动安装,务必处理依赖以避免错误(参考引用[1]的方法)。 - **验证安装**:运行`dpkg -l | grep <package-name>`检查是否安装成功。 如果您提供更多细节(如系统版本或deb来源),我可以进一步优化建议。
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值