From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Thu, 6 Nov 2003 11:22:10 +0300 From: Sergey Vlasov To: community@altlinux.ru Subject: Re: [Comm] root raid on Master 2.2 Message-ID: <20031106082210.GC21967@master.mivlgu.local> Mail-Followup-To: community@altlinux.ru References: <20031106103654.0890407e.bga-no-spam@kovgok.ru> Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Qbvjkv9qwOGw/5Fx" Content-Disposition: inline In-Reply-To: <20031106103654.0890407e.bga-no-spam@kovgok.ru> X-BeenThere: community@altlinux.ru X-Mailman-Version: 2.1.3 Precedence: list Reply-To: community@altlinux.ru List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Nov 2003 08:22:12 -0000 Archived-At: List-Archive: List-Post: --Qbvjkv9qwOGw/5Fx Content-Type: text/plain; charset=koi8-r Content-Disposition: inline Content-Transfer-Encoding: 8bit On Thu, Nov 06, 2003 at 10:36:54AM +0300, Grigory Batalov wrote: [skip] > initrd для загрузки создавался по мотивам > http://www.atmsk.ru/index.php?option=faq&task=viewfaq&artid=163 > > Использовалась команда: > $ sudo mkinitrd --with raid5 --with raid1 --pause initrd-2.4.20-alt10-smp.img 2.4.20-alt10-smp > > Для создания дискеты: > $ sudo mkbootdisk --mkinitrdargs '--with raid1 --with raid5 --pause' 2.4.20-alt10-smp > > Во время паузы и ожидания нажатия ENTER в указанную директорию > initrd были скопированы: > > /dev/md{0,1,2} > /dev/sd{a,b,c,d,e}{,1,2,3} > /etc/raidtab > /sbin/raidstart > > В linuxrc дописано: > /sbin/raidstart /dev/md0 /dev/md1 /dev/md2 При таком способе RAID не запустится, если исчезнет первое устройство, прописанное в raidtab для массива. Дело в том, что raidstart фактически использует только первую запись, а остальные разделы находит само ядро, используя данные из суперблока RAID с этого устройства. Для SCSI это не так критично - при исчезновении устройств произойдёт перенумерация. Проблема возникнет только в случае, когда само устройство доступно, но суперблок RAID прочитать не удаётся. А вот в случае IDE при отсутствии первого диска система не загрузится. В mkinitrd из Сизифа используется другой способ запуска RAID - через ioctl RAID_AUTORUN; в этом случае не нужно указывать устройства - используется информация, собранная ядром при распознавании RAID-разделов. Можно поставить этот mkintrd на Master 2.2 - там нет лишних зависимостей. С ядром из Master 2.2 этот способ работает - только не используйте /dev/md255 (в той версии ядра есть ошибка - нельзя вызывать RAID_AUTORUN через то устройство md, которое потом будет использоваться). > Raidstart в данном случае собирался статически, что позволило > обойтись без динамических библиотек и уместить initrd на дискету. > Для пересборки был взят raidtools-0.90-ipl11mdk.src.rpm. > В specfile добавлено '-static': > ... > CFLAGS="$RPM_OPT_FLAGS -static" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="-static" ./autogen.sh > ... > > Бинарник получается после > $ rpmbuild -bi --target i586 raidtools.spec > в директории ~/tmp/raidtools-buildroot/sbin. > > > Несмотря на вышеизложенные действия (где была ошибка?), > загрузиться со SCSI не удалось. Не оказалось загрузочной > записи. Поэтому, загрузились с дискеты и сказали поочерёдно > $ sudo lilo -b /dev/sda > ... > $ sudo lilo -b /dev/sde > После чего стало возможно загружаться сразу с дисков. > > При сбое одного из дисков в массиве предполагается сделать: > $ sudo raidhotremove /dev/md0 /dev/sdN > $ sudo raidhotremove /dev/md1 /dev/sdN > $ sudo raidhotremove /dev/md2 /dev/sdN > <заменить диск N> > $ sudo sfdisk -d /dev/sda > table.sda > $ sudo sfdisk /dev/sdN < table.sda > $ sudo raidhotadd /dev/md0 /dev/sdN > $ sudo raidhotadd /dev/md1 /dev/sdN > $ sudo raidhotadd /dev/md2 /dev/sdN > $ sudo lilo -b /dev/sdN > > Вопросы: > > 1. Как реагировать на сообщения типа: > > md: invalid raid superblock magic on md2 > md: md2 has invalid sb, not importing! > (ругается на все md*) Игнорировать. Это попытка найти вложенный RAID (например, RAID0, а внутри - RAID1). > 2. Чем чревато, что при перезагрузке не размонтируется md0 > по причине busy, хотя md2 и md1 были только что успешно > размонтированы, и как с этим бороться? Бороться с этим бесполезно - на md0 лежит корневая ФС. Ничего страшного в этом нет - ядро при завершении работы автоматически выполняет останов RAID. > 3. Есть ли какая-нибудь утилитка, следящая за шиной SCSI и > рассылающая письма или мигающая лампочками при сбое диска? smartmontools (есть в Сизифе, только там initscript новый... надо бы сделать, как в apache) умеет работать в том числе и со SCSI-устройствами. --Qbvjkv9qwOGw/5Fx Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.3 (GNU/Linux) iD8DBQE/qgSyW82GfkQfsqIRAvDVAKCOzn+26F81h1IIwVD/CMTmsKDlLQCgi+Zl pniIx53y1SSU2oKrozDrU8A= =z31p -----END PGP SIGNATURE----- --Qbvjkv9qwOGw/5Fx--