Ключевые выводы
- Разработчик Ersei загружает Arch Linux из Google Drive на старом ноутбуке без памяти.
- Использует файловую систему FUSE для обхода требований к хранилищу, преодолевая такие проблемы, как неработающие символические ссылки и проблемы с производительностью.
- Возможные варианты использования включают портативные версии Linux, упрощенную загрузку из облака и образование.
Мы все слышали о странных и сумасшедших способах, которыми люди заставляют программное обеспечение работать в местах, где оно совершенно не должно быть. Проекты, которые берут на себя разработчики, например, запуск РОК на Tesla, те, которые забавны, но в основном непрактичны в реальном мире. Один разработчик пошел еще дальше, сумев загрузить Arch Linux прямо с Google Drive на старом ноутбуке без памяти, что можно рассматривать как новаторское достижение или странный эксперимент.
Во-первых, чтобы понять сложность этой задачи, которую взял на себя разработчик по имени Ersei, важно понять процесс загрузки Linux:
1. Прошивка (BIOS/UEFI) инициирует и загружает загрузчик.
2. Загрузчик загружает ядро.
3. Ядро распаковывает временную файловую систему в оперативную память, содержащую инструменты для монтирования реальной файловой системы.
4. Ядро монтирует реальную файловую систему и переключает процесс на систему инициализации новой файловой системы.
Используя третий шаг, Эрсей планировал смонтировать файловую систему FUSE, что позволило бы Linux нормально загружаться. «Процесс загрузки Linux, с технической точки зрения, очень забавен. Позвольте мне на мгновение притвориться, что я понимаю», — сказал Эрсей. Эрсей планировал смонтировать файловую систему FUSE, что позволило бы Linux нормально загружаться. FUSE — это файловая система в пользовательском пространстве, позволяющая пользователям создавать файловые системы без необходимости в привилегированных разрешениях. Эрсей сумел сначала заставить ее загружаться с корзины Amazon S3, прежде чем пытаться Google Drive.
Загрузка Arch Linux на ноутбуке напрямую с Google Drive
Абсолютно безумное достижение.
Источник: Ерсей
Монтаж Google Drive через FUSE использование google-drive-ocamlfuse вызвало массу проблем:
- Неработающие символические ссылки: «Симлинки на символические ссылки не работают (что очень важно для вещей в /usr/lib)», — отметил Эрсей.
- Нефункциональные жесткие ссылки: Существенные для многих систем на базе Unix неработающие жесткие ссылки представляли собой существенное препятствие.
- Проблемы с производительностью: «Это так медленно», — подчеркивает Эрсей.
- Разрешения и атрибуты: Они не сработали так, как ожидалось, что еще больше усложнило настройку.
Несмотря на эти препятствия, Ersei упорствовал, вручную настраивая параметры и конфигурации, чтобы заставить это работать. В конце концов, это сработало, и они смогли загрузить свой старый ноутбук прямо из облака, создав унифицированный файл EFI с инструкциями для загрузки напрямую из Google Drive. Это сработало, и даже если это может показаться глупым проектом, существуют реальные способы применения чего-то подобного.
Например, можно было бы иметь действительно портативную версию Linux, хранящуюся в облаке, даже если она медленная для доступа и использования. Она также может позволить упростить систему загрузки облака и даже может использоваться в образовательных целях. Большинству людей это не нужно и не стоит даже пытаться создать такой проект, но для развлечения и обучения в этом нет ничего плохого. Это классный проект, который очень интересно читать, и я настоятельно рекомендую ознакомиться с постом Ersei о нем, чтобы узнать больше.