小编cli*_*ime的帖子

由 cron 运行时,top 的输出被截断为 80 列

我有以下日志记录脚本:

#!/bin/bash
top -b -c -n 1 >> /var/log/toplog/top.log
Run Code Online (Sandbox Code Playgroud)

以及我的 crontab 中的以下记录:

*/1 * * * *     /home/clime/scripts/toplog.sh
Run Code Online (Sandbox Code Playgroud)

问题是 top.log 中的行被削减为 80 个字符,例如:

 1512 root      20   0 80756 1436  572 S  0.0  0.1   0:05.92 /usr/libexec/postfi
Run Code Online (Sandbox Code Playgroud)

如果我直接从控制台运行命令,则不会发生这种情况。

我曾尝试使用 COLUMNS 变量:

*/1 * * * *     COLUMNS=999 /home/clime/scripts/toplog.sh
Run Code Online (Sandbox Code Playgroud)

但这导致每一行的长度恰好为 999 个字符 - 未使用的空间用空格填充,这不是我想要的。

如何解决这个奇怪的问题?我的系统是centos 6.3。

cron top

8
推荐指数
1
解决办法
5362
查看次数

newgrp 要求输入密码

我不明白为什么newgrp当我想更改组时提示我输入\xc2\xa0密码。\xc2\xa0\n我\xc2\xa0甚至不知道它要求什么密码,\n但它\xc2\xa0是当然不是我的(用户气候)。

\n
$ id\nuid=500(clime) gid=501(www) groups=501(www),500(clime) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023\n$ newgrp clime\nPassword:       <--- huh?!\n
Run Code Online (Sandbox Code Playgroud)\n

我的系统是CentOS\xc2\xa06.3。

\n

security password login history group

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

/etc/inittab 中的 autossh

我已经设置了 ssh 隧道,以便能够连接 NAT 后面的目标计算机。我已将以下内容放入计算机上的 /etc/inittab 中:

tu:2345:respawn:/usr/bin/autossh -M 20000 -f -n -N -T -R 6790:localhost:22 me@servername.cz
Run Code Online (Sandbox Code Playgroud)

它有效,即我可以通过发出 ssh -p 6790 me@localhost 进行连接。但是时不时我会在目标计算机上收到以下消息:

INIT: Id "tu" respawning too fast, disabled for 5 minutes
Run Code Online (Sandbox Code Playgroud)

在服务器上的 /var/log/secure 中,我可以看到以下内容:

Oct 29 03:11:15 vm sshd[19725]: Accepted publickey for me from 90.179.155.74 port 37416 ssh2
Oct 29 03:11:15 vm sshd[19727]: Received disconnect from 90.179.155.74: 11: disconnected by user
Oct 29 03:17:04 vm sshd[20892]: Accepted publickey for me from 90.179.155.74 port 40116 ssh2
Oct 29 03:17:15 …
Run Code Online (Sandbox Code Playgroud)

ssh-tunneling init

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

找 。.[^.]* -type f -print0 | xargs -0 须藤 chmod 664;不起作用

我正在使用此命令递归地设置文件的权限

clime@vm6879 /srv/www-php/steeltrading $ find . .[^.]* -type f -print0 | xargs -0 sudo chmod 664
Run Code Online (Sandbox Code Playgroud)

但是在执行该命令后,某些文件(大部分)的权限仍然没有改变。

clime@vm6879 /srv/www-php/steeltrading $ ll media/xmlconnect/system/ok.gif 
-rwxrwxr-x. 1 www www 295 Jul  5  2012 media/xmlconnect/system/ok.gif
Run Code Online (Sandbox Code Playgroud)

如果我运行只是find为了查看文件是否在列表中,我可以看到它:

clime@vm6879 /srv/www-php/steeltrading $ find . .[^.]* -type f | grep ok.gif
./media/xmlconnect/custom/ok.gif
./media/xmlconnect/original/ok.gif
./media/xmlconnect/system/ok.gif
Run Code Online (Sandbox Code Playgroud)

如果我进入目录媒体并再次运行该命令,该文件最终会获得正确的权限。

clime@vm6879 /srv/www-php/steeltrading $ cd media/
clime@vm6879 /srv/www-php/steeltrading/media $ find . .[^.]* -type f -print0 | xargs -0 sudo chmod 664
clime@vm6879 /srv/www-php/steeltrading/media $ ll xmlconnect/system/ok.gif 
-rw-rw-r--. 1 www www 295 Jul …
Run Code Online (Sandbox Code Playgroud)

find chmod xargs

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

标签 统计

chmod ×1

cron ×1

find ×1

group ×1

history ×1

init ×1

login ×1

password ×1

security ×1

ssh-tunneling ×1

top ×1

xargs ×1