Bash 스크립트에서 운영 체제 감지 이식 가능한 기능을 만들려고 합니다.
"/etc/issue"
그래서 저는 이 파일이 모든 Linux 버전에 공통적으로 적용되는지 궁금합니다 .
답변1
예, 이것은 배포판 전체의 표준 파일입니다. 이는 대부분의 배포판(Fedora/CentOS/RHEL/Debian/Ubuntu 등)에서 표준입니다.
그것에 대해 더 자세히 읽을 수 있습니다.man issue
또는 관련 파일 /etc/issue.net
. 너는 볼 수있어Issues.net 매뉴얼 페이지자세한 내용과 두 파일에 매크로를 포함하는 방법을 알아보세요.
당신은 또한 수처음부터 리눅스프로젝트,/etc/issue를 사용하여 로그인을 사용자 정의하세요..
답변2
slm의 답변 외에도 루트 액세스 권한이 있는 사람은 누구나 편집할 수 있다는 점을 기억할 가치가 있습니다 /etc/issue
. 일부 조직에서는 사전 로그인 경고 또는 면책 조항을 제공하기 위해 이를 수행할 수 있지만 다른 조직에서는 보안상의 이유로 이를 제거할 수 있습니다(효과에 관계 없음). 이러한 조치 중).
따라서 /etc/issue는 거의 항상 있을 수 있지만 해당 내용이 운영 체제(말씀하신 대로 또는 Linux 배포판일 가능성이 더 높음)를 감지하는 데 반드시 적합한 것은 아닙니다.
답변3
@EightBitTony의 답변이 맞습니다. 그리고 Fedora 23에는 기본적으로 존재하지 않습니다.
하다아니요이를 활용하여 임의의 시스템을 식별하십시오. 사용하고 싶지만 그것이 얼마나 다재다능한지는 /etc/system-release
잘 /etc/os-release
모르겠습니다.
조금 읽어보면 /etc/os-release
함께 제공되므로 systemd
고대 배포판(또는 불쾌한 배포판 systemd
)에서는 작동하지 않을 것 같습니다. 이에 대한 신뢰할 수 있는 정보를 찾을 수 없습니다 /etc/system-release
. 호환성이 중요하다면 많은 파일을 검사해야 할 것 같습니다. 또는 /etc/os-release
극단적인 경우가 중요하지 않은 경우에 사용하세요.