统信桌面专业版V25【磐石系统命令行工具】使用介绍

简介

UOS 磐石系统管理工具,提供软件包安装命令兼容、快照管理、无忧还原、系统备份回滚、增量更新升级功能。

安装

UOS默认提供此工具,对应软件包名:deepin-immutable-ctl。

使用

deepin-immutable-ctl 支持以下子命令:admin、snapshot、upgrade、help。
uos@uos-PC:~$ deepin-immutable-ctl -h deepin-immutable-ctl -h This tool can be used to install extended applications, configure writable directories, snapshot management and other functions Usage: deepin-immutable-ctl [flags] deepin-immutable-ctl [command] Available Commands: admin Manage a host immutable system booted with ostree help Help about any command snapshot Manage snapshots in the system. upgrade Upgrade system. Flags: -h, --help help for deepin-immutable-ctl -s, --immutable-status Check the system if the immutable system -j, --json Show command output in JSON format -v, --verbose Show verbose output -w, --wait Wait for the lock file to be released -W, --wait-boot Wait for the boot lock file to be released -t, --wait-timeout string Timeout for waiting for the lock (example: 10m, 30s, 1h; negative value means wait forever) (default "10m0s") Use "deepin-immutable-ctl [command] --help" for more information about a command.

1.子命令

子命令描述说明
admin系统管理支持系统备份和部署
snapshot快照管理支持快照的创建,删除,重命名,查询,回滚等操作
upgrade升级管理支持增量更新升级

2.Flags

Flags说明备注
-h,—help命令帮助查询命令的使用选项和示例,所有命令及其子命令均支持此 flag
-s,—immutable-status查询当前是否处于不可变的系统环境中固定输出格式为”Immutable mode: [true/false]”
-j,—json以 JSON 格式输出内容,便于调用方解析大部分查询和管理命令均支持此 flag
-v,—verbose输出详细日志日志将输出到终端和syslog,默认不输出到终端
-w,—wait当有多个命令的实例在运行时,尝试等待其他命令执行完毕默认直接退出,可通过 -w 选项

3.系统管理

使用说明

uos@uos-PC:~$ deepin-immutable-ctl admin -h Manage a host immutable system booted with ostree Usage: deepin-immutable-ctl admin [flags] deepin-immutable-ctl admin [command] Available Commands: deploy Deploy the changes to the local OSTree repository exec Exec dpkg or apt command file-op Modify files in the immutable directory rollback Perform a rollback to set the current backup system as default status Show status undeploy Delete the deployment at the specified index Flags: -h, --help help for admin Global Flags: -j, --json Show command output in JSON format -v, --verbose Show verbose output -w, --wait Wait for the lock file to be released -W, --wait-boot Wait for the boot lock file to be released -t, --wait-timeout string Timeout for waiting for the lock (example: 10m, 30s, 1h; negative value means wait forever) (default "10m0s") Use "deepin-immutable-ctl admin [command] --help" for more information about a command.

命令介绍

功能命令说明
备份当前系统并部署备份系统sudo deepin-immutable-ctl admin deploy --backup 备份当前系统,并部署备份系统
刷新当前系统的修改层sudo deepin-immutable-ctl admin deploy —refresh合并当前修改层内容,并创建新的修改层
确认当前成功完成系统升级sudo deepin-immutable-ctl admin deploy —finalize升级成功进入系统后修改默认引导项
进入备份系统后进行回退sudo deepin-immutable-ctl admin rollback进行系统回退操作
备份当前系统并部署sudo deepin-immutable-ctl admin deploy备份当前系统版本,并部署到下次启动的状态.
查询部署版本状态deepin-immutable-ctl admin status按照索引列出当前的所有部署版本,将始终保持和grub引导顺序一致

示例

查询部署信息
deepin-immutable-ctl admin status
查看部署详细调试信息
deepin-immutable-ctl admin status -d <option>
此命令用于显示系统部署的详细调试信息。-d(或 --debug)参数支持多种选项,用于查看不同维度的部署详情。
-d 参数选项:
选项值说明
booted显示当前启动的部署详情
deploy:<index>显示指定索引位置的部署详情
expired显示已过期部署的详情
all显示所有部署(包括启动的、所有索引位置和过期的)详情
modified显示各个部署的修改层目录的状态信息
比如:
deepin-immutable-ctl admin status -d booted deepin-immutable-ctl admin status -d deploy:0 deepin-immutable-ctl admin status -d deploy:1 deepin-immutable-ctl admin status -d expired deepin-immutable-ctl admin status -d all deepin-immutable-ctl admin status -d modified
系统升级流程
# 升级前备份
sudo deepin-immutable-ctl admin deploy --backup
# 升级
sudo apt update & sudo apt dist-upgrade
# 升级后配置
sudo deepin-immutable-ctl admin deploy —refresh
# 之后重启,验证第一项启动项进入系统能否使用,如果能正常使用,则执行
sudo deepin-immutable-ctl admin deploy —finalize
# 如果不能正常使用了,可以选择回退,启动到备份系统中执行
sudo deepin-immutable-ctl admin rollback

4.快照管理

使用说明

uos@uos-PC:~$ deepin-immutable-ctl snapshot -h Manage snapshots in the system. Usage: deepin-immutable-ctl snapshot [flags] deepin-immutable-ctl snapshot [command] Available Commands: create Create a snapshot based on specified information. delete Delete the snapshot with the specified id. list List all snapshots. modify Modify the name and description of a snapshot rollback Roll back to the snapshot with the specified id. show Display details of a specified snapshot. Flags: -h, --help help for snapshot Global Flags: -j, --json Show command output in JSON format -v, --verbose Show verbose output -w, --wait Wait for the lock file to be released -W, --wait-boot Wait for the boot lock file to be released -t, --wait-timeout string Timeout for waiting for the lock (example: 10m, 30s, 1h; negative value means wait forever) (default "10m0s") Use "deepin-immutable-ctl snapshot [command] --help" for more information about a command.

命令介绍

功能命令说明
创建快照sudo deepin-immutable-ctl snapshot create <快照名称> <快照描述>创建成功后将返回快照ID,这是快照的唯一标识身份,也可以通过 --list 或 --show 查询快照信息时看到。
删除快照sudo deepin-immutable-ctl snapshot delete <快照ID>删除已有快照
修改快照信息deepin-immutable-ctl snapshot modify <新的快照名称> <新的快照描述>修改已有快照的名称和描述信息
列出所有快照的信息deepin-immutable-ctl snapshot list 支持-j | —json的选项,快照信息将以json格式进行输出。可列出所有快照信息
查询某个快照的信息 deepin-immutable-ctl snapshot show <快照ID>支持-j | —json的选项,快照信息将以json格式进行输出。查询指定 ID 的快照信息
回滚快照sudo deepin-immutable-ctl snapshot rollback <快照ID>回滚至指定 ID 的快照

示例

创建
uos@uos-PC:~$ sudo deepin-immutable-ctl snapshot create "install fish" "开发环境搭建完成"Create success, snap ID: fa0042d280883166
删除
uos@uos-PC:~$ sudo deepin-immutable-ctl snapshot delete fa0042d280883166
修改
uos@uos-PC:~$ sudo deepin-immutable-ctl snapshot modify fa0042d280883166 “fish” “基础环境”
查询
uos@uos-PC:~$ deepin-immutable-ctl snapshot list ID Name Time Desc fa0042d280883166 fish 2024-09-25 13:24:58 基础环境 247eb760f53c33a5 2 2024-09-25 13:25:18 2 uos@uos-PC:~$ deepin-immutable-ctl snapshot list --json | jq { "code": 0, "message": "success", "error": null, "data": { "version": 1, "snapshot_list": [ { "id": "90243ffb3d54d44d", "name": "First backup", "desc": "System initialization backup", "time": "2024-11-19 06:00:01" } ] } } uos@uos-PC:~$ deepin-immutable-ctl snapshot show 90243ffb3d54d44d ID : 90243ffb3d54d44d Name: First backup Time: 2024-11-19 06:00:01 Desc: System initialization backup
回滚
uos@uos-PC:~$ deepin-immutable-ctl snapshot rollback 90243ffb3d54d44d

5.无忧还原和关闭系统保护

注意:磐石系统并不推荐您关闭系统保护功能,因为这将使系统可能因为一些误操作,而导致系统无法启动、黑屏、反复重启等不可逆问题。您应确保自己具备足够的知识储备,以便在系统出现问题时能够手动修复.

使用说明

磐石系统具有系统不可变的特性,仅允许通过系统更新对系统组件进行修改。磐石系统默认情况下/usr目录为只读文件系统,用户不可直接通过命令添加、修改、删除这些目录中的内容,但在开发和调试场景下,通常有修改这些目录内容的需求,特提供关闭系统保护的功能,允许用户对/usr目录的读写行为。
uos@uos-PC:~$ deepin-immutable-writable -h This tool is used to manage writable directories. you can use it to get status and enable/disable writable directories. Usage: deepin-immutable-writable [flags] deepin-immutable-writable [command] Available Commands: disable Disable writable. enable Enable writable. help Help about any command set Set writable config. status Get writable config status. Flags: -h, --help help for deepin-immutable-writable -j, --json output in json format -r, --rootdir string set root dir (default "/") Use "deepin-immutable-writable [command] --help" for more information about a command.

命令介绍

功能命令说明
开启无忧还原功能sudo deepin-immutable-writable enable -c -a -C开启无忧还原功能,重启生效
关闭无忧还原功能sudo deepin-immutable-writable disable 关闭无忧还原功能,重启生效
设置无忧还原白名单目录sudo deepin-immutable-writable set whitelist /etc设置无忧还原白名单目录,白名单目录中的修改内容在重启后不会丢弃
查询服务状态信息sudo deepin-immutable-writable status 查看无忧还原功能功能开启状态以及白名单列表
关闭系统保护sudo deepin-immutable-writable enable关闭系统保护(重启修改内容不会丢失),/usr目录可写,重启生效
注意:开启或关闭此功能,都需要重启才能生效

示例

开启无忧还原
uos@uos-PC:~$ sudo deepin-immutable-writable enable -c -a -C uos@uos-PC:~$ reboot
设置白名单
sudo deepin-immutable-writable set whitelist /etc,/home

©统信软件技术有限公司。访问者可将本网站提供的内容或服务用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯本网站及相关权利人的合法权利。除此以外,将本网站任何内容或服务进行转载,须备注:该文档出自【faq.uniontech.com】统信软件知识分享平台。否则统信软件将追究相关版权责任。
2026-04-09
0 0