웹사이트 검색

Linux 터미널 소개


소개

Linux 기본 사항을 가르치는 시리즈의 첫 번째 자습서인 이 자습서에서는 터미널, Linux 명령줄 시작 및 명령 실행을 다룹니다. Linux를 처음 사용하는 경우 Linux 서버와 상호 작용하는 표준 방법이므로 터미널에 익숙해지는 것이 좋습니다.

이 튜토리얼을 최대한 활용하려면 연결하고 사용할 Linux 서버가 필요합니다. 아직 없는 경우 DigitalOcean 물방울을 만드는 방법 링크를 따라 빠르게 돌릴 수 있습니다. 이 튜토리얼은 Ubuntu 22.04 서버용으로 작성되었지만 일반 원칙은 다른 모든 Linux 배포판에 적용됩니다.

터미널 에뮬레이터가 무엇인지 살펴보는 것으로 시작하겠습니다.

터미널 에뮬레이터

터미널 에뮬레이터는 그래픽 환경에서 터미널을 사용할 수 있게 해주는 프로그램입니다. 대부분의 사람들이 일상적인 컴퓨터 요구 사항을 위해 그래픽 사용자 인터페이스(GUI)가 있는 OS를 사용하므로 터미널 에뮬레이터의 사용은 대부분의 Linux 서버 사용자에게 필수적입니다.

다음은 운영 체제별로 일반적으로 사용되는 무료 터미널 에뮬레이터입니다.

  • Mac OS X: 터미널(기본값), iTerm 2
  • Windows: ConEmu, Windows 터미널, PuTTy
  • Linux: Gnome 터미널, Konsole, XTerm

각 터미널 에뮬레이터에는 고유한 기능 세트가 있습니다. 일반적으로 최신 터미널 에뮬레이터는 탭 창과 텍스트 강조 표시를 지원합니다.

Linux 시스템에서 은 사용자의 명령과 스크립트 파일을 해석하고 서버의 운영 체제에 이를 사용하여 수행할 작업을 알려주는 명령줄 인터페이스입니다. Bourne-Again 쉘(bash) 및 Z 쉘(zsh)과 같이 널리 사용되는 여러 쉘이 있습니다. 코드>). 각 셸에는 명령이 해석되는 방식과 관련하여 고유한 기능 세트와 복잡성이 있지만 모두 무엇보다도 입력 및 출력 리디렉션, 변수 및 조건 테스트 기능이 있습니다.

이 튜토리얼은 Bourne-Again 셸을 사용하여 작성되었습니다. 일반적으로 bash라고 하며 이는 Ubuntu, Fedora 및 RHEL을 비롯한 대부분의 Linux 배포판의 기본 셸입니다.

명령 프롬프트

서버에 처음 로그인하면 일반적으로 오늘의 메시지(MOTD)가 표시됩니다. 이는 일반적으로 Linux 배포 버전과 같은 기타 정보가 포함된 정보 메시지입니다. 서버가 실행 중입니다. MOTD 후에는 서버에 명령을 내릴 수 있는 명령 프롬프트 또는 셸 프롬프트로 이동합니다.

명령 프롬프트에 표시되는 정보는 사용자가 사용자 정의할 수 있지만 다음은 기본 Ubuntu 20.04 명령 프롬프트의 예입니다.

sammy@webapp:~$

다음은 명령 프롬프트 구성에 대한 분석입니다.

  • sammy: 현재 사용자의 사용자 이름
  • webapp: 서버의 호스트 이름
  • ~: 현재 디렉토리. 기본 쉘인 bash에서 ~ 또는 물결표는 현재 사용자의 홈 디렉토리 의 경로로 확장되는 특수 문자입니다. ; 이 경우 /home/sammy
  • 를 나타냅니다.
  • $: 프롬프트 기호입니다. 이것은 명령 프롬프트의 끝을 나타내며 그 후에 사용자의 키보드 입력이 나타납니다

다음은 root로 로그인하고 /var/log 디렉토리에 있는 경우 명령 프롬프트가 어떻게 보이는지에 대한 예입니다.

root@webapp:/var/log#

명령 프롬프트를 종료하는 기호는 root의 표준 프롬프트 기호인 #입니다. Linux에서 루트 사용자는 수퍼유저 계정이며 시스템 전체 관리 기능을 수행할 수 있는 특수 사용자 계정입니다. 서버에서 모든 작업을 수행할 수 있는 권한이 있는 무제한 사용자입니다.

명령 실행

이진 프로그램 또는 스크립트일 수 있는 실행 파일의 이름을 지정하여 명령 프롬프트에서 명령을 실행할 수 있습니다. 파일 시스템을 탐색하고, 소프트웨어 패키지를 설치하고, 시스템 및 애플리케이션을 구성할 수 있도록 OS와 함께 설치되는 많은 표준 Linux 명령 및 유틸리티가 있습니다.

실행 중인 명령의 인스턴스를 프로세스라고 합니다. 명령이 실행되는 기본 방식인 포그라운드에서 명령이 실행될 때 사용자는 명령 프롬프트로 돌아가기 전에 프로세스가 완료될 때까지 기다려야 합니다. 이때 사용자는 계속 실행할 수 있습니다. 더 많은 명령.

파일 및 디렉터리 이름, 명령, 인수 및 옵션을 포함하여 Linux의 거의 모든 항목은 대/소문자를 구분한다는 점에 유의해야 합니다. 예상대로 작동하지 않는 경우 명령의 철자와 대소문자를 다시 확인하십시오!

다음은 명령 실행의 기본 사항을 다루는 몇 가지 예입니다.

참고: 아직 Linux 서버에 연결되어 있지 않은 경우 지금이 로그인하기에 좋습니다. Linux 서버가 있지만 연결하는 데 문제가 있는 경우 SSH를 사용하여 Droplet에 연결하는 방법 링크를 따르십시오.

인수 또는 옵션 없이

인수나 옵션 없이 명령을 실행하려면 명령 이름을 입력하고 Enter를 누르십시오.

이와 같은 명령을 실행하면 명령마다 다른 기본 동작이 나타납니다. 예를 들어 인수 없이 cd 명령을 실행하면 현재 사용자의 홈 디렉터리로 돌아갑니다. ls 명령은 현재 디렉토리의 파일 및 디렉토리 목록을 인쇄합니다. 인수가 없는 ip 명령은 ip 명령을 사용하는 방법을 보여주는 메시지를 인쇄합니다.

현재 디렉터리에 있는 파일과 디렉터리를 나열하려면 인수 없이 ls 명령을 실행해 보십시오(아무 것도 없을 수도 있음).

  1. ls

인수 포함

많은 명령은 명령의 동작에 영향을 줄 수 있는 인수 또는 매개 변수를 허용합니다. 예를 들어 cd 명령을 사용하는 가장 일반적인 방법은 변경할 디렉토리를 지정하는 단일 인수를 전달하는 것입니다. 예를 들어 많은 표준 명령이 설치된 /usr/bin 디렉토리로 변경하려면 다음 명령을 실행합니다.

cd /usr/bin

cd 구성 요소는 명령이고 첫 번째 인수 /usr/bin은 명령 뒤에 옵니다. 명령 프롬프트의 현재 경로가 어떻게 업데이트되었는지 확인하십시오.

새로운 현재 디렉터리에 있는 파일을 보려면 ls 명령을 실행해 보십시오.

ls
Output
… grub-mkrescue sdiff zgrep grub-mkstandalone sed zipdetails grub-mount see zless grub-ntldr-img select-editor zmore grub-render-label semver znew grub-script-check sensible-browser

옵션으로

대부분의 명령은 명령의 동작을 수정하는 플래그 또는 스위치라고도 하는 옵션을 허용합니다. 옵션은 명령 뒤에 있으며 개별 대문자 또는 소문자로 표시되는 하나 이상의 옵션이 뒤에 오는 단일 - 문자로 표시됩니다. 일부 다중 단어 옵션은 --로 시작하고 그 뒤에 플래그 텍스트가 올 수 있습니다.

옵션 작동 방식의 예를 보려면 ls 명령을 살펴보겠습니다. 다음은 ls를 사용할 때 유용한 몇 가지 일반적인 옵션입니다.

  • -l: 권한, 소유권, 파일 크기 및 타임스탬프와 같은 추가 세부 정보가 포함된 "긴 목록\을 인쇄합니다.
  • -a: 숨겨진 파일을 포함하여 디렉토리의 파일 모든을 나열합니다(.로 시작)

ls와 함께 -l 플래그를 사용하려면 다음 명령을 사용하십시오.

  1. ls -l

목록에는 이전과 동일한 파일이 포함되지만 각 파일에 대한 추가 정보가 포함되어 있습니다.

앞에서 언급했듯이 옵션은 종종 함께 그룹화될 수 있습니다. -l-a 옵션을 함께 사용하려면 ls -l -a를 실행하거나 다음과 같이 조합할 수 있습니다. 이 명령:

  1. ls -la

목록에는 -a 옵션 때문에 목록에 숨겨진 ... 디렉토리가 포함되어 있습니다.

옵션 및 인수 포함

옵션과 인수는 명령을 실행할 때 거의 항상 결합될 수 있습니다.

예를 들어, 다음 ls 명령을 실행하여 현재 디렉토리에 관계없이 /home의 내용을 확인할 수 있습니다.

ls -la /home

ls는 명령이고 -la는 옵션이며 /home은 나열할 파일 또는 디렉터리를 나타내는 인수입니다. 이렇게 하면 /home 디렉토리의 자세한 목록이 인쇄되며 여기에는 서버에 있는 모든 일반 사용자의 홈 디렉토리가 포함되어야 합니다.

환경 변수

환경 변수는 명령과 프로세스가 실행되는 방식을 변경하는 데 사용되는 명명된 값입니다. 서버에 처음 로그인하면 기본적으로 몇 가지 구성 파일에 따라 여러 환경 변수가 설정됩니다.

모든 환경 변수 보기

특정 터미널 세션에 대해 설정된 모든 환경 변수를 보려면 env 명령을 실행하십시오.

env

출력물이 많을 것입니다. PATH 항목을 찾습니다.

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

PATH 환경 변수는 명령이 실행될 때 쉘이 실행 가능한 프로그램이나 스크립트를 찾을 콜론으로 구분된 디렉토리 목록입니다. 예를 들어 env 명령은 /usr/bin에 있으며 경로가 PATH에 있기 때문에 전체 경로를 지정하지 않고도 실행할 수 있습니다. 환경 변수.

변수 값 보기

환경 변수의 값은 변수 이름 앞에 $를 붙여 검색할 수 있습니다. 이렇게 하면 참조된 변수가 해당 값으로 확장됩니다.

예를 들어 PATH 변수의 값을 출력하려면 echo 명령을 사용할 수 있습니다.

echo $PATH

또는 기본적으로 사용자의 홈 디렉토리로 설정된 HOME 변수를 사용하여 다음과 같이 홈 디렉토리로 변경할 수 있습니다.

cd $HOME

설정되지 않은 환경 변수에 액세스하려고 하면 아무것도 확장되지 않습니다. 빈 문자열.

환경 변수 설정

이제 환경 변수를 보는 방법을 알았으니 환경 변수를 설정하는 방법을 배워야 합니다.

환경 변수를 설정하려면 변수 이름으로 시작하고 바로 뒤에 = 기호를 붙이고 바로 원하는 값을 붙이기만 하면 됩니다.

VAR=value

기존 변수를 설정하면 원래 값을 덮어씁니다. 변수가 처음에 존재하지 않으면 생성됩니다.

Bash에는 변수를 내보내 자식 프로세스에 상속되도록 하는 export라는 명령이 포함되어 있습니다. 이렇게 하면 현재 세션에서 내보낸 환경 변수를 참조하는 스크립트를 사용할 수 있습니다.

변수를 설정할 때 기존 변수를 참조할 수도 있습니다. 예를 들어 애플리케이션을 /opt/app/bin에 설치한 경우 다음 명령을 사용하여 해당 디렉토리를 PATH 환경 변수 끝에 추가할 수 있습니다.

export PATH=$PATH:/opt/app/bin

이제 echo를 사용하여 PATH 변수 끝에 /opt/app/bin이 추가되었는지 확인합니다.

echo $PATH

이러한 방식으로 환경 변수를 설정하면 현재 세션에 대해서만 환경 변수가 설정된다는 점에 유의하십시오. 즉, 로그아웃하거나 다른 세션으로 변경하면 환경에 대한 변경 사항이 유지되지 않습니다. 환경 변수를 영구적으로 변경하는 방법이 있지만 이후 자습서에서 다룰 것입니다.

결론

이제 Linux 터미널(및 몇 가지 명령)에 대해 배우기 시작했으므로 Linux 명령에 대한 지식을 확장할 수 있는 좋은 기초가 있어야 합니다. 이 시리즈의 다음 자습서를 읽고 파일 및 권한을 탐색하고 보고 편집하는 방법을 알아보세요.