mkinitcpio: команда не найдена

Мой ответ основан на подсказке Стрелы. Я не эксперт в sed, поэтому я верю в лучшее решение, чем это, но пока оно работает.

Стратегия заключалась в том, чтобы преобразовать мой файл в шестнадцатеричный с помощью xxd, а затем преобразовать шестнадцатеричный в целочисленный.

Кодировать:

xxd -p $1 | sed 's/.\{2\}/& /g' | sed 's/[^ ]* */0x&/g' | awk '{ for(i=1;i<=NF;i++) printf("%i ",$i); print ""; }' > $2

Декодировать:

awk '{ for(i=1;i<=NF;i++) printf("%02x ",$i); print ""; }' $IN > $OUT
xxd -p -r $OUT $OUT_IMAGE_NAME.jpg
rm $OUT
0
19.10.2019, 23:56
2 ответа

Начиная с 2019 -10 -06 помимо установки базового пакета необходимо установить ядро.

Таким образом, вы должны установить либо linux, либо linux -lts (, либо другое ядро ​​по вашему выбору ), которое будет получать пакет mkinitcpio в качестве зависимости.

В инструкциях от до -до -даты упоминается, что вы должны сделать:pacstrap /mnt base linux linux-firmware

Таким образом, в вашем случае в основном вы должны выполнять pacstrap /mnt linux linux-firmwareвне chroot, и тогда вы получите инструмент mkinitcpio, доступный после входа в chroot.

Видео, которое вы упомянули, датировано 2014 годом, так что не принимайте во внимание эту модификацию. В 6 :29 вы можете видеть, что пакет linux извлекается, когда он устанавливает базу, но это больше не так (, вы можете проверить в /mnt/var/log/ pacman.log, что пакет Linux не установлен ).

5
28.01.2020, 02:39

Возможно, внутри среды chroot эта команда отсутствует на вашем пути.

Пожалуйста, попробуйте внутри chroot:

/sbin/mkinitcpio -p Linux

и, если это не сработает,

/usr/sbin/mkinitcpio -p Linux

и сообщите нам, если это не сработает.

0
28.01.2020, 02:39

Теги

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