Назад | Перейти на главную страницу

Проблемы с cron-скриптом и определением TERM с помощью команды top

У меня проблема с запуском процесса cron для проверки текущего использования ЦП на моем сервере.

Мой сценарий начинается с:

top -c -n 1 -u www-data > /tmp/kill-cpu

Я могу без проблем выполнить в консоли, но в cron я получаю

вверху: не удалось получить tty

Если я использую опцию -b в начало

top -b -n 1

я получил

'dumb': неизвестный тип терминала.

Я использую xterm как TERM

Спасибо за вашу помощь :)
Лито.

РЕШЕНИЕ: Мне удалось решить проблему с помощью:

ln -s /lib/terminfo/d/dumb /usr/share/terminfo/d/dumb

Вы можете попробовать что-то вроде:

TERM=vt100 top -b -n 1

Это установит переменную TERM для выполнения с командой «top».

Но ваша основная проблема в том, что ваша база данных termcap неполная или повреждена. У меня нет машины Debian, на которую можно было бы взглянуть, но на компьютере с Ubuntu «тупая» информация termcap находится в файле / usr / share / terminfo / d / dumb. Этот файл является частью пакета ncurses-base в Ubuntu 8.04 и 10.04. В RHEL это часть пакета ncurses. Возможно, в вашей установке просто отсутствует этот файл?