Система Raspbian продолжает переименовывать разделы
У меня Raspberry Pi под управлением Raspbian Jessie Lite (безголовая версия), и я уже некоторое время использую его как дамп файла и git-сервер. Я подключил к нему внешний жесткий диск USB, чтобы использовать его, но, похоже, с ним возникли некоторые проблемы.
По-видимому, нет никаких причин, система переименовывает мой диск из /dev/sda1
в /dev/sdb1
в /dev/sdc1
и так каждые несколько дней. Это приводит к тому, что серверам git и SFTP не удается найти файлы в каталоге, к которому этот диск должен быть подключен.
После запуска fdisk -l
Я вижу, что диск был переименован.
Device Boot Start End Sectors Size Id Type
/dev/sdb1 * 2048 3907029166 3907027119 1.8T 7 HPFS/NTFS/exFAT
Тем не мение, df
все еще имеет старое имя диска.
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 1831250820 10976 1733547784 1% /media/USBHDD1
При попытке доступа /media/USBHDD1
после этого изменения:
# ls /media/USBHDD1/
ls: reading directory /media/USBHDD1/: Input/output error
Я модифицировал /etc/fstab
использовать UUID диска, так работает mount -a
временно решает проблему, и Pi больше не входит в панику ядра при загрузке. Это, однако, раздражает. Работа останавливается, пока я не могу подключиться к SSH и исправлять его каждые несколько дней, и это стало неприемлемым.
Что вызвало бы переименование, и как я могу его остановить или получить df
помнить UUID, а не тот ярлык?
1 ответ
Возможно, ваша проблема связана с энергосбережением: диск вращается сам по себе, общий ресурс становится недоступным, когда диск появляется снова, ему назначается другое имя устройства (sdb
) и доля не работает.
Есть два различных способа борьбы с этим, вы можете попробовать их по очереди:
Возьмите под контроль энергосбережение с помощью
hdparm
: из всегда полезной вики Arch Linux вы проверяете текущие значения параметров энергосбережения сhdparm -B /dev/sda hdparm -S /dev/sda
где
-B Установить функцию расширенного управления питанием. Возможные значения находятся в диапазоне от 1 до 255, низкие значения означают более агрессивное управление питанием, а более высокие значения означают лучшую производительность. Значения от 1 до 127 допускают замедление, а значения от 128 до 254 - нет. Значение 255 полностью отключает эту функцию.
-S Установить время ожидания (spindown) для накопителя. Тайм-аут указывает, как долго ждать в режиме ожидания (без активности диска) перед выключением двигателя для экономии энергии. Значение 0 отключает вращение, значения от 1 до 240 указывают кратные 5 секунд, а значения от 241 до 251 указывают кратные 30 минут.
Затем вы указываете, если это необходимо
hdparm -B 255 /dev/sda hdparm -S 0 /dev/sda
и посмотрим, возникнет ли та же проблема.
Вторая возможность - написать
udev
править силойudev
назначать всегда одну и ту же букву вашему диску: добавьте в файл следующее правило/etc/udev/rules.d/10-local.rules
(если у вас нет файла, создайте его)ACTION=="add", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", SYMLINK+="sda"
(коды поставщиков и продуктов относятся к моей флешке, вам придется подставлять свои собственные значения, которые вы получаете с
lsusb
).Затем вы можете проверить, что это работает с помощью
udevadm info -a -p $(udevadm info -q path -n /dev/sda)