쓰기 오류: 장치에 남은 공간이 없습니다. '추가' 패키지를 제거합니다. 복구 시도 중

쓰기 오류: 장치에 남은 공간이 없습니다. '추가' 패키지를 제거합니다. 복구 시도 중

문제:

내가 입력할 때:

dpkg-query -Wf '${Package;-40}${Priority}\n' | sort -b -k2,2 -k1,1

내 컴퓨터에 설치된 모든 패키지 목록이 표시됩니다. 예:

...
raspberrypi-artwork                     extra
raspberrypi-bootloader                  extra
raspberrypi-ui-mods                     extra
raspi-config                            extra
rpi-update                              extra
sonic-pi                                extra
ssh                                     extra
triggerhappy                            extra
wireless-tools                          extra
xkb-data                                extra
adduser                                 important
apt                                     important
apt-utils                               important
aptitude                                important
aptitude-common                         important
bsdmainutils                            important
...

최근에 여러 가지 방법으로 설치된 스크립트를 실행했는데 이제 내 컴퓨터가 다음과 같이 응답합니다. /usr/bin/mandb: can't write to /var/cache/man/2694: No space left on device(경로가 변경되지만 항상 남은 공간이 없다고 알려줍니다.)

내가 볼 수 있는 가능한 라벨은 다음과 같습니다.

  • 기준
  • 추가의
  • 중요한
  • 선택 과목
  • 필수의

다양한 저장소에 커밋되지 않은 변경 사항이 있고 로컬 변경 사항을 푸시하고 싶지만 푸시하려고 하면 다음 오류가 계속 발생합니다.

$ git push
fatal: write error: No space left on device
error: Couldn't write .git/refs/remotes/origin/master.lock
error: Cannot update the ref 'refs/remotes/origin/master'.
Everything up-to-date

나는 또한 모든 것이 최신이 아니라는 것을 알고 있다고 말해야 합니다.

시스템:

이것은 "wheezy" raspbian을 실행하는 라즈베리 파이에 있습니다.

질문:

수백 개의 패키지가 설치되어 있습니다. 'extra'라고 표시된 모든 패키지를 어떻게 제거합니까? 이것이 내 컴퓨터의 여유 공간을 확보하는 가장 좋은 방법입니까? 다양한 저장소에 커밋되지 않은 변경 사항이 있는데 로컬 변경 사항을 푸시할 수 있기를 원합니다.

나는 또한 필수적이고 중요한 것 외에는 모든 것을 제거하는 답변을 받아들일 것입니다. Git은 선택 사항으로 표시되어 있으며 이를 유지하는 것을 선호합니다(필요하지 않은 패키지를 모두 제거한 후 언제든지 다시 설치할 수 있지만).

미리 감사드립니다!!

답변1

다음 명령을 사용하여 모든 선택적 패키지와 추가 패키지를 제거할 수 있습니다. sudo apt-get --simulate purge $(dpkg-query -Wf '${Package;-40}${Priority}\n' | awk '$2 ~ /optional|extra/ { print $1 }')

플래그 --simulate를 사용하면 실제로 모든 것을 제거하지 않고도 제거될 항목을 확인할 수 있습니다. 패키지를 실제로 제거하려면 플래그를 제거하십시오.

다른 옵션 및 추가 패키지와 함께 제거되므로 git을 다시 설치해야 합니다.

일부 옵션 및 추가 패키지가 필요할 수 있으므로 주의해서 제거하세요. 자세한 내용은 여기를 참조하세요:https://askubuntu.com/questions/79665/keep-only-essential-packages

답변2

확인해보셔야 할 것 같아요어디공간이 부족합니다. 이 df(1)명령은 어떤 파일 시스템이 가득 찼는지 알려줍니다.

공간이 부족해지는 일반적인 이유는 대용량 로그 파일 때문입니다. 아래를 확인하세요 /var/log. 시스템에 오래된 로그를 정리하는 명령이 있어야 합니다. 또는 sort(1)에서 임시 파일을 사용합니다 . 둘 중 하나에 너무 많은 내용이 포함되어 있으면 공간 부족으로 인해 실패할 수 있습니다.var/tmp/tmp

답변3

적성이 설치되어 있으므로 여기에서 도움이 될 수 있습니다. 일치하는 패키지에 대한 보기 실행 aptitude및 제한(바로가기: )l

~i ~pextra

보다온라인 매뉴얼또는 /usr/share/doc/aptitude/README검색어 참조용입니다.

이제 패키지를 모두 제거하도록 선택할 수 있습니다. -각 최상위 제목 아래를 눌러 패키지를 제거할 것으로 표시하거나(구성 파일 유지) _제거할 것으로 표시한 다음(구성 파일 제거) g계속 진행할 수 있습니다. 일부 패키지를 유지하려는 경우 목록을 검토할 수 있는 기회가 있습니다.

관련 정보