서기록

2023-10-31 화요일 / seogilang

 일부 배포판에서 GUI 환경을 제공하기는 하지만 리눅스는 주로 명령어를 통해 사용된다고 보면 된다.

 이 때문에 리눅스를 처음 접하거나 익숙하지 않다면 명령어를 잘 몰라서 해메는 경우가 많은데 자주 사용할만한 기본 명령어를 간단하게 정리해봤으니 참고하면 도움이 되지 않을까 한다.

 

자주 사용하는 기본 명령어

권한 관련 명령어

sudo

 Super User DO의 약자로 실행할 명령어 앞에 넣으면 해당 명령어를 root 권한으로 실행할 수 있다.
(윈도우의 관리자 권한으로 실행과 비슷하다고 보면 된다)

 sudo chmod 644 seogilog.txt

  : root 권한으로 seogilog.txt 파일에 대한 권한을 변경한다.

 

su

 다른 사용자의 권한으로 새로운 쉘 세션을 시작한다.
(잠시 사용자를 변경하는 것이라고 보면 된다)

 su seogilog

  : seogilog 사용자로 새 쉘 세션을 시작한다.

 

Who

 현재 시스템에 접속한 사용자의 이름이나 정보를 확인한다.

 

chmod

 파일이나 디렉토리의 권한을 변경한다.

 chmod 755 seogilog.txt

  : seogilog.txt 파일에 대한 권한을 변경한다.

 숫자에 따라 권한이 달라지며 일반적으로 권한 변경 시 755와 644 권한으로 변경하는 경우가 많다.

 

chown

 파일이나 디렉토리의 소유자와 그룹을 변경한다.

 chown user:group seogilog.txt

  : seogilog.txt 파일에 대한 소유자를 user로, 그룹을 group으로 변경한다.

 

파일과 디렉토리 관련 명령어.

ls

 현재 디렉토리의 내용 확인한다.

 

pwd

 현재 작업 디렉토리의 전체 경로를 확인한다.

 

cd

 디렉토리를 이동한다.

 cd /home/user

  : 현재 디렉토리를 /home/user로 이동한다.

 

cp

 파일이나 디렉토리를 복사한다.

 cp s.txt seogilog.txt

  : s.txt 파일을 seogilog.txt 파일로 복사한다.

 

mv

 파일이나 디렉토리를 이동하거나 이름을 변경한다.

 mv s.txt seogilog.txt

  : seo.txt 파일을 seogilog.txt 파일로 이름을 변경한다.

  디렉토리를 추가하면 이동이 가능하다.

 

rm

 파일이나 디렉토리를 삭제한다.

 rm s.txt

  : seo.txt 파일을 삭제한다.

  옵션으로 -r을 붙이면 디렉토리도 삭제할 수 있다.

 

mkdir

 새로운 디렉토리를 생성한다.

 mkdir seogilang

  : seogilang 디렉토리를 생성한다.

 

find

 파일 검색 명령어로 옵션에 따라 파일의 내용도 검색할 수 있기 때문에 상당히 유용하다.

 find / -name s.txt

  : 시스템 전체 경로에서 s.txt 파일을 검색한다.

 

tar

 파일을 결합하거나 압축한다.

 tar -cvzf s.tar.gz seogilog

  : seogilog 디렉토리를 s.tar.gz로 압축한다.

 

 tar -xvzf s.tar.gz

  : s.tar.gz의 압축을 해제한다.

 

텍스트 편집 명령어

cat

 파일을 편집하는 명령어는 아니지만 간단하게 파일의 내용을 확인할 때 사용하는 명령어.

 cat seogilog.txt

  : seogilog.tct 파일의 내용을 확인한다.

 

nano

 간단한 텍스트 편집기.

 nano seogilog.txt

  : nano 편집기를 사용하여 seogilog.tct 파일을 편집한다.

 

vi

 텍스트 편집기 중 하나로, 키보드만을 사용하여 텍스트를 편집할 수 있기 때문에 처음 사용은 어렵지만 익숙해진다면 빠른 속도로 편집이 가능하다.

 vi seogilog.txt

  : vi 편집기를 사용하여 seogilog.tct 파일을 편집한다.

 

네트워크 관련 명령어

ping

 네트워크 연결 상태를 테스트한다.

 ping google.com

  : google.com 서버로 패킷을 보내고 연결 상태를 테스트한다.

 

ifconfig

 네트워크 인터페이스를 설정하거나 표시한다.

 

netstat

 네트워크 연결, 라우팅 테이블, 인터페이스 상태 등을 확인한다.

 netstat -tuln

  : 현재 TPC와 UDP 연결 상태를 확인한다.

 

ssh

 원격 컴퓨터에 로그인합니다.

 ssh user@hostname

  : hostname호스트에 user로 ssh 로그인을 한다.

 

ssh-keygen

 SSH를 위한 공개 키/개인 키 쌍을 생성한다.

 

패키지 관리 명령어

apt-get

 패키지 관리 도구로, 패키지를 설치하거나 제거하고, 패키지를 업그레이드하는 등의 작업을 수행한다.

 sudo apt-get install packageName

  : packageName이라는 패키지를 설치한다..

yum

 Red Hat 계열의 리눅스 배포판에서 사용하는 패키지 관리 도구로 다른 배포판에서 사용하고자 한다면 yum을 설치하면 된다.

 

프로세스, 서비스 관련 명령어

ps

 현재 실행 중인 프로세스를 확인한다.

 ps -ef | grep prosessName

  : prosessName를 검색한다.

 

top

 시스템의 전반적인 상황을 실시간으로 확인한다.

 

kill

 프로세스를 강제로 종료한다.

 kill -9 PID

  : PID 프로세스를 강제 종료한다.

 

systemctl

 리눅스의 서비스 상태를 확인하거나, 실행, 중지, 재시작, 부팅 시 자동 시작 등의 설정을 한다.

 systemctl start service

  : service 서비스를 시작한다.

 

 systemctl stop service

  : service 서비스를 중단한다.

 

 systemctl enable service

  : 시스템 부팅 시 service 서비스를 자동 시작한다.

 

파일 다운로드 명령어

wget

 웹에서 파일을 다운로드한다.

 wget https://seogilog.com/s.txt

  : https://seogilog.com/s.txt 파일을 다운로드 한다.

 

curl

 웹에서 데이터를 전송한다.

 curl -o https://seogilog.com/s.txt

  : https://seogilog.com/s.txt 파일을 다운로드 한다.

 

기타 명령어

man

 명령어의 메뉴얼을 확인한다.

 man ls

  : ls의 메뉴얼을 확인한다.

 

crontab

 예약 작업을 설정하고 실행한다.

 crontab -e

  : 크론탭 파일을 편집한다.

 

 크롬탭 파일에는 분, 시, 일, 월, 요일 실행스크립트를 넣으면 된다.

 매일 1시 30분에 seogilog.sh 스크립트를 실행하고자 한다면 아래과 같이 입력하면 된다.

 30 1 * * * /var/seogilog.sh

기본 명령어 크론탭 사용 방법

  

df

 디스크 사용량을 확인하는 명령어.

 

du

 디렉토리나 파일의 디스크 사용량 확인하는 명령어.

 

shutdown

 시스템을 종료한다.

 shutdown -r

  : 시스템을 재부팅 한다.

 

그 외 내용

 소개한 명령어는 간단한 사용 방법의 예시만 넣은 것으로 명령어의 옵션을 자세히 확인하고자 한다면 명령어를 입력할 때 옵션으로 -h 혹은 –help을 넣어주면 확인이 가능하다.

 간혹 -h에 다른 기능이 할당되어 있거나 기능이 없는 명령어도 존재하는데 이런 경우에는 man을 사용하여 명령어의 매뉴얼을 확인해 보자.