root无法在vim 8.2中使用系统剪贴板

问题描述 投票:0回答:1

我安装了Vim 8.2版(Arch Linux上的gvim软件包)。我同时具有+ clipboard和+ xterm_clipboard功能。在我的〜/ .vimrc中,我有set clipboard=unnamedplus并在/ root中创建了指向此文件的符号链接,因此我只需要编辑一个配置。问题是,拉动和粘贴仅对我的普通用户帐户有效,而对root用户不起作用:如果我以root用户身份运行vim,我什至无法使用“ + y”命令复制到系统剪贴板:PRIMARYCLIPBOARD 寄存器保持不变。

我的终端仿真器是Konsole 20.04.0。关于造成这种奇怪行为的原因有什么看法吗?可能值得注意的是,我使用su -l来获取root shell。

vim clipboard root
1个回答
0
投票

为了访问X11剪贴板,需要将DISPLAY变量设置为正确的值,并且可以访问magic cookie(即身份验证令牌)。

通常,如果您使用sudosu以root身份运行,则出于安全原因清除了环境变量,因此您可能缺少DISPLAY环境变量。您可以在更改外壳程序(例如DISPLAY)时显式设置export DISPLAY=:0.0环境变量,或使用某些脚本在文件中转储某些环境变量并将其重新加载,或者可以跳过-lsu标志]或将-E标志用于sudo

请注意,后两个选项的安全性较差,但是一般来说,让root用户与非特权用户访问同一X11会话不是一个好主意,因此,您首先要做的不是对安全性有好处。如果您是系统上的唯一用户,则可以,取决于您的舒适程度和威胁模型。

© www.soinside.com 2019 - 2024. All rights reserved.