在我们的服务器之一,我错误地跑到shell / ssh的代码: 而“是的 ; 做ls; 完成; 现在我想回到它,但它仍然挂起。 我能做什么?
我正在努力解决这个我一直在看的错误,而且我不确定为什么要看到它们。 该脚本生成7天以前的文件列表,然后将它们/ gzip压缩到备份目录中。 最后,一旦备份成功完成,它将删除这些文件。 我遇到一个奇怪的错误。 该脚本很简单,大部分是防止脚本运行两次或挂起,或处理日志logging。 重要的代码是在星号之间。 #!/bin/bash # # # Title: fwdCleanup.sh # Author: Matthew Sarro # Date: 03/07/2012 # Desc: Backs up all files down the tree which are # older than 7 days # # # # DATE=`date +%F-%H%M` LOGFILE=/root/testing/fwdcleanuplogs/$DATE.log exec 3<>$LOGFILE exec >&3 2>&3 #define the name of the lockfile LOCKFILE='/root/testing/fwdcleanup.pid' […]
我有一个名为/scripts/checkInternet的文件,它包含: #!/bin/bash WGET="/usr/bin/wget" rm /tmp/index.google $WGET -q –tries=10 –timeout=5 http://www.google.com -O /tmp/index.google &> /dev/null if [ ! -s /tmp/index.google ];then echo "Nope" ifdown eth0.4 ifup eth0.4 iptables-restore < /etc/iptables.rules else echo "Connected" fi rm /tmp/index.google 我做了这个文件chmod +x 755 。 我可以作为根运行它,但作为root添加到一个cron它不起作用。 什么地方出了错? cron本身正在运行。 我在我的系统日志中看到CMD (/scripts/checkInternet) ,但缺less所需的结果。
请有人可以解释一下,我是否有点困惑的BASH脚本中的第3行和第8行是如何工作的? 这是计算出哪个USB驱动器用于备份。 非常感谢。 1 WEEK_NO=`date +%U | sed -e 's/^0\+//g'` 2 3 (( USB_NN_IDX = $WEEK_NO % 2 )) 4 5 USB_DRIVES[0]="usb03" 6 USB_DRIVES[1]="usb04" 7 8 USB_NN=${USB_DRIVES[$USB_NN_IDX]}
我正在使用的一个PHP程序( LConf )使用sudo调用脚本。 我已经允许用户apache运行脚本,并用sudo -u apache /usr/local/LConf/lconf_deploy.sh进行了testing。 当lconf_deploy.sh调用/usr/bin/sudo -u icinga /usr/local/LConf/LConfExport.pl -o /etc/icinga/lconf -v ,系统会提示input密码,但在调用行之前没有问题在这行之后。 看了很多(在requiretty和互联网上的其他地方)关于在这种情况下做什么,我已经禁用了requiretty和使用NOPASSWD我所能想到的一切影响这种情况。 # cat /etc/sudoers | grep -v "#" Defaults always_set_home Defaults env_reset Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS" Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE" Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES" […]
我已经configuration了我的树莓派使用默认shell的“破折号”, 这里指示 。 我有用于SSH的Dropbear。 当我通过SSHlogin时,我仍然看到“bash”控制台,而不是“短跑”。 如何改变这个,忘记bash?
我的家庭服务器上有一个简单的脚本来同步数据到我的备份驱动器进行存储。 现在它一个接一个地运行多个rsyncs。 有时rsync在其中的一个或两个失败。 当发生这种情况时,我希望它给我发电子邮件,说它失败了,我已经有电子邮件给我一个报告,但是,我想知道是否失败。 如果Rsync以非0代码退出,则表示失败。 所以我需要一些简单的代码来检查rsync状态,如果它不是0,允许我执行一个操作。 有没有人有任何提示,我会如何做到这一点? 谢谢。
我在运行默认Debian linux的Amazon ec2实例上运行一个网站。 我设置了一个cronjob来复制站点文件,获取数据库的印记,并将其压缩。 我想将文件存档保存在与/ var / www / [新目录] / [新目录] / [etc] /中的bash脚本本身相同的目录中。 我创build了一个mysql用户,只能读取和转储数据库,但不能写入它。 脚本如下 #/bin/bash CURRPATH=$(pwd) SITEPATH="/var/www/html" MYSQLUSER="user" MYSQLPASS="password" MYSQLDB="database" CURRDATE=$(date +"%Y-%m-%d__%T_%p") DATETAG="Backup_$CURRDATE" TEMPDIR="$CURRPATH/$DATETAG" ARCHIVENAME="$DATETAG.zip" # I first copy the files so I can stick a database imprint in the same directory cp -r "$SITEPATH/" "$CURRPATH/" mv "$CURRPATH/html" "$TEMPDIR" mysqldump -u "$MYSQLUSER" […]
我正在尝试将系统的所有用户($ PS1variables)的提示值更改为相同的值。 我有以下存储在文件/ etc / ps1中: PS1='` if [ $? -eq 0 ]; then echo -n "\[\033[00;35m\]\u\[\033[01;32m\]@\[\033[00;35m\]\h\[\033[00;32m\](\[\033[01;35m\]\W\[\033[01;32m\])\[\033[00;32m\]\$"; else echo -n "\[\033[00;35m\]\u\[\033[01;31m\]@\[\033[00;35m\]\h\[\033[01;31m\](\[\033[35m\]\W\[\033[31m\])\[\033[00;31m\]\$"; fi`\[\033[0m\]' 在我的单用户帐户下,我可以将source /etc/ps1添加到我的〜/ .profile文件中(有趣的是,当我添加到〜/ .bashrc时,它不起作用)。 如果我把它添加到/ etc / profile或者/etc/bashrc.basrch中,让所有的用户都可以这样做,什么都不会发生。 我正在试图让这个工作。 这是在Debian 7.1.0(Linux 3.2.46)上。
这是在Linux上查看进程path的命令 ps -auxwe | grep 24466 ( 24466 is only example ) 但请指教是否可以查看在Solaris上运行进程的path 如果是的什么Solaris的PS语法?