Raspberry Pi з місця на диску


9

Я смішно новий в rpi, і я слідкував за великою кількістю навчальних посібників, щоб спробувати розпізнати обличчя, працюючи над моїм пі. У мене не вистачає місця на диску, і, схоже, завдяки наступним навчальним посібникам я завантажився на сміття.

В іншому обговоренні на розділах я побачив, що я можу виконати команду бачити мою. Ось що це показує.

pi@raspberrypi ~ $ sudo fdisk -l

Disk /dev/mmcblk0: 7969 MB, 7969177600 bytes
4 heads, 16 sectors/track, 243200 cylinders, total 15564800 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000c27cb

    Device Boot      Start         End      Blocks   Id  System
/dev/mmcblk0p1            8192     1685546      838677+   e  W95 FAT16 (LBA)
/dev/mmcblk0p2         1687552    15499263     6905856   85  Linux extended
/dev/mmcblk0p3        15499264    15564799       32768   83  Linux
/dev/mmcblk0p5         1695744     1818623       61440    c  W95 FAT32 (LBA)
/dev/mmcblk0p6         1826816    15499263     6836224   83  Linux

Я якось отримав 5 розділів? Як я можу звільнити місце?

EDIT: вихід df -h

pi@raspberrypi ~ $ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/root       6.3G  6.0G   25M 100% /
devtmpfs        428M     0  428M   0% /dev
tmpfs            87M  336K   86M   1% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           173M     0  173M   0% /run/shm
/dev/mmcblk0p5   60M   20M   41M  33% /boot
/dev/mmcblk0p3   27M  397K   25M   2% /media/SETTINGS

Наскільки велика карта SD? Який вихід df -h? Ви запускали sudo raspi-config та розширюєте кореневу файлову систему (варіант 1 - я вірю)?
Стів Робільярд

8gig карту, я її розширив.
Навантажувач

це "просто" розпбіян чи нооби? Я не знаю, для чого цей другий розділ FAT.
Ghanima

Це - NOOBS так. Чи потрібно починати спочатку? Потрібно перевстановити без NOOBS?
Навантажувач

1
du / |sort -nСпершу перевірте , що їсть місце, наприклад, журнали (якщо логротат працює неправильно) або кеш менеджера пакунків. Командний рядок Стіва з -shкращим краще зробити так.
Ghanima

Відповіді:


10

Ось що для мене працює. Ви можете спробувати цей набір команд для очищення непотрібних файлів пакету:

sudo apt-get autoremove
sudo apt-get clean

Чудо не вийде, але іноді звільняю мене пару сотень МБ.

Якщо ви хочете запустити просто распбіан, мені пощастило з Джессі Літом та додаванням пакунків, як мені потрібно. Ось приклад на 8 ГБ uSD карти:

Filesystem      Size  Used Avail Use% Mounted on
/dev/root       7.8G  1.1G  6.4G  15% /
devtmpfs        224M     0  224M   0% /dev
tmpfs           229M     0  229M   0% /dev/shm
tmpfs           229M  4.6M  224M   2% /run
tmpfs           5.3M  4.1k  5.3M   1% /run/lock
tmpfs           229M     0  229M   0% /sys/fs/cgroup
/dev/mmcblk0p1   63M   21M   43M  34% /boot

Це здається корисним. Я спробую це вранці. Я "чистив", але не авторемонтом. Дякую за пропозицію.
Навантажувач

Я також загляну в Джессі Літ, але це може повернути мене на деякий час. Я хотів би, щоб був спосіб просто завантажити знімки ОС з потрібними мені речами :)
Forklift

AFAIK, "apt-get autoremove" видаляє лише застарілі файли пакетів, тоді як "apt-get clean" видаляє їх усі. Якщо ви плануєте перевстановити деякі пакети, попередня дія може бути доцільною, щоб заощадити час та пропускну здатність.
derjoachim

7

Якщо ви встановили Джессі на 8 Гб, подивіться програми, які ви не використовуєте. Я видалив Mathematica і отримав понад 600 Мб за допомогою

sudo apt-get purge wolfram-engine

І інші пакунки, які займають місце: lifehacker.com/…
nsof

3

Іншим рішенням буде використання більшого (32G) USB-накопичувача або SD-карти (із зчитувачем USB-SD-карт) та перенесення вашої кореневої файлової системи на новий пристрій. Див. Розширення розміру кореня / використання зовнішнього жорсткого диска .

Якщо ви хочете почати спочатку, не втрачаючи те, що у вас є на більшій SD-картці , ось спосіб встановити завантажувану програму Raspbian на нову SD-карту. Після встановлення замініть нову SD карту завантажувальною SD-карткою, і ви матимете чисту систему з доступом до всієї старої інформації.

Install Raspbian on the Raspberry Pi from Linux
  1. НАЛАШТУВАННЯ - Вимоги - це система Linux (тип), здатна підключитися до Інтернету, записати на мікро SD карту (8G або більше), програму формату диска ( fdisk), wgetнепогано було б funzip( unzipвимагає локального зберігання) та Raspberry Пі. За допомогою SD-картки, приєднаних до системи Linux в пристрої зчитування карт або в USB-зчитувачі карт, визначте адресу пристрою за допомогою lsblkінших команд. У моєму випадку я буду використовувати / dev / sdb. Перевірте, чи пристрій встановлено з dfкомандою, і якщо так, відключіть umount /dev/sdb?команду.

    pi@RPi3:~ $ lsblk
    NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    sdb           8:16   1  29.8G  0 disk
    └─sdb1        8:17   1  29.8G  0 part
    sda           8:0    0 931.5G  0 disk
    ├─sda2        8:2    0 931.4G  0 part /
    └─sda1        8:1    0   120M  0 part /media/pi/boot1
    mmcblk0     179:0    0  29.7G  0 disk
    ├─mmcblk0p2 179:2    0  29.7G  0 part
    └─mmcblk0p1 179:1    0    63M  0 part /boot
    
  2. FORMAT - Відформатуйте SD-карту в один розділ, введіть fat32 [ sudo fdisk /dev/sdb, subcmd p, (якщо не тип Disklabel: dos, subcmd o), subcmd d для видалення старих розділів, subcmd n для створення нового розділу (прийняти за замовчуванням, первинний p, номер 1, перший, останній), subcmd t для типу (число 1, код c), і subcmd w для запису].

    pi@RPi3:~ $ sudo fdisk -l /dev/sdb
    
    Device     Boot Start      End  Sectors  Size Id Type
    /dev/sdb1        8192 62552063 62543872 29.8G  c W95 FAT32 (LBA)
    
  3. ЗАВАНТАЖИТИ, UNZIP та WRITE - Можна завантажити зображення Raspbian, розпакуйте його та встановіть на SD-карту все відразу. unzipКоманда буде працювати , якщо Raspbian зображення спочатку завантажити , а потім порозстібали ( unzipне працюватиме з централізованим входом, funzipбуде). Зображення розміром більше 1,5 Г, розпаковане понад 4G, завантаження займе десь.

    pi@RPi3:~ $ wget -qO - https://downloads.raspberrypi.org/raspbian_latest | funzip | sudo dd bs=4M of=/dev/sdb
    
  4. VERIFY - зображення зараз встановлено з двома розділами (завантажувальним і кореневим). Розділ Linux дуже малий і його слід розширювати. (Можна додати більше розділів, якщо вони потрібні, перш ніж розширювати.) Перед розширенням розділу Linux, ПРИМІТКА / dev / sdb2 Start Sector (тобто, 137216 в моєму випадку).

    pi@RPi3:~ $ echo -e "p\nq" | sudo fdisk /dev/sdb | egrep "Dev|^/"
    Device     Boot  Start     End Sectors Size Id Type
    /dev/sdb1         8192  137215  129024  63M  c W95 FAT32 (LBA)
    /dev/sdb2       137216 8581119 8443904   4G 83 Linux
    
  5. EXPAND PARTITION - fdiskКоманда може використовуватися для розширення розділу Linux. Спочатку видаліть підрозділ Linux subcmd d, типовий 2, додайте його назад subcmd n, p за замовчуванням p, за замовчуванням 2,
    використовуючи сектор "Пуск" (як зазначено в кроці 3), візьміть за замовчуванням для End Sector і запишіть зміни subcmd w якщо задоволений (або киньте, не записуючи зміни з subcmd q). Якщо сектор запуску такий самий, як і раніше, дані будуть розміщені.

    pi@RPi3:~ $ echo -e "d\n2\nn\np\n2\n137216\n\nw" | sudo fdisk /dev/sdb
    
  6. ЗАПИСЬ ЕТИКЕТ, ПЕРЕВІРКА ФІЛІСИСТЕМИ та РОЗШИРИТИ ФІЛІСИСТЕМУ -

    pi@RPi3:~ $ sudo e2label /dev/sdb2 root
    pi@RPi3:~ $ sudo e2fsck -f /dev/sdb2
    pi@RPi3:~ $ sudo resize2fs /dev/sdb2
    
  7. ВАРІАНТИ. Можна встановити розділи картки SD і зробити конфігурації файлів, що виходить за рамки цієї межі. Переконайтеся, що дані є syncта відключіть їх, якщо вони встановлені перед тим, як видалити SD-карту із запущеної системи.

  8. BOOT і CONFIG - Встановіть SD-карту в Raspberry Pi і підключіть живлення. Пі повинен завантажуватися. Налаштуйте Pi з посиланням на https://www.raspberrypi.org/documentation/configuration/ .


1

Можливо, ви не хочете починати все заново. Якщо вам не вистачає місця після очищення численних завантажень та невикористаного вихідного коду, перейдіть на більшу карту пам'яті.

Потрібно мати змогу встановити вторинну карту на вашому RPI, або з носієм «ручки накопичувача» з розеткою SD або подібним.

Ваша установка базується на NOOBS, тому ви закінчили кілька розділів, які вже не використовуються, однак кількість витраченого простору не настільки значна, усунення може бути болючим. Деякі відкриті простори створені для вирівнювання меж.

Створіть клон на більшій SD-карті (16 Гб і більше).

Використовуючи Win32DiskImager, створіть резервну копію зображень за допомогою кнопки "прочитати" на ім'я файлу за вашими уподобаннями, а потім скопіюйте зображення на нову SD-карту за допомогою "написати".

Змонтуйте нову карту та завантажте її. У цей момент у вас повинен бути клон з таким же оригінальним порожнім простором.

Використовуючи fdisk'p' друк поточного розділу. Скопіюйте та вставте цю інформацію туди, де ви можете використовувати її як довідку. Виглядатиме так: (ваш буде іншим):

Device         Boot   Start      End  Sectors   Size Id Type
/dev/mmcblk0p1         8192  1675781  1667590 814.3M  e W95 FAT16 (LBA)
/dev/mmcblk0p2      1679360 30703615 29024256  13.9G 85 Linux extended
/dev/mmcblk0p5      1687552  1810431   122880    60M  c W95 FAT32 (LBA)
/dev/mmcblk0p6      1818624 30703615 28884992  13.8G 83 Linux

Видаліть / dev / mmcblk0p2 за допомогою "d", а потім введіть "2", заново створіть розділ. "секрет" полягає у використанні ідентичного сектору "старт".

Створіть розширений розділ Linux за допомогою 'n', виберіть розширений, введіть перший сектор (у моєму зразку 1679360) і дозвольте fdiskвибрати останній сектор ('за замовчуванням'), а потім введіть 't', щоб ввести розділ 'тип' розділу '2, має бути тип' 85 '(розширений Linux).

Тепер створіть логічні розділи, що знаходяться всередині щойно створеного розширеного розділу.

Використовуйте 'n' для нового, введіть 'l' для 'логічного' і 'fdisk' призначить наступний доступний слот, перший сектор повинен бути таким же, як і раніше, на моєму зразку 1687552, останній сектор, використовуйте оригінал номер, на моєму зразку 122880 введіть розділ 't' як 'c' (ms-dos).

Повторіть процес для інших розділів, але на останньому (p6) нехай 'fdisk' вибере ваш останній сектор.

Перевірте свої записи за допомогою "p" та переконайтесь, що змінився лише останній сектор останнього розділу та нічого іншого, включаючи тип розділу або "id".

Тепер введіть свої зміни за допомогою "w", щоб написати нову таблицю розділів.

Перезавантажте та повідомте Linux про ваш новий розмір диска за допомогою:

resize2fs /dev/mmcblk0p6

насолоджуватися,


Чому б не просто ddвся SD карта потім змінити розмір розділів ?. Дублювання структури хорошого Pi SD нетривіально, зокрема, забезпечення оптимальних меж для розділів, які не є звичайними fdiskза замовчуванням.
Міллівейс

Проблема полягає в тому, щоб змінити розширені розділи, з незрозумілої мені причини, при зміні марки SD я не зміг відтворити модифіковані розділи в точному початковому секторі. Створення нових розділів, ймовірно, не буде межею, але, будучи твердим, а не фізичним, не є проблемою. Найпростішим способом має бути використання Win32DiskImager(або подібне): клонувати SD-карту, використовуючи fdisk видалення та відтворення на місці, в цьому випадку mmcblk0p6. а потімresize2fs
fcm

Щоб змінити розділи, спочатку потрібно змінити розширений розділ, після чого можна продовжити активний розділ. Причина кордону полягає в тому, що, коли SD потрібно відновити простір, він робить це на межі блокування стирань - зазвичай 4М. Якщо межі розділів нерівні, вам знадобляться 2 блочних стирання. Для SD-карти слід вказати розмір диска в блоках, а не в секторах.
Міллівейс

Було б більше сенсу, економити час і бути менш схильною до помилок, а не використовувати ddдля копіювання розділів, з якими ви їх просто відформатували mkfs.ext4, а потім скопіювали у вміст rsync. Зверніть увагу, не ясно вище, що вам потрібно буде створити більші розділи спочатку, якщо ви хочете використовувати їх resizefsу файловій системі всередині розділу .
золотинки

1

Переконайтеся, що ви розширили вашу файлову систему, щоб використовувати весь доступний простір.

Відкрийте термінал і запустіть sudo raspi-config -> Expand Filesystem

Якщо це не проблема, вам просто потрібно перейти на більший диск. Замість того, щоб починати спочатку (ці інструкції передбачають Mac, але в іншому випадку дуже схожі):

Створіть резервну копію диска:

  • Знайдіть ім’я диска: покладіть SD-карту на комп'ютер і запустіть diskutil list(напевно disk2... не використовуйте disk1!!!)
  • Резервне зображення sudo dd bs=1m if=/dev/disk2 of=/path/to/your/backup.img. Зауважте , це займе тривалий час. Щоб побачити прогрес, натиснітьCTRL-T
  • Вставте новий диск і diskutil list
  • Записати на новий диск: sudo dd bs=1m if=/path/to/your/backup.img of=/dev/disk2
  • Розгорнути файлову систему: Вставити в Pi і завантажувати, sudo raspi-config -> Expand Filesystem

1
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.