这是Q& A根据stackoverflow规则/鼓励分享关于标题的黑客
https://stackoverflow.blog/2011/07/01/its-ok-to-ask-and-answer-your-own-questions/
https://stackoverflow.com/help/self-answer
我可以回答我自己的问题吗?
是的! Stack Exchange一直明确鼓励用户回答他们自己的问题。如果你有一个问题,你已经知道答案,并且你想公开记录这些知识,以便其他人(包括你自己)可以在以后找到它,那么在Stack Exchange网站上提出并回答你自己的问题是完全可以的。
原始回购是
答案 0 :(得分:3)
本教程将指导您在计算机上使用linux Wayland容器设置systemd-nspawn桌面环境。这与VMware Workstation或VirtualBox类似,但Linux仅具有最小的开销性能。
✓硬件抽象的硬件独立容器OS,systemd-nspawn容器技术的极其高效,最小的性能开销方法
✓100%可移植的系统启用Linux主机,轻松备份和恢复
✓直接渲染工作,如3D桌面效果
✓视频和声音作品
✓网络开箱即用
✓不太可能搞乱hostOS和主机操作系统和硬件的不频繁重启操作,而是享受即时虚拟启动,关机和重启容器OS。
启动kwin_wayland
窗口,
它嵌套在您当前的桌面环境中。
使用systemd-nspawn
从containerOS控制台:
(a)向目标kwin_wayland
窗口启动XFCE或LXQt等桌面环境。
(b)只需准备好您最喜爱的启动器应用程序,例如synapse或xfce4-panel,即可进行最小化设置。
hostOS可以是任何带有systemd的linuxOS,桌面环境可以是Wayland或者传统的X11。
Alghough,Wayland hostOS显然更可取,情况仍然不成熟。截至2017年3月,只有Fedora 25体育基于Wayland的GNOME会话作为基于X11的默认会议,但其他发行版却没有。最新版本的KDE-Plasma在X11 / Xorg中稳定,但与Wayland不稳定。可能,如果你在主机环境中使用GNOME,请选择Wayland,但如果使用Plasma或其他DE,请保守使用X11 / Xorg以保证稳定性。
此方法适用于这两种情况,个人而言,我使用Arch Linux和KDE-Plasma(X11/Xorg)。
systemd-nspawn
和kwin_wayland
像Arch这样的一些发行版已经有systemd-nspawn
,但其他像Ubuntu这样的发行版却没有。{/ p>
systemd-nspawn
Binary package “systemd-container” in ubuntu xenial
KWin中,韦兰Binary package “kwin-wayland” in ubuntu xenial
Arch可能在kwin_wayland
包中有xorg-server-xwayland
。
KWin
被称为功能最齐全,最稳定的窗口管理器之一。
这是由wayland
管理的直接呈现启用KWin
窗口空间,并嵌套在您当前的桌面环境中。
Starting a nested KWin @KWin / Wayland - KDE社区维基
从5.3开始,可以在X11或Wayland下启动嵌套的KWin实例:
export $(dbus-launch); \
kwin_wayland --xwayland &;
for fish
shell
export (dbus-launch);
sudo systemd-nspawn \
-bD /YOUR_MACHINE_ROOT_DIRECTORY \
--volatile=no \
--bind-ro=/home/YOUR_USERNAME/.Xauthority \
--bind=/run/user/1000 \
--bind=/tmp/.X11-unix \
--bind=/dev/shm \
--bind=/dev/dri \
--bind=/run/dbus/system_bus_socket \
--bind=/YOUR_DATA_DIRECTORY
将hostOS的/YOUR_DATA_DIRECTORY
绑定到containerOS,以便您可以在两者之间共享数据目录,同时,您的containerOS可以保持尽可能小和干净,并且便于移植和备份/恢复
登录containerOS控制台。
通常,您从最小/服务器操作系统映像构建容器发行版操作系统。请记住,您不需要安装X11 / Xorg显示服务器,也不需要安装containerOS 的路径,因为kwin_wayland
窗口起作用。
kwin_wayland
窗口。
请记住,KWin已经在运行,它是一个功能齐全且功能强大的WindowManager。您可以通过快捷键使用KWin启动和切换任务,或者为synapse
或xfce4-panel
准备您最喜爱的启动器应用程序,以进行最小化设置。
但是,如果我们需要更加用户友好的桌面环境,只需安装并启动可与XFCE
一起运行的LXQt
或KWin
。
从containerOS控制台:
export XAUTHORITY=/home/YOUR_USERNAME/.Xauthority; \
export XDG_RUNTIME_DIR=/run/user/1000; \
export CLUTTER_BACKEND=x11; \
export QT_X11_NO_MITSHM=1; \
xfce4-session --display :1;
可能你想要删除containerOS的框架,这是关于Plasma(HostOS的DE)的方法。
确认XFCE环境识别出在XWAYLAND显示屏上运行。
XWayland实现了一个兼容层,可以在Wayland上无缝运行旧版X11应用程序。
到目前为止,更像是异常,如果您使用某个标志安装GUI libraries of wayland,您可以看到GUI应用程序本地运行在Wayland上。
左边是kate
窗口,带有Xorg / X11兼容模式
右边是具有Wayland原生模式的窗口。
正如您所看到的,本机Wayland应用程序不反映当前窗口主题,XFCE面板不显示应用程序任务,只要您使用PC的普通应用程序,就无法区分性能。< / p>
因此,可能没有太多理由去追求Wayland原生模式应用。 但3D游戏的情况可能会有所不同,而在Raspberry Pi这样的小型设备上则会有很大不同。
Althogh本教程侧重于wayland嵌套窗口,Xephyr(作为X应用程序运行的嵌套X服务器)已经存在了很长时间。
与kwin_wayland
不同,Xepher
未针对直接呈现进行优化且KWin窗口管理器未捆绑,因此如果您在Xepher
之上运行KWin或其他直接渲染作曲家,那么事情就是因此,建议不要慢,效率低,但这里的方法如下:
Xephyr -ac -screen 1200x700 -resizeable -reset :1 &;
您不能在HostOS和ContainerOS之间复制和粘贴 您可以考虑使用GoogleKeep在HostOS和ContainerOS之间共享内容,当然,您通过systemd-nspawn bind分享共享目录。
你可以&#34;备份/恢复&#34;或&#34;复制&#34;或&#34;移动&#34; continerOS到任何地方,无论
/etc/fstab
等)或任何其他典型的集成故障!
请注意主机内核版本。
您的机器目录./machines
您的机器备份目录./machines-bak
您的计算机图像目录arch1
cd ~/machines/
sudo tar -cpf ~/machines-bak/arch1.tar arch1 --totals
cd ~/machines/
sudo tar -xpf ~/machines-bak/arch1.tar --totals
上面的tar
命令可能不是最智能的方法,但是,它是一种经过验证的强大方法,无需任何额外的工具安装。通常,简单是最好的。
但是,您可以选择各种备份工具以提高效率。
Synchronization and backup programs @ArchWIKI
Git base bup看起来不错。
任何与硬件有关的因素,例如:
/etc/fstab
NetworkManager.service
systemd