我无密码访问服务器。 我的用户帐户在sudoers文件中为/etc/init.d/中的某些服务/守护进程添加了NOPASSWD用法。 我想写一个脚本根据一些testing结果来启动或停止一个守护进程。 我已经设置了一个cron在特定的时间运行这个脚本。 但是它返回错误“sudo:没有tty存在,没有指定askpass程序”。 我可以使用“sudo /etc/init.d/service名称启动/停止在terminal没有密码。我没有root密码。 我有双重检查/ etc / sudoers文件。 没有“requiretty”。 我使用的是Ubuntu-10.04,2.6.32-24-generic。 以下是sudoers的活跃线路: Defaults env_reset root ALL=(ALL) ALL bijo ALL=NOPASSWD: /etc/init.d/apache2 %sudo ALL=(ALL) ALL %admin ALL=(ALL) ALL
如果我想监视一些我不是主要维护者的机器(也就是说,我没有安装软件包的权限),有没有像Nagios这样的轻量级替代品? 我正在寻找对Linux服务器和服务(磁盘空间,Web服务器,可能是CPU使用情况等)进行基本监控的脚本(bash,Perl,PHP等),并在必要时发送警报。 我发现了一些 一次性 脚本 ,但是我感到惊讶的是没有更全面的东西。
我试图将数据库从我们的生产服务器移动到我们的testing服务器。 我已经使用Microsoft的数据库发布向导来创build一个包含生产数据库的模式和数据的脚本。 然而**我无法弄清楚如何将这个脚本加载到我们的testing数据库中**由此产生的脚本是大约500MB,这不是由数据库标准“大”,但足够大,我不能复制和粘贴进入查询分析器。 或者,当我尝试直接用SQL Server Management Studio打开文件时,它会报错 操作无法完成。 没有足够的存储空间可用于此操作。 这个错误发生在我select数据库之前 ,所以我相信这是Management Studio抱怨没有足够的内存来加载一个500MB的文件。 有什么build议?
我想创build一个批处理或vbs文件,将放在一起的URL和执行。 该url的一部分需要是机器的实际IP地址。 我怎样才能得到一个variables的IP地址,以包括它的脚本? 编辑1: 我发现下面的命令会给我的IP地址,但仍然不知道如何获得这个值到一个variables,以在脚本中使用它。 c:\> wmic NICCONFIG WHERE IPEnabled=true GET IPAddress /format:csv Node,IPAddress IP-0AFB,{10.25.5.2}
我有10台Linux服务器需要locking,一次为所有用户重设密码。 这背后的故事是漫长的,但总的想法是,我需要它在特定的时间很快发生。 我将为所有的用户帐户(最初)使用一个单一的,严格的密码,所以这不需要从密码文件或类似的东西中读取。 所以我需要的是最好的方法来编写脚本,以便我可以一次重置所有的密码。 我可以用cat /etc/passwd | cut -f1 -d:提取用户帐户的列表 cat /etc/passwd | cut -f1 -d: command,但是最终会包含所有的帐户,包括系统帐户,我认为我不应该这样做。 那么我最好的select是什么? 注意! 重置密码时,还需要确保擦除~/.ssh/authorized_keys文件中的任何内容。 直到后来才记得这个 – 幸好我几乎把服务器locking得很紧,除了服务器到服务器的东西外,没有任何东西在authorized_keys中。
我有一个在Debian服务器上启动的脚本。 它运行得太早了,但是我无法控制什么时候被烧掉。 我可以强制脚本延迟自己的运行: sleep 60 …或者,我可以尝试几次,如下所示: TESTRUN=0 ACTIONWORKED=0 while [ $ACTIONWORKED -eq 0 ] && [ $TESTRUN -le 5 ]; do # run the action i want # quick test if it worked # if yes, set ACTIONWORKED=1 # if no, sleep 10 # increment TESTRUN done 什么是testing系统准备好的更好方法? 系统运行时,脚本将在其他时间运行,因此需要进行testing来区分“引导 – 不能这样做”和“不引导 – 运行 – 现在”状态。 […]
我需要将DNS服务器configuration的Internet协议版本4(TCP / IPv4)和Internet协议版本6(TCP / IPv6)设置从“自动获取DNS服务器地址”转换为硬编码值(用于Google的DNS服务器)并返回。 手动操作很麻烦(我需要去控制面板 – networking和互联网 – networking连接 ,打开无线networking连接2 ,然后打开相应版本的属性 ,inputDNS服务器值,然后重复另一个)。 是否有一个实用程序或脚本,将自动化的过程? 谢谢。
每次Windows更新完成后(即重新启动后还是更新后不需要重新启动),是否有办法运行特定的脚本? 我的应用程序正在遭受MSCOMCTL.OCX更新 ,而且似乎每次Windows Update更新时,用户都需要应用我的修补程序脚本。 编辑 :对于Windows 7和更高版本。
经过一番search,我还没find解决办法。 我认为search条件太笼统了。 我想知道如何执行一些行(在bash提示符),这是由其他来源生成的。 例如,我有一个Python脚本,它dynamic生成一些bash命令并将它们print到stdout。 我想这些行作为bash脚本执行,而不必将其保存到磁盘。 例如: $ python example.py touch 1 2 3 4 5 rm 1 2 3 4 5 echo "Done" 我想要做一些事情: $ python example.py | executeLines 这样的命令/function是否存在于bash中? 有时候,其中一个命令可能会以非零退出状态退出,因此在每个命令后附加&& ,然后运行: $ `python example.py` 将不会总是工作,似乎是一个笨拙的解决scheme。
Makefiles非常适合自动化构build,安装和testing。 但是,那不是Make的结束。 我已经使用makefile来完成许多任务,如清理日志,保存镜像网页和下载,将它们挂接到crontabs和testing套件中。 就像脚本一样,我认为使用Makefiles有很大的自动化范围。 特别是当你需要一系列的依赖性触发。 你使用Makefiles做了什么不同的事情? 你也许打算在雨天做更多的事情。