vs的程序在linux下如何运行,如何在从VS 2017到Linux的应用程序调试时以sudo身份运行(How to run as sudo when debugging app from VS 20...

如何在从VS 2017到Linux的应用程序调试时以sudo身份运行(How to run as sudo when debugging app from VS 2017 to Linux)

我在Windows PC上使用VS2017并尝试在Linux机器上进行调试。 我的应用程序需要以更高的权限运行,那么如何告诉调试器使用我的应用程序运行sudo ?

I'm using VS2017 on my Windows PC and trying to debug on a Linux machine. My app needs to run with higher permissions so how do I tell the debugger to run sudo with my application?

原文:https://stackoverflow.com/questions/47465573

更新时间:2020-08-19 20:08

最满意答案

我找到了一种解决方法。

对于我的情况,Sudo指令是打开TTY端口。 所以我使用“chmod o + rw / dev / ttyUSB0”来获得VS2017的访问权限。

VS2017成功打开tty端口,无需sudo。

您可以通过许可找到您需要的一个库或工具,然后通过“chmod”指令进行更改。

谢谢。

I found a workaround method.

Sudo instruction for my situation is for open the TTY port. so I use the "chmod o+rw /dev/ttyUSB0" to get the permission of access in VS2017.

VS2017 open tty port successfully without sudo.

You can find which one lib or tools you have to with permission, and then change it through the "chmod" instruction.

Thanks.

2017-12-22

相关问答

尝试将mocha调用添加到package.json脚本中,如下所示: "scripts": {

"start": // do something

"test": "mocha"

}

然后在travis.yml上设置它: script: "sudo $(which npm) test" 更多帮助: https : //github.com/travis-ci/travis-ci/issues/1305 Try adding the mocha call to your package.js

...

什么是最安全地运行此脚本的最有效的方法? 如果您真的关心安全性,则需要Web客户端提供密码并使用ssh密钥。 然后在ssh-agent下运行该脚本,并为敏感部分执行ssh root@localhost command... 您可能只想为此创建ssh密钥对,因为将一个正常的SSH密码输入到Web窗体中并不是我会做的(谁信任您的Web窗体,无论如何?)。 如果你不需要太多的安全性,并且真的确实相信你的web表单可以正确地认证用户, 而没有任何错误 ,你可以决定信任web服务器来运行你需要的命令。 (我

...

如果你看看sudo二进制文件,你会发现它在可执行文件上设置了setuid权限位。 这表明内核应该始终使用可执行文件的所有者的uid来执行,在sudo是root的情况下。 一旦sudo以root用户身份运行,它可以在fork / exec之前执行必要的身份验证和setuid-syscall。 ---s--x--x. 2 root root 219272 Jul 17 2012 /usr/bin/sudo

如果你注意到's'和主人,你会明白我的意思。 If you take a look at t

...

首先将chmod +x设置为您的脚本 尝试: #!/bin/bash

echo "hello"

su - -c /path/to/script.sh

echo "good bye"

更新: 你应该找到一种方法来强制bash使用伪tty 强制伪tty分配。 这可以用于在远程机器上执行任意基于屏幕的程序,这可以是非常有用的,例如在实现菜单服务时。 多个-t选项强制tty分配,即使ssh没有本地tty。 如果用户不是sudoers,请执行以下步骤: 这是你需要在/etc/sud

...

如果正在运行的命令暂停,sudo将自行挂起。 例如,这允许您运行sudo -s来启动shell,然后在该shell中键入suspend以返回到顶级shell。 如果您有sudo的源代码,可以查看suspend_parent函数以了解如何完成此操作。 当sudo(或任何进程)被挂起时,恢复它的唯一方法是向它发送SIGCONT信号。 将SIGCONT发送到自助进程不会这样做。 >ps aux | grep [s]elf

root 7619 0.0 0.0 215476 4136 pts

...

从Java调用osascriptWrapper.sh脚本: Runtime.getRuntime().exec("/path/to/osascriptWrapper.sh myjar.jar");

将osascriptWrapper.sh定义为: #!/bin/bash

osascript -e "do shell script \"/path2/to2/runJar.sh $*\" with administrator privileges"

和runJar.sh: #!/bin/bash

...

我想,你的脚本test.sh在第一行没有像这样的shebang: #!/bin/bash

没有这一行,几个环境设置会影响脚本执行的方式。 在你的情况下,这意味着另一个shell如ash , ksh , dash或任何将被用来执行脚本的原因是由于root用户的设置。 I guess, that your script test.sh does not have a shebang in the first line like this: #!/bin/bash

Without this line

...

我找到了一种解决方法。 对于我的情况,Sudo指令是打开TTY端口。 所以我使用“chmod o + rw / dev / ttyUSB0”来获得VS2017的访问权限。 VS2017成功打开tty端口,无需sudo。 您可以通过许可找到您需要的一个库或工具,然后通过“chmod”指令进行更改。 谢谢。 在VS2017跨平台中打开TTY OK I found a workaround method. Sudo instruction for my situation is for open the

...

我建议采用不同的方法:make /sys/class/backlight/rpi-backlight/bl_power可写入运行Python脚本的用户(很可能是pi )。 暂时可以这样做 sudo chmod a+w /sys/class/backlight/rpi_backlight/bl_power

(这授予所有用户写权限)。 但是这也将在下次重启时重置。 解决方案是编写udev规则 。 他们住在/etc/udev/rules.d和我的系统上, 99-com.rules是一个很好的起点。 这

...

Bash支持-c标志,允许您指定作为命令行参数运行的命令 - 基本上是内联Bash脚本。 这意味着你可以轻松地将多个命令组合成一个bash调用,然后很容易被sudo -ed: sudo -i -u john.smith bash -c 'whoami ; cd /tmp/ ; ls -ltr'

要么 sudo -i -u john.smith \

bash -c ' whoami

cd /tmp/

ls -ltr

'

(其

...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值