标签: sudo

如何在Emacs中使用SSH和SUDO以及TRAMP

可能重复:
通过SSH打开文件,使用Emacs打开Sudo

我想在Emacs上使用TRAMP通过ssh连接的远程机器上使用sudo(比如/ etc/hosts)打开一个文件.

我尝试了几种选择,但没有一种可行.任何人都可以告诉我如何去做吗?

谢谢

emacs ssh sudo tramp

24
推荐指数
2
解决办法
8760
查看次数

在python脚本中更改为sudo用户

我有个问题.我正在编写一个软件,它需要执行一个操作,要求用户处于sudo模式.运行'sudo python filename.py'不是一个选项,这引出了我的问题.有没有办法在python脚本的一半更改为sudo,安全性不是问题,因为用户将通过以下方式知道程序应该运行的sudo密码来说明问题

  1. 程序作为普通用户运行
  2. ......执行操作
  3. 用户输入sudo密码
  4. 用户改为sudo
  5. 运行需要sudo权限的子程序
  6. 在触发偶数(子程序结束)用户再次成为普通用户
  7. ......执行操作

我的问题在于第3步,你可以建议的任何指针或框架都会有很大的帮助.

干杯

克里斯

python security sudo

24
推荐指数
4
解决办法
4万
查看次数

如何在 Windows 上的 powershell 上执行 sudo

每当我需要运行 powershell 脚本时,它都会抱怨安全性,如果我添加,powershell.exe -nologo -executionpolicy bypass -File .\install.ps1我仍然会得到权限被拒绝的未授权访问异常。我只想运行此安装脚本,在 Windows 上的 powershell 上键入的 sudo 等效项是什么?

windows powershell sudo

24
推荐指数
5
解决办法
4万
查看次数

npm命令 - sudo与否?

目前我总是跑,sudo npm install <package-name>但据我所知,这是不正确的.

我希望有机会不以root用户身份使用它.我遵循了一些建议并使用了这个命令,sudo chown -R <username> ~/.npm但它不起作用......

例如,它是我的输出 npm install jade

...
npm http 200 https://registry.npmjs.org/amdefine
npm http GET https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz
npm http 200 https://registry.npmjs.org/amdefine/-/amdefine-0.0.5.tgz
npm ERR! Error: EACCES, symlink '../jade/bin/jade'
npm ERR!  { [Error: EACCES, symlink '../jade/bin/jade'] errno: 3, code: 'EACCES', path: '../jade/bin/jade' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.
Run Code Online (Sandbox Code Playgroud)

如您所见,下载已成功启动,但随后失败了..

我想知道在npm上禁止sudo的最佳方法是什么?

macos sudo npm

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

在Cygwin上找不到sudo命令

我目前正在尝试在Windows操作系统上安装和更新一些软件包.唯一的问题是我使用Cygwin来通过终端键入命令(我知道,我可以在Cygwin上键入Linux类型的命令,如cd,ls等 - 我可能错了).但是,当我尝试安装包如:

sudo apt-get install paparazzi-dev 
Run Code Online (Sandbox Code Playgroud)

我得到了答复:

-sh: sudo: command not found.
Run Code Online (Sandbox Code Playgroud)

有谁知道如何解决这个问题?

windows terminal sudo cygwin

22
推荐指数
2
解决办法
6万
查看次数

如何以root cronjob的身份运行不同用户的命令?

我似乎陷入了NFS限制和Cron限制之间.

所以我有root cron(在RHEL5上)运行一个shell脚本,除其他外,需要通过NFS挂载rsync一些文件.NFS挂载上的文件由模式700的apache用户拥有,因此只有apache用户可以运行rsync命令 - 以root身份运行会产生权限错误(NFS很少见,显然,root用户是不是全能的?)

当我只想手动运行rsync时,我可以使用"sudo -u apache rsync ..."但是在cron中没有工作 - 它说"sudo:对不起,你必须有一个tty来运行sudo".

我不想将整个脚本作为apache(即来自apache的crontab)运行,因为脚本的其他部分确实需要root - 它只是一个需要作为apache运行的命令.而且我真的不想改变文件的模式,因为这将涉及对其他应用程序的重大更改.

有必要从cron完成"sudo -u apache"的方法吗?

谢谢!抢

cron sudo nfs root

21
推荐指数
2
解决办法
3万
查看次数

Ruby on Rails Beta 3在Snow Leopard上安装 - 找不到文件

我尝试使用以下命令在我的系统上安装新的beta版:

sudo gem install rails --pre
Run Code Online (Sandbox Code Playgroud)

但无论我怎么做,我仍然得到这个该死的错误:

已成功安装rails-3.0.0.beta3
1 gem 安装rails-3.0.0.beta3的
ri文档...
找不到文件:lib

因为我对红宝石很新,我真的不知道该怎么办.

我该如何完成安装呢?这已经安装好了吗?为什么在这里中止?

macos sudo install ruby-on-rails osx-snow-leopard

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

sudo模式和内核模式之间有区别吗?

在类UNIX系统中,我们有一个用户模式和一个内核模式.有些指令在用户模式下无法访问.但是,当我们这样做时sudo,我们可以访问操作系统的许多关键部分,执行关键操作.

我的问题是:当程序在sudo模式下执行时,整个程序是否以内核模式运行?或者,sudo模式只是一个管理用户,其权力仅仅是内核可以执行的操作的子集?

unix linux sudo operating-system linux-kernel

21
推荐指数
2
解决办法
5057
查看次数

访问没有``sudo``的GPIO(树莓派)

当然,这个问题可能并不特定于树莓派.另外,我对Linux比较陌生.

我想写一个小库(在node.js中,如果这很重要)来使用sysfs访问raspberry pi的GPIO.但是,访问sysfs需要sudo访问权限,这显然是有原因的.

Quick2Wire似乎有一个解决方案,但我想更好地理解它,而不是盲目地使用它.他们当然使用了C语言,但从我的理解来看,代码并不复杂,而且可能只用bash就可以完成,即使不那么优雅.但是,最重要的是,我不确定它为什么会起作用.

任何帮助都会很棒.

编辑:感谢您的评论.很明显,我需要重新解释这个问题.这里说:一旦安装(作为root),应用程序不再需要使用根权限吗?在这种情况下,如何将某人添加到群组中?/sys/devices/virtual/gpio不是gpio sysfs可用的位置,那有什么诀窍呢?我真的是一个n00b,所以这些问题可能是n00b-ish,所以请耐心等待.

linux sudo gpio raspberry-pi

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

在sudo su - myuser之后,我可以使用'systemctl --user'来控制用户systemd吗?

我有一项服务,我想从系统启动开始.我已经为它构建了一个ap @ .service定义作为模板,因为可能有很多实例.

在root systemd中定义,这很好用,并启动和停止系统的服务.systemctl enable ap@inst1正如预期的那样安装服务实例.Root也可以毫无问题地启动和停止服务.该服务在其自己的帐户(myuser)中运行,而不是root,由ap @ .service模板中的User = myuser控制.

但我希望用户'myuser'能够在不影响系统安全的情况下启动和停止自己的服务.

我切换到使用用户systemd,并启用了延迟loginctl enable-linger myuser.然后,我启用~myuser/.config/systemd/user目录中定义的服务.现在,该服务按照设计与系统一起干净地启动和停止.如果我以"myuser"身份登录终端systemctl --user start ap@inst1,并且systemctl --user stop ap@inst1两者都能正常运行.

但是,如果我以其他用户(user2)身份登录并sudo su - myuser在终端中执行,则systemctl --user命令现在失败,并显示错误消息"无法获得D-Bus连接:没有此类文件或目录".

如何systemctl --usersudo su - myuser命令切换用户后启用?

linux sudo systemd

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