Articles of sudo

我怎样才能给tomcat sudo权利

可能重复: 在here-document中通过SSH运行命令时不存在TTY 我安装了tomcat7。 这是nologin用户tomcat7。 这就是说,我需要给tomcat7 sudo权限来运行其他应用程序。 我编辑sudoer。 但是requiretty被设置,sudo只会在用户login到真正的tty时运行。 不过,tomcat是nologin … 我该怎么办?

通过sudo监控Nagios的gluster FS安装时的问题

我一直在用下面的脚本监视gluster FS mount,但是通过NRPE执行脚本时遇到了问题。 这是我在远程盒子上的脚本。 /usr/lib64/nagios/plugins/check_gluster.pl #!/usr/bin/perl @output=`/usr/sbin/gluster volume heal static info split-brain | egrep "Number of entries"`; if($output[0] !~ m/0/){ print "CRITICAL: Possible m4_2b split brain issues – $output[0]"; }elsif($output[0] !~ m/0/) { print "CRITICAL: Possible m4_2c split brain issues"; }else { print "OK"; } 在我的NRPE中,我有以下configuration command[check_glusterfs]=/usr/bin/sudo /usr/lib64/nagios/plugins/check_gluster.pl 当我在Nagios上运行check_nrpe时,我有以下几点: # /usr/lib/nagios/plugins/check_nrpe -t 60 -H myhost.domain.com […]

Fedora,ssh和sudo

我必须通过ssh在多个Fedora机器上远程运行脚本。 由于脚本需要root权限 ,我可以这样做: $ ssh me@remost_host "sudo touch test_sudo" #just a simple example sudo: no tty present and no askpass program specified 远程计算机的configuration方式使得sudo的密码 永远不会被要求。 对于上述错误,最常见的解决方法是在ssh中用-t选项分配一个伪terminal。 $ ssh -t me@remost_host "sudo touch test_sudo" sudo: no tty present and no askpass program specified 我们试着用-t -t强制这个分配: $ ssh -t -t me@remost_host "sudo touch test_sudo" sudo: no tty present […]

缓慢的sudo和ssmtp(主机文件错误?)

我正在运行Ubuntu Server 12.04.5 LTS,当我键入sudo su ,需要30多秒才能打开shell。 在互联网上search,这个问题似乎与文件/etc/hosts和/etc/hostname 。 这对我来说并不是一个真正的问题,但是这影响了其他程序(尤其是用于从PHP发送邮件的sSMTP),而Apache则给出了经典的“ 无法可靠地确定服务器的完全合格的域名 ”。 所以我检查了主机文件,并纠正它,现在apache错误消失,但其他问题仍然存在。 sudo su现在需要大约10-15秒。 uname -n , hostname和hostname -f是: server.example.com hostname -a输出hostname -a : server /etc/hosts : 127.0.0.1 localhost.localdomain localhost 127.0.1.1 server.example.com server ::1 ip6-localhost ip6-loopback fe00::0 ip6-localnet ff00::0 ip6-mcastprefix ff02::1 ip6-allnodes ff02::2 ip6-allrouters 此服务器具有公用IPv4地址, server.example.com的DNSlogging正确。 如果我尝试ping server或ping server.example.com他们按预期工作(parsing为127.0.1.1 ) 服务器也运行openvpnless于10个客户端,但禁用服务没有任何后果。 事情到目前为止: 1)将主机名更改为“本地主机”: 解决了这个问题, 但不能接受 […]

Ansible SSH作为一个用户,而Sudo作为另一个用户

我在configurationAnsible和sudo时遇到问题,无法让SSH进入服务器并以另一个用户身份运行命令。 我已经通过下面的问题/答案和Ansible文档在这里: http ://docs.ansible.com/intro_inventory.html 但我仍然无法工作。 请有人把我放在正确的轨道上。 参考文献: https://stackoverflow.com/questions/24743085/ansible-ssh-as-one-user-and-sudo-as-another Ansible:使用不同的sudo用户为不同的主机 我正在尝试这样做: server-01 client-01 ——— ———– foo —-> ssh —> foo bar – sudo as root user 使用Ansible,从:server-01连接到:client-01 使用用户foo,然后使用sudo运行命令作为用户栏用户栏设置为可以运行任何命令。 但是,我不确定问题在哪里,用sudo或Ansible。 我认为问题是与sudo,但我不知道在哪里。 这个可靠的命令起作用: [foo@server-01 ~]$ **ansible client-01 -m raw -a "touch /var/tmp/testfile" –ask-sudo-pass** sudo password: ********* ( password for foo user ) client-01 | success | rc=0 >> […]

限制用户只能访问“docker检查”?

有没有办法让一个用户访问(www数据是准确的)只能访问“docker检查”? 任何工作解决scheme都可以接

授予非Root用户访问权限以启动mysqld服务

我有一个非root用户abc并希望给用户sudo权限,只有restart , start或stop – mysqld service 。 即sudo service mysqld restart 。 我怎么能这样做? 我也想对用户组做同样的事情!

在crontab里面用sudo执行php

我写了一个PHP脚本,执行需要sudo权限,因为它执行一些其他系统相关的东西。 所以我已经添加到crontab -e但是我看不到,我的脚本运行正常。 命令: */5 * * * * /usr/bin/php /srv/www/php/script.php && date > /srv/www/php/mylog.log 唯一的输出是date。 没有来自我的脚本的回应。 它是可执行文件(chmod a + x),如果我在terminal中使用和root相同的命令,一切都可以。 所以这取决于crontab -e ? 另外我确定,我的cronjob正在运行(/ var / log / syslog): Oct 23 16:40:01 $MYMACHINE CRON[13797]: (root) CMD (/usr/bin/php /srv/www/php/script.php && date > /srv/www/php/mylog.log) 而这个每5分钟。 另外我的“mylog.log”总是得到最新的时间戳,所以我猜,里面的脚本可能有问题。 编辑:我已经创build了另一个testing脚本来检查,如果脚本得到执行或不。 但脚本被执行了,所以这是脚本内部的问题。 我正在尝试将dynamicIP添加到iptables链中: #!/bin/bash value=`cat whitelist.txt` #echo "$value" for i […]

从窗口运行bash脚本作为sudo从没有交互

我需要在远程Linux机器上执行一个bash脚本,作为sudo在Windows机器上运行的TeamCity。 我可以使用plink从cmd行执行脚本,但是系统提示input密码。 我需要能够做到这一点,而不需要提示input密码才能从teamcity执行。 我有什么select?

无法挂载NFS导出,除非我sudo到root

我在我设置的GPFS / SpectrumScale文件系统上创build了一个NFS导出。 我在xLinux,pLinux,z / OS和AIX上成功testing了NFS导出。 然后,我通过SpectrumScale在NFS导出上启用基于AD的身份validation,并通过在域中使用用户名/密码组合login到每个平台来testing它,我成功地设置了身份validation 然后,我将NFS挂载点添加到Linux客户端vm上的/ etc / fstab,以便在有人login时自动挂载。 NFShost:/ibm/zixf401/NFS /crenfs nfs4 defaults 0 0 我用我的IDlogin了键入的df -h显示: 10.0.4.61:/ibm/zixf401/NFS 2.0T 2.6G 2.0T 1% /crenfs 但是我却遇到了一个问题,那就是我只能访问/ crenfs挂载,如果我先sudo su。 如果我不sudo我得到以下错误: -sh-4.1$ cd /crenfs -sh: cd: /crenfs: Permission denied 有没有办法可以访问/ crenfs安装没有sudo? 我已经看过有人在fstab条目中input用户名和密码的post,但是我们可能有100多个用户在设置正确的时候访问这个用户名,所以我们可以将凭据硬编码到fstab中,除非我们可以input某种types的variables,当他们login到机器本身时input?