0.基础环境
类别:笔记本
型号:中国长城 NF14C
硬件平台:飞腾处理器D2000(ArmV8 指令集)
系统:银河麒麟操作系统 V10 SP1(2303)
关键词:Linux,银河麒麟,飞腾,软件安装,新立德,DEB,软件打包,编译
1.软件安装与卸载
将系统更新至最新状态
sudo apt update -y && sudo apt full-upgrade -y确保系统所有包最新,再接着做下面的内容。
在Linux中,安装最终调用的是dpkg(centos这个系列是调的rpm),同时时间只允许一个安装,并会是锁定状态。
1.1图形化安装
1.1.1 软件市场安装
点击开始
点击软件商店
如:我们要安装腾讯文档,输入腾讯文档
点击安装即可。安装成功后,打开腾讯文档
1.1.2 Deb包安装
DEB 是 Debian 及其衍生系统(如 Ubuntu、Deepin)使用的软件包格式,文件扩展名为 .deb。它包含程序文件、依赖信息和安装脚本,可通过命令 dpkg -i 或 apt install 安装。DEB 包依赖管理完善、更新方便,是最常用的 Linux 软件分发形式之一。
注:RPM格式是Centos等红帽系列平台的格式,自行试验。
还是以安装腾讯文档为例,找到腾讯文档下载的地址。打开浏览器,打开搜索引擎(相关),输入腾讯文档,进行搜索
点击更多版本下载,因为我们的CPU是Intel,AMD是X64的指令集,如果是飞腾就选ARM,选择Deb包下载
点下载,下载完成后
双击deb包,进行安装。
点击一键安装
1.2 命令行安装
1.2.1 apt命令安装
打开命令行
sudo apt search tencent #搜索腾讯在仓库中的软件
sudo apt install qqmusic #根据显示,选择需要的软件安装1.2.2 dpkg命令安装
定位到前面我们下载的deb包
cd 下载
ls #显示确认包是否存在在命令行中输入
sudo dpkg -i TencentDocs-x64.deb 或
sudo apt install ./TencentDocs-x64.deb1.2.3 命令的其他用法
# 查询已安装软件包
dpkg -l | grep gcc
# 查看软件包信息
apt show gcc
# 检查软件包文件列表
dpkg -L gcc# 更新软件源
sudo apt update
# 将系统所有软件更新到最新状态
sudo apt full-upgrade
# 安装软件包
sudo apt install -y wget
# 升级软件包
sudo apt upgrade -y wget
# 卸载软件包
sudo apt remove -y wget
# 搜索软件包
apt search nginx
# 查看可用版本
apt show nginx1.2.4 snap安装
参见:https://segmentfault.com/a/1190000042107942
sudo apt-get install snapd #安装命令
sudo systemctl enable snapd #开机自启动
sudo systemctl status snapd #查询服务状态
sudo systemctl start snapd #立即启动firefox放第一,因为他所有平台都可以同步,chromium现在已经不能用google账号了。
sudo snap install firefox练习
- 安装
net-tools,验证ifconfig命令是否可用。 - 卸载
net-tools并观察系统状态。
1.3 图形化软件卸载
打开软件商店,定位到软件管理
找到要卸载的软件,腾讯文档,点击卸载即可完成卸载。
2.软件包管理
2.1 Synaptic新立德包管理器
安装synaptic图形化包管理器
sudo apt install synaptic -y启动后
打开新立得软件包管理器
可以右击对应的包选项,进行升级,卸载,安装动作。
2.2 Muon包管理器
在应用市场中,搜索包管理,可以看到muon软件包管理器
安装成功后,打开。
2.3 Dpkg命令行
以下载的腾讯文档安装包为例
# 安装本地下载的Tecentdocs.deb包
dpkg -i Tecentdocs.deb
# 卸载Tecentdocs(保留配置文件,如用户文档设置、缓存等)
dpkg -r tecentdocs
# 彻底卸载Tecentdocs(删除所有文件及配置,包括用户设置和缓存)
dpkg -P tecentdocs
# 查看Tecentdocs的安装状态(输出中"ii"表示已安装)
dpkg -l tecentdocs
# 筛选系统中已安装的所有Tecentdocs相关包(如有依赖组件)
dpkg -l | grep tecentdocs
# 查看已安装的Tecentdocs详细信息(版本、依赖、描述等)
dpkg -s tecentdocs
# 列出Tecentdocs安装的所有文件路径(如可执行文件、图标、配置模板等)
dpkg -L tecentdocs
# 查询Tecentdocs的执行文件(如/usr/bin/tecentdocs)所属的包
dpkg -S /usr/bin/tecentdocs
# 查看未安装的Tecentdocs.deb包内部包含的文件(无需安装即可预览内容)
dpkg -c Tecentdocs.deb
# 查看未安装的Tecentdocs.deb包的元信息(版本、依赖、开发者信息等)
dpkg -I Tecentdocs.deb
# 若Tecentdocs安装时因依赖问题中断,修复未完成的配置
dpkg --configure -a
# 强制移除损坏的Tecentdocs包(无法正常卸载时使用)
dpkg --remove --force-remove-reinstreq tecentdocs3.软件编译
# 下载源码包
wget http://ftp.gnu.org/gnu/hello/hello-2.12.tar.gz
# 解压
tar -xzf hello-2.12.tar.gz
cd hello-2.12
ls
# 配置
./configure
# 编译
make
# 安装
sudo make install
# 测试安装是否成功,这个就是我们编译出来的hello二进制执行文件了。
hello 应该可以看到输出“世界你好”!
练习
- 学生下载并编译
wget源码包,记录执行过程。 - 修改
configure参数安装到自定义路径/opt/hello,并验证运行。
图示提示
- 展示源码编译流程图(下载 → 解压 → 配置 → 编译 → 安装 → 测试)。
4.软件打包
以软件编译出的hello二进制为案例尝试。
4.1 麒麟打包工具GUI打包
4.1.1 安装GUI打包工具
打开应用市场,搜索打包。
看到麒麟打包工具,安装后打开
4.1.2 打包hello文件
选择二进制程序打包,并点击创建项目
将hello2.12源代码与编译过的文件夹拖入,并填入安装目录(记得点击旁边的确定)
点击下一步,输入相关信息
点击下一步,根据需要处理
点击下一步
点击编包
编译成功后,桌面上有这个DEB文件,就可以双击安装了。
4.2 命令行打包
下面以打包一个简单的 Hello World 程序 为例,演示如何在 Debian/Ubuntu 系统中制作 .deb 包(最常用的 Linux 软件包格式之一),方便分发和安装。
# 安装.deb打包所需工具(dpkg-deb、fakeroot等)
sudo apt update && sudo apt install -y dpkg-dev fakeroot步骤 1:创建打包工作目录
打包需要严格的目录结构(模拟软件安装后的系统路径),先创建一个工作目录:
# 创建主目录(命名格式:包名-版本号,如hello-1.0)
mkdir -p hello-1.0
# 进入工作目录
cd hello-1.01
步骤 2:准备软件文件(程序 + 资源)
假设我们要打包之前编译的 hello 程序,需按实际安装路径放置文件(如 /usr/bin 存放可执行程序):
# 创建模拟的系统目录(对应安装后的路径)
mkdir -p usr/bin
# 将前面编译的软件放至要安装的位置
cp ~/hello-2.12/hello usr/bin/.
# 赋予执行权限
chmod +x usr/bin/hello步骤 3:创建控制文件(核心配置)
在 DEBIAN 目录下创建 control 文件,记录包的元信息(名称、版本、依赖等),这是 .deb 包的核心:
# 创建DEBIAN目录(存放控制信息)
mkdir -p DEBIAN
# 编辑control文件
vim DEBIAN/control
chmod 755 DEBIAN/control在 control 中写入以下内容:
Package:hello
Version:1.0
Architecture:amd64
Maintainer:Your Name <you@example.com>
Description:A simple hello program
This is a demo package for Linux .deb packaging.
Depends:bash解释如下:
Package:hello # 包名(小写,无空格)
Version:1.0 # 版本号
Architecture:amd64 # 架构(amd64/i386/arm64等,通用可写all)
Maintainer:Your Name <you@example.com> # 维护者信息
Description:A simple hello program # 包描述(简短)
This is a demo package for Linux .deb packaging. # 详细描述(首行缩进)
Depends:bash # 依赖(此程序依赖bash,可选)ESC退出编辑,按shift+:输入wq 保存并退出。
步骤 4:(可选)添加安装 / 卸载脚本
如果需要在安装后或卸载前执行操作(如创建用户、清理文件),可在 DEBIAN 目录下添加脚本:
# 安装后执行的脚本(如打印提示)
echo '#!/bin/bash' > DEBIAN/postinst
echo 'echo "Hello package installed successfully!"' >> DEBIAN/postinst
chmod 755 DEBIAN/postinst # 必须赋予执行权限
# 卸载前执行的脚本(如清理提示)
echo '#!/bin/bash' > DEBIAN/prerm
echo 'echo "Hello package will be removed..."' >> DEBIAN/prerm
chmod 755 DEBIAN/prerm步骤 5:生成.deb 包
使用 dpkg-deb 工具打包,fakeroot 确保文件权限正确:
# 返回工作目录的上一级(因为打包目录是hello-1.0)
cd ..
# 打包(生成hello_1.0_amd64.deb)
fakeroot dpkg-deb -b hello-1.0 hello_1.0_amd64.deb执行成功后,当前目录会生成 .deb 包:hello_1.0_amd64.deb。
步骤 6:测试安装与卸载
# 安装自制的.deb包
sudo dpkg -i hello_1.0_amd64.deb
# 测试程序是否可用
hello # 输出:Hello, Linux Package!
# 查看包信息
dpkg -l hello # 状态应为ii(已安装)
# 卸载包
sudo dpkg -r hello
# 彻底卸载(删除配置,此处无配置文件,效果同-r)
sudo dpkg -P hello核心逻辑总结
- 目录结构:
hello-1.0/内模拟系统路径(如usr/bin),存放实际文件;DEBIAN/存放控制信息和脚本。 - 控制文件:
control定义包的基本信息,是打包的核心。 - 打包工具:
dpkg-deb -b负责将目录打包为.deb,fakeroot确保文件权限符合系统要求。
写在最后
本篇主要目标是告诉大家怎么安装软件,怎么样打包DEB格式,带大家入个门,在学中做。
麒麟操作系统,从入门到精通
麒麟操作系统专栏:https://segmentfault.com/blog/kylinos
麒麟操作系统x64专栏:https://segmentfault.com/blog/kylinos-x64
B站视频地址:https://www.bilibili.com/list/243784204
个人主页:
https://segmentfault.com/u/code4world/articles
https://twitter.com/xiaohelong
https://github.com/xiaohelong
联系邮箱:1179611323@qq.com
群:662512340
发行日志:
20251031 首发
20251103 增加SNAP安装方式
20251105 增加更新系统至最新
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。