应用¶
在国产信创政策推动下,大多数日常应用已经推出了Linux原生版本。不过,部分应用可能仍然存在些许问题与功能缺失。我们会在本章列出一些应用以及推荐安装选项。
或者,您也可以通过发行版自带应用商店或第三方应用商店(如星火应用商店)进行下载。
软件包选择¶
- Debian 系: Debian, Mint, Ubuntu, Kubuntu等:
deb - 红帽系: Fedora, RHEL, Rocky等:
rpm - Arch 系: 通常不需要用包(
pacman)安装
大部分桌面环境支持双击安装包进行安装。您也可以按照使用以下的包管理器。
Apt (Debian系)¶
全称:Advanced Packaging Tool
包格式:deb
apt是大部分Debian系的软件包管理器,由Debian团队在dpkg的基础上创建。
apt有多种变体,如apt-get、aptitude(用于缓解依赖地狱)等。
以下是一些较为常见的apt指令。
sudo apt install xxx安装某个软件包(可列举多个)sudo apt remove xxx卸载某个软件包(可列举多个)sudo apt update更新软件仓库缓存sudo apt upgrade升级系统软件包sudo apt autoremove自动删除部分不需要的软件包
不常用指令
sudo apt purge xxx彻底删除某个软件包(可列举多个)sudo apt search xxx搜索某软件包sudo apt moo彩蛋
更详细可以参考Runoob的教程。
Dnf (红帽系)¶
全称:Dandified Yum
包格式:rpm
dnf是大部分红帽系的软件包管理器,在rpm的基础上创建。
与先前的yum相比,dnf具有性能高,速度快的特点。
以下是一些较为常见的dnf指令。
sudo dnf install xxx安装某个软件包(可列举多个)sudo dnf remove xxx卸载某个软件包(可列举多个)sudo dnf upgrade 或 update升级系统软件包sudo dnf autoremove自动删除部分不需要的软件包sudo dnf makecache创建软件仓库缓存sudo dnf copr enable xxx启用某COPR仓库sudo dnf copr disable xxx禁用某COPR仓库
不常用指令
sudo dnf system-upgrade download --releasever=xx升级系统至某一版本sudo dnf system-upgrade reboot(在上一指令的基础上)重启进行升级sudo dnf group install xxx安装某一软件包组sudo dnf search xxx搜索某软件包
更详细可以参考Runoob的教程。
Pacman (Arch系)¶
全称:Package Manager
包格式:pacman
pacman是大部分Arch系的软件包管理器。
警告
Arch 严禁“部分升级”(Partial Upgrade)。请勿在未同步升级全系统的情况下单独安装或更新某个软件,否则极易导致系统依赖断裂造成所谓的 “滚挂” !此外,推荐配置 AUR (Arch User Repository) 并配合 yay 或 paru 等助手使用,可以提升使用体验。
多选题
在安装软件时,您可能见到类似如下的选项:
:: There are 2 providers available for jack:
:: Repository extra
1) jack2 2) pipewire-jack
pipewire: 音频服务ffmpeg: 多媒体后端NetworkManager: 网络链接管理cups: 打印systemd-resolved: DNS解析
以上列表无法覆盖所有选项,若遇到未列出的情况,您可以寻求AI的帮助。
软件组
在安装软件组时,遇到这样的情况,我们建议您直接回车:
:: There are 58 members in group gnome:
:: Repository extra
1) baobab 2) decibels 3) epiphany 4) gdm 5) gnome-backgrounds 6) gnome-calculator 7) gnome-calendar 8) gnome-characters 9) gnome-clocks 10) gnome-color-manager 11) gnome-connections
12) gnome-console 13) gnome-contacts 14) gnome-control-center 15) gnome-disk-utility 16) gnome-font-viewer 17) gnome-keyring 18) gnome-logs 19) gnome-maps 20) gnome-menus 21) gnome-music
22) gnome-remote-desktop 23) gnome-session 24) gnome-settings-daemon 25) gnome-shell 26) gnome-software 27) gnome-system-monitor 28) gnome-text-editor 29) gnome-tour 30) gnome-user-docs
31) gnome-user-share 32) gnome-weather 33) grilo-plugins 34) gst-thumbnailers 35) gvfs 36) gvfs-afc 37) gvfs-dnssd 38) gvfs-goa 39) gvfs-gphoto2 40) gvfs-mtp 41) gvfs-nfs 42) gvfs-onedrive
43) gvfs-smb 44) gvfs-wsdd 45) loupe 46) malcontent 47) nautilus 48) orca 49) papers 50) rygel 51) showtime 52) simple-scan 53) snapshot 54) sushi 55) tecla 56) xdg-desktop-portal-gnome
57) xdg-user-dirs-gtk 58) yelp
Enter a selection (default=all):
以下是一些较为常见的pacman指令。
sudo pacman -S安装某个软件包(可列举多个)sudo pacman -Rs卸载某个软件包及其依赖(可列举多个)sudo pacman -Syu升级系统软件包(请不要颠倒参数顺序!)sudo pacman -Scc清空包缓存
-S, -Syu,这些都是什么意思?
在Pacman中,-S(Sync,同步)、-R(Remove,移除)这些代表的是选项(Options),可以看作“主操作模式”,而不同的选项后可能会存在不同的“辅助开关”。例如,-S的变体-Syu或-S -y -u中,-y代表Refresh(刷新),-u代表Sysupgrade(更新所有包),意为:刷新软件源并更新所有包。而在-R的变体-Rus中 ,-u代表的就是Unneeded(跳过仍然被其他包所依赖的软件包),-s代表Recursive(递归删除目标包与依赖),意为:递归删除目标包与依赖,并忽略那些被其他软件依赖的包。
并且,部分“辅助开关”被重复时会有不同作用,例如-Syyuu,此处的-yy表示强制刷新软件源,-uu表示在更新的同时允许降级。
同时,各个“辅助开关”也存在操作顺序的差异。
要查看各选项含义,您可以运行sudo pacman --help,而要查看对应选项下的其他选项,您可以运行sudo pacman -选项 --help。
不常用指令
sudo pacman -Ss搜索某软件包
更详细可以参考Linux命令手册。
AUR 助手 (Arch)¶
AUR (Arch User Repository)是当今Linux软件包数目第二多的软件仓库,具有丰富多样的应用可供安装,包括但不限于QQ、微信、达芬奇等。
要使用AUR,您需要安装AUR助手,目前有yay与paru可供选择。不过请注意,两者并不直接存在与Arch Linux官方软件仓库中,我们建议您首先添加Arch Linux CN软件仓库,之后用pacman安装任意一个。或者,您也可以参照Arch Wiki的教程:Yay
同时,您可能需要安装base-devel来编译软件。
一般来说,AUR的常用语法与Pacman基本相同。
执行者
不建议使用sudo或在root用户下执行AUR助手。
网络问题
AUR本质上拖管的是PKGBUILD文件,可以被看作是应用程序的构建脚本,因而部分软件在安装时需要从Github拉取上游软件包,这使得部分软件的安装进度十分缓慢。
要解决这一问题,您可以手动编辑PKGBUILD来更换加速链接,也可以参考本篇教程。
Flatpak¶
Flatpak是Linux新一代跨平台软件安装解决方案。它通过沙箱设计,将软件与宿主机隔离,从而保证兼容性与安全性
已知问题
Flatpak与宿主机互通目前不够完善,例如QQ的剪贴板问题等。
要解决这一问题,请使用Flatpak安装Flatseal后,找到对应软件,关闭“回退到X11”。
不过尽管如此,大多数软件的表现均与包管理器版本无较大差别。
在您使用Flatpak之前,请确保您已经使用您的系统包管理器安装了flatpak包,并添加了Flathub软件源。
Flathub缓存
国内目前仅USTC与SJTUG有Flathub缓存。
以下是一些较为常见的Flatpak指令。
flatpak install xxx安装某个Flatpak包(可列举多个)flatpak remove xxx卸载某个Flatpak包(可列举多个)flatpak update (xxx)升级全部/某个Flatpak包
我们此处不列出关于构建、修改应用权限等指令,您可以运行 flatpak --help 来查看。推荐使用Flatseal管理应用权限。
建议参考来自Linux中国的Flatpak 新手指南。
AppImage¶
包格式:appimage
AppImage是一种通用的软件包格式,可以理解为Windows上的绿色版软件。它通过打包依赖来规避额外安装,具有通用性,可以在几乎所有发行版上运行。AppImage包没有统一的管理器。
权限问题
在下载AppImage后,您需要运行chmod +x 软件包来给予其执行权限。