Я просто столкнулся с этим вопросом сам. Я нашел два способа создания SD-карты с использованием изображений .tar.gz, предоставленных ArchLinuxARM, при условии, что у вас есть USB-устройство чтения SD-карт.
Способ 1: Raspberry Pi + USB-кардридер + 1 дополнительная SD-карта
Этот метод требует дополнительной SD-карты и устройства чтения карт USB. Он использует Linux на вашем Raspberry Pi для создания новой SD-карты, которая может загружаться в ArchLinux.
- Подключите внешний USB-картридер к Raspberry Pi.
- Подключите SD-карту, на которую вы хотите установить ArchLinux, к внешнему USB-устройству чтения карт.
- Загрузите Raspberry Pi с помощью Raspbian, поскольку Raspbian имеет образ, который вы можете записать на SD-карту из OSX или Windows.
Установите bsdtar используя: sudo apt-get install bsdtar
Следуйте инструкциям ArchLinuxARM для Raspberry Pi . Убедитесь, что вы все делаете как пользователь root. Чтобы стать root на Raspbian, бегите sudo -s
.
Способ 2: VMWare + USB-картридер
Этот метод не требует дополнительной карты USB, но он требует, чтобы вы установили Linux на VMWare.
- Запустите Linux на VMWare
- Подключите внешнее устройство чтения карт USB к компьютеру, на котором работает VMWare. VMWare спросит вас, хотите ли вы подключить его к вашему экземпляру Linux, что вам и нужно.
- Следуйте инструкциям ArchLinuxARM для Raspberry Pi .
Мне удалось собрать SD-карту с ArchLinux на моем Mac под управлением VMWare Fusion. Я думаю, что это также работает с Virtual Box, хотя я не пробовал. Я думаю, что это работает на Windows, но, опять же, я не пытался.
Вы также должны знать, что VMWare не может получить доступ к встроенному в Mac считывающему устройству SD-карт , следовательно, требуется USB-устройство считывания карт. Возможно, в Windows VMWare может получить доступ к встроенному устройству чтения карт, что делает ненужным использование внешнего устройства чтения карт USB.
Примечания
Два вышеуказанных метода сработали, но мне потребовалось несколько попыток, чтобы заставить его работать. Вот некоторые из проблем, с которыми я столкнулся:
- У меня периодически возникала ошибка при использовании bsdtar для извлечения изображения. С помощью
journalctl -kf
я смог увидеть сброс, происходящий в системе USB. Я смог избавиться от этого сброса, подключив мой USB-ридер без питания к USB-концентратору, а не напрямую подключив его к Raspberry Pi (метод 1) или Mac (метод 2).
- Используя метод 2, я продолжал получать ошибку о невозможности преобразования имен путей из UTF-8 в текущую локаль. Затем я понял, что моя текущая локаль не была настроена на UTF-8, поэтому я исправил эту проблему, запустив
localectl set-locale LANG=en_US.UTF-8
и затем выйдя из системы и вернувшись в Linux.
При загрузке Raspberry Pi в Arch я настоятельно рекомендую использовать последовательный кабель USB, такой как последовательный кабель USB-TTL от Adafruit или любой кабель USB-последовательный порт на основе FTDI. Это позволит вам увидеть весь процесс загрузки Raspberry Pi, который является ключевым средством отладки при попытке использовать новую ОС на Raspberry Pi.