Raspberry Pi hết dung lượng đĩa


9

Tôi mới lạ với rpi và tôi đã theo dõi rất nhiều hướng dẫn để cố gắng nhận diện khuôn mặt làm việc trên pi của mình. Tôi đã hết dung lượng đĩa và dường như qua hàng tấn hướng dẫn, tôi đã tải lên rác.

Tôi đã thấy trong một cuộc thảo luận khác về các phân vùng mà tôi có thể chạy một lệnh để xem của tôi. Đây là những gì nó cho thấy.

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

Tôi bằng cách nào đó có được 5 phân vùng? Làm thế nào tôi có thể giải phóng không gian?

EDIT: đầu ra của 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

Thẻ SD lớn cỡ nào? Đầu ra của df -h là gì? Bạn đã chạy sudo raspi-config và mở rộng hệ thống tập tin gốc (tùy chọn 1 - tôi tin)?
Steve Robillard

Thẻ 8gig, tôi đã mở rộng nó.
Xe nâng

đây là "chỉ" mâm xôi hay noobs? Tôi không biết phân vùng FAT thứ hai này sẽ dùng để làm gì.
Ghanima

CNTT là NOOBS có. Tôi có cần phải bắt đầu lại không? Tôi có nên cài đặt lại mà không có NOOBS?
Xe nâng

1
du / |sort -nTrước tiên hãy kiểm tra , những gì ăn hết dung lượng, ví dụ: nhật ký (nếu logrotate hoạt động không đúng) hoặc bộ đệm của người quản lý gói. Lệnh của Steve với -shtốt hơn là làm như vậy.
Ghanima

Câu trả lời:


10

Đây là những gì làm việc cho tôi. Bạn có thể thử bộ lệnh này để lọc các tệp gói không cần thiết:

sudo apt-get autoremove
sudo apt-get clean

Nó sẽ không có tác dụng thần kỳ, nhưng đôi khi giúp tôi giải phóng được vài trăm MB.

Nếu bạn muốn chạy chỉ raspbian, tôi đã có may mắn lớn với Jessie Lite và thêm các gói khi tôi cần. Đây là một ví dụ trên thẻ uSD 8GB:

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

Điều đó có vẻ hữu ích. Tôi sẽ thử nó vào buổi sáng. Tôi đã "làm sạch" nhưng không tự động. Cám ơn vì sự gợi ý.
Xe nâng

Tôi cũng sẽ xem xét về Jessie Lite nhưng điều đó có thể khiến tôi quay lại một thời gian. Tôi ước có một cách để tải xuống các ảnh chụp nhanh của HĐH với những thứ tôi cần :)
Xe nâng

AFAIK, "apt-get autoremove" chỉ xóa các tệp gói ngày, trong khi "apt-get clean" sẽ xóa tất cả chúng. Nếu bạn có kế hoạch cài đặt lại một số gói, hành động trước có thể được khuyến khích để tiết kiệm thời gian và băng thông.
derjoachim

7

Nếu bạn đã cài đặt Jessie trên 8gb, hãy xem các ứng dụng bạn không sử dụng. Tôi đã xóa Mathicala và nhận được hơn 600 MB với

sudo apt-get purge wolfram-engine

Và các gói khác chiếm dung lượng: lifehacker.com/ từ
nsof

3

Một giải pháp khác là sử dụng thẻ USB hoặc thẻ SD lớn hơn (32G) (với đầu đọc thẻ USB SD) và chuyển hệ thống tập tin gốc của bạn sang thiết bị mới. Xem Mở rộng kích thước của root / sử dụng ổ cứng gắn ngoài .

Nếu bạn muốn bắt đầu lại mà không mất những gì bạn có trên Thẻ SD lớn hơn , đây là cách để cài đặt HĐH Raspbian có thể khởi động trên Thẻ SD mới. Sau khi cài đặt, trao đổi Thẻ SD mới với Thẻ SD khởi động của bạn và bạn sẽ có một hệ thống sạch với quyền truy cập vào tất cả thông tin cũ của bạn.

Install Raspbian on the Raspberry Pi from Linux
  1. CÀI ĐẶT - Yêu cầu là một hệ thống Linux (loại) có thể kết nối với internet, ghi vào Thẻ micro SD (8G trở lên), chương trình định dạng đĩa ( fdisk), wgetsẽ rất tuyệt với funzip( unzipyêu cầu lưu trữ cục bộ) và Raspberry Số Pi. Với Thẻ SD được gắn vào hệ thống Linux trong đầu đọc thẻ hoặc trong đầu đọc thẻ USB, hãy xác định địa chỉ thiết bị bằng lsblkhoặc các lệnh khác. Trong trường hợp của tôi, tôi sẽ sử dụng / dev / sdb. Kiểm tra xem thiết bị có được gắn với dflệnh không và nếu có, hãy ngắt kết nối với umount /dev/sdb?lệnh.

    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. ĐỊNH DẠNG - Định dạng Thẻ SD thành một phân vùng, nhập fat32 [ sudo fdisk /dev/sdb, subcmd p, (nếu không phải là Loại đĩa: dos, subcmd o), subcmd d để xóa các phân vùng cũ, subcmd n để tạo phân vùng mới (lấy mặc định, chính p, số 1, đầu tiên, cuối cùng), subcmd t cho loại (số 1, mã c) và subcmd w để viết].

    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. TẢI XUỐNG, UNZIP và VIẾT - Có thể tải xuống hình ảnh Raspbian, giải nén nó và cài đặt nó trên Thẻ SD cùng một lúc. Các unziplệnh sẽ làm việc nếu hình ảnh Raspbian sẽ được tải về đầu tiên và sau đó giải nén ( unzipsẽ không làm việc với đầu vào đường ống, funzipsẽ). Hình ảnh có dung lượng hơn 1,5G, được giải nén qua 4G, đôi khi sẽ phải tải xuống.

    pi@RPi3:~ $ wget -qO - https://downloads.raspberrypi.org/raspbian_latest | funzip | sudo dd bs=4M of=/dev/sdb
    
  4. XÁC MINH - Hình ảnh hiện được cài đặt với hai phân vùng (boot và root). Phân vùng Linux rất nhỏ và nên được mở rộng. (Có thể thêm nhiều phân vùng hơn nếu cần, trước khi mở rộng.) Trước khi mở rộng phân vùng Linux, NOTE / dev / sdb2 Bắt đầu ngành (ví dụ 137216 trong trường hợp của tôi).

    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. PHẦN MỞ RỘNG - fdiskLệnh có thể được sử dụng để mở rộng phân vùng Linux. Trước tiên, xóa phân vùng Linux subcmd d, mặc định 2, thêm lại phân vùng subcmd n, mặc định p, mặc định 2,
    sử dụng Start sector (như đã lưu ý trong bước 3), lấy mặc định cho End sector và viết các thay đổi subcmd w nếu hạnh phúc (hoặc thoát mà không viết các thay đổi với subcmd q). Nếu Khu vực bắt đầu giống như trước đây, dữ liệu sẽ bị xử lý.

    pi@RPi3:~ $ echo -e "d\n2\nn\np\n2\n137216\n\nw" | sudo fdisk /dev/sdb
    
  6. VIẾT KIỂM SOÁT, KIỂM TRA PHIM

    pi@RPi3:~ $ sudo e2label /dev/sdb2 root
    pi@RPi3:~ $ sudo e2fsck -f /dev/sdb2
    pi@RPi3:~ $ sudo resize2fs /dev/sdb2
    
  7. TÙY CHỌN - Có thể gắn các phân vùng của Thẻ SD và thực hiện các cấu hình tệp nằm ngoài phạm vi này. Đảm bảo dữ liệu được syncngắt và ngắt kết nối nếu được gắn trước khi tháo Thẻ SD khỏi hệ thống đang chạy.

  8. BOOT và CONFIG - Gắn thẻ SD vào Raspberry Pi và cắm nguồn. Các Pi nên khởi động lên. Định cấu hình Pi với tham chiếu https://www.raspberrypi.org/documentation/configuration/ .


1

Có lẽ bạn không muốn bắt đầu lại từ đầu. Nếu bạn thiếu dung lượng sau khi dọn dẹp nhiều bản tải xuống và mã nguồn không sử dụng, hãy chuyển sang thẻ nhớ lớn hơn.

Bạn cần có thể gắn thẻ phụ vào RPI của mình, với nhà cung cấp 'ổ đĩa bút' có ổ cắm SD hoặc tương tự.

Cài đặt của bạn dựa trên NOOBS, vì vậy bạn đã hoàn thành với một vài phân vùng không còn sử dụng, tuy nhiên lượng không gian bị lãng phí không đáng kể, việc loại bỏ có thể gây đau đớn. Một số không gian mở được tạo ra để căn chỉnh ranh giới.

Tạo một bản sao trên thẻ SD lớn hơn (16 GB trở lên).

Sử dụng Win32DiskImager tạo bản sao lưu hình ảnh bằng nút 'đọc' trên tên tệp theo sở thích của bạn, sau đó, sử dụng 'ghi' để sao chép hình ảnh vào Thẻ SD mới.

Gắn thẻ mới và khởi động. Tại thời điểm này, bạn phải chạy một bản sao với cùng một không gian trống ban đầu.

Sử dụng fdisk, 'p' in phân vùng hiện tại. Sao chép và dán thông tin này vào nơi bạn có thể sử dụng làm tài liệu tham khảo. Sẽ giống như sau (của bạn sẽ khác):

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

Xóa / dev / mmcblk0p2 bằng 'd' và sau đó nhập '2', tạo lại phân vùng một lần nữa. 'bí mật' là sử dụng khu vực 'bắt đầu' giống hệt nhau.

Tạo phân vùng mở rộng Linux với 'n', chọn mở rộng, nhập khu vực đầu tiên (trong mẫu 1679360 của tôi) và fdiskđể chọn khu vực cuối cùng ('mặc định'), sau đó nhập 't' để nhập phân vùng 'loại' của phân vùng '2, phải là loại' 85 '(Linux mở rộng).

Bây giờ, tạo các phân vùng logic nằm trong phân vùng mở rộng vừa tạo.

Sử dụng 'n' cho mới, nhập 'l' cho 'logic' và 'fdisk' sẽ chỉ định vị trí có sẵn tiếp theo, khu vực đầu tiên phải giống với trước đó, trên mẫu của tôi, 1687552, khu vực cuối cùng, sử dụng bản gốc số, trên mẫu 122880 của tôi, nhập phân vùng 't' gõ là 'c' (ms-dos).

Lặp lại quy trình cho các phân vùng khác của bạn, nhưng trên phân vùng cuối cùng (p6), hãy 'fdisk' chọn 'khu vực cuối cùng' của bạn.

Xác minh các mục nhập của bạn bằng 'p' và đảm bảo rằng chỉ có khu vực cuối cùng trên phân vùng cuối cùng thay đổi và không có gì khác bao gồm loại phân vùng hoặc 'id'.

Bây giờ cam kết thay đổi của bạn với 'w' để viết bảng phân vùng mới.

Khởi động lại và cho Linux biết kích thước đĩa mới của bạn với:

resize2fs /dev/mmcblk0p6

thưởng thức,


Tại sao không chỉ ddtoàn bộ thẻ SD sau đó thay đổi kích thước các phân vùng?. Sao chép cấu trúc của Pi SD tốt là không tầm thường, đặc biệt đảm bảo ranh giới tối ưu cho các phân vùng, không nằm trong fdiskmặc định thông thường .
Milliways

Vấn đề là sửa đổi các phân vùng mở rộng, vì lý do không rõ đối với tôi, khi thay đổi nhãn hiệu SD, tôi không thể tạo lại các phân vùng đã sửa đổi trên khu vực ban đầu chính xác. Việc tạo các phân vùng mới, có lẽ, sẽ không nằm trong ranh giới nhưng, ở trạng thái rắn và không vật lý không phải là một vấn đề. Cách dễ dàng là sử dụng Win32DiskImager(hoặc tương tự): sao chép thẻ SD, sử dụng fdisk xóa và tạo lại tại chỗ, trong trường hợp này, mmcblk0p6. và sau đóresize2fs
fcm

Để thay đổi phân vùng trước tiên bạn cần sửa đổi phân vùng mở rộng sau đó bạn có thể mở rộng phân vùng hoạt động. Lý do cho ranh giới là khi SD cần phục hồi không gian, nó sẽ làm như vậy trên Ranh giới khối xóa - thường là 4M. Nếu ranh giới phân vùng bị sai lệch, bạn có thể cần xóa 2 khối. Đối với thẻ SD, bạn nên chỉ định kích thước đĩa trong các khối không phải là cung.
Milliways

Nó sẽ có ý nghĩa hơn, tiết kiệm thời gian và ít bị lỗi hơn là sử dụng ddđể sao chép các phân vùng bạn vừa định dạng chúng mkfs.ext4, và sau đó sao chép trong nội dung rsync. Lưu ý là không rõ ràng ở trên rằng bạn sẽ cần phải tạo các phân vùng lớn hơn trước nếu bạn muốn sử dụng resizefstrên hệ thống tệp bên trong phân vùng .
goldilocks

1

Đảm bảo bạn đã mở rộng hệ thống tệp của mình để sử dụng tất cả dung lượng trống.

Mở một thiết bị đầu cuối và chạy sudo raspi-config -> Expand Filesystem

Nếu đây không phải là vấn đề thì bạn chỉ cần chuyển sang đĩa lớn hơn. Thay vì bắt đầu lại (các hướng dẫn này giả sử máy Mac nhưng rất giống nhau):

Sao lưu đĩa:

  • Tìm tên đĩa: đặt thẻ SD vào máy tính của bạn và chạy diskutil list(có thể disk2... không sử dụng disk1!!!)
  • Hình ảnh sao lưu : sudo dd bs=1m if=/dev/disk2 of=/path/to/your/backup.img. Lưu ý , điều này sẽ mất một thời gian dài. Để xem tiến độ nhấnCTRL-T
  • Chèn đĩa mới và diskutil list
  • Ghi vào đĩa mới: sudo dd bs=1m if=/path/to/your/backup.img of=/dev/disk2
  • Mở rộng hệ thống tập tin: Chèn vào Pi và khởi động, sudo raspi-config -> Expand Filesystem

1
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.