일부 배포판에서 GUI 환경을 제공하기는 하지만 리눅스는 주로 명령어를 통해 사용된다고 보면 된다.
이 때문에 리눅스를 처음 접하거나 익숙하지 않다면 명령어를 잘 몰라서 해메는 경우가 많은데 자주 사용할만한 기본 명령어를 간단하게 정리해봤으니 참고하면 도움이 되지 않을까 한다.
목차(Contents)
자주 사용하는 기본 명령어
– 권한 관련 명령어
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을 사용하여 명령어의 매뉴얼을 확인해 보자.