标签: sudo

如何通过sudo用户执行shell脚本

有人可以通过sudo用户提供运行shellcript的示例吗?

我试过这样的.

sudo/usr/local/sbin/deploy | ./tmp/cp1.sh

上述脚本作为普通用户而不是sudo用户执行.

sudo sh

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

如何以root身份运行sudo命令?

我对我的服务器只有 root 访问权限,因此 sudo 命令不起作用。我正在尝试运行一个尝试使用 sudo 命令的命令,但由于我已经拥有 root 访问权限,它失败了。

未找到命令:sudo chmod +x /usr/local/bin/wkhtmltopdf

有没有办法让我运行这个命令?我可以以某种方式移出 root,或者让 root 暂时能够使用 sudo 命令吗?

debian sudo root chmod

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

使用 sudo 时通过对话框窗口提示用户输入密码

我需要使用 sudo 执行命令,并希望显示一个对话框窗口供用户输入其凭据。尝试使用 Applescript 自定义提示简直令人痛苦,并且使用内置的“以管理员权限执行 shell 脚本”不允许自定义窗口,因此用户知道请求来自何处。

当然,有一种方法可以显示一个窗口,让用户输入他们的凭据并将值发送回 sudo 以执行命令?cocoasudo看起来很有前途,但它也在提示窗口中写了“cocoasudo”,我需要用我的应用程序名称替换它。有没有人找到实现这种功能的解决方案?

unix applescript sudo gksudo

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

使用echo修改主机文件

我有两个简单的脚本,当我不希望它尝试在每次登录/网络转换时进行连接时,可以启用/禁用Cisco AnyConnect。一切都很好,但我也想在主机文件中添加一行。我对大多数命令使用“ echo $ password | sudo -S”的原因是因为此脚本是从Mac OS X的脚本菜单运行的。终端窗口未打开以解决sudo密码提示。

#!/bin/bash
#Start_AnyConnect.command

password=`/usr/bin/osascript <<EOT
with timeout of (30 * 60) seconds
    tell application "Finder"
        activate
        set myReply to text returned of (display dialog "Enter your password to authorize AnyConnect startup script" default answer "" with hidden answer)
    end tell
end timeout
EOT`

echo $password | sudo -S echo -e "127.0.0.1\twpad.company.com" >> /etc/hosts
sleep 2

echo $password | sudo -S mv "/Library/LaunchAgents_Disabled/com.cisco.anyconnect.gui.plist" "/Library/LaunchAgents/com.cisco.anyconnect.gui.plist"
echo $password | sudo -S mv "/Library/LaunchDaemons_Disabled/com.cisco.anyconnect.vpnagentd.plist" "/Library/LaunchDaemons/com.cisco.anyconnect.vpnagentd.plist" …
Run Code Online (Sandbox Code Playgroud)

macos bash sudo echo

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

理解 sudo -E

我希望使用当前用户的权限运行 TOMCAT,而不是 root 的环境变量。

vagrant@dev:~/Workspace/eurekastreams$ echo $JAVA_OPTS
-Xmx1024m -XX:MaxPermSize=128m -Dlog.home=/home/vagrant/Workspace/software/
Run Code Online (Sandbox Code Playgroud)

我试过了,vagrant$>sudo -E /etc/init.d/tomcat7 start

但是,我的软件没有登录到 /home/vagrant/Workspace/software 目录,我相信这意味着没有设置 JAVA_OPTS 环境变量。

我是否正确理解 sudo -E 它将使用当前用户的环境变量执行命令?

sudo

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

使用$ sudo bundle exec ...引发'bundle:command not found'错误

我在Ubuntu服务器上安装了rbenv.我可以进入我的应用程序目录并运行$ bundle没有问题,但是我需要运行$ sudo bundle exec ...,这会给我一个错误:

bundle:找不到命令

为什么这样,我该如何解决?

ruby sudo ruby-on-rails bundler rbenv

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

如何使用 Aquamacs 以 root 身份打开文件进行编辑?

我正在使用 Aquamacs 进行大部分文本编辑,并且希望在编辑时有选择地以 root 用户身份打开一些文件。

有没有办法让我用 Aquamacs 以 root 身份打开一些文件(而不是其他文件)?

我知道我可以使用 sudo 命令启动 Aquamacs,但这对我来说有点太冒险了 - 我宁愿只有 root 权限来编辑绝对需要它的文件。

macos emacs sudo aquamacs

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

Sudo没找到.尝试npm安装

我使用的是Windows 8.1笔记本电脑.我一直没有找到sudo.使用以下命令尝试npm install:

F:\Webruin2>sudo npm install -g git
'sudo' is not recognized as an internal or external command,
operable program or batch file.

F:\Webruin2>npm install -g git
git@0.1.5 C:\Users\Dave\AppData\Roaming\npm\node_modules\git
??? mime@1.2.9

F:\Webruin2>git -v
'git' is not recognized as an internal or external command,
operable program or batch file.

F:\Webruin2>npm install -s sudo
sudo@1.0.3 node_modules\sudo
??? inpath@1.0.2
??? pidof@1.0.2
??? read@1.0.5 (mute-stream@0.0.4)

F:\Webruin2>sudo npm install -g git
'sudo' is not recognized as an internal or external command,
operable program or batch …
Run Code Online (Sandbox Code Playgroud)

windows sudo node.js

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

在UNIX shell中使用JAVA拦截Jsch提示输入密码

我正在尝试使用 java 程序使用 jsch 运行 shell 命令。命令需要 sudo 访问权限才能执行。以下是我的代码示例。

   String command1="sudo  restart oraserv";  
    java.util.Properties config = new java.util.Properties(); 
    config.put("StrictHostKeyChecking", "no");
    JSch jsch = new JSch();
    Session session;
    try {
        session = jsch.getSession(user, host, 22);
         session.setPassword(password);
            session.setConfig(config);
            session.connect();
            System.out.println("Connected");                
            Channel channel=session.openChannel("exec");                
            ((ChannelExec) channel).setCommand(command1);               
            channel.setInputStream(null);               
            ((ChannelExec)channel).setErrStream(System.err);                 
            InputStream in=channel.getInputStream();
            ((ChannelExec)channel).setPty(true);
            channel.connect();
            byte[] tmp=new byte[1024];
            while(true){
              while(in.available()>0){
                int i=in.read(tmp, 0, 1024);
                if(i<0)break;
                System.out.print(new String(tmp, 0, i));
              }
              if(channel.isClosed()){
                System.out.println("exit-status: "+channel.getExitStatus());
                break;
              }
              try{Thread.sleep(1000);}catch(Exception ee){}
            }
            channel.disconnect();
            session.disconnect();
            System.out.println("DONE");
    } catch (JSchException | IOException e) …
Run Code Online (Sandbox Code Playgroud)

java unix shell sudo su

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

使用sudo时如何使用tee

UBuntu 16.04 Bash 4.4

在4-bash-update.sh第158行:

cd "$drive00" && sudo -H -u myuser bash -c "timeout 2s ./binaryfile -gentoken" > "${save_log_dir}"/update-"${now}".log;
                                                                              ^-- SC2024: sudo doesn't affect redirects. Use ..| sudo tee file
Run Code Online (Sandbox Code Playgroud)

我尝试了几次,每次我的文件被吃掉.

bash sudo

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

标签 统计

sudo ×10

bash ×2

macos ×2

unix ×2

applescript ×1

aquamacs ×1

bundler ×1

chmod ×1

debian ×1

echo ×1

emacs ×1

gksudo ×1

java ×1

node.js ×1

rbenv ×1

root ×1

ruby ×1

ruby-on-rails ×1

sh ×1

shell ×1

su ×1

windows ×1