标签: sudoedit

你如何在`~/.profile` 中使用 sudo 运行命令?

运行需要sudoin的命令是一种不好的做法~/.profile吗?

如果真的想这样做,如何在重新启动 Ubuntu 时运行命令?

  • 使命令与运行sudo,并在我的用户帐户不需要密码,通过编辑/etc/sudoers

  • 在命令中提供我的密码sudoin ~/.profile, by echo <passwd> | sudo -S <mycommand>?

我还没有验证第一种方法是否有效,因为我还在学习如何去做。

第二种方式似乎引起了严重的安全问题,而且可能是我最不想走的方式。

谢谢。

bash sudo configuration profile sudoedit

3
推荐指数
1
解决办法
5651
查看次数

使用 Visual Studio Code 作为编辑器,例如使用 sudoedit

我使用的是 Kubuntu 20.04。

当我运行时sudoedit /etc/fstab,VS Code 将打开一个空白文档,并且 CLI 立即返回(请参阅下面的详细信息)。

如果我运行export SUDO_EDITOR=nano,文档将在 nano 编辑器中打开,其中内容符合/etc/fstab预期。

如果我运行export SUDO_EDITOR=/snap/bin/code,它会再次打开带有空白文档的 VS Code。

我究竟做错了什么?或者这是一个错误?


kevin@kevcoder00 ~ $ echo $VISUAL

kevin@kevcoder00 ~ $ echo $SUDO_EDITOR

kevin@kevcoder00 ~ $ echo $EDITOR
/snap/bin/code
kevin@kevcoder00 ~ $ sudoedit /etc/fstab 
[sudo] password for kevin: 
sudoedit: /etc/fstab unchanged
Run Code Online (Sandbox Code Playgroud)

editors sudoedit visual-studio-code

3
推荐指数
1
解决办法
2379
查看次数

添加一个简单的逗号后 sudoers 语法错误

这是我原来的 /etc/sudoers.d/www 文件:

Cmnd_Alias WWWCMDS = /home/xxx/shop/update.sh
www-data ALL=(ALL) NOPASSWD: WWWCMDS
Run Code Online (Sandbox Code Playgroud)

我只是想添加两个额外的命令,所以我 RTFM 并看到你只需要用逗号分隔它们。

Cmnd_Alias WWWCMDS = /home/xxx/shop/update.sh,geoipupdate,service memcached restart
www-data ALL=(ALL) NOPASSWD: WWWCMDS
Run Code Online (Sandbox Code Playgroud)

但它触发了语法错误。我究竟做错了什么 ?

sudo sudoedit

2
推荐指数
1
解决办法
1373
查看次数

是否有适用于 vimdiff 的 sudoedit 等效项?

我试图养成使用sudoedit, 而不是sudo vim. 这有几个优点,其中之一是它使用我用户的~/.vimrc.

是否有等价物,而不是使用sudo vimdiff

我试过的

  • 可以不vimdiff直接使用,而是可以垂直拆分打开两个文件,然后:diffthis在两者中运行。但是,如果我用 . 打开一个文件sudoedit,那么我必须直接打开第二个文件,而不是sudoedit/var/tmp.
  • 也可以使用vim -O file1 file2. 然而,不出所料,sudoedit -O失败了。

vim sudo vimrc sudoedit vimdiff

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

如何在我的 sudoers 文件中添加行?

我已阅读此答案,但不知道如何将以下行添加到我的 sudoers 文件中。

matthew ALL=(ALL) NOPASSWD: /usr/sbin/service fancontrol start
Run Code Online (Sandbox Code Playgroud)

我运行了“ sudo visudo ”,然后弹出了一个“ /etc/sudoers.tmp ”窗口。“ /etc/sudoers.tmp ”是应该添加该行的正确文件吗?如果是这样,我应该在哪一行下添加这些行?我怎样才能保存它?我在那里找不到“保存”选项。

我的目标是在没有密码的情况下运行“ sudo service fancontrol start ”。

   GNU nano 2.9.3                   /etc/sudoers.tmp                             
#
# This file MUST be edited with the 'visudo' command as root.
Run Code Online (Sandbox Code Playgroud)

linux-mint sudoedit

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

通过 ansible 上传 sudoers.d 文件会出现语法错误,但在 vi 中打开和保存会修复它

好吧,我知道问题标题很糟糕,但情况本身也是如此。

我想要做的是:

  1. 在本地创建一个带有 sudoers 配置的文件
  2. 使用 Ansible 使用模板模块加载该文件
  3. 使用模板模块的验证功能来确保配置有效

到现在为止还挺好。现在到了奇怪的部分:该validate: 'visudo -cf %s'文件的验证 ( ) 会引发错误。当我注释掉验证行时,文件会上传,但手动验证 ( visudo -cf /etc/sudoers.d/foo_bar) 也会失败。使用 vi 打开文件,在:wq不进行任何更改的情况下保存 ( ) 并再次运行验证成功。

我目前的工作论文:WTF?!

但是已经很晚了,我很累。如果有人有建议,请告诉我。我将在获得新信息后立即更新此问题,并在我将解决方案归零后将其清理干净。

linux sudo sudoedit ansible template

0
推荐指数
1
解决办法
212
查看次数