디스크 공간에서 라즈베리 파이


9

나는 엄청나게 rpi를 처음 사용하고 있으며 내 pi에서 얼굴 인식을 시도하기 위해 많은 자습서를 따르고 있습니다. 디스크 공간이 부족하여 다음과 같은 많은 자습서를 통해 정크를로드 한 것으로 보입니다.

파티션에 대한 또 다른 토론에서 내 명령을 실행할 수 있다는 것을 알았습니다. 여기에 그 내용이 나와 있습니다.

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 개의 파티션을 얻었습니까? 공간을 확보하려면 어떻게해야합니까?

편집 : 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-믿습니다)?
Steve Robillard 2016 년

8gig 카드, 확장했습니다.
지게차

이 "단지"라스베 니아 또는 멍청한 놈입니까? 이 두 번째 FAT 파티션이 무엇인지 모르겠습니다.
Ghanima

IT는 NOOBS입니다. 다시 시작해야합니까? NOOBS없이 다시 설치해야합니까?
지게차

1
du / |sort -n먼저 로그 (로그 로테이션이 올바르지 않은 경우) 또는 패키지 관리자의 캐시와 같이 공간을 차지하는 공간을 확인하십시오 . Steve의 명령 줄을 사용하는 -sh것이 좋습니다.
Ghanima

답변:


10

여기 나를 위해 일하는 것이 있습니다. 이 명령 세트를 사용하여 불필요한 패키지 파일을 제거 할 수 있습니다.

sudo apt-get autoremove
sudo apt-get clean

그것은 기적을 일으키지 않지만 때로는 몇 백 MB의 여유 공간을 얻습니다.

라즈 비안을 실행하고 싶다면 Jessie Lite 와 함께 행운을 빕니다 . 필요에 따라 패키지를 추가했습니다. 8GB 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

도움이 될 것 같습니다. 아침에해볼 게요. "청소"했지만 자동 제거는하지 않았습니다. 제안 해 주셔서 감사합니다.
지게차

Jessie Lite도 살펴 보 겠지만 시간이 좀 걸릴 수 있습니다. 필요한 것만으로 OS의 스냅 샷을 다운로드 할 수있는 방법이 있었으면 좋겠습니다.
지게차

APTIK "apt-get autoremove"는 오래된 패키지 파일 만 제거하는 반면 "apt-get clean"은 모든 파일을 제거합니다. 일부 패키지를 다시 설치하려는 경우 시간과 대역폭을 절약하기 위해 이전 작업을 수행하는 것이 좋습니다.
derjoachim

7

Jessie를 8GB에 설치 한 경우 사용하지 않는 응용 프로그램을보십시오. Mathematica를 제거하고 600MB 이상을 얻었습니다.

sudo apt-get purge wolfram-engine

그리고 공간을 차지하는 다른 패키지들 : lifehacker.com/…
nsof

3

또 다른 해결책은 더 큰 (32G) USB 스틱 또는 SD 카드 (USB SD 카드 리더 포함)를 사용하여 루트 파일 시스템을 새 장치로 전송하는 것입니다. 루트 크기 확장 / 외부 HDD 사용을 참조하십시오 .

더 큰 SD 카드에있는 것을 잃지 않고 다시 시작 하려면 새 SD 카드에 부팅 가능한 Raspbian OS를 설치하는 방법이 있습니다. 설치 후 새 SD 카드를 부팅 SD 카드로 교체하면 모든 이전 정보에 액세스 할 수있는 깨끗한 시스템이 제공됩니다.

Install Raspbian on the Raspberry Pi from Linux
  1. SETUP - 요구 사항은 리눅스 인터넷에 연결할 수 (종류) 시스템, 마이크로 SD 카드에 쓰기 (8G 이상), 디스크 포맷 프로그램 (하다 fdisk), wget좋은 것 funzip( unzip, 로컬 스토리지가 필요)와 라즈베리 파이 카드 리더 또는 USB 카드 리더에서 Linux 시스템에 연결된 SD 카드를 사용하여 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, (디스크 레이블 유형이 아닌 경우 : dos, subcmd o), subcmd d를 사용하여 기존 파티션을 삭제하고, subcmd n을 사용하여 새 파티션을 생성합니다 (기본값, 기본) p, 숫자 1, 첫 번째, 마지막), 유형 (번호 1, 코드 c)에 대한 subcmd t 및 기록 할 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. 다운로드, 압축 해제 및 쓰기-Raspbian 이미지를 다운로드하여 압축을 풀고 SD 카드에 한 번에 설치할 수 있습니다. unzipRaspbian 화상 먼저 압축 해제 후 다운로드 된 경우 명령 (작동 unzip, 입력 파이프 작동하지 않을 funzip것이다). 이미지가 1.5G 이상이고 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 섹터 시작 (제 경우에는 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를 삭제하고
    시작 섹터 (3 단계에서 언급 한대로)를 사용하여 subcmd n, 기본 p, 기본값 2를 다시 추가 한 후 종료 섹터의 기본값을 사용하고 변경 사항 인 경우 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 and CONFIG-Raspberry Pi에 SD 카드를 마운트하고 전원을 연결합니다. Pi가 부팅됩니다. https://www.raspberrypi.org/documentation/configuration/ 을 참조하여 Pi를 구성 하십시오 .


1

아마 당신은 다시 시작하고 싶지 않을 것입니다. 여러 다운로드 및 사용하지 않은 소스 코드를 청소 한 후 공간이 부족하면 더 큰 메모리 카드로 이동하십시오.

SD 소켓 또는 이와 유사한 '펜 드라이브'캐리어를 사용하여 RPI에 보조 카드를 마운트 할 수 있어야합니다.

설치는 NOOBS를 기반으로하므로 더 이상 사용하지 않는 몇 개의 파티션으로 완료했지만 낭비되는 공간이 그다지 중요하지 않으므로 제거가 어려울 수 있습니다. 경계 정렬을 위해 일부 열린 공간이 생성됩니다.

더 큰 SD 카드 (16GB 이상)에 복제본을 만듭니다.

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

'd'로 / dev / mmcblk0p2를 삭제 한 다음 '2'를 입력하고 파티션을 다시 만드십시오. '비밀'은 동일한 '시작'섹터를 사용하는 것입니다.

'n'으로 Linux 확장 파티션을 만들고 확장을 선택하고 첫 번째 섹터 (샘플 1679360에서) fdisk를 입력하고 마지막 섹터 ( 'default')를 선택한 다음 't'를 입력하여 'partition의 파티션'type '을 입력하십시오 '2는'85 '(Linux 확장) 유형이어야합니다.

이제 방금 생성 한 확장 파티션 안에있는 논리 파티션을 만듭니다.

새 항목에는 'n'을 사용하고 '논리적'에는 'l'을 입력하고 'fdisk'는 사용 가능한 다음 슬롯을 할당합니다. 첫 번째 섹터는 이전 샘플과 동일해야합니다. 마지막 샘플 인 1687552는 마지막 섹터입니다. number, 샘플 122880에서 파티션 't'유형을 'c'(ms-dos)로 입력하십시오.

다른 파티션에 대해 프로세스를 반복하되 마지막 파티션 (p6)에서 'fdisk'가 '마지막 섹터'를 선택하도록하십시오.

'p'로 항목을 확인하고 마지막 파티션의 마지막 섹터 만 변경되었고 파티션 유형 또는 'id'를 포함하여 다른 항목이 없는지 확인하십시오.

이제 'w'로 변경 사항을 커밋하여 새 파티션 테이블을 작성하십시오.

다음으로 리눅스를 재부팅하고 새로운 디스크 크기를 알려주십시오 :

resize2fs /dev/mmcblk0p6

즐겨,


dd전체 SD 카드 만 파티션 크기를 조정 하지 않습니까? 좋은 Pi SD의 구조를 복제하는 것은 사소한 일이 아니며, 특히 fdisk기본 기본값 이 아닌 파티션의 최적 경계를 보장합니다 .
Milliways

문제는 확장 된 파티션을 수정하는 것입니다. 알려지지 않은 이유로 SD 브랜드를 변경할 때 정확한 초기 섹터에서 수정 된 파티션을 다시 만들 수 없었습니다. 새로운 파티션을 생성하는 것은 경계가 아닌 물리적 상태가 아닌 물리적 인 것이 문제가되지 않습니다. 쉬운 방법은 다음과 같이 사용하십시오 Win32DiskImager(또는 이와 유사한 방법). fdisk 삭제 및 다시 작성을 사용하여 SD 카드를 복제합니다 ( 이 경우 mmcblk0p6). 그리고resize2fs
fcm

파티션을 변경하려면 먼저 확장 파티션을 수정해야하며 활성 파티션을 확장 할 수 있습니다. 경계의 이유는 SD가 공간을 복구해야 할 때 블록 지우기 경계 (일반적으로 4M)에서 그렇게하기 때문입니다. 파티션 경계가 잘못 정렬되면 2 번의 블록 지우기가 필요할 수 있습니다. SD 카드의 경우 디스크 크기를 섹터가 아닌 블록으로 지정해야합니다.
Milliways

그것은 시간 저장, 더 이해하고, 경우 오히려 사용하는 것보다 오류에 덜 경향이있을 것이다 dd당신은 단지 그들을 포맷 된 파티션 복사 mkfs.ext4, 다음과 컨텐츠에서 복사를 rsync. 참고 더 큰 만든해야한다는 점 이상 분명하지 않다 파티션을 사용하려는 경우 먼저 resizefs상의 파일 시스템 내부 파티션 .
goldilocks

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

193M의 여유 공간이 있습니다 .D를 /usr/share/doc사용 하여 폴더 를 제거하는 것이 좋습니다 rm -rf /user/share/doc.


당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.