Raspberry Pi как подключить жесткий диск?

Тема в разделе "Raspberry", создана пользователем Транклюкатор, 11 фев 2018.

  1. Транклюкатор

    Транклюкатор Господин ПЖ

    Пошаговая инструкция по подключению жесткого диска к Raspberry Pi .

    Не так давно купил себе USB жесткий диск на один терабайт и решил его подключить к Raspberry Pi, чтобы немного почистить ноутбук и дать больше места торренту. Я предполагал, что моей Micro-USB зарядки на 0,7 A не хватит для нормальной работы жесткого диска – это и подтвердилось на практике. Raspberry Pi просто отказывался загружаться, вываливая кучу ошибок.

    Заказал себе новый источник питания током на 2 Ампера и повторил попытку – загрузка прошла успешно.

    [​IMG]

    По инструкции, найденной в Интернете, установил пакет ntfs-3g и смонтировал USB HDD на Raspberry Pi. Диск определился нормально.

    Настроил доступ к нему по сети через Samba и закинул парочку файлов. Все шло как по маслу.

    На радостях перенастроил Torrent на новое место - вот тут и начались косяки. Torrent клиент Transmission отказывался качать файлы, выдавая ошибку:

    Error: No data found! Ensure your drives are connected or use "Set Location". To re-download, remove the torrent and re-add it.

    Не найдя в Интернете рабочего решения, я обратился к другу за помощью - он и помог решить мне эту проблему.

    В результате представляю вашему вниманию пошаговую инструкцию по подключению USB HDD с файловой системой NTFS к миникомпьютеру Raspberry Pi.

    1. Подключаем USB HDD к Raspberry Pi

    2. Для поддержки NTFS необходимо установить пакет ntfs-3g. Для этого в консоли набираем команду:

    sudo apt-get install ntfs-3g

    3. Создаем каталог, в который будем монтировать наш USB HDD

    sudo mkdir /mnt/usbdrive

    4. Устанавливаем права на запись на этот каталог

    sudo chmod 777 /mnt/usbdrive

    5. Прописываем в конец файла /etc/fstab команду авто монтирования нашего USB HDD:

    /dev/sda1 /mnt/usbdrive ntfs-3g defaults,rw 0 1

    В результате файл /etc/fstab должен выглядеть примерно так:

    [​IMG]

    rw - указан для того, чтобы USB HDD не монтировался в режиме “Read only”.

    6. Перезагружаем Raspberry Pi командой:

    sudo reboot

    На этом процесс подключения USB HDD к миникомпьютеру Raspberry Pi завершен.

    [​IMG]

    Источник https://geekelectronics.org/raspberry-pi/raspberry-pi-podklyuchenie-usb-hdd.html
     
    Izilda нравится это.
  2. Транклюкатор

    Транклюкатор Господин ПЖ

    Как заставить Raspbian «переползти» на HDD или хороший БП - наше ВСЕ.

    Решил я немного расширить память на своем Raspberry для того, чтобы не бояться в один прекрасный момент потерять данные или наработки своих экспериментов (не верю я, что SD карты «долговечные»).
    До этого я использовал карту памяти которая шла в комплекте с Raspberry размером 8Гб с логотипом малины. На ней уже работал интернет приемник управляемый пультом от телека, говорящий «гугловским» голосом названия радиостанций и время (если попросить J).
    Все бы хорошо, но хочется полностью загрузить маленький «комп», чтоб он хотя бы начал «нагреваться».
    Для этого установим:
    Ngnix локальный сервер (больше для понтов)
    Transmission качалку торрентов (хотя в сфере текущих событий с этим нужно поаккуратней)
    Aria2c качалку файлов (замечательная штука – может тянуть с разных файлопомоек один файл)
    Подключим:
    датчики и релюшки (для мониторинга температуры, сигнализации и управления нагрузками)
    USB модем (для контроля и управления всем этим «хозяйством» удаленно)
    блютуз ( пускай «железка» узнает «хозяина» по мак дресу).
    И еще …, потом придумаем :).

    А пока просто дадим системе больше места для «драки».
    Почитал я интернет и понял, что от карты памяти избавиться не получится, но она нужна только для предварительного старта. Нашел у себя несколько карт памяти размером 32, 64 и 256 Мб. Сразу скажу, что со старыми картами система почему-то не захотела стартовать, но зато у меня оказалась карта, которая шла в комплекте с пару лет назад купленным фотоаппаратом объемом аж 32 Мб J.
    В общем для начала работы нам нужны следующие «ингредиенты»:
    1. Карта памяти размером от 32 Мб.
    2. Любой жесткий диск – чем больше, тем лучше.
    3. Переходник для подключения жестких дисков к ЮСБ (с внешним питанием).
    4. Образ raspbian скачанный из всемирной сети.
    5. Программа Win32DiskImager скачанная от туда же.
    6. Обязательно НОРМАЛЬНЫЙ блок питания на 5 вольт и не меньше 3 Ампер.

    Если все это есть, то «бубен» нам не понадобиться. Я целый вечер с ним упражнялся, пока не понял, что родной блок питания (идущий в комплекте с малиной) не может нормально запитать одновременно карту памяти и переходник юсб! (питание на сам внешний HDD подавалось отдельно). В тот вечер я так и не смог сообразить, почему система стартует до программы первоначальной конфигурации, но при подтверждении выбора локали тут же сыпались ошибки чтения диска. Гугл по этому поводу «заливался соловьем» – у всех все работает «с полпинка».
    Как обычно просветление пришло утром и я решил сделать «ход конем», выкинул все «дефективные» блоки питания и подключил Raspberry и внешний HDD к недавно приехавшему с «Космодрома» блоку с такими характеристиками :
    Модульный источник питания в металлическом корпусе NED-35A:
    AC/DC преобразователь: в кожухе, 35 Вт
    выходов 2: 5В @ 5А, 12В @ 1.5А
    вход: 85…264VAC / 120…370VDC, -20...60°C.

    Естественно все сразу завелось - хороший БП наше все!

    А теперь подробней как заставить Raspbian «переползти» на HDD.
    Прежде всего жесткий диск подключаем к «большому брату» с Win7 и запускаем утилиту Win32DiskImager.
    Внимание! Лучше отключить все лишние съемные устройства, перепутаете диски – будет весело :).
    Указываем в поле Image File путь в скаченному образу Raspbian, ОБЯЗАТЕЛЬНО обратите внимание на выбранную букву диска(справа выпадающий список).
    Жмем кнопку Write и образ будет записан на HDD.
    Отключаем - подключаем HDD и видим в системе диск объемом около 60 Мб формата FAT.
    Теперь самое время подключить карту памяти и отформатировать ее в FAT.
    Копируем, или переносим содержимое HDD на карту памяти(там всего 19 Мб файлов).
    На карте памяти редактируем файл cmdline.txt, изменяем параметр /dev/mmcblk0p1 на /dev/sda1 не забываем сохранить изменения.

    Дальше нам нужно произвести изменения с нашим HDD. Я уверен, что есть способ и проще, но этот – железобетонный.
    Если есть доступ к linux машине то отлично, но если нет, тогда устанавливаем себе виртуалку с Debian(я так и сделал) или любым другим дистрибутивом. А можно просто загрузиться с любого загрузочного Linux диска (привет Puppy https://www.puppyrus.org/).
    В linux, после подключения HDD мы уже увидим два диска FAT и EXT4 и кусок неразмеченной области.
    На диске EXT4 (скорее всего это будет sda2), нужно отредактировать файл таблицы разделов /etc/fstab, что – бы он выглядел так:

    proc /proc proc defaults 0 0
    /dev/mmcblk0p5 /boot vfat defaults 0 2
    /dev/sda2 / ext4 defaults,noatime 0 1
    # a swapfile is not a swap partition, so no using swapon|off from here on, use dphys-swapfile swap[on|off] for that
    Изменяем выделенную строку.
    Так - же не забываем указать размер раздела подкачки в файле /etc/dphys-swapfile:

    CONF_SWAPSIZE=256
    При помощи замечательной программы Gparted все оставшееся место используем для создания раздела EXT4 – где будем хранить разную информацию (скачанные из сети файлы, личные фотки и т.д.).

    Вот и все, теперь правильно извлекаем наш HDD, втыкаем в Raspberry карту памяти и подключаем к USB наш HDD. Включаем систему и производим все первоначальные настройки как обычно.

    Это все будет отлично работать если к системе будет подключен только один съемный диск, но если мы захотим подключить дополнительный диск (например для копирования каких то файлов) все может сломаться. Вот для таких случаев мы «жестко» пропишем основной (root) раздел по его UUID, этот самый UUID является механизмом присвоения уникальных обозначений каждой файловой системе.
    Для просмотра всех UUID выполняем команду:

    ls -laF /dev/disk/by-uuid/
    и видим примерно следующее:

    итого 0
    drwxr-xr-x 2 root root 120 Янв 1 1970 ./
    drwxr-xr-x 5 root root 100 Янв 1 1970 ../
    lrwxrwxrwx 1 root root 15 Янв 1 1970 7A57-8A21 -> ../../mmcblk0p1
    lrwxrwxrwx 1 root root 10 Янв 1 1970 aa7a5c08-3f5a-4024-a3b5-a6da55cc20f4 -> ../../sda1
    lrwxrwxrwx 1 root root 10 Окт 19 16:18 dfe2d5b4-69ec-4108-88e5-3eb23eb72728 -> ../../sda2
    lrwxrwxrwx 1 root root 10 Янв 1 1970 e7169bc6-42ad-42f3-ac77-9afc99bd6a62 -> ../../sda3
    Наш системный диск sda2 и соответственно его UUID равен dfe2d5b4-69ec-4108-88e5-3eb23eb72728, теперь в файле fstab нам нужно заменить /dev/sda2 на UUID= dfe2d5b4-69ec-4108-88e5-3eb23eb72728 и система больше не потеряется.
    Но у нас еще остался один раздел на диске для данных /dev/sda3 и мы сразу подключим его к /home/media (мне так «пришло»).
    Создаем каталог, в который будем монтировать наш sda3

    sudo mkdir /home/media
    Устанавливаем права на запись на этот каталог

    sudo chmod 777 /home/media
    Прописываем в конец файла /etc/fstab команду авто монтирования нашего хранилища:

    UUID=e7169bc6-42ad-42f3-ac77-9afc99bd6a62 /home/media ext4 defaults,rw 0 1

    Окончательное содержимое fstab:

    proc /proc proc defaults 0 0
    /dev/mmcblk0p5 /boot vfat defaults 0 2
    UUID=dfe2d5b4-69ec-4108-88e5-3eb23eb72728 / ext4 defaults,noatime 0 1
    UUID=e7169bc6-42ad-42f3-ac77-9afc99bd6a62 /home/media ext4 defaults,rw 0 1

    И в заключении инструкция, позволяющая перенести действующую систему на HDD в пару кликов, взято отсюда https://www.raspberrypi.org/phpBB3/viewtopic.php?f=66&t=48273:
    1) загрузитесь с карты памяти и выполните все обновления на текущую дату
    sudo apt-get update && sudo apt-get upgrade -y
    2) подтвердите предложенные изменения
    3) подключите внешний HDD формата EXT4
    4) подмонтируйте раздел
    sudo mount /dev/sda1 /mnt
    5) скопируйте, синхронизируйте все данные на новый раздел
    sudo rsync –ax / /mnt/
    6) измените расположение root системы
    sudo nano /boot/cmdline.txt
    замените /dev/mmcblk0p1 на /dev/sda1
    7) отредактируйте /mnt/etc/fstab
    точку монтирования / замените на /dev/sda1
    8) перезагрузите ситему
    sudo shutdown -r now


    На этом «эпопею» с подключением внешнего HDD и переноса на него rasbian считаем законченной, дальше будем наполнять систему нужными программами и утилитами.



    Подробнее здесь: https://kostya-ov.webnode.ru/news/kak-zastavit-raspbian-perepolzti-na-hdd-ili-khoroshij-bp-nashe-vse-/
     
    Izilda и Sev25 нравится это.