다음 명령을 사용하면 설치된 모든 커널 패키지를 나열할 수 있습니다.
$ dpkg -l | grep linux-image
다음 명령을 사용하면 현재 사용되는 커널 버전을 얻을 수 있습니다.
$ uname -r
그러나 내 요구 사항은 현재 로드된 커널에 해당하는 데비안 패키지 이름을 터미널에 표시하는 것뿐입니다.
여러 패키지 이름이 동일한 버전을 가질 수 있으므로 이전 명령을 사용하여 특정 커널을 고유하게 식별하기가 어렵습니다.
그럼... 현재 커널의 패키지 이름을 얻을 수 있는 방법이 있나요?
답변1
이것을 사용하십시오 :
$ dpkg --get-selections | grep -o "^linux-image-$(uname -r)"
linux-image-3.13.0-32-generic
또는
$ dpkg -l | grep -o "linux-image-$(uname -r)"
linux-image-3.13.0-32-generic
편집하다:동일한 커널 버전의 여러 버전이 있는 경우 다음 bash
스크립트를 실행하세요.
#!/bin/bash
rel="$(uname -r)"
ver="$(uname -v)"
current="${rel%-*}.${ver:1:2}"
echo "$(dpkg -l | grep -Po "linux-image-${rel}(?=\s+${current})")"