Многие знают про утилиту dd - очень удобный инструмент.
В частности очень хорошо подходит для клонирования дисковых разделов (или целых дисков).
Недавно в ходе нескольких экспериментов выяснил, что такой образ диска можно сильно сжать с помощью GZip.
Например, заполненный на около 5Гб NTFS-раздел объемом 31Гб в сжатом состоянии занимает всего 1.7Гб. Единственное неудобство в том что на моем AMD Athlon 1700+ создание этого образа заняло 50 минут, а подсчет md5-суммы раздела-оригинала и упакованного образа по 12 минут. На системах с более производительным центральным процессором данный процес займет гораздо меньше времени.
Так как основной объем информации на системных жестких дисках (конечно за исключением медиа-данных) очень хорошо поддается сжатию, и часто многие выделяют несколько разделов под ОС, таким образом можно быть уверенным что образ раздела удастся сжать.
В ходе тестов на различных разделах степень компрессии несколько шокировала. Например, FAT-16 раздел размером 40Гб был сжат до 30МБ (контрольные суммы проверил - они совпали)!!!
Создаем образ:
#dd if=/dev/sda1 bs=8096 | gzip -9cf > sda1.dd-image.gz
Это занимает время. За процессом можно наблюдать на той же консоли с помощью периодической посылки USR1 сигнала процессу dd.
Для этого на другой консоли выполняем:
#ps | grep dd
определяем pid процесса dd и подставляем его в следующую команду
#watch -n 15 "kill -USR1 $pid_of_dd"
Распаковка образа:
#gunzip -c sda1.dd-image.gz | dd of=/dev/sda1 bs=8096
также можно подсчитать md5-сумму для раздела, чтобы после восстановления проверить правильность распаковки образа:
#dd if=/dev/sda1 bs=8096 | md5sum - > sda1.dd-image.md5
Параноики (бывают ситуации когда лучше потратить время на еще одну перепроверку) могут еще и проверить правильность создания образа:
#gunzip -c sda1.dd-image.gz | md5sum
Приятной всем работы ;)
Показаны сообщения с ярлыком work. Показать все сообщения
Показаны сообщения с ярлыком work. Показать все сообщения
2 июл. 2008 г.
23 апр. 2008 г.
Скрипт записи эфира онлайн радио (для использования на радиостанциях)
Продолжаю публикацию своих скриптов.
Была поставлена задача записывать эфир собственного онлайн вещания. И хранить записи соответственно нужно часовыми кусками.
Для чего и изготовил этот скрипт.
Зависимости:
1. нужен собственно Shell;
2. для записи http-потока использован wget.
Протестирована работа с сервером IceCast, думаю будет работать и с другими серверами отдающими звук по http.
Формат вещания он ест любой - напрямую сохраняет часовые (или любой другой продолжительности) куски потока на жесткий диск.
На случай обрыва связи предусмотрена логика востановления соединения через пятисекундные интервалы.
Для записи эфира в режиме 24/7 достаточно прописать его запуск в crontab и добавить логику организации файлов в папки (если есть желание конечно ;) ).
У нас собственно складывается по дням, храним записи 40 дней, для чего используется как раз Скрипт удаления старых файлов и папок
Прошу смотреть и ругать ;)
Была поставлена задача записывать эфир собственного онлайн вещания. И хранить записи соответственно нужно часовыми кусками.
Для чего и изготовил этот скрипт.
Зависимости:
1. нужен собственно Shell;
2. для записи http-потока использован wget.
Протестирована работа с сервером IceCast, думаю будет работать и с другими серверами отдающими звук по http.
Формат вещания он ест любой - напрямую сохраняет часовые (или любой другой продолжительности) куски потока на жесткий диск.
На случай обрыва связи предусмотрена логика востановления соединения через пятисекундные интервалы.
Для записи эфира в режиме 24/7 достаточно прописать его запуск в crontab и добавить логику организации файлов в папки (если есть желание конечно ;) ).
У нас собственно складывается по дням, храним записи 40 дней, для чего используется как раз Скрипт удаления старых файлов и папок
Прошу смотреть и ругать ;)
22 апр. 2008 г.
Скрипт удаления старых файлов и папок.
Решил начать публикацию своих скриптов, которые наработал за последние пол года.
Первым выбрал самый маленький, но при этом не менее удобный скрипт для удаления старых файлов/директорий из указанной директории и лимитирования их колличества.
Получился такой своеобразный logrotate.
Удобно когда необходимо хранить определенное количество файлов или директорий и удалять старые чтобы не переполнить диск.
Вот сам скрипт: http://gleb.poljakov.googlepages.com/cleanup.sh
Первым выбрал самый маленький, но при этом не менее удобный скрипт для удаления старых файлов/директорий из указанной директории и лимитирования их колличества.
Получился такой своеобразный logrotate.
Удобно когда необходимо хранить определенное количество файлов или директорий и удалять старые чтобы не переполнить диск.
Вот сам скрипт: http://gleb.poljakov.googlepages.com/cleanup.sh
9 мар. 2008 г.
Защита сети на уровне доступа от образования петель на коммутаторах hp без использования STP
Коммутаторы hp 2510-24 (и ряд других моделей производителя) имеют поддержку протоколов *STP (MSTP, RSTP, STP).
Применение этих протоколов на уровне доступа сопряжено с некоторыми проблемами - длительное блокирование порта при включении и периодическая длительная блокировка для проверки топологии.
Компания hp с 2007 года включила в прошивки части коммутаторов функцию защиты от образования петель (loop-protect).
Данная функция использует посылку пакета на мультикастовый адрес, который теоретически ни одно устройство в локальной сети не блокирует, что нередко случается с BPDU (например, коммутаторы hp 1800 и некоторые модели ip-телефонов их блокируют).
Конечно применение опции Edge-Port (FastPort) при конфигурировании STP позволяет сократить время блокировки порта до 5 секунд, но остается вопрос насколько целесообразно применение STP на портах где явно предполагается подключение рабочих мест.
Также с помощью loop-protect есть возможность автоматически извещать по протоколу SNMP систему мониторинга об образовании петли, что сильно упрощает работу администратора.
Далее приведу перевод части Руководства по настройке касаемое функции loop-protect:
Применение этих протоколов на уровне доступа сопряжено с некоторыми проблемами - длительное блокирование порта при включении и периодическая длительная блокировка для проверки топологии.
Компания hp с 2007 года включила в прошивки части коммутаторов функцию защиты от образования петель (loop-protect).
Данная функция использует посылку пакета на мультикастовый адрес, который теоретически ни одно устройство в локальной сети не блокирует, что нередко случается с BPDU (например, коммутаторы hp 1800 и некоторые модели ip-телефонов их блокируют).
Конечно применение опции Edge-Port (FastPort) при конфигурировании STP позволяет сократить время блокировки порта до 5 секунд, но остается вопрос насколько целесообразно применение STP на портах где явно предполагается подключение рабочих мест.
Также с помощью loop-protect есть возможность автоматически извещать по протоколу SNMP систему мониторинга об образовании петли, что сильно упрощает работу администратора.
Далее приведу перевод части Руководства по настройке касаемое функции loop-protect:
- Включение loop-protect:
ProCurve(config)# loop-protect <port-list>
Синтаксис: [no] loop-protect <port-list> [receiver-action <send-disable | no-disable> ] [transmit-interval <1-10> ] | [disable-timer <0-604800>] | [trap <loop-detected>]- [receiver-action <send-disable | no-disable>]
Устанавливает действие при обнаружении петли на порту. Если у казано "send-disable", то порт передавший пакет отключается. Если же установлено значение "no-disable" порт остается включенным.
Значение по умолчанию: send-disable - [trap <loop-detected>]
Позволяет сконфигурировать ловушку (trap) “loop-detected”, которая означает что на определенном порту обнаружена петля. - [disable-timer <0-604800>]
Определяет сколько секунд коммутатор ждет перед попыткой задействовать порт на котором была определена петля. Нулевое значение запрещает попытки задействовать порт.
Значение по умолчанию: 0. - [transmit-interval <1-10>]
Определяет частоту передачи пакетов обнаружения петель.
Значение по умолчанию: 5 секунд.
- [receiver-action <send-disable | no-disable>]
- Для вывода информации по портам с включенной функцией обнаружения петель введите следующую команду:
show loop-protect <port-list>
Если не указан список портов, то выводится информация только для портов на которых данная функция включена.
30 авг. 2007 г.
Незакончена глава руководства
Сегодня понял, что закончить перевод 5-ой главы руководства по OpenLDAP не смогу - не хватает знания предметной области.
Если у кого есть время, помогите закончить. - там совсем немного осталось.
Не законченный перевод здесь: http://docs.google.com/Doc?id=dgg22454_17cqzsph
Могу предоставить доступ на редактирование. Для этого нужен ящик на Гугле.
Если у кого есть время, помогите закончить. - там совсем немного осталось.
Не законченный перевод здесь: http://docs.google.com/Doc?id=dgg22454_17cqzsph
Могу предоставить доступ на редактирование. Для этого нужен ящик на Гугле.
24 авг. 2007 г.
Перевод руководства администратора OpenLDAP
Которую неделю занят переводом домена под Gentoo Linux.
Главная загвоздка - LDAP.
Оказалось, что по OpenLDAP нет русского руководства. И как раз третью неделю перевожу главы из него.
Как закончу обязательно опубликую)
Главная загвоздка - LDAP.
Оказалось, что по OpenLDAP нет русского руководства. И как раз третью неделю перевожу главы из него.
Как закончу обязательно опубликую)
Подписаться на:
Сообщения (Atom)
