Зачастую пользователи Linux разных дистрибутивов сталкиваются с проблемой копирования данных на USB флешку. Проблема заключается в том, что копирование больших файлов сначала происходит очень быстро, а потом на нескольких процентах до завершения копирования зависает на длительное время.

Самое интересное, что иногда копирование происходило за несколько секунд, файловый менеджер выдавал окошко об успешном выполнении задачи, но на флешки продолжал мигать светодиод, свидетельствующий о том, что процесс записи еще запущен. Отмонтировать ее тоже нельзя, давалось предупреждение, что файлы будут повреждены или USB flash drive выйдет из строя.

Проблема

Я тоже столкнулся с такой проблемой. Сначала я думал, что может быть проблема в драйверах? Проблема с моим компьютером, не все железо благоприятно восприняло Debian 9. Или материнская плата работает не во всю мощность, потому как копирование в ОС Windows 7, 10 происходило ровно нормально. Четко, быстро, с процентами. Данная проблема возникала совершенно на разных компьютерах с которыми я имел дело. Но все оказалось немного иначе.

Дело в том, что в 64-ех разрядных система Linux есть известный баг, который обещают исправить с новыми обновлениями ядра. Так как шестидесяти четырех разрядные системы способны оперировать куда большими объемами памяти, то они быстро копируют файлы в кэш ОЗУ, а потом неспешно записывают из него на флешку.

Подчеркну, что описанная мной проблема возникает именно на 64-битных Linux с большим объемом ОЗУ.

Решение

Итак, для решения проблемы, в командной строке от администратора нужно выполнить следующее:

На все машины 64-bit я добавляю эти команды в файл автозапуска скриптов /etc/rc.local.

 

Данное решение возможно (скорее всего) снизит производительность (скорость записи) USB устройств — но это компромисс между задержкой и скоростью. Чтобы вернуться к настройкам по умолчанию, сделайте следующее:

…которые являются значениями по умолчанию, что означает, что поведение обратной записи будет контролироваться параметрами dirty_ratio и dirty_background_ratio.

Примечание для не очень опытных пользователей linux:

файлы в каталоге /proc являются псевдо-файлами — просто каналами связи между ядром и пользовательским пространством. Никогда не используйте редактор, чтобы изменить или посмотреть на них; вместо этого воспользуйтесь приглашением терминала от суперпользователя, например, sudo (Ubuntu) или su (Debian)  и используйте echo и cat для внесения изменений.

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

Поделиться записью:

Комментарии:

Вы можете оставить комментарий

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

Используйте данные HTML тэги и атрибуты:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: