Chinaunix首页 | 论坛 | 博客
  • 博客访问: 239588
  • 博文数量: 60
  • 博客积分: 2466
  • 博客等级: 大尉
  • 技术积分: 662
  • 用 户 组: 普通用户
  • 注册时间: 2009-12-16 13:25
文章分类

全部博文(60)

文章存档

2014年(1)

2012年(15)

2011年(24)

2010年(17)

2009年(3)

我的朋友

分类: LINUX

2010-02-06 21:30:01

在Ubuntu系统中sudo是我们比较常用的命令了
但是用sudo命令执行时往往会提示输入密码,有时候很不方便,尤其是在编程过程中。


1. 指定某程序或脚本等在用sudo执行时不用输入密码的方法:
    在/etc/sudoers中添加:
    %users ALL = NOPASSWD: /usr/bin/test.sh
 
  这样我们在sudo 执行/usr/bin/test.sh时会直接执行 不会提示输入密码
  那么好了我们在编程中可以方便的调用:
    system("sudo /usr/bin/test.sh &");
  注意:/etc/sudoers文件不能随意更改,更改时格式一定要对,否则可能导致sudo命令不能正常使用,最好用sudoers对应的工具更改,会 进行格式的检查

2.不改配置文件sudoers的话还有一种绕开的方法
    echo sudo对应密码 | sudo -S /usr/bin/test.sh &
  那么我们在程序中可以方便的调用:
    system("echo xxx | sudo -S /usr/bin/test.sh &");


  
阅读(906) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~