Не удалось найти устройство корневого блока (в Gentoo )

Насколько я понимаю, ваше удаленное хранилище отображается как файловая система. Я сам не использую btrfs , но я предполагаю, что снимки эквивалентны одному большому файлу «полной резервной копии», за которым следует несколько меньших «инкрементных» файлов.

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

test -t 2 && progress=--progress
rsync -av $progress --partial --append --sparse /path/to/source.img /path/to/remote/storage/

Если вы можете использовать gzip исходный файл перед его передачей, сделайте это. (Ни - rsyncable , ни rsync -z не имеют отношения к тому, что rsync рассматривает как локальную передачу файлов в локальную).)

3
09.03.2017, 13:55
5 ответов

Наконец, я понял это через несколько дней. Это вызвано проблемой с драйверами. Мой Gentoo установлен на моем внешнем жестком диске, подключенном к моему ноутбуку с помощью USB-кабеля. Однако опция USB Mass Storage Support не была замаскирована встроенной , когда я собирал свой kernel. Следовательно, он всегда блокируется таким образом. Если некоторые из них находятся в одной лодке со мной, и вы убедитесь, что вы скомпилировали всю указанную файловую систему как встроенную , проверьте, являются ли следующие параметры встроенными в ваше ядро.

  • Драйвер устройства -> Поддержка USB -> Поддержка USB Mass Storage
  • Драйвер устройства -> Поддержка USB -> Поддержка xHCI HCD (USB 3.0)
  • Драйвер устройства -> Поддержка USB -> Поддержка EHCI HCD (USB 2.0)
  • Драйвер устройства -> Поддержка USB -> Поддержка UHCI HCD (большинство Intel и VIA)

  • Драйвер устройства -> Поддержка USB -> Поддержка USB на стороне хоста

Если нет, проверьте это.

3
27.01.2020, 21:15

Возможно, это неправильный жесткий диск в вашем grub.cfg

bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2

hd1,msdos2, ahci1,msdos2 и т.д. относились бы ко второму диску. Обычно это первый hd0,msdos1, на котором установлен grub /dev/sda

проверьте это с помощью grub-install --recheck /dev/sda

Ваши разделы будут выглядеть следующим образом. (загрузка на основном)

sudo parted -l

Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sda: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End    Size    Type      File system     Flags
 1      1049kB  103GB  103GB   primary   ext4            boot
 2      103GB   107GB  4394MB  extended
 5      103GB   107GB  4394MB  logical   linux-swap(v1)
1
27.01.2020, 21:15

Если честно, я думаю, что самый простой способ сделать это - просто создать общее ядро.

Я просто беру конфигурацию ядра Ubuntu, выполняю команду make oldconfig и позволяю genkernel --no-clean --menuconfig all делать все остальное.

  • Установите ядро ​​в соответствии с инструкциями по быстрой установке.
  • Возьмите общую конфигурацию ядра:
    1) Найдите нужный файл. Самая последняя версия ядра в основном: http://kernel.ubuntu.com/~kernel-ppa/configs/
    2) wget -O /usr/src/linux/.config kernelconfigurl
  • Запустите make oldconfig . Просто удерживайте «Enter», если не знаете, как на это ответить. Нет, ничего плохого не произойдет, по умолчанию будет использоваться ответ по умолчанию, который вам в любом случае следует выбрать в общем ядре.
  • Запустите genkernel с помощью genkernel --no-clean --menuconfig all . В меню вы можете изменить вещи, если хотите, или вы можете просто выйти. И установка начнется.
  • Сгенерируйте конфигурацию GRUB с помощью grub-mkconfig -o /boot/grub/grub.cfg

Это ядро ​​будет содержать почти все модули и еще много чего. Так что все, что вы подключите, будет работать. Некоторые ветераны Unix не одобряют общие ядра. Если вы запускали Ubuntu, Fedora или любой другой дистрибутив, вы использовали общие ядра.

Вы хотите сделать минимальное ядро ​​без сбоев?
Нет проблем. После загрузки этого ядра просто подключите все устройства, которые вам когда-либо понадобятся. После этого перейдите в / usr / src / linux и выполните команду make localmodconfig . Отлично, теперь у вас есть ядро, в котором есть только то, что вам нужно.Используйте genkernel, чтобы скомпилировать новую минималистичную версию и установить ее таким же образом.

Удачи.

1
27.01.2020, 21:15

В моем случае я загружаю виртуальную машину VMWare Fusion с помощью Gentoo. Мне пришлось установить CONFIG_FUSION_SPI=Y.

0
27.01.2020, 21:15

Для меня GRUB искал LABEL=FUNTOOи либо ввел /dev/sda3в приглашении isolinux, либо временно отредактировал параметр загрузки GRUB (аргумент real_root), чтобы это сработало, поэтому решение состояло в том, чтобы пометить мой раздел /dev/sda3как FUNTOO.

0
02.09.2021, 20:08

Теги

Похожие вопросы