如何更改 virsh edit 的默认文本编辑器?

如何更改 virsh edit 的默认文本编辑器?

我最近在 Arch Linux 上安装了 virt-manager,与在 Ubuntu 下不同,第一次启动 virsh-edit 时没有提示我选择文本编辑器。相反,XML 文件是在 vi(或 vim,不确定)中打开的。

来自 RedHat 档案中的这个线程,我想如果我只是添加~/.bashrc

export EDITOR=/usr/bin/nano

这样就可以解决问题。但是设置 EDITOR 环境变量不起作用。

此外,启动它EDITOR=geany sudo virsh edit myWINVM会得到相同的结果,就像尝试使用不同的编辑器一样:EDITOR=geany sudo virsh edit myWINVM 如此处所述

我看到该变量实际上已被设置:

[~]$ printenv
SHELL=/bin/bash
SESSION_MANAGER=local/virtland:@/tmp/.ICE-unix/5451,unix/virtland:/tmp/.ICE-unix/5451
WINDOWID=27262979
COLORTERM=truecolor
XDG_CONFIG_DIRS=/etc/xdg
XDG_MENU_PREFIX=xfce-
SSH_AUTH_SOCK=/tmp/ssh-j36TZui4fOt5/agent.5457
DESKTOP_SESSION=Xfce Session
SSH_AGENT_PID=5458
EDITOR=/usr/bin/nano
...

但是virsh edit MYVM仍然在 vi 中打开 XML。

我需要在 Arch 中做一些不同的事情吗? virsh 最近的更新中更改此设置的方法是否已更改?

答案1

删除该文件~/.selected_editor,并virsh会提示您使用编辑器。可能就是 中的那个/root,因为需要管理员权限才能使用virsh

答案2

我不得不将编辑器添加到 sudoers通过将其放在Defaults editor=/bin/nano/etc/sudoers 的末尾,然后我可以使用sudo EDITOR=nano virsh edit myWINVM.

更新:后来,我通过添加到 使其export EDITOR=nano工作/etc/environment

答案3

尝试

sudo -E virsh 编辑我的WINVM

当以 root 身份运行时,该-E标志将保留当前用户的环境变量,因此只要您EDITOR在用户环境中导出,就会拾取它。

答案4

我跑了/usr/bin/select-editor,这让我可以选择编辑器。解决了我的问题。

相关内容