LINUX.ORG.RU

Сообщения Malamut

 

Автостарт mdadm после перезагрузки CentOS (RHEL)

Проблема: имеем XenServer 6.1, то есть по сути CentOS 5. К нему подключены 4 диска, внимание, размером 3Tb. Хочется RAID10. Курим man mdadm, убеждаемся, что нужно использовать суперблоки версии 1, а не 0.9. Собственно весь цивилизованный мир их и использует и у меня никогда не было с ними проблем.

Как всегда даём стандартную команду:

mdadm --create --verbose /dev/md0 --level=10 --metadata=1.2 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

Дальше кидаем поверх LVM ну и т.д. Радуемся прекрасной работе. До перезагрузки. После перезагрузки, вот удивление, как всегда происходит с CentOS - нифига не работает.

Ладно, начинаем копать. Выясняется, что цент не содержит вообще ни одного скрипта для обслуживания mdadm! Ни настроек, ни мониторинга, ни автозапуска - ничего. Нет, я понимаю, что в тепличных условиях ядро вам соберёт 0.90 суперблоки само. Но поддержка 0.90 объявлена устаревшей чёрт знает когда и у меня, блин, 3Tb!

С матюгами копирую из дебиана /etc/init.d/mdadm-raid, /etc/default/mdadm, /usr/share/mdadm/*, /etc/cron.*/mdadm, /etc/init.d/mdadm и файлик для bash comletion. Попутно выясняется, что в центе нету start-stop-daemon, равно как и никакой замены для него. Так что про постоянный мониторинг можно забыть, без костылей не делается. /lib/lsb/ содержит каких-то 2-3 кастрированных функции, так что всё логгирование из mdadm-raid вырезаем, пихаем всё на место, делаем

chkconfig --add mdadm-raidэ

перезагружаемся и закономерно нифига, хотя при ручном запуске service mdadm-raid start всё работает. Вопрос: как же заставить работать mdadm в центе по-человечески? Точнее что сделать, чтобы скрипт автозапуска таки запускался при старте?

 , ,

Malamut
()

Проблемы с mdadm из 3Tb дисков

Столкнулся с проблемой создания массива из больших дисков на XenServer 6.1 (По сути CentOs какой-то там версии) Проблема заключается в том, что после перезагрузки массив пропадает.

Создаю так:

mdadm --create --verbose /dev/md0 --level=1 --metadata=1.2 --raid-devices=2 /dev/sdb /dev/sdc

Ок, всё путём:

# cat /proc/mdstat 
Personalities : [raid1] 
md0 : active raid1 sdc[1] sdb[0]
      2930266448 blocks super 1.2 [2/2] [UU]
      [>....................]  resync =  0.0% (1417088/2930266448) finish=378.9min speed=128826K/sec
      
unused devices: <none>

Хотя судя по неполной метадате не совсем:

# mdadm -E /dev/sdc
/dev/sdc:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : ffe1fe9b:f73c3ca1:f7421552:ba6657ae
           Name : 0
  Creation Time : Wed Nov 14 23:06:15 2012
     Raid Level : raid1
   Raid Devices : 2

 Avail Dev Size : 5860532896 (2794.52 GiB 3000.59 GB)
     Array Size : 5860532896 (2794.52 GiB 3000.59 GB)
    Data Offset : 272 sectors
   Super Offset : 8 sectors
          State : active
    Device UUID : cf66ac2e:77948786:b1e043c6:260246ad

    Update Time : Wed Nov 14 23:06:15 2012
       Checksum : 6b7b1523 - correct
         Events : 0


    Array Slot : 1 (0, 1)
   Array State : uU

Тут, казалось бы, в конце должна быть табличка с перечислением компонент массива, а её нету. Видимо поэтому после перезагрузки наблюдаем наличие нечитаемого /dev/md0 и пустой mdstat:

# cat /proc/mdstat
Personalities :
unused devices: <none>

Создавать через gdisk разделы с меткой Linux RAID пробовал - закономерно та же хрень. Вопрос: куда копать?

 , ,

Malamut
()

Простейшая почтовая система, которую при этом нельзя сделать

Предлагаю всем простейшую задачку из жизни, которую я не могу уже неделю решить.

Собственно, появилась необходимость развернуть почтовую систему для небольшой фирмы. Была произведена базовая настройка Postfix + Dovecot, всё чудно работает, почта бегает, пользователи довольны. И вот чёрт меня дёрнул захотеть сделать из почтовой системы конфетку. И начались проблемы. В связи с этим и хочу поднять эту тему. В сети масса информации о настройках postfix, но практически нет ничего по поводу некоторых крайне полезных и подчас необходимых плюшек, которые я и опишу. Вкратце что хочется:

Хочется простую в использовании (для пользователя) почтовую систему с доступом откудаприспичитпользователю, но при этом максимально безопасным. Теперь конкретика по пожеланиям:

  1. У пользователя должен быть единый логин и пароль для SMTP и IMAP сервера, и должен быть один Maildir++ ящик на серваке.
  2. Почтовых адресов на пользователя может быть навешено сколько угодно, с каждого из них пользователь должен иметь возможность почту отправлять и почта для каждого из них должна складываться в единый Maildir++, закреплённый за пользователем.
  3. На SMTP и IMAP серваках авторизация должна быть по логину в TLS сессии внутри внутренней сети (192.168.0.х), при подключении же извне кроме логина и пароля клиент пользователя должен предоставить сертификат, иначе в соединении отказывать.
  4. Вся исходящая почта пользователя должна складываться в подпапочку его Maildir'а, дабы она была доступна из любого почтового клиента.
  5. Ну и наконец вся почта должна полностью надёжно бекапится.

Всё просто, разумно и ИМХО полностью необходимо для любой уважающей себя конторы. Как сделал это я:

  1. Dovecot выступает в качестве LDA и в качестве сервера аутентификации для Postfix, все домены обслуживаются через virtual_domains, все адреса для одного пользователя замапины на основной через virtual_alias_maps, а разрешение на отсылку через SMTP выдаётся после сверки по smtpd_sender_login_maps. Итого - задача решена полностью, единственная проблема - при коннекте через клиент (Thunderbird) если пользователь захочет отсылать почту с разных своих адресов ему надо будет вручную добавить несколько аккаунтов с одним логином, но разными адресами отправителя, все они будут смотреть в один и тот же maildir. Немного неудобно из-за дублирования одного и того же ящика, но это ограничение клиентов и его никак не побороть.
  2. Ну собственно см. п. 1 - проблема решена почти идеально.
  3. И Postfix, и Dovecot можно настроить на отказ в обслуживании при отсутствии у клиента правильного сертификата. Увы, сделать внутреннюю сеть свободной от требования сертификата по крайней мере в dovecot невозможно, а значит и в Postfix не будем пытаться, леший с ним. Хочу тогда чтобы почта ходила только если пользователь предоставил правильный сертификат и указал правильный логин и пароль. В конце концов раздать всем внутренним клиентам сети по сертификату можно, хоть и геморно. С Dovecot проблем не возникает. С Postfix же - напротив. Есть два разрешения в smtpd_recirient_restrictions - permit_sasl_authenticated и permit_tls_clientcerts. Первое разрешает отправку через SMTP почты залогиненным, второе - предоставившим правильный сертификат. Вопрос: как их объединить в одно? Чтобы разрешение выдавалось только если и залогинился, и предоставил сертификат. Итого - проблема открыта. Почему я хочу и сертификат и логин? Потому что сертификат легко украсть, и пользователь спокойно может залогиниться в кафешке и забыть выйти, как следствие ни сертификат, ни логин по отдельности от блондинок-пользователей не спасают, а вместе уже хоть что-то, надо постараться, чтобы пропалить и логин, и сертификат.
  4. Собственно вообще не знаю, как на постфиксе такое организовать. Теоретически всё просто до жути: почта от одного из адресатов из списка должна перед посылкой в внешний мир отсылаться так же в dovecot с пометкой положить в папочку out. При этом ещё надо не забыть про алиасы. На практике же я вообще не нашёл хоть какого-то решения столь простой и необходимой задачи.
  5. Бекап - узкое место maildir. Бекап по крону - не вариант, ибо надо гарантировать сохранность всех писем, а не только основной массы. Настраивать отдельные демоны для контроля изменений в директориях - сущий бред. Самый простой вариант - вместе с пересылкой на dovecot все письма пересылать на внутренний postfix сервак, который их тупо сложит у себя. Но тут проблема синхронизации. Ибо письма должны храниться в бекапе определённое время после удаления их пользователем из ящика, а не после их доставки. Ну да ладно, скрипт синхронизации наваяю. Итого - осталось понять, как распараллелить транспорт. То есть чтобы одно письмо одновременно отправлялось по двум транспортам. Этого я тоже не нарыл в документации к постфиксу.

В общем и целом, все мои пожелания не критичны, но с другой стороны крайне необходимы для нормальной почтовой системы. Поэтому буду благодарен любым направленным посылам в сторону полезной для решения поставленной проблемы информации. Да, postfix и dovecot - не панацея, выбраны были просто как одни из самых безопасных и стабильных.

Malamut
()

Ищу Creatures Internet Edition

Никто не знает где взять образ диска с этим чудом под Линукс?? Весь интернет перерыл - нигде не нашёл((

>>>

Malamut
()

RSS подписка на новые темы