오래된 커널을 삭제하는 것이 왜 안전하지 않습니까? 제거하기로 결정했습니다.

부팅 드라이브에 공간이 부족하여 이전 커널을 제거하기로 결정했습니다. : 나는 무엇을해야 정확하게 설명하는이 페이지를 찾을 수 루 분투 문서 : 제거 오래된 커널을 .

가장 오래된 커널을 수동으로 삭제했지만 이제는 괜찮습니다.이 기사의 끝에는 이전 커널 버전을 모두 삭제할 수있는 코드가 있지만 고급 사용자 전용으로 표시되어 있습니다.

나는 여기에 어떤 위험이 있는지 이해하지 못한다. 어리석게 들리지만 특정 머신에서 동시에 사용되는 커널이 두 개 이상있을 수 있다고합니다.

내 우분투 컴퓨터의 다른 응용 프로그램이 다른 커널을 동시에 사용할 수 있습니까? 이전 커널을 모두 삭제하면 자동으로 위험한 것으로 간주되는 이유는 무엇입니까?



답변

오래된 커널을 제거하는 것이 본질적으로 안전하지는 않지만 모든 커널 을 제거 하고 재부팅하면 화끈한 Grub 화면이 나타납니다. 그 고정하는 것이 필요 상당한 노하우를 (같은 것을 그러나와 apt-get install linux-generic끝).

이 작업을 처음 수행하는 것은 매우 스릴이 있지만 Grub 메뉴를 정리하거나 일부 디스크 공간을 복구하려는 사람들은 스릴을 찾지 않습니다.

위험은 사용자가 코드 블록을-붙여 복사에서 오는 그들과 적용되지 않는 risks-을 인정하지 않고 -unbeknownst 그. 오래된 커널을 탐지하는 많은 예가 있으며 완벽하지는 않습니다. 나의 최신 노력 조차도 여전히 함정이 있습니다. 우리는 고칠 수있는 문제에 대해 이야기하고 있습니다. Ask Ubuntu의 많은 게시물은 잘못 사용하면 영구적 인 데이터 손실로 이어질 수 있습니다.

우리는 사용자에게 잠재적 인 문제를 의식하게하는 위험을 표시함으로써 피해를 막기 위해 노력합니다 . 최상의 시나리오에서 사용자는 문제를 처리 할 준비가되어 있고 최악의 경우 적어도 경고를받지 않았다고 불평 할 수 없습니다.


답변

이전 커널은 패키지의 일부입니다. 방금 제거 /boot/vmlinuz-3.13.0-44-generic하면 포장 부스러기가 온통 떠납니다.

먼저, 어떤 커널을 실행하고 있는지 확인하십시오. 이 값을 가진 이름은 삭제하지 마십시오.

$ uname -r
3.13.0-49-generic

YMMV. 그런 다음 dpkg무엇을 알고 있는지 물어보십시오 .

$ dpkg -l linux-*

이러한 패키지 중 일부는 제거 할 수 있지만 다른 패키지는 무엇입니까? 의 출력에서 ​​(내 시스템에서) 추출 한 줄 사용 dpkg -l linux-*:

 ii  linux-image-3.13.0-44-generic       3.13.0-44.73           amd64                  Linux kernel image for version 3.13.0 on 64 bit x86 SMP

이제 다른 패키지 -3.13.0-44의 이름 이 무엇인지 살펴 보겠습니다 .

$ dpkg -l *-3.13.0-44*

현재 커널 ( uname -r)이 패키지 목록에 없는지 마지막으로 확인하면 선택한 패키지 관리 시스템을 통해 제거 할 수 있습니다.


답변

마지막으로 오래된 커널을 제거했을 때 오래된 코드 스 니펫을 빌 렸습니다. 글쎄,이 코드 조각은 새 커널을 설치 한 후 재부팅해야했기 때문에 커널이 없어졌습니다. 운 좋게도 다시 부팅하기 전에이 문제가 발생했지만 다른 사람들이 말했듯이 “angry grub screen”이 남아있을 수 있습니다.

간단히 말해 간단하게 엉망이되어 복구하기 어려운 브릭 시스템을 만듭니다.


답변

안전하지 않습니다. Linux를 사용하면 올바른 명령을 알고 있으면 원하는 것을 정확하게 수행 할 수 있습니다.

에서 /boot디렉토리, 당신은 간단한 작업을 수행 할 수 있습니다 ls -laA가 긴 같은 숨겨진 파일이나 디렉토리를 찾을뿐만 아니라 목록을 가지고 (어떤이있는 경우가 안된다!).

이 정보에서 날짜 및 이전 버전의 파일을 평가할 수 있습니다. 모든 파일을 제거하지 말고 동일한 버전에 해당하는 가장 오래된 파일을 제거하십시오.

언젠가 소스에서 커널을 컴파일 한 경우 새로운 커널을 수정해야 할 수도 있다고 생각했습니다. .config나는 당신의 설명에 따라 경우라고 생각하지 않습니다 파일, 거기에 남아있을 것입니다.

따라서 단일 버전에 해당하는 이전 파일을 삭제 한 후 시스템을 재부팅 한 후 커널 패닉이 발생할 수 있습니다.

간단한 해결책은 라이브 USB 또는 CD / DVD Linux로 시스템을 부팅하는 것입니다. chroot여기에 같은 툴을 사용하여 커널을 다시 빌드하십시오 dracut.