В тази статия ще разгледаме решения на проблеми, когато виртуален или физически сървър, базиран на Ubuntu / Mint / Kali, не се зарежда и пада в BusyBox в момента на инициализация initramfs. В този случай Linux не се зарежда и за потребителя е достъпен само командният ред initramfs.
Initramfs - това е първоначалната файлова система на RAM tmpfs, което не използва отделно блок устройство. като initrd, тя съдържа помощните програми и скриптове, необходими за монтиране на файловите системи, преди да извикате init, който се намира в кореновата файлова система.Проблем със суперблока
Ако Ubuntu попадна в busbox по време на инициализация на initramfs, повреденият суперблок може да се появи на диска. Linux съхранява множество копия на суперблокове.
За да се възстановим в случай на такъв проблем, трябва да стартираме от изображението / диска и да стартираме Terminal. След зареждането в терминала въвеждаме командата:
# sudo fdisk -l | grep Linux | grep -Ev 'swap'
Екипът ще върне информация за нашия раздел:
/ dev / vda2 4096 83884031 83879936 40G Linux файлова система
Запомнете името на секцията и я посочете в следната команда:
# sudo dumpe2fs / dev / vda2 | греп суперблок
Командата ще върне списък на резервните суперблокове:
Ще използваме втория резервен суперблок, за да заменим повредения (можете да изберете друг, освен първичен). Нека да проверим диска, като използваме резервния подблок за възстановяване:
# sudo fsck -b 98304 / dev / vda2 -y
fsck от util-linux 2.31.1 e2fsck 1.44.1 (24 март 2018) / dev / vda2 е монтиран. e2fsck: Не може да продължи, прекъсва
Трябва да демонтирате раздел:# umount / dev / vda2
След като успешно замените суперблока, трябва да получите следното съобщение:
fsck от util-linux 2.31.1 e2fsck 1.44.1 (24 март 2018) / dev / vda2 не беше чисто откачен, проверете принудително. Пропуск 1: Проверка на възели, блокове и размери Pass 2: Проверка на структурата на директория Pass 3: Проверка на свързаността на директорията Pass 4: Проверка на референтните числа Pass 5: Проверка на обобщена информация за групата Безплатни блокове са грешни за група # 231 (32254, преброени = 32253) , Fix? да Безплатните блокове се считат грешно за група # 352 (32254, преброена = 32248). Fix? да Безплатните блокове се считат грешно за група № 358 (32254, преброена = 27774). Fix? да ... / dev / vda2: ***** СИСТЕМАТА НА ФАЙЛЪТ Е МОДИФИЦИРАН ***** / dev / vda2: 85986/905464576 файлове (0,2% непрекъснати), 3904682/905464576 блока
Сега рестартирайте компютрите, като изключите дистрибуторския диск и всичко трябва да е в ред.
Fsck диск грешка
Вторият вариант на грешката е наличието на следния ред в прозореца на терминала:
/ dev / sda1: НЕПРЕДЕЛЕНО НЕЗАКОННОСТ; RUN fsck РЪЧНО Корената файлова система на / dev / sda1 изисква ръчен fsck.Ако не виждате такава грешка, опитайте да въведете (initramfs) изход в прозореца на терминала. След това може да се появи грешка ...
Грешката ще покаже силата на звука, която изисква извършване на ръчна проверка на диска. В командния ред на initramfs направете:
# fsck / dev / sda1 -y
След пълна проверка трябва да рестартирате сървъра и да проверите дали всичко е наред.
Дискова грешка: / dev / sda1 не съществува
Проблем с fstab
Ако видите грешка при зареждането на сървъра:
ALERT! / dev / sda1 не съществува. Изпадане в черупка.
Най-вероятно току-що сте инсталирали Linux или има проблеми на вашия сървър fstab. Най-често проблемът възниква при инсталиране на системата с USB-шофиране. Разделът, в който системата се кълне, може да бъде всичко. Както в първия случай, ние трябва да стартираме от изображението на системата и да извършим някои действия. Проверете диска UUID с командата:
# sudo blkid
Системата ще произведе нещо подобно:
/ dev / sda2: UUID = "36cce3d5-cbdb-46f4-adbf-3f9aaa01d729" TYPE = "ext4" PARTUUID = "fea4dab1-4e12-4327-85c6-76ade18f64e1"
От тук вече е ясно, че системата трябва да се зарежда от sda2, но всъщност се зарежда от sda1.
Ние монтираме нашия раздел във всяка директория, например:
# sudo mount / dev / sda2 / mnt
Получаваме целия си / dev / sda2 дял в директорията / mnt, намираме файла / etc / fstab там и променяме реда, съдържащ / dev / sda1, на:
UUID = 36cce3d5-cbdb-46f4-adbf-3f9aaa01d729 / ext4 грешки = remount-rw 0 1
Запазете файла. Деактивирайте дяла от / mnt и рестартирайте, ако проблемът беше свързан с грешен адрес на дяла, сървърът ще се зареди.
Също така тази опция може да бъде разрешена чрез зареждане в спешни случаи. Презаредете корена, за да напишете:
# sudo mount -o преизчисляване, rw /
След това сменете fstab и рестартирайте сървъра.
Железен проблем
На някои дънни платки, пристанища SATA може да получи произволни числа. Той може също да причини грешката, описана в предишния параграф. За да коригирате грешката, трябва да промените зареждащия бутер.
Стартирайте в авариен режим или с live cd и модифицирайте файла /boot/grub/grub.cfg
В реда, в който се зарежда секцията, например:
Linux /boot/vmlinuz-4.15.0-70-generic root = / dev / sda1 rw тих асансьор = noop fsck.repair = да
Променете пътя на устройството на UUID:
Linux /boot/vmlinuz-4.15.0-70-generic root = UUID = 36cce3d5-cbdb-46f4-adbf-3f9aaa01d729 ro тих асансьор = noop fsck.repair = да