Linux 시스템 정보 표시

LinuxBeginner
지금 연습하기

소개

이 랩에서는 Linux 명령어를 사용하여 시스템 정보를 표시하는 방법을 배우게 됩니다. 시스템의 세부 정보를 이해하는 것은 시스템 관리, 문제 해결 및 소프트웨어 애플리케이션과의 호환성을 보장하는 데 매우 중요합니다.

uname 명령어는 운영 체제 및 하드웨어 플랫폼에 대한 필수 정보를 제공하는 Linux 의 강력한 유틸리티입니다. 이 명령어와 다양한 옵션을 숙달함으로써 특정 시스템 세부 정보를 효율적으로 검색할 수 있습니다.

이 랩에서는 uname 명령어를 사용하여 시스템 정보를 수집하고 이 정보를 구조화된 형식으로 표시하는 간단한 셸 스크립트를 만드는 과정을 안내합니다.

이것은 가이드 실험입니다. 학습과 실습을 돕기 위한 단계별 지침을 제공합니다.각 단계를 완료하고 실무 경험을 쌓기 위해 지침을 주의 깊게 따르세요. 과거 데이터에 따르면, 이것은 초급 레벨의 실험이며 완료율은 100%입니다.학습자들로부터 100%의 긍정적인 리뷰율을 받았습니다.

uname 으로 기본 시스템 정보 이해하기

Linux 의 uname 명령어는 운영 체제 및 하드웨어에 대한 기본 정보를 제공합니다. 이 정보는 시스템 환경을 식별하는 데 도움이 되며, 문제 해결 및 관리 작업에 유용합니다.

이 단계에서는 기본 uname 명령어를 사용하여 모든 시스템 정보를 한 번에 표시하는 방법을 배우게 됩니다.

uname 명령어 탐색

  1. 터미널을 엽니다. 기본 디렉토리 /home/labex/project에 있어야 합니다.

  2. 올바른 디렉토리에 있는지 확인하려면 다음을 실행합니다.

    pwd

    다음과 같이 표시되어야 합니다.

    /home/labex/project
  3. 올바른 디렉토리에 있지 않은 경우 다음을 실행합니다.

    cd ~/project
  4. 이제 -a 옵션과 함께 uname 명령어를 실행하여 모든 시스템 정보를 표시합니다.

    uname -a

    -a 옵션은 "all"을 의미하며 사용 가능한 모든 시스템 정보를 한 번에 표시합니다.

  5. 다음과 유사한 출력을 볼 수 있습니다.

    Linux ubuntu 5.15.0-86-generic #96-Ubuntu SMP Wed Sep 20 08:23:40 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

이 출력을 이해해 보겠습니다.

  • 첫 번째 부분 (Linux) 은 커널 이름입니다.
  • 두 번째 부분 (ubuntu) 은 네트워크 노드 호스트 이름입니다.
  • 세 번째 부분 (5.15.0-86-generic) 은 커널 릴리스입니다.
  • #96-Ubuntu 뒤의 부분은 커널 버전입니다.
  • x86_64는 머신 하드웨어 아키텍처를 나타냅니다.
  • GNU/Linux는 운영 체제입니다.

이 정보는 시스템의 기본 세부 사항에 대한 포괄적인 개요를 제공합니다.

특정 시스템 정보 검색

이전 단계에서는 uname -a를 사용하여 모든 시스템 정보를 표시하는 방법을 배웠습니다. 그러나 전체 출력 대신 특정 정보가 필요한 경우가 많습니다. uname 명령어는 특정 시스템 세부 정보를 표시하기 위한 다양한 옵션을 제공합니다.

일반적인 uname 옵션

uname 명령어에 가장 일반적으로 사용되는 옵션을 살펴보겠습니다.

  1. 먼저, 프로젝트 디렉토리에 있는지 확인합니다.

    cd ~/project
  2. 커널 이름만 표시하려면 -s 옵션을 사용합니다.

    uname -s

    출력은 다음과 같아야 합니다.

    Linux
  3. 커널 릴리스를 표시하려면 -r 옵션을 사용합니다.

    uname -r

    출력은 다음과 유사합니다.

    5.15.0-86-generic
  4. 머신 하드웨어 이름 (아키텍처) 을 표시하려면 -m 옵션을 사용합니다.

    uname -m

    출력은 다음과 같아야 합니다.

    x86_64
  5. 운영 체제를 표시하려면 -o 옵션을 사용합니다.

    uname -o

    출력은 다음과 같아야 합니다.

    GNU/Linux
  6. 프로세서 유형을 표시하려면 -p 옵션을 사용합니다.

    uname -p

    출력은 시스템에 따라 다를 수 있지만 다음과 같이 표시될 수 있습니다.

    x86_64

이러한 옵션을 사용하면 uname -a의 전체 출력을 구문 분석하는 것보다 더 유용한 특정 정보를 추출할 수 있습니다. 시스템에 대해 알아야 할 사항을 정확하게 표시하도록 명령을 맞춤 설정할 수 있습니다.

시스템 정보 스크립트 생성

이제 다양한 옵션으로 uname 명령어를 사용하는 방법을 이해했으므로, 시스템 정보를 더 체계적이고 읽기 쉬운 형식으로 표시하는 셸 스크립트를 만들어 보겠습니다.

셸 스크립트는 함께 실행할 수 있는 일련의 명령어를 포함하는 텍스트 파일입니다. 이는 반복적인 작업을 자동화하거나 여러 명령어를 결합하는 데 유용합니다.

스크립트 생성

  1. 프로젝트 디렉토리에 있는지 확인합니다.

    cd ~/project
  2. nano 텍스트 편집기를 사용하여 system_info.sh라는 새 파일을 만듭니다.

    nano system_info.sh
  3. nano 편집기에서 다음 내용을 입력하거나 붙여넣습니다.

    #!/bin/bash
    
    ## Display system information
    echo "======= System Information ======="
    echo "Kernel Name: $(uname -s)"
    echo "Kernel Release: $(uname -r)"
    echo "Machine Hardware: $(uname -m)"
    echo "Operating System: $(uname -o)"
    echo "=================================="
  4. Ctrl+O를 누른 다음 Enter를 눌러 파일을 저장하고, Ctrl+X를 눌러 nano 를 종료합니다.

  5. 스크립트의 권한을 변경하여 실행 가능하게 만듭니다.

    chmod +x system_info.sh

    chmod +x 명령어는 파일에 실행 권한을 추가하여 프로그램을 실행할 수 있도록 합니다.

  6. 스크립트를 실행합니다.

    ./system_info.sh

    ./ 접두사는 셸에게 현재 디렉토리에서 스크립트를 실행하도록 지시합니다.

  7. 다음과 유사한 출력을 볼 수 있습니다.

    ======= System Information =======
    Kernel Name: Linux
    Kernel Release: 5.15.0-86-generic
    Machine Hardware: x86_64
    Operating System: GNU/Linux
    ==================================

이 스크립트는 여러 uname 명령어를 결합하고 출력을 더 읽기 쉬운 형식으로 지정합니다. $() 구문은 명령 치환 (command substitution) 이라고 하며, 괄호 안의 명령어를 실행하고 해당 출력을 대체합니다.

이제 중요한 시스템 정보를 명확한 형식으로 빠르게 표시할 수 있는 재사용 가능한 스크립트가 있습니다. 이 스크립트는 필요에 따라 더 많은 시스템 세부 정보를 수집하기 위해 추가 명령어로 확장할 수 있습니다.

요약

이 랩에서는 uname 명령어를 사용하여 Linux 에서 시스템 정보를 표시하는 방법을 배웠습니다. 이 랩의 주요 내용은 다음과 같습니다.

  1. uname -a를 사용하여 커널 이름, 릴리스, 버전 및 하드웨어 세부 정보를 포함한 모든 시스템 정보를 한 번에 표시합니다.

  2. uname과 함께 특정 옵션을 사용하여 특정 정보 추출:

    • 커널 이름의 경우 -s
    • 커널 릴리스의 경우 -r
    • 머신 하드웨어 이름의 경우 -m
    • 운영 체제의 경우 -o
  3. 시스템 정보를 더 체계적이고 읽기 쉬운 형식으로 표시하는 셸 스크립트 생성.

이러한 기술은 Linux 시스템 관리의 기본이며 시스템 문제 해결, 호환성 확인 및 시스템 모니터링과 같은 작업에 도움이 됩니다.

시스템 정보를 빠르게 수집하는 능력은 Linux 시스템을 사용하는 모든 사람에게 필수적인 기술입니다. 시스템 관리자, 개발자 또는 IT 전문가이든, 효과적인 문제 해결 및 시스템 관리를 위해서는 시스템 구성을 이해하는 것이 중요합니다.