Это чуток из другой оперы. Вы как раз наоборот сиспрепом вынесете комп из домена. А magnitudo хочет, чтобы даже при разворачивании из образа не вылетал.
О, вопрос про AF был, но я оказывается перепутал — он по поводу mhdd. По поводу hdparm не было — говорю же, нашли ответ в исходниках, чего спрашивать? Ссылки не будет, она нерелевантна. (Если кому-то интересно, идите в мой профиль, там «его» и «q&a» — сами увидите.)
В тексте ниже сбойный оригинал — sdb, spare — sda.
Информацию о массиве смотреть так: mdadm --detail /dev/md2 (в mdstat маловато интересного)
Анализ партиций в parted (универсальное решение, поэтому он):
unit b
select /dev/sda
print
select /dev/sdb
print
Собственнно таблица выглядит так:
Number Start End Size File system Name Flags
…
3 34898706432B 1134410334207B 1099511627776B raid
…
(3 -как раз та партиция, которая не синкается)
Заодно мы убеждаемся, что партиции на дисках точно одинаковые по размеру (unit b говорит «показывай в байтах»; можно ещё настроить показ в секторах).
dmesg подобный:
… kernel: [71238.737802] sd 1:0:0:0: [sdb] Unhandled sense code
… kernel: [71238.737828] sd 1:0:0:0: [sdb] Result: hostbyte=DID_OK driverbyte=DRIVER_SENSE
… kernel: [71238.737860] sd 1:0:0:0: [sdb] Sense Key: Medium Error [current] [descriptor]
… kernel: [71238.739405] Descriptor sense data with sense descriptors (in hex):
… kernel: [71238.739434] 72 03 11 04 00 00 00 0c 00 0a 80 00 00 00 00 00
… kernel: [71238.739478] 43 d8 23 98
… kernel: [71238.739504] sd 1:0:0:0: [sdb] Add. Sense: Unrecovered read error — auto reallocate failed
… kernel: [71238.739554] sd 1:0:0:0: [sdb] CDB: Read(10): 28 00 43 d8 23 98 00 00 08 00
… kernel: [71238.739639] ata2: EH complete
… kernel: [71238.833501] md: md2: recovery done.
причём на самом деле нисколько он не done
Так мы находим сбойный сектор:
dd if=/dev/sdb of=/dev/null
и ждём обрыва, наблюдая за результатом. Можно партицию сразу if=/dev/sdb3.
вот программа выдала номер сбойного сектора. Это номер относительно начала партиции:
dd: reading `/dev/sdb3': Input/output error
1159470544+0 records in
1159470544+0 records out
593648918528 bytes (594 GB) copied, 4664.35 s, 127 MB/s
bs по умолчанию 512 байтов, поэтому это сектор. Номер LBA от начала диска рассчитывается легко.
Длина раздела — 1099511627776 — ровно терабайт в моём случае. Начало — 34898706432 байт. Номер сектора от начала раздела — 1159470544.
LBA виртуального сектора (у нас advanced format) рассчитывается так: 34898706432/512+1159470544 = 1227632080
Проверяем: hdparm --read-sector 1227632080 — оказался живой! Зато ...79 — мёртвый, и вообще все восемь — 78, 77,… — мёртвые (весь физический сектор).
Итак, молотком hdparmа по секторам 1227632072..1227632079.
(команда искажена специально, чтобы не выполнилась — может уничтожить данные!)
hdparm –write-sector 1227632072 /dev/sdb –no-i-dont-know-what-i-am-doing
Программа сама поймёт, что нужно убить все восемь (смотрели исходники).
hdparm --read-sector 1227632072 /dev/sdb не работал, а теперь работает! А в smart появилась реаллокация. И синк прошёл до конца.
Ну, а после этого настоятельно советую запустить check (echo «check» > /sys/block/md2/md/sync_action, мог спутать путь, проверьте). Для всех массивов. После этого вероятно стоит поменять теперь внезапно сбойный диск.
Простите за сумбур! Я частично восстанавливал по памяти, частично по логам чата (отсюда номера), не все команды сохранились — досочинял. Должно быть правильно.
Например, есть подозрение, что правило iptables –t filter –A INPUT –i eth0 –d 255.255.255.255 –j DROP у вас не сработает никогда, а если бы такой пакет и пришёл, он не принёс бы никакого вреда. Вот вы его вставили — вы понимаете, что от этого изменилось?
Грустный факт заключается в том, что есть эти «если нет». Бывает, приходится делать разные вещи.
Работа с телефонией на компе, зачастую, это понимание того факта, что добиться 100% утилизации процессоров нереально, и высокая загрузка — это характерный такой показатель сбоя системы. В реальности всё нормально работает при загрузке меньше 10%, если больше — начинаются слышимые проблемы.
Очень хорошо это заметно, если вы задумаетесь о работе с факсами. Любимая тема просто. Отмахнуться не получится: это настолько удобно, что никто не собирается от них отказываться; фактически я знаю людей, которые внедряют IP-телефонию исключительно в надежде, что факсы будут работать лучше. И факсы — это первое, что сломается, если хоть появятся хоть какие-то лишние задержки или потери в системе телефонии.
Я, откровенно говоря, только на АТС (ну, обычная городская АТС) видел оборудование, действительно способное стабильно обслуживать 100+ разговоров.
Я не теоретик. Я обслуживаю несколько таких систем, в том числе — IP-телефонию в такси. Хорошо знаю, что можно сделать, что нельзя, и чего это всё стоит.
Никак не считаю. Нужно проверять. Вообще, предполагаю, что могут возникнуть проблемы с jitter, из-за постоянных переключений контекста и огромного числа прерываний с сетевых интерфейсов.
Какое pps вообще переживает операционная система? (Ну, хотябы флуд-пингуйте ping -f сразу из нескольких мест и наблюдайте.) Какая загрузка процессоров? Какие при этом статистики прерываний (хотя бы из /proc/interrupts)?
давайте я теперь вас раскритикую :)
1.2.3.4 нельзя использовать в документации. По rfc5735 для этих целей положено использовать подсеть 192.0.2.0/24.
А теперь сделайте по RFC и получите точную копию того, что написал я. За исключением второго фильтра, я предполагал, что файерволл stateful, достаточно разрешить первый пакет и всё остальное он разрешит сам.
icoz
«поэтому ответов мы не увидим» не из-за роутера. Роутер-то преобразовал бы назад, было бы что преобразовывать. Только вот комп ему ничего не отдаст — пока не найдёт mac-адрес 192.168.1.77, никаких пакетов не будет. Либо нужно создать этот адрес, либо сказать компу, чтобы и не искал и направлял на роутер сразу.
ntlm v2 криптографически не взломан, простым перебором пароли [a-z0-9]{12,} вы не подберёте.
А уж тем более если kerberos настроить — то вообще не вижу проблем. В домен винду для этого загонять и не обязательно — достаточно сопоставить principal с имеющейся локальной учёткой.
Опять же, сомневающиеся могут настроить ipsec-тоннели.
Ну тогда ваша задача упрощается. Тот 389, который я порекомендовал, является этакой «свободной версией» Red Hat Directory Server. Так что берите его, он должен по крайней мере в RH и OEL (который форк RH) встраиваться как родной.
Поставьте два LDAP-сервера; настройте кэширование. Всё это встроено в MS AD, почему бы и другим не использовать?
Maxim_ka, nsswitch нужен немного для другого. К аутентификации пользователей он никакого отношения не имеет, он определяет, откуда брать соответствия типа «номер-имя» — отсюда название «name service switch». Выбираем, как разрешать сетевые номера и сетевые имена — через файлик hosts или через систему dns; выбираем, как связать uid/gid и имена пользователей — из файлов passwd/group или из ldap или из mysql и тому подобное.
Maxim_ka, LDAP — это директория. В ней может быть всё, что угодно: база пользователей, база сервисов, сами данные сервисов и тому подобное.
К линуксовому логину конечно прикручивается через PAM — т.к. вся аутентификация там по определению через PAM. Ставится модуль pam_ldap, который проверяет учётные данные по директории, и вперёд.
Microsoft Active Directory и есть LDAP-сервер (да, соответственно, можно openldapовым ldapsearch прочитать содержимое AD, а можно и логин в линукс прикрутить к AD). Только там есть пара несоответствий с протоколами (типа тот же OID означает что-нибудь другое, нежели в стандарте), и есть ещё плюшки типа безопасной сетевой аутентификации через Kerberos и продвинутого управления правами (то есть авторизацией).
lastkrick, вы сравнили тёплое и мелкое. LDAP — не «вместо PAM»; в линуксе сейчас любой логин делается через PAM. Даже AD. Что угодно. По умолчанию обычно используется pam_shadow, но никто не мешает использовать другую систему аутентификации. LDAP прикручивается тоже через PAM.
В общем, если это сообщение выгрузить в файл, это будет обычный файл из maildir. Если не удастся заставить Zend распарсить это из строки в памяти (во всяком случае, я не нашёл, как — то ли документация убогая, то ли сам парсер), можно попробовать сымитировать для него maildir, хотя для этого придётся создавать соответствующую структуру директорий и помещать сообщение во временный файл в этой структуре.