Update2:
注册表的更改实际上已保存。但对于不会永久存储的条目(例如,在 run 时会重置wineboot
),在regedit
(with firejail
) 关闭后,这些条目将重置为默认值。
示例:
如果我添加一个String value
名为 的新条目test
。更改已保存。
如果我修改HKEY_LOCAL_MACHINE>Hardware>Description>System>CentralProcessor>0>VendorIdentifier
fromAuthenticAMD
到None
,它不适用于firejail
.
如果没有firejail
,更改将被保存,但如果我运行wineboot
,它将重置为默认值。
更新:
看来更改实际上写入了磁盘,在用regedit
(with filejail
)修改注册表时,我打开另一个regedit
,看到数据被修改了。但是, close 后regedit
,注册表将被重置。
我使用的是firejail
0.9.56 版本(Mageia 的默认包)。我wine
运行没有任何问题firejail
,除非我想修改注册表。如果没有firejail
,没有问题,但是当我运行时wine
所有firejail
修改都会恢复为默认值。
这是我的firejail
葡萄酒简介:
# Firejail profile for wine
# Description: A compatibility layer for running Windows programs
# This file is overwritten after every install/update
# Persistent local customizations
include /etc/firejail/wine.local
# Persistent global definitions
include /etc/firejail/globals.local
noblacklist ${HOME}/.Steam
noblacklist ${HOME}/.local/share/Steam
noblacklist ${HOME}/.local/share/steam
noblacklist ${HOME}/.steam
noblacklist ${HOME}/.wine
# with >=llvm-4 mesa drivers need llvm stuff
noblacklist /usr/lib/llvm*
include /etc/firejail/disable-common.inc
include /etc/firejail/disable-devel.inc
include /etc/firejail/disable-interpreters.inc
include /etc/firejail/disable-programs.inc
caps.drop all
netfilter
nodvd
nogroups
nonewprivs
noroot
#############
blacklist /media
blacklist /mnt
noblacklist ${HOME}/.wine
whitelist ${HOME}/.wine
noblacklist /tmp/.wine-*
whitelist /tmp/.wine-*
include /etc/firejail/whitelist-common.inc
答案1
我找到了一个解决方法,它并没有真正解决运行的问题wine
,firejail
但它解决了我需要注册表更改对同一沙箱内运行的其他应用程序生效的问题。
我的解决方案是:
- 安装
Autohotkey
。 制作一个脚本,例如:
^k:: Run, regedit ^j:: Run, other_application.exe