Использование Ubuntu с флешки

Метки:
FavoriteLoadingПометить для себя
Использование Ubuntu с флешки
5 (100%) 1 голосов

Скачать в формате электронной книги

 

Собственно, нередко возникает необходимость запускать нормальную рабочую Ubuntu (а не Live-образ) с флешки: например, если надо таскать систему с собой, или если хочется сделать “безмозглую” рабочую станцию, или в качестве эрзац-SSD для достижения бесшумной работы…да мало ли для чего еще…Вот об этом подробно и повествует материал с Хелп.Юбунту:

Оригинал публикации

 

Довольно часто возникает желание или необходимость поставить Ubuntu на USB флешку и получить возможность пользоваться своей любимой ОС на любом компьютере (лишь бы была возможность загрузиться с USB).

Делается это просто – грузимся с LiveCD Ubuntu (или с LiveUSB) и ставим систему на флешку. При этом нам не важно какая ос установлена на компьютере. Все что нужно это сам компьютер, LiveCD/USB и флешка (на которую будем ставить Ubuntu).

Более подробно процесс установки Ubuntu на флеш-накопитель описан тут.
Как вариант – можно в качестве компьютера использовать эмулятор: VirtualBox или VmWare, только в них бывает сложно подключить USB для установки Ubuntu, тогда как LiveCD не надо записывать – можно просто подключить образ в виртуальный привод CD-rom.:!:

И часто подход к этому вопросу, что называется, «в-лоб» разочаровывает низкой производительностью и тем, что флешка быстро умирает :-( .

Многие смогут возразить, что имея такую флешку с установленной ОС они ей пользуются много месяцев или даже лет. Если уточнить, то выясняется, что пользуются то ей долго, а вот грузятся с нее редко и работают не подолгу. Если же работать с такой флешки ежедневно, по много часов, то «смерть» флешки не заставит себя долго ждать: 2-3 месяца, может больше, может меньше, зависит от флешки (из личного опыта создателя начальной версии этой статьи Sly_tom_cat).

Кроме того и сам процесс установки порой приводит к неприятным последствиям.

Но не надо отчаиваться и опускать руки…. Даже из не очень хорошего сырья можно сделать…, если не конфетку, то, по крайней мере, что-то съедобное ;-)
Разберемся в причинах печального исхода и возможных методов улучшения ситуации.

Основные ошибки при установке Ubuntu на USB флешку и как с ними бороться

По умолчанию установщик Ubuntu предлагает журналируемую файловую систему EXT4 для создаваемых разделов данных.
Кроме того, загрузчик (GRUB) по умолчанию ставится на первый диск в системе, как правило, – это встроенный HDD компьютера.
Установщик Ubuntu, довольно настойчиво, просит создать раздел подкачки (если вы его не создаете, то получите сообщение и должны будете подтвердить свое желание установить систему без swap-раздела).
Приняв эти умолчания, мы сразу создаем две проблемы.

  • На флешке создаются разделы с файловой системой, которая при работе будет осуществлять большое количество записей на флешку (чем сократит ее время жизни). Это касается и разделов EXT4 и swap-раздела.
  • Загрузчик установится так, что без флешки ваш компьютер не сможет загрузится.

Разберем подробнее эти две проблемы

Как продлить жизнь флешке

Флеш-память отличается от жестких дисков тем, что количество циклов записи ограничено типично числами 10 и 100 тысяч записей (для разных типов флеш-памяти).

Для жестких дисков такой параметр (число циклов записи) вообще почти никогда не указывается – там быстрее происходит механический износ элементов диска. А магнитный слой на поверхности диска может перезаписываться почти бесконечно.
Схемы памяти с выдерживающие до 10 тысяч записей стоят гораздо дешевле схем выдерживающих 100 тысяч… как вы думаете – какими схемами комплектуются недорогие флешки, нашедшие широкое распространение?
Но и высокая цена флешки тоже не говорит о повышенной жевучести – тут ключевое слово – тип памяти – MLC (Multi-level cell, многоуровневые ячейки памяти) выдерживает порядка 10 тысяч записей; SLC (Single-level cell, одноуровневые ячейки памяти) — более 100 тысяч. Более дорогие флешки действительно живут дольше, но достигается это другими средствами (о них – чуть позже)

Кажется это много, но разберемся как эти циклы записи «съедаются» при работе ОС.

  1. Запись на флеш-носитель происходит по-блочно (как правило – десятки килобайт), и запись последовательно двух байт в файл с интервалом между записями в несколько минут вызовет две записи одного и того же блока памяти (т.е. обновятся два раза несколько тысяч ячеек).
  2. При работе файловой системы (ФС) некоторые служебные структуры ФС обновляются постоянно:
    • журнал (для журналируемых ФС) – чем чаще он пишется, тем выше вероятность сохранения целостности ФС при сбоях системы или питания. Частота записи в журнал, как правило изменяема, но значения по умолчанию не совсем подходят для работы с флеш-памятью, а увеличение периодов между записью – приводит к увеличению вероятности потери целостности ФС при сбое.
    • i-node (специальная структура в которой сохраняется заголовок файла или каталога) – при каждом обращении (даже чтение) к файлу или каталогу в i-node прописывается дата/время последнего обращения. Казалось бы – всего несколько байт, но вспомним про блочную запись, и том, что запись их идет при каждом обращении к файлу (прочитали байт – изменились, еще байт – опять изменилось).
  3. Временные файлы и логи – так же часто обновляются.
  4. SWAP-раздел – если он используется в работе системы, то запись в него тоже очень интенсивная.

Кроме того, нужно не забывать, что лимит циклов записи действует на каждую ячейку памяти. И если на флешке в один и тот же блок сделать 10 тысяч записей, а в другие сделать по 100 записей, то блок, куда было записано 10 тысяч раз, на записи (10тысяч + сколько-то) «умрет», а контроллер флешки, обнаружив 1 битый блок, может заявить, что умерла вся флешка. А даже если он этого не сделает, то этот блок будет содержать важную для работы системы или ФС информацию, и результат будет практически тем же – внезапная остановка системы и невозможность прочитать данные с флешки. :-(

Обратите внимание:  SanDisk Cruzer Fit

Как бороться со всем этим?
Для начала поймем и примем как данность:

Флешки не вечны и умирают не предупреждая !

Осознав это поймем, что и

Система на флешке – не может быть долговечной и надежной.

А поняв и приняв это задумаемся – а нужна ли для такой системы надежность журналируемой ФС (такой дорогой ценой как сокращение времени жизни флешки и системы на ней)?
Однозначно – нет.
Нам потребуется EXT4 с отключенным журналом. Если разбираться с отключением журнал в EXT3/4 не хотите – просто воспользуйтесь EXT2.

Есть и другие ФС, и настройки, которые могут продлить жизнь флешке. Эти решения могут дать большие преимущества. Если есть желание – то поищите другие варианты. Особо обращает на себя внимание опция ssd файловой системы btrfs…:!:

Избавиться от записи даты/времени последнего доступа к файлам и директориям в i-node помогают опции монтирования файловых систем noatime и nodiratime. Их, после установки системы, нужно будет прописать в файле /etc/fstab для всех разделов системы, которые расположены на флешке.

Вообще, эти опции не только количество записей на флешке сокращают, но и на жестком диске скорость работы ФС увеличивают.

Временные файлы и swap.
Современные компьютеры редко страдают недостатком оперативной памяти (перелом в этом отношении случился в компьютерной индустрии после значительного удешевления схем памяти). И уже при 1ГБ оперативной памяти Linux довольно редко обращается к swap, если не запускать ресурсоёмкие задачи (например кодирование высококачественного видео или редактирование огромных изображений). Если памяти 2ГБ или больше, то заставить Linux использовать swap вообще довольно сложно.
Полное отсутствие swap грозит неадекватным поведением системы при исчерпании ресурсов оперативной памяти, но вспомним, что мы с вами осознали – система на USB флешке не может быть надежной по определению. Вывод напрашивается сам собой – swap для системы на флешке – не нужен. А на компьютерах с малым объемом памяти нужно быть осторожным и стараться не запускать много приложений одновременно. Можно так же настроить ramzswap (он же – compcache): своп в оперативную память с упаковкой свопируемых станиц.
Ресурсы оперативной памяти помогут и со временными файлами – достаточно смонтировать временный каталог системы /tmp в диск организованный в памяти. Для этого нам пригодится замечательная файловая система tmpfs (даже название говорит, что она хорошо подходит для /tmp).

Обратите внимание:  SanDisk Cruzer Fit

В /etc/fstab нужно прописать строчку:

В примере максимальный размер /tmp задан как 32 Мегабайта. Размер можно задать другой, но если ограничения не задать, то «сдуревшее» приложение, которое будет писать бесконечно во временный файл, может подвесить вашу систему.
Размер /tmp важно выбрать правильно т.к. в нем будут хранится самые разные вещи. Например видео с Youtube вы не сможете посмотреть до конца если файл с видео не влезет полностью в ваш /tmp.

Точно также стоит поступить и с /run (ранее известный как /var/run) и /var/lock (в этих каталогах хранится служебная информация актуальная только на время текущей сессии, объем – малюсенький, а вот обновления довольно регулярны). На них лимит размера можно не задавать. Можно пойти дальше и разместить в памяти и логи (/var/log), однако без логов на устройстве постоянного хранения данных (в нашем случае – на флешке) будет крайне трудно разобраться со сбоем системы, вызывающем перезагрузку (после перезагрузки – все что было в памяти – потеряется и логи будут «пустые» – только то, что туда запишется с момента загрузки системы). Лимит size для /var/log стоит задавать порядка 6-10Мб (для типичного десктоп варианта).
Общий вид файла /etc/fstab будет примерно таким:

В примере на флешке создан корень и отдельный /home. Если есть еще какие-то разделы с флешки – то им тоже прописываем noatime,nodiratime.

Скорость записи на флешку – тоже «больное место» нашей системы, и сокращая число циклов записи на флеш мы не только продлим время ее жизни, но и скорость работы ОС улучшим.
Обратите внимание:  SanDisk Cruzer Fit

Как правильно ставить GRUB

А тут все просто – загрузчик (GRUB) надо ставить на флешку. Если вы оставите предложенную установщиком установку (на первый жесткий диск в системе) то в MBR жесткого диска пропишется часть кода GRUB, который станет искать остальную часть своего кода на разделе, куда будет записан /boot при установке системы (т.е. на флешке). Вытащив флешку из компьютера вы не дадите коду GRUB-а на жестком диске найти свое продолжение. И компьютер не сможет загрузить ОС. Восстановить работу GRUB – просто. Если же надо восстанавливать загрузчик Windows, то стоит поискать информацию по восстановлению загрузчика на любом профильном форуме. Но лучше быть внимательным при установке, и не создавать себе лишнюю работу.

Подведем итоги

Если мы хотим пользоваться системой на флешке долго, и не получить разочарования от потери данных, то нужно делать так:

  • при установке Ubuntu на флешку:
    • тип ФС для разделов системы выбираем EXT4 с отключенным журналом (или на худой конец – EXT2).
    • swap не создаем (а если на компьютере есть раздел swap – то говорим инсталятору – не использовать его).
    • GRUB устанавливаем обязательно на флешку, где и создаем разделы для установки системы.
    • прописываем в /etc/fstab опции noatime,nodiratime для всех разделов размещенных на флешке.
    • прописываем в /etc/fstab монтирование /tmp, /run, /var/lock (и, возможно, /var/log) в tmpfs (не забываем про ограничение размера).
  • При использовании системы нужно регулярно делать резервную копию важных данных на другой носитель (не забываем про невысокую надежность ОС на флешке и возможную внезапную кончину флеш-памяти).
  • А при использовании на компьютере с небольшим объемом оперативной памяти (1Гб и менее) стараемся не запускать по много ресурсоёмких задач одновременно или изучаем и настраиваем ramzswap.
Кроме указанного, можно применить и другие приемы оптимизации производительности системы (эти приемы выходят за рамки данной статьи, но их легко найти в Internet-е).

А главное – никогда не забываем про вывод, к которому мы пришли в начале этой статьи. Повторю:ОС, установленная на флешку не может быть такой же надежной и долговечной как установленная на жесткий диск.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

(Просмотров: 89)
Категории Линуксоводство, метки . Постоянная ссылка.

Новое

12.12.2019 - Сафронов А.В. Этнополитические процессы в Восточном Средиземноморье в конце XIII – начале XII вв. до н.э. ... 11.12.2019 - Жизнь без оружия ノー・ガンズ・ライフ ... 11.12.2019 - Мейссан Т. 11 сентября 2001 года. Чудовищная махинация. ... 30.11.2019 - Клименко В. О нетерпимости ... 29.11.2019 - Сколаков А.Ю. Международное гуманитарное право: из истории правовой регламентации статуса воинских захоронений за пределами Отечества ... 27.11.2019 - Деларю Ж. История гестапо 1933-1945 ... 26.11.2019 - Жаринов К.В. Терроризм и террористы ... 25.11.2019 - Причерноморье. История, политика, культура. Выпуск XVI (V). Серия А. Античность и средневековье. ... 22.11.2019 - Татищевъ В.Н. Исторiя Россiйская ... 21.11.2019 - Вотинов А. Японский шпионаж в русско-японскую войну 1904-1905 гг. ... 20.11.2019 - Макаревич Э.Ф. Восток-запад: звёзды политического сыска ... 19.11.2019 - Самир Амин. Вирус либерализма. Перманентная война и американизация мира. ... 18.11.2019 - Адамс К. Английское путешествие к московитам ... 17.11.2019 - Рекуай. О распространении индоевропейцев ... 16.11.2019 - Ганин А.В. О роли офицеров Генерального штаба в гражданской войне ... 15.11.2019 - Москва-Берлин: политика и дипломатия Кремля, 1920-1941 ... 14.11.2019 - Яковенко И.Г., Музыкантский А.И. Манихейство и гностицизм: культурные коды русской цивилизации ... 13.11.2019 - Минаев В. Разведка и шпионаж во флоте ... 12.11.2019 - Гринфельд Л. Национализм. Пять путей к современности. ... 11.11.2019 - Ганин А.В. Семь “почему” российской Гражданской войны ... на главную

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *