2014년 11월 11일 화요일

OS issue type

UNIX-like OS가 정말 많은데, FreeBSD, MacOS 등이야 대충 때려 맞출 수 있지만, RedHat계열(RHEL, Fedora, CentOS, Suse)과 Debian계열(Debian, Ubuntu) 디렉토리 위치나 이름 규칙이 미묘하게 달라서 Bash Shell에서 알고 싶을 때가 있다.

딱히 정답이 있는 것은 아니지만, /etc/os-release 값에서 ID를 추출하면 적당히 써먹을 수 있다.


$ export LINUX_ISSUER=$(cat /etc/os-release | awk 'BEGIN {FS="="} /^ID=/ { print $2 }'|sed "s/\\('\\|\"\\)//g")

사실 /etc/issue를 봐도 되는데, Docker에선 단순히 "Kernel"로만 보인다.