В сообщении от 24 января 2008 13:17 Покотиленко Костик написал(a): > В Чтв, 24/01/2008 в 01:04 +0300, Artem Chuprina пишет: > > Покотиленко Костик -> debian-russian@lists.debian.org @ Wed, 23 Jan 2008 > > 21:40:56 +0200: > > > > >> ПК> # check for diskspace shortage > > >> ПК> datadir=`mysqld_get_param datadir` > > >> ПК> if LC_ALL=C BLOCKSIZE= df --portability $datadir/. | tail -n 1 | > > awk > > >> ПК> '{ exit ($4>4096) }'; then > > >> ПК> log_failure_msg "$0: ERROR: The partition with $datadir is too > > >> ПК> full!" > > >> ПК> echo "ERROR: The partition with $datadir is too > > >> ПК> full!" | $ERR_LOGGER > > >> ПК> # exit 1 > > >> ПК> fi > > >> > > >> ПК> ======================= > > >> ПК> # /usr/sbin/mysqld --verbose --help | grep datadir > > >> ПК> -h, --datadir=name Path to the database root. > > >> ПК> datadir /var/lib/mysql/ > > >> ПК> # LC_ALL=C BLOCKSIZE= df --portability /var > > >> ПК> Filesystem 1024-blocks Used Available Capacity > > Mounted on > > >> ПК> /dev/hda7 9614116 2929680 6196064 33% /var > > >> ПК> ======================= > > >> > > >> ПК> Есть идеи? > > >> > > >> ПК> Что значит это условие в /etc/init.d/mysql: > > >> > > >> ПК> if LC_ALL=C BLOCKSIZE= df --portability $datadir/. | tail -n 1 | > > awk > > >> ПК> '{ exit ($4>4096) }'; then > > >> > > >> ПК> ?? > > >> > > >> Что тот, кто его написал - кретин. > > >> > > >> Замени в нем > на <. А что значит - ну, man awk, да... > > > > ПК> Да... но есть 2 НО: > > > > ПК> 1. в консоли данное условие возвращает FALSE (то есть не срабатывает), > > ПК> странно? > > > > А, ну да, оно ж используется как обратное... > > > > ПК> 2. на другой машине всё точно так же и работает. И на этой работало > > ПК> до перезагрузки :/ > > > > ПК> Пролейте света. > > > > Разбираться надоть... Попробуй повыводить в лог промежуточные > > результаты (вывод df, результат применения к нему tail, результат той же > > команды с заменой exit ($4>4096) на print $4). Не вручную, а из этого > > скрипта. При загрузке. > > Мистика, ночью сервак перезагружался, и теперь проблема пропала. А я > хотел было потестить, но не вышло... Никакой мистики, размер $4 изменился. След. раз если возникнет, запомните число $4 и проверьте echo 'размер' | awk '{ printf $0" > 4096 == "; exit ($0>4096) }' && echo 'Yes' || echo 'No'
-- С Уважением, Андрей Никитин -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]