# avreg-unlink -v
Подключаемся к MySQL базе данных на "avreg5_db"
Запуск "чистильщика" медиа-архива AVReg на "avreg5_db@/var/spool/
avreg"
устройство с медиа-архивом - `/dev/sdb1', смонтировано на `/var/spool/
avreg', fs `ext4'
перед удалением `/dev/sdb1' размер: всего/использ./свободно: 916.9
ГБ / 870.3 ГБ (95%) / 0 Б (0%)
ТРЕВОГА: /usr/lib/ruby/1.8/avreg/unlink/fs.rb:166:in `write': No space
left on device - /var/spool/avreg/removed-manually.txt (Errno::ENOSPC)
ТРЕВОГА: /usr/lib/ruby/1.8/avreg/unlink/fs.rb:117:in `close': No space
left on device - /var/spool/avreg/removed-manually.txt (Errno::ENOSPC)
до этого было все нормально.
> ТРЕВОГА: /usr/lib/ruby/1.8/avreg/unlink/fs.rb:117:in `close': No space
> left on device - /var/spool/avreg/removed-manually.txt (Errno::ENOSPC)
Errno::ENOSPC (No space left on device) - кончилось место
на устройстве с /var/spool/avreg.
Удалите руками какой-нибудь файл и заново.
Чтобы не возникало больше, см. увеличить start-space/stop-space для
avreg-unlink-а.
--
Андрей Никитин.
ООО "Сетевые информационные системы".
http://avreg.net
http://linuxdvr.ru
/8442/ 50-14-90 +7 927 259 04 29
> ООО "Сетевые информационные системы".http://avreg.nethttp://linuxdvr.ru
> /8442/ 50-14-90 +7 927 259 04 29
Так и сделал, но почему он сам этого не делает ???
Раньше проблемы небыло.
> > Errno::ENOSPC (No space left on device) - кончилось место
> > на устройстве с /var/spool/avreg.
> Так и сделал, но почему он сам этого не делает ???
Файл /var/spool/avreg/removed-manually.txt - особенный,
в него чистильщик записывает ссылки на файлы, которые есть в базе,
но нет в файловой системе, т.е. файлы были удалены вручную.
Файл текстовый и в сравнении с медиа-файлами не может быть очень
большим.
Поэтому вопрос всё равно к вам - почему чистильщик действует "на грани".
Проанализируйте 4 значения:
1) период запуска чистильщика /etc/cron.d/avreg-unlink;
2) макс. объём записи за период 1) avregd-ом(и);
3) start-space
4) end-space
После анализа измените 1), 3) и 4) c _достаточным_ запасом,
чтобы проблем не было даже если по какой-то причине один-два запуска
avreg-unlink-а будет пропущено, например ко времени запуска сервер
перегружали.
On 28 дек, 12:02, "Mikhail A. Krylatykh" <delayer.hea...@gmail.com>
wrote:
у меня стояло 25G и 50G соответственно, увеличил до 30G и 60G
посмотрим, как поведет себя...
> у меня стояло 25G и 50G соответственно, увеличил до 30G и 60G
> посмотрим, как поведет себя...
Если камер много, лично я бы, почаще unlink запускал, каждые 10 минут,
например.
Кстати, в avreg-unlink_5.5, при новой установке именно 10 минут
в cron-овом задании и ставится.
Нужна информация:
1) Приведите вывод команды
$ update-avreg.conf -p -s
2) файлы профилей /etc/avreg.profiles/* , если используются
3) с какими опциями командной строки запускаете avreg-unlink
$ sudo avreg-unlink -vvv
> Запуск "чистильщика" медиа-архива AVReg на "avreg5_db@/var/spool/
> avreg"
> устройство с медиа-архивом - `/dev/sdb1', смонтировано на `/var/spool/
> avreg', fs `ext4'
> перед удалением `/dev/sdb1' размер: всего/использ./свободно: 916.9
Нормально, никакого криминала не вижу.
А откуда вот эти подземные стуки - не могу сказать.
> Dec 29 19:50:01 avreg avreg-unlink: Start AVReg media archive cleaner
> on "avreg5_db@/var/spool/avreg"
> Dec 29 19:50:02 avreg avreg-unlink: ALERT: /usr/lib/ruby/1.8/avreg/
> unlink/unlink-conf-struct.rb:11:in `chdir': Permission denied - /root
> (Errno::EACCES)
Ещё нужно
cat /etc/cron.d/avreg-unlink
И, у вас случайно линка нет /var/spool/avreg на /root ?
> В предыдущей версии все нормально было uptime 60 дней...
Так идёт удаление или нет?
$ grep 'avreg-unlink' /var/log/daemon.log | tail -n 30
On 31 дек 2010, 13:36, Andrey Nikitin <avreg-supp...@mail.ru> wrote:
> Здравствуйте, triada123.
>
> > В предыдущей версии все нормально было uptime 60 дней...
>
> Так идёт удаление или нет?
> $ grep 'avreg-unlink' /var/log/daemon.log | tail -n 30
>
> --
> Андрей Никитин.
>
> ООО "Сетевые информационные системы".http://avreg.nethttp://linuxdvr.ru
> /8442/ 50-14-90 +7 927 259 04 29
нет,удаление с новой версией не идет.
руками чишу...
On 31 дек 2010, 11:36, Andrey Nikitin <avreg-supp...@mail.ru> wrote:
> Здравствуйте, triada123.
>
> > В предыдущей версии все нормально было uptime 60 дней...
>
> Так идёт удаление или нет?
> $ grep 'avreg-unlink' /var/log/daemon.log | tail -n 30
>
> --
> Андрей Никитин.
>
> ООО "Сетевые информационные системы".http://avreg.nethttp://linuxdvr.ru
> Андрей у меня после обновления avreg тоже:
> unlink/unlink-conf-struct.rb:11:in `chdir': Permission denied - /root
> (Errno::EACCES)
Кто может ssh доступ дать?
Пишите в приват.
Попробуйте откатиться до 5.4:
$ sudo aptitude install avreg-unlink=5.4
Приведите вывод:
ruby -r avreg/utils -e 's = AVRegUtils::StatFS.new("/var/spool/avreg"); p s'
> на 5.4 не откатывается ((
>
> $ sudo aptitude install avreg-unlink=5.4
Сорри,
$ sudo aptitude install avreg-unlink=5.4.4p2
p.s.
И еще почему unlink не удаляет если свободного места мало ?
Какая ему разница, что нет места, пусть удаляет!
> $ ruby -r avreg/utils -e 's = AVRegUtils::StatFS.new("/var/spool/
> avreg"); p s'
> #<AVRegUtils::StatFS:0xb776b724 @type="EXT2|EXT3", @bavail=15665527,
> @avail=64165998592, @path="/var/spool/avreg", @namelen=255,
> @bfree=27875027, @ffree=60869384, @used=870330331136,
> @blocks=240358018, @files=61054976, @total=984506441728,
> @avail_super=114176110592, @bsize=4096>
Думаю, проблема видна, приведите ещё выводы 3-х команд:
$ uname -a
$ getconf LONG_BIT
$ apt-cache policy libavreg-utils-ruby1.8
> Думаю, проблема видна, приведите ещё выводы 3-х команд:
>
$ uname -a
Linux avreg 2.6.32-27-generic #49-Ubuntu SMP Wed Dec 1 23:52:12 UTC
2010 i686 GNU/Linux
$ getconf LONG_BIT
32
~$ apt-cache policy libavreg-utils-ruby1.8
libavreg-utils-ruby1.8:
Установлен: (отсутствует)
Кандидат: 0.3
Таблица версий:
0.3 0
500 http://avreg.linuxdvr.ru/develrep/ lucid/main Packages
p.s.
libavreg-utils-ruby1.8 стояла, но удалилась на автомате вместе с avreg-
unlink.
> $ uname -a
> Linux avreg 2.6.32-27-generic #49-Ubuntu SMP Wed Dec 1 23:52:12 UTC
> 2010 i686 GNU/Linux
>
> $ getconf LONG_BIT
> 32
Странно, у вас ядро не amd64?
Устройство под архив какой ёмкости?
$ df -hT /var/spool/avreg
> ~$ apt-cache policy libavreg-utils-ruby1.8
> libavreg-utils-ruby1.8:
> Таблица версий:
> 0.3 0
> 500 http://avreg.linuxdvr.ru/develrep/ lucid/main Packages
> p.s.
> libavreg-utils-ruby1.8 стояла, но удалилась на автомате вместе с
> avreg- unlink.
avreg-unlink_5.5 узнаёт о размерах диска через libavreg-utils-ruby1.8,
который ниже 0.4 версии (а у вас стояла 0.3) неправильно считал:
1) на amd64;
2) на i386 ядрах на оч. больших размерах архивного устройства.
P.S.
1) удалите файл /var/spool/avreg/remove-manually.txt
2) удаление работает c старым avreg-unlink_5.4.4p2 ?
>
> Устройство под архив какой ёмкости?
$ df -hT /var/spool/avreg
Тип файловой системы Разм Исп Дост Исп% смонтирована на
/dev/sdb1 ext4 917G 832G 39G 96% /var/spool/avreg
> avreg-unlink_5.5 узнаёт о размерах диска через libavreg-utils-ruby1.8,
> который ниже 0.4 версии (а у вас стояла 0.3) неправильно считал:
> 1) на amd64;
> 2) на i386 ядрах на оч. больших размерах архивного устройства.
ну оно само из зависимостей ставилось...
>
> P.S.
> 1) удалите файл /var/spool/avreg/remove-manually.txt
удалю )) он мне не мешал.
> 2) удаление работает c старым avreg-unlink_5.4.4p2 ?
да со старым работает.
> Нашли проблему ? Или нет ?
Нет, не хватает данных для её локализации,
т.к. у себя не можем её повторить.
Очень помог бы ssh к серверу, на котором она (проблема) возникает.
> Предоставить доступ пока не возможно, т.к. машина сейчас не в сети.
Ладно, тогда продолжим:
$ lsb_release -a
$ dpkg -l '*ruby*' | grep '^i'
Если так и не вывалится при ручных запусках,
то поправьте правило запуска в /etc/cron.d/avreg-unlink
*/3 * * * * root /usr/sbin/avreg-unlink -vvvvv 2>&1 >> /tmp/unlink.log
запускать каждые 3 минуты (чтобы долго не ждать)
минут через 7 посмотрите daemon.log на предмет Errno::EACCES
Если Errno::EACCES возникнет - нам кусок лога и /tmp/unlink.log
Поправили в версии 5.5p1
# aptitude update
обновление всей системы
# aptitude full-upgrade
или только avreg-unlink
# aptitude install avreg-unlink
$ apt-cache policy avreg-unlink
avreg-unlink:
Установлен: 5.5p1
Кандидат: 5.5p1
Таблица версий:
*** 5.5p1 0
990 http://avreg.linuxdvr.ru/develrep/ squeeze/contrib i386
Packages 100 /var/lib/dpkg/status
5.4.4p2 0
990 http://avreg.linuxdvr.ru/develrep/ squeeze/contrib i386
Packages