Поставил vnstat (мониторить трафик). На ящик руту стала приходить такая ошибка:
[: ls -l /var/db/vnstat | wc -l: bad number. Верна ли моя догадка? :)
Дело в том что после установки фря написала что стоит скопировать в crontab строчку из /usr/local/share/doc/vnstat/vnstat-cron такого содержания:
*/5 ** root if [ -x /usr/local/bin/vnstat ] && [ 'ls -l /var/db/vnstat | wc -l' -ge 1 ]; then /usr/local/bin/vnstat -u ; fi
Я это понял так, что крон через каждые 5минут будет обнавлять базу данных внстат от имени рута и выводить в ней все строчки (что означает параметр -x и -ge?). После этого стали приходить ошибки на почту. Если я набираю vnstat, выдается что еще недостаточно данных записано. Правильно ли я понимаю, что бэд намбер означает что плохой номер, т.е. нечего вывести на экран из базы данных? Почему данные не пишутся в базу — ведь я уже зашел на несколько страниц в интернете?
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
Не парь людЯм мозг.
1. О несовершенстве системы портов в Фре я многократно предупреждал.
Ты уверен, что не было потери форматирования при выводе сообщения?
2. Попробуй выполнить команду в консоли.
3. Собственно команду и строку из crontab приведи в нормально читемом виде (hint: use tag 'code’)
Генеральный руководящий документ не помогает?
Ты чего ждал (хотел)?
Выясняй почему vnstat не работает.
Схалтурил… Прочитал на немецком форуме — у некоторых камерадов тоже такая проблема, посоветовали поставить права на /var/db/vnstat/vr0 777. У меня там 2 файла .vr0 (это зачем?) и vr0 c правами 644 были, поменял все на 777 (зачем я это сделал? :)). После этого команда vnstat заработала. Но долбанные сообщения с bad number продолжали приходить на почту руту. ls -l /var/db/vnstat wc -l — это шо за хрень? Когда ее убрал, рассылка писем закончилась. Короче нихрена не понял — буду разбираться :)
Поставил права обратно как было 644 на .vr0 vr0 — тоже работает :). И для рута и для юзера vnstat выполняется и мониторит трафик на vr0
777 — это не плохо, а очень плохо.
Говорят же: читать умные доки… До просветления.
Ссылку дал.
Сроку тебе — месяц. Потом устроим экзамен :)
Далее: как я и говорил: мэйнтейнер порта схалтурил.
Во-первых: опция '-l' у 'ls' здесь лишняя.
Во-вторых: в приведённом выражении допущена грубая ошибка, пропущен символ перенаправления вывода (pipe). Правильно писать
Что делает это выражение? Да считает файлы в каталоге.
В качестве д/з — дополнительный вопрос: «$почему опция '-l' на результат не влияет$"?
На результат выполнения того, что привёл автор, ещё как влияет. А почему — д/з уже тебе ;).
Зануда ;)
Ну выводит ls -l не интересующую меня строчку с общим итогом, ну и что?… :)
Это она тебя не интересует ;). Эта самая строчка увеличивает на единицу счетчик «wc -l», что в свою очередь искажает результат сравнения '-ge 1\′.
Возможно, сама по себе конструкция, передаваемая крону, не очень красивая, но если grisha решил ею пользоваться без изменений, то нюанс с «ls -l» придётся учитывать.