/ usr / src는 모든 inode를 먹고 있습니다


10

그것은 (아마도 /usr/src오래된 커널) 내 모든 inode를 사용한 것 같습니다 .

Filesystem             Inodes  IUsed     IFree IUse% Mounted on
/dev/sda4              489600   489600       0  100% /
devtmpfs               219658      539  219119    1% /dev
none                   219844      474  219370    1% /run
none                   219844        3  219841    1% /run/lock
none                   219844        8  219836    1% /run/shm
/dev/sda6             5963776     8361 5955415    1% /home

나는 성공하지 않고 오래된 커널 등을 제거 / 제거하기 위해 모든 것을 시도했습니다. dpkg가 더 이상 작동하지 않습니다. 몇 가지 수동 명령을 시도했지만 12.04는 나에게 아무것도주지 않습니다. 하드 드라이브에 공간이 부족하여 apt-get 등이 불가능합니다. 이는 명백히 문제가 아닙니다. 그러나 아무것도 설치하거나 제거 할 수 없습니다! 동일한 문제를 가진 사용자에 대해 많이 읽었지만 솔루션이 작동하지 않습니다.

도와주세요. 고마워요!


라이브 CD / USB에서 부팅하고 파일 시스템 검사를 실행하십시오. 'df -i'는 inode 사용법을 제공합니다. inode를 해제하기 위해 문제가있는 폴더에있는 일부 파일을 수동으로 제거하거나 안전한 위치로 이동할 수 있습니다. 그런 다음 내 대답에 따라 정리하십시오.
hmayag

단일 사용자 모드로 부팅하면 더 많은 제어가 가능합니다.
labarna

@klingone-여러 계정이있는 것 같습니다. 이 계정 중 하나를 등록하십시오. 그런 다음이 페이지 하단의 연락처 링크를 클릭하여 다른 계정의 병합을 요청하십시오. 완료되면 추가 세부 사항으로 질문을 다시 편집 할 수 있습니다. 감사.
fossfreedom

답변:


6

이 시도.

터미널을 열고 다음을 입력하십시오.

~$ cd /usr/src
/usr/src$ ls

다음과 같은 것을 보게 될 것입니다 :

total 16K
drwxr-xr-x 24 root root 4,0K Σεπ  29 22:35 linux-headers-3.2.0-54/
drwxr-xr-x  7 root root 4,0K Σεπ  29 22:35 linux-headers-3.2.0-54-generic/
drwxr-xr-x  3 root root 4,0K Σεπ  29 22:56 nvidia-319-319.32/

출력은 설정에 따라 달라질 수 있습니다.

이라는 폴더를 자세히 살펴보십시오 linux-headers-*. 이들은 설치 한 모든 Linux 이미지의 헤더입니다. 너무 많으면 많은 공간과 inode를 차지합니다. 부팅 한 최신 버전 만 유지하면 됩니다 .

예를 들어 오래된 커널이 있다고 가정 해 봅시다. 3.2.0-53. 제거하려면 다음을 입력하십시오.

sudo apt-get remove --purge linux-image-3.2.0-53-generic linux-headers-3.2.0-53 linux-headers-3.2.0-53-generic

그들 각각을 위해.

위의 모든 사항이 실패하면 OLDER KERNEL 헤더의 폴더를 수동으로 삭제하십시오 .

sudo rm -rf /usr/src/linux-headers-3.2.0-53{,-generic}

2

오래된 커널을 정리하기 위해 Ubuntu Tweak을 사용해 볼 수 있습니다. 먼저 다음 명령을 사용하여 설치하십시오.

sudo add-apt-repository ppa:tualatrix/ppa
sudo apt-get update
sudo apt-get install ubuntu-tweak

프로그램을 실행 한 후 다음을 수행하십시오.

  1. "Janitor"탭을 선택하십시오
  2. "이전 커널"체크 상자를 선택하십시오
  3. 제거 할 커널 버전을 선택하십시오.
  4. "청소"를 누르십시오

여기에 이미지 설명을 입력하십시오


안녕하세요, 정보 주셔서 감사합니다. 위의 명령을 사용했지만 설치 공간이 부족하여 설치에 실패했습니다. 또한 소프트웨어 센터가 손상되어 수리를 원하지만 그렇게 할 수도 없습니다. Apt-get 자동 청소가 작동하지 않으며 sudo dpkg --configure -a 명령을 사용하여 문제를 해결하는 것이 좋습니다.이 문제는 장치에 더 이상 공간이 없기 때문에 시작한 위치로 돌아갑니다. ? 나는 이전 커널의 거의 300.000 파일이 설치되어 있기 때문에 / usr / src의 inode라고 확신합니다. 도움을 다시 한번 감사드립니다.
klingone

1

방금 같은 문제가있었습니다.

Ubuntu Linux 16.04.1에서는 sudo apt autoremove모든 불필요한 /usr/src/linux-headers-파일을 정리 하고 해당하는 inode를 해제하는 것으로 보입니다.


0

이 경우에는 100 % HD 사용 시스템이 포함되므로 응용 프로그램을 설치해도 작동하지 않습니다. 유일한 안전한 옵션은 불필요한 파일을 먼저 삭제하는 것입니다.

첫 번째 행은 임시 파일입니다.

sudo rm -rf /tmp/*

둘째, 캐시 된 응용 프로그램을 삭제하십시오. 이들은 시스템 수명 기간 동안 다운로드 된 응용 프로그램 및 업그레이드 바이너리입니다. 일반적으로 이것은 1 년의 운영 기간을 가진 평균 우분투 시스템에서 500MB 이상이며 다른 앱을 설치하는 데 도움이됩니다.

sudo rm /var/cache/apt/archives/*deb

그런 다음 오래된 로그 파일을 삭제하는 것이 좋습니다

sudo rm /var/log/*gz

이를 통해 최소한 700MB의 여유 공간이 확보됩니다. 이를 통해 유틸리티 작업을 수행하고 새 유틸리티를 설치할 수 있습니다.

그런 다음 전체 하드 디스크를 스캔하고 디렉토리를 크기별로 정렬하는 빠른 유틸리티 인 ncdu를 설치합니다. 정말 빠르며 매력처럼 작동합니다.

sudo apt-get install ncdu

그런 다음 명령으로 실행하십시오.

sudo ncdu /

ncdu 이후의 슬래시는 루트 디렉토리에서 스캔하는 것입니다.

위의 모든 것은 데스크탑뿐만 아니라 우분투 서버에서도 작동합니다. 이제 위의 모든 작업을 수행하고 데스크탑 환경에서 실행 중이면 ubuntu-tweak (우수한)와 같은 GUI 유틸리티를 사용하여 이전 커널을 삭제할 수 있습니다. 업그레이드 실패시 일반적으로 최신 커널과 최신 커널을 유지합니다.

이것이 도움이되기를 바랍니다.


inode를 100 % 사용한다고해서 하드 드라이브에 파일이 가득 찬 것은 아닙니다.
woohoo

0

또 다른 방법은 inode 수를 차지하는 폴더를 검색하는 것입니다. 여기를 참조하십시오 : 브로큰 패키지를 업데이트 후 : 리눅스 헤더, 오류 : BrokenCount> 0

이것은 가장 중요한 부분입니다.

터미널에서 루트로 cd하여 시작하십시오.

# cd /

그런 다음 대부분의 inode를 먹는 폴더를 검색하십시오.

# for i in `ls -1A`; do echo "`find $i | sort -u | wc -l` $i"; done | sort -rn | head -20

또한 제거한 폴더 나 패키지, 커널 헤더, 제거해야 할 이미지를 찾을 수 있습니다.

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