나는 Xubuntu (16.04, btw)를 사용하고 있지만 이것은 lsb_release -a
나에게 다음을 제공합니다:
user@host:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.3 LTS
Release: 16.04
Codename: xenial
표시되어야 합니까 Xubuntu
, 아니면 합법적인 출력입니까?
그렇다면, 현재 사용 중인 Ubuntu 배포판을 CLI를 통해 어떻게 알 수 있습니까?
어쨌든, 이 경고는 무엇을 No LSB modules are available.
의미합니까?
(다음으로 출력됩니다.표준 에러:
user@host:~$ lsb_release -a >/dev/null
No LSB modules are available.
그래서 명목상의 경우에는 거기에 있으면 안된다고 생각합니다)
답변1
때로는 디스크/USB 미디어에서 다시 설치하기 위해(예: iso 버전 또는 x86/x64 아치와 일치시키기 위해) 어떤 변형을 사용하고 있는지 아는 것이 유용합니다.
제가 알고 있는 결과나 팁은 다음과 같습니다.
$ dpkg -l '*-desktop' | grep ^ii | grep 'ubuntu-'
ii xubuntu-desktop 2.225 amd64 Xubuntu desktop system
또는
head -1 /etc/apt/sources.list
#deb cdrom:[Xubuntu 18.04 LTS _Bionic Beaver_ - Release amd64 XXXXXX
답변2
일반적으로, 여러분이 작성하는 소프트웨어는 사용하는 Ubuntu의 "맛"에 관심을 가져서는 안 됩니다. Ubuntu, Kubuntu, Xubuntu 및 기타 대부분의 업스트림 지원 버전 간의 유일한 차이점은 데스크탑 환경과 기본적으로 설치된 프리미엄 소프트웨어입니다. 둘 다 핵심이 Ubuntu이므로 lsb_release
출력이 정확합니다. 시스템이 설치되면 문제가 되지 않습니다( apt-get
몇 가지 명령만으로 변형 간에 쉽게 전환할 수 있습니다).
하나의 변형에만 기본적으로 설치되는 특정 소프트웨어가 실제로 필요한 경우 변형 자체가 아닌 해당 소프트웨어를 확인해야 합니다(예: 소프트웨어를 실행하기 위해 GNOME 3가 필요한 경우 Ubuntu가 아닌 해당 소프트웨어에 의존해야 합니다). .
특정 변형을 꼭 확인해야 하는 경우 각 변형에는 패키지 관리자에 자체 메타 패키지가 있습니다(예를 들어 Xubuntu의 경우 xubuntu-meta
설치된 패키지 목록에 호출된 패키지가 표시되어야 합니다). 그러나 이러한 메타패키지는 상호 배타적이지 않고(사용자가 데스크톱 환경을 선택할 수 있도록 터미널 서버가 대부분의 메타패키지를 설치하는 것을 본 적이 있음) 초기 설치 후에 수동으로 설치하거나 설치를 삭제할 수 있기 때문에 이는 신뢰할 수 있는 확인 방법이 아닙니다. .
이 부분에 관해서는 No LSB modules are available.
LSB 준수를 요구하는 소프트웨어를 사용하지 않는 경우(요즘에는 정상적인 소프트웨어가 이를 수행하지 않음) 무시해도 됩니다. LSB 표준 자체는 원래 Linux 배포판을 위한 공통 플랫폼을 정의하여 타사 소프트웨어가 배포판 독립적인 방식으로 종속성이 충족되는지 쉽게 확인할 수 있도록 의도되었습니다. "모듈"은 LSB 표준의 선택적 하위 구성 요소를 나타냅니다. 모든 것이 오늘날 기본적으로 관련이 없습니다(해당 lsb_release
명령이 현재 사용 중인 배포판을 결정하는 신뢰할 수 있는 유일한 방법이라는 점을 제외하면). 몇 년 동안 업데이트되지 않았고 Qt 3과 같은 항목이 포함되어 있으며 우분투에서는 사용할 수 없었기 때문입니다. 또는 Debian은 우선 매우 잘 지원되는 시스템입니다(대부분 Red Hat을 기반으로 하기 때문입니다).