Не вдається chroot / mnt / sysimage Після введення нового зображення на комп'ютері HP


2

Я використовую Clonezilla, щоб поставити новий образ CentOS 7 на наші комп'ютери. Більшість з них є настільними комп'ютерами Lenovo, і у нас є декілька настільних комп'ютерів HP, які в даний час працюють зі старим зображенням.

Щоб новий образ працював після того, як Clonezilla відновить його до нового зображення, нам потрібно вставити USB з Rescue Disk CentOS 7 і завантажитися до нього, щоб запустити деякі команди, починаючи з chroot /mnt/sysimage.

Це добре працює на робочих столах Lenovo, але коли я запускаю цю команду на робочих столах HP, я отримую це повідомлення про помилку:

chroot: failed to run command ‘/bin/bash’: No such file or directory

Обидві машини Lenovo і HP мають однаковий розмір HD (80 ГБ), і я вкладаю те ж саме зображення на обох. Я не можу для життя мені зрозуміти, чому він працює, а інший не є, і я не хочу розбирати новий образ і починати з нуля (у нас є тільки 5 машин, які є HP, решта - Lenovo) .

Чи може хто-небудь дати деяке уявлення, чому команда chroot не працює на машинах HP? Дякую.


Чи завантажується одна група комп'ютерів через EFI, а інша - через BIOS? Це може призвести до завантаження в різні середовища.
lungj

Я впевнений, що вони обидва завантажуються через BIOS.
snowfi6916

Відповіді:


1

Схоже, що / mnt / sysimage не встановлено, як ви очікуєте. Команда

mount | grep "/mnt/sysimage"

Вам слід повідомити, що встановлено на /mnt/sysimage. Якщо немає виходу, /mnt/sysimageне монтується, в цьому випадку спробуйте встановити його вручну. Використовуйте команду:

cat /proc/partitions | tr -s ' ' | cut -d ' ' -f 5

щоб отримати список розділів. Потім спробуйте

mount /dev/<partition_name> /mnt/sysimage

Можливо, вам доведеться вгадати правильне ім'я розділу. Нам не можна сказати з наданої вами інформації. Щоб спробувати інший розділ, відключіть попередній розділ

umount /mnt/sysimage

Я отримав список розділів, але кожен раз, коли я намагаюся запустити mount /dev/<partition_name> /mnt/sysimageкоманду, я отримую, що розділ захищений від запису і тільки для читання. Потім я спробую свою chroot /mnt/sysimageкоманду і отримаю точну помилку, що й раніше. Я досить впевнений, що це має бути те, /dev/sdaщо я монтую, тому що мої інші команди повинні працювати проти цього.
snowfi6916

Можливо, виникли проблеми, пов'язані з апаратним забезпеченням. Спробуйте dmesg | grep sdaдізнатися більше.
Акаш Равал

1
Також може статися, що виявлений жорсткий диск, і sdbв цьому випадку ваш USB-пристрій sdaмає файлову систему iso9660 (фактично тільки для читання)
Akash Rawal

Акаш, здається, це так. На машинах, які працюють, /dev/sdaє розділ Linux, в той час як на машинах, які НЕ працюють, /dev/sdbє розділ Linux і, /dev/sdaздається, USB-диск, який я вставляю для рятувального диска.
snowfi6916

0

Повідомлення про помилку вводить в оману і означає лише, що або /bin/bashне існує (не ваш випадок); або що динамічний завантажувач, який використовується, /bin/bashне існує (можливо, ваш випадок); або навіть цей rsync був використаний для створення папок usr, lib та lib64 без прапорця збереження зв'язків.

Найбільш вірогідним поясненням є те, що папки lib та / або lib64 відсутні у вашому chroot.

Ви повинні скопіювати три папки usr, lib і lib64, зберігаючи посилання, або просто mount --bindїх /mnt/sysimage.


0

Якщо він працює на деяких машинах, але не інші його архітектури можуть бути різними .. Я підозрюю, що один був встановлений 32 біт, а інший 64 біт - необхідно забезпечити бінарні файли і спільні бібліотеки існують для обох архітектур або USB флешка не буде працювати для обох. .


0

Тому я виявив, що машини HP (разом з більш новою моделлю Lenovos) монтували розділи Linux на /dev/sdbзамість того, /dev/sdaщоб вставити диск відновлення CentOS 7.

Це пояснювалося тим, що у мене був USB-рятувальний диск, тому система /dev/sdaзамість іншого розділу монтувала USB .

Щоб обійти це, я завантажив ISO для CentOS 7 і записав його на DVD і завантажив до цього. Тепер я можу виконати свою chrootкоманду без проблем, оскільки розділ Linux тепер включений /dev/sda.

Дякуємо всім за Ваші пропозиції та допомогу.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.