← 返回文档

Config Hub CLI(linxira-config)

linxira-config 是系统配置中心 config-hub 的命令行入口:SSH、镜像源、诊断日志、环境变量、软件栈、工作区守护、安全态势,一条命令一个动作。直接输入 linxira-config 回车可进入纯 bash 的数字菜单(TUI),所有菜单项与命令行子命令一一对应。

📌 本页对应 config-hub 2.5.2。任何子命令加 --json 可获得机器可读输出(workspace-guard / ssh status / net diag / mirror list 均支持),方便脚本与 AI 助手消费。

诊断日志:一键收集与上传

安装失败、更新异常、行为诡异时,第一步永远是它——收集本机诊断并换回一个可分享的短链:

linxira-config logs collect          # 收集到 ~/linxira-logs/linxira-logs-*.txt
linxira-config logs upload           # 上传最新一份,打印短链
linxira-config logs upload 某文件    # 上传指定文件

收集内容包括:系统与磁盘概况、已装 linxira 软件包、失败单元、安装器完整日志(/tmp/linxira-installer.log 与 Calamares 会话日志)、pacman.log、本次开机的错误日志。上传走 paste.rs → termbin → dpaste 三通道自动降级(国内外均可达),返回的链接可直接发给维护者或 AI 助手。

SSH 远程访问

把电脑变成可远程管理的服务器,一条命令:

linxira-config ssh on                # 启用并启动 sshd(免密 sudo 会话内同样可用)
linxira-config ssh status            # 服务状态与连接信息(IP / 端口)
linxira-config ssh off               # 关闭远程 SSH
linxira-config ssh port 2222         # 更换端口
linxira-config ssh status --json     # 机器可读

密钥管理(Ed25519):

linxira-config ssh key generate [名称]           # 生成密钥对
linxira-config ssh key list / show / fingerprint  # 查看
linxira-config ssh authorized add <公钥>          # 添加授权公钥
linxira-config ssh authorized list / remove       # 管理授权列表

分步教程(含密钥登录)见 远程访问指南。注意:authorized add 只接受无 options 的纯公钥;密钥路径拒绝 symlink。

环境变量

机器级环境变量统一落在 /etc/profile.d/linxira-env.sh,重启不丢:

linxira-config env list              # 列出全部
linxira-config env set KEY value     # 写入
linxira-config env get KEY           # 读取
linxira-config env unset KEY         # 删除

软件栈

面向科研场景的一键软件栈(桥接 linxira-component-manager 的事务后端):

linxira-config stack list            # 可用栈:科学计算、办公、开发等
linxira-config stack status          # 安装状态
linxira-config stack install <id>    # 安装一个栈
linxira-config stack tui             # 终端交互界面

工作区守护

每 30 分钟对工作区做一次独立恢复点(含 .git),误删可回滚:

linxira-config workspace-guard status            # 配置与定时器状态(--json 可用)
sudo linxira-config workspace-guard enable       # 选盘、建 ext4 存储、注册并启动定时器
sudo linxira-config workspace-guard disable      # 停止定时器(保留全部恢复点)
linxira-config workspace-guard handbook          # 打印 AI 可读手册清单

日常恢复点操作用 linxira-components guard <status|list|snapshot|restore>。

镜像源管理

覆盖 Arch、npm、PyPI、AUR、Go 模块与 Flatpak 六类源:

linxira-config mirror arch list              # 列出候选镜像
linxira-config mirror arch speed             # 全量测速
linxira-config mirror arch auto              # 自动选最快
linxira-config mirror pip set tsinghua       # 按名称切换(npm/pip/aur/go 用户级生效)
linxira-config mirror flatpak set <id|url>   # 指定 Flatpak 远程
linxira-config mirror arch reset             # 恢复官方源
linxira-config mirror arch list --json       # 机器可读

Miniforge 频道单独管理,仅允许审核过的 conda-forge 与 bioconda:conda channels list|add|remove|reset。

Catalog 查询(只读)

查询经审核的软件目录状态。命令接受 catalog ID(不是包名):

linxira-config catalog software --all
linxira-config catalog software --status drifted
linxira-config catalog component list
linxira-config catalog bundle show kde-plasma
linxira-config catalog software show firefox

默认显示 installed / partial / external / pending / drifted / reboot-required;--all 追加 not-installed。

网络与安全

linxira-config net diag              # 完整网络诊断(--json 可用)
linxira-config net dns               # 查看当前 DNS
linxira-config net dns set 223.5.5.5 # 设置 DNS
linxira-config security status       # 安全态势总览(UFW/SSH/fail2ban/KVM)
linxira-config security ufw allow 22 # 放行一个 TCP 端口
linxira-config runtime status        # 运行时与包管理器状态

其他

linxira-config timeshift status      # Timeshift 快照(enable/disable/status)
linxira-config headless on           # 无头模式:下次启动不加载桌面,内存全给计算
linxira-config info / status         # 系统信息 / 快速状态摘要
linxira-config tui                   # 数字菜单(同命令行能力)

rdp、virt kvm-on/docker-on、security harden、power 写操作目前等待事务后端启用(状态查询可用)——这是有意的安全设计:所有变更类操作必须经过可回滚的事务通道。

问题、bug 与功能建议请提交到 linxira-config-hub 仓库。