린눅스 배포판 구별하기

ukyoukyo의 이미지


GCC 쓰는데요,

RedHat, Fedora, Ubuntu등등 배포판의 이름을 구분하는 API가 있나요 ?

API가 없다면 대략 어떤식으로 배포판의 이름을 detect할 수 있을까요 ?

hys545의 이미지

리녹스 배포판의 api는 glibc같은 라이브러리 버젼에 따라 다를뿐입니다.

배포판 이름은 아마 uname -a같은거로 하면 나오거나
/etc/밑에
fedora같은 경우 fedora-release같은 파일이 있습니다.

즐린

danskesb의 이미지

lsb_release -a

API는 없습니다. 이 명령이 통하지 않는 구형 배포판에서는 /etc/*-release(*는 배포판마다 다름) 파일을 참조해야 합니다.