명령 행에서 배포판 이름에 어떻게 액세스합니까?


12

나는 놀고있는 많은 배포판을 가지고있다. SD 카드에 라벨을 붙였습니다.

  1. 그들은 거꾸로 있습니다
  2. 나는 보통 RPi의 다른 방에 있습니다.

내 Pi가 종료되거나 시작될 때 (컬을 통해 API 사용) 푸시 오버를 통해 알려주는 init.d에 서비스를 설정했습니다.

현재 사용중인 배포판을 포함하고 싶습니다.

최신 부팅에서 볼 수 있습니다 (adafruit Raspbian으로 재생).

Linux raspberrypi 3.1.9adafruit+ #8 PREEMPT Wed Aug 1 18:02:42 EDT 2012 armv6l

이 정보를 스크립트에 포함 시키려면 어떻게해야합니까?

나는 lsb-release를 설치했지만 이것 만 나에게 준다 :

pi@raspberrypi / $ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux testing/unstable
Release:    testing/unstable
Codename:   n/a

내 일반 Raspbian과 동일하게 보입니다.

또한 SD 카드의 특정 인스턴스에 대해 직접 설명하고 싶습니다 (아마도 동일한 기본 배포판이 여러 개 있기 때문에). 분명히 각 SD 카드의 동일한 위치에 파일을 놓을 수는 있지만 그러한 종류의 정보를 어디에 두어야하는지에 대한 규칙이 있습니까?


와 멋있다. 그 pushover / init.d 일을 어떻게 정리했는지 지적 할 수 있습니까? 당신이 그것에 대답한다면 나는 질문을 할 것이다 :)
Zlatko

@zladuric pushover.net에 계정을 등록하십시오. curl API는 매우 간단합니다. init.d에 간단한 스크립트를 "서비스"로 설정하고 시작 / 중지시 다른 알림을 보냅니다. 기술적으로는 시작 중지 알림이므로 "시작"되면 알림을 보냅니다. 실제로 부팅 및 종료를 제외하고는 시작하거나 중지하는 것이 없습니다. 전체 코드를 원하면 계속해서 질문을 게시하십시오.
Cade Roux

답변:


8
$ uname -a
Linux raspberrypi 3.1.9+ #174 PREEMPT Sun Jul 22 19:04:28 BST 2012 armv6l GNU/Linux

7

시험

cat /etc/*-release

내 바탕 화면에서

NAME="Arch Linux"
ID=arch
PRETTY_NAME="Arch Linux"
ANSI_COLOR="0;36"
HOME_URL="https://www.archlinux.org/"
SUPPORT_URL="https://bbs.archlinux.org/"
BUG_REPORT_URL="https://bugs.archlinux.org/"

공식 Raspberry Pi 이미지 (Raspbian 및 Arch)를 확인한 후 /etc/os-release둘 다에서 사용할 수 있으며 최소한 NAME 및 PRETTY_NAME 속성이 포함되어 있습니다.

배포판 이름을 어떻게 추출합니까?

아주 간단합니다.

$ cat /etc/os-release | perl -n -e '/^NAME=\"([a-zA-Z ]*)\"$/ && print "$1\n"'
Arch Linux

참고 문헌

  1. 하우투 : 리눅스 배포판 이름과 버전 찾기

좋아 보인다 궁극적으로 이것이 문제의 배포판에서 작동하는 한 이것이 보편적인지 여부는 중요하지 않습니다. 기본적으로 파일이없는 파일을 실험하는 경우 파일 시스템에 자신의 파일을 쉽게 넣을 수 있습니다.
Chris Stratton

4

지적했듯이을 사용할 수 uname있지만 커널 버전 만 표시됩니다. 두 개의 서로 다른 배포판 / 카드에 동일한 커널 버전이있는 경우 (두 개가 동일한 기본 커널을 사용하고 있기 때문에) 각 커널에 대해 동일한 결과를 얻을 수 있습니다. 배포판을 구별하는 가장 좋은 방법은 커널 이외의 것을 사용하는 것입니다. 그러나 보편적 인 방법은 없습니다. 한 가지 쉬운 방법은 호스트 이름을 사용하고 모든 배포판마다 변경하는 것입니다.

고양이 / proc / version / proc / sys / kernel / hostname

또는

호스트 이름 && uname -a


고양이 / proc / version / proc / sys / kernel / hostname
Krzysztof Adamski

hostname && uname -a (호스트 이름이 작동한다고 가정-pi는 현재 부팅되지 않습니다)
Chris Stratton
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.