小编Mar*_*iae的帖子

网络命名空间、ssh、X11

ssh -Y ...从一台机器(=客户端)连接(通过)到另一台机器(=服务器,实际上在我的局域网中,但它无关紧要);然后我在服务器上启动一个新的网络命名空间(简称 NNS),我启动一个 xterm(来自默认命名空间),它完美地显示在我的客户端上,最后,从 xterm 中,我加入了非默认 NNS ,

ip netns exec NNSName bash
Run Code Online (Sandbox Code Playgroud)

我可以检查我是否在新的 NNS 中,

ip netns identify $$
Run Code Online (Sandbox Code Playgroud)

我可以在新的 NNS 中运行复杂的程序,例如 OpenVPN。

问题就在这里:我想xeyes从新的 NNS 中启动一个图形应用程序(即使只是暂时),但我不能,我总是被告知:Unable to open DISPLAY=...

诚然,我只尝试了显而易见的:

DISPLAY=:0.0
DISPLAY=:10.0
DISPLAY=localhost:10.0
DISPLAY=localhost:20.0
DISPLAY=ClientName:10.0
DISPLAY=ClientIPAddress:10.0
Run Code Online (Sandbox Code Playgroud)

始终xhost +在客户端上,用于纯调试目的。

我没有问题:

  1. 通过ssh -Y ....从客户端连接到服务器,xeyes在服务器上运行并在客户端上显示它;

  2. 在服务器上启动一个新的 NNS,并在 NNS 中启动要显示在服务器上的图形应用程序(,在这种情况下忘记客户端)。

当我将这两个东西(ssh 和命名空间)放在一起时,我无法在服务器的新 NNS 中运行的客户端应用程序上显示。

看起来标准的 TCP 端口 6010 属于默认 NNS 的 ssh 会话,而新的 NNS 应该有自己的。我当然可以在新的 NNS 中启动一个 ssh 服务器并直接从客户端连接到服务器的新 …

ssh xorg x11 network-namespaces

8
推荐指数
1
解决办法
2372
查看次数

使用 cat 克隆磁盘时出错

我希望克隆一个大磁盘(一个 500GB 的 SSD,物有所值),并且我倾向于使用cat,正如 Gilles在这里建议的那样。但是让我停下来的是我真的不知道cat读取错误时会发生什么。我知道dd在这些情况下的行为方式,命令

dd if=/dev/sda of=/dev/sdb bs=64K conv=noerror,sync status=progress
Run Code Online (Sandbox Code Playgroud)

不会因读取错误而停止,并用零(sync选项)填充读取错误,以便数据保持同步。不幸的是,它是通过要写入的块末尾填充零来实现的,因此早期 512 字节读取中的单个错误会弄乱整个 64K 数据(对于更大、更快的块大小更糟)。

所以我想知道:我可以做得更好/不同cat吗?或者我应该继续使用Clonezilla吗?

dd cloning cat disk

5
推荐指数
1
解决办法
999
查看次数

标签 统计

cat ×1

cloning ×1

dd ×1

disk ×1

network-namespaces ×1

ssh ×1

x11 ×1

xorg ×1