os 종류와 이름은 전적으로 os 의 구성의 자유에 해당하므로 os에 따라 알아 보는 방법이 다를 수 있고, 이 os 종류를 모르는 상태에서 이 방법을 알아내는 일관되고 고정된 방법을 미리 규정할 수는 없다. 이것은 통상 언급되는 비유인, 닭이 먼저인지 달걀이 먼저인지 논의하는 모호한 경우에 해당한다. 그럼에도 불구하고 리눅스 계열 또는 유닉스 계열의 운영체제(os; Operating System)은 어느 정도 예상할 수 있는 방법을 사용하므로, 이런 종류의 os의 하나인 것으로 미리 추정할 수 있는 정황을 인정할 수 있다면 아래에 서술한 방법을 더 구체적인 종류로 알아낼 수 있다.
grub 설정으로 보통 사용되는 파일인,
/usr/share/grub/default/grub
라는 이름의 grub 기본 설정 파일에는
GRUB_DISTRIBUTOR=`( . /etc/os-release; echo ${NAME:-Ubuntu} ) 2>/dev/null || echo Ubuntu`
라는 설정이 들어 있는 것을 발견했고, 다양한 종류의 ubuntu 계열의 Linux OS에서는 아래의 위치의 파일을 찾아보면 되겠다는 hint가 되었다.
/etc/os-release
이 위치로 가 보니, 현실은, 이 파일은 다른 위치에 있는 파일에 대한 symbolic link였고, 이 link는
/usr/lib/os-release
이었다. 이 파일을 다시 찾아서 내용을 확인하니,
NAME="Linux Mint"
등등의 도움이 되는 정보들이 적혀있었다.
다른 os인 opensuse slowroll 에서는
/usr/share/grub/default/grub 이 없고,
( /usr/share/ 폴더까지만 있고, 그 속에 grub/ 라는 폴더가 없고, 대신 grub2/ 라는 폴더가 있다. )
/usr/share/grub2/grub-mkconfig
이라는 파일이 있는데, 여기에는 다양한 os( linux 만이 아니라 bsd 계열 포함)를 probe하는 것으로 보이는 script 내용이 있다.
어쨌든
/etc/os-release
라는 파일이 있고, ( 하지만 이것 역시 다른 위치의 파일에 대한 symbolic link 이고,
역시 /usr/lib/os-release 파일을 가리킨다. )
이 내용에
NAME="openSUSE Tumbleweed"
라고 되어있다. 하지만 이 os는 정확히는 ( Tumbleweed )는 아니고, ( Slowroll )이다.
-