Прошел месяц с тех пор, как я снял защиту Akismet и заменил Simple CAPTCHA на NotCAPTCHA для отсеивания спамеров на своем блоге. Думаю, пора подвести некоторые итоги использования такой комбинации защиты.
Опять? Да, опять . Про монтирование этих файловых систем в Windows вы можете почитать здесь. Однако, если ваша рабочая ОС — Mac OS X и вам необходимо получить доступ к Ext2/3, вы можете скачать утилиту . Говорящее название, не так ли? . Скачиваете, ставите, перезагружаетесь, и система автоматически монтирует ваши EXT-разделы, делая точки монтирования по метке раздела. Если метка раздела пуста, то она называет их Untitled. Кстати, в этом заключается небольшая проблема. Дело в том, что, если, например у вас в системе примонтирован NTFS-раздел без метки, он монтируется к директории с аналогичным названием — отличие только в регистре. В принципе, это не мешает, мешает то, что в Finder'e все подмонтированные разделы на левой панели с аналогичным названием по клику на них ведут все время на какой-то один раздел, необязательно на тот, который нужен. Впрочем, доступ получить все равно можно — для этого достаточно зайти на раздел с рабочего стола системы, где располагаются дисковые устройства, подмонтированные к вашей системе.
Напоследок замечу, что драйвер рекомендуется использовать в режиме «только для чтения». Писать в раздел драйвер позволяет, но могут возникнуть проблемы с журналом ФС, и его придется восстанавливать. Есть мысль, что этим драйвером можно монтировать и EXT4-разделы — особенность этой ФС в ее обратной совместимости — в Linux ее можно монтировать как EXT2, естественно без журнала и фишек этой ФС. Однако я этого не пробовал — нет EXT4-раздела. Так что экспериментируйте с EXT4 сами;)
Любой программист или системный администратор прекрасно понимает, насколько важно ведение логов системы. Все работает, логи пишутся. Но если это дело не контролировать, то файлы со временем разрастаются до удручающих размеров и количеств. Для контроля логов — ротации — существует утилита logrotate. Что она делает? Эта утилита по заданным параметрам архивирует логи и складывает их туда, куда необходимо, а также управляет количеством бэкапов для каждого log-файла. Это вкратце. Подробнее можно почитать в
man logrotate
Итак, допустим, мы имеем какой-либо программный продукт, который круглосуточно одаривает нас подробными логами. Их наличие нам необходимо для анализа и наблюдения за работой системы, и мы хотим прибегнуть к их ротированию. Как это сделать при помощи logrotate?
Итак, я буду «говорить» за Ubuntu, и, надеюсь, за Debian.
Конфигурационные файлы logrotate размещаются в директории
/etc/logrotate.d/
Это типичное расположение конфигурационных файлов. Оно описывается в основном конфиге в строчке
include /etc/logrotate.d
Естественно, все это дело можно изменить. Но, я сейчас не об этом. Допустим, у меня есть директория, в которую сваливается кучка log-файлов с расширением (это которое file extension) .log. Мне необходимо ротировать логи ежедневно, при этом сжимать их и отправлять в определенную директорию. Как это сделать? Скачем в директорию /etc/logrotate.d/, создаем в ней файл с понятным нам именем, открываем его редактором (конечно делать все это надо из под root) и пишем примерно следующее:
/<путь>/<до>/<логов>/*.log {
daily
missingok
rotate 28
compress
nodelaycompress
notifempty
create 640 user group
olddir /var/log/<директория с логами>
}
Итак, что здесь что означает:
daily — периодичность ротации «ежедневно», может быть, например monthly — ежемесячно;
missingok — данный параметр сообщает утилите, что отсутствие лога не является ошибкой;
rotate 28 — параметр определяет сколько фрагментов одного лога хранить. в Данном случае я указал, чтобы хранилось 28 фрагментов каждого лога, по одному фрагменту на день;
compress — параметр определяет, сжимать логи или нет;
nodelaycompress — не откладывать сжатие фрагмента на следующий цикл ротации;
notifempty — не ролировать лог, размер которого 0 байт;
create 640 user group — с какими правами доступа и какого пользователя с группой делать владельцем лога;
olddir /var/log/<директория с логами> — директория, в которую будут складываться сжатые фрагменты логов.
Я не указал еще несколько параметров, таких, как, например, size — размер log-файла. Параметр позволяет ротировать логи не по временному промежутку, а по размеру логов. Подробнее можно прочитать в
man logrotate
После конфигурирования имеет смысл выполнить
logrotate -f
для принудительного запуска утилиты. Это полезно, если вы создали новые записи в конфигах logrotate.
Это плохо. Нет, это ужасно! У меня посыпался винчестер. Еще на днях всё было в порядке, и вот, вчера начались глюки — при емких файловых операциях, при сканировании директории с большим количеством файлов (например, плеер пробежался по музыкальной коллекции), компьютер вставал колом. Я сразу понял, что к чему — у меня совсем недавно — года полтора назад — уже был опыт с жестким диском, полным «бэдов». Это была «Барракуда» на 250 Гб, не помню, к сожалению, какой серии. Они тогда еще целыми партиями отбраковывались — такая ненадежная железка была. Прожила она у меня всего 8 месяцев и рассыпалась — при этом, конечно, стоял винчестер всё время на одном месте, системник не сдвигался даже с места. Так получилось и с моим последним жестким диском. Он, кстати, был куплен на замену приснопамятной «Барракуде». И использовался также аккуратно. Непонятны причины такой внезапной смерти, ну да ладно. Сдох и хрен с ним. Но что самое противное — некстати он сдох — прямо во время создания документации по одному проекту. Нет, я конечно всё резервирую, но этот жесткий диск у меня один. Думаю, вы представляете, каково это, когда у тебя из-за несовершенства техники рушатся не только данные, но и сроки сдачи, сдвигаются планы и т.п. В общем, пренеприятная ситуация. Ладно, поскакал за новым жестким диском... Скоро как пирожки их буду покупать .
На днях я решил поэкспериментировать с операционками. Конечно же под нож пошёл раздел с Linux — в моей ситуации его проще восстановить. Я бэкапнул раздел с системой и приступил к истязаниям своего винчестера. Эксперименты так и остались эксперимантами, и я решил, что пора всё вернуть на место. Я отформатировал раздел обратно в ext3 (и это и было моей ошибкой) и стал восстанавливаться своим проверенным методом. Система у меня была Ubuntu 9.04. Она была настроена и работала, мне совершенно не было резона делать апдейт до 9.10, зная, тем более, что updater у убунты не всегда адекватный. Итак, после восстановления я столкнулся с тем, что у меня отказался работать загрузчик. Это сейчас я могу себя спросить — «ну нахрена ты стал распаковывать образ в раздел с файловой системой?!», а тогда я был погружен в мысли и не обратил внимание на такую грубую ошибку. В чём же дело? А дело в том, что zcat или dd надо заставлять писать с нулевого сектора, и проще всего это сделать, просто не создавая файловую систему на разделе (тем паче у меня имела место операция по смене ФС). Так что я просто получил в результате двойной суперблок и, как следствие — нерабочий раздел . Пока я включил свой мозг в направлении размышления о том, почему оно не грузится, я уже успел поставить Ubuntu 9.10 . Такой вот вышел нечаянный апдейт системы.