본 포스트는 박재호님의 유튜브 강의를 보고 개인적으로 정리한 내용입니다.
강의에 나와있는 대로 AWS계정을 만들고, EC2 인스턴스를 생성한다. ssh 접속을 위해 키페어를 생성하는데, 윈도우 사용자일 경우 PuTTY를 사용해야 ssh 접속을 할 수 있고, AWS에서 제공하는 키가 pem 형식이기 때문에 이를 ppk로 변환해주는 PuTTYgen을 사용한다.
(윈도우 사용자이더라도 WSL을 사용한다면 PuTTY를 다운받지 않아도 바로 ssh로 접속할 수 있다.)
sudo apt update
sudo apt list --upgradable
sudo apt upgrdae -y
apt는 ubuntu의 패키지 관리자이고 update명령은 패키지 전체의 목록을 업데이트 하는 것이다. list upgradable 명령은 말 그대로 업그레이드가 가능한 패키지의 목록이고, upgrade는 목록의 패키지를 업그레이드 한다. -y는 yes/no 질문에 yes로 대답하겠다는 명령어이다.
uptime
free
df -h
uname -a
uptime: 서버가 켜진 시간 & 경과한 시간
free: 메모리 사용량
df -h: 디스크 사용량
uname -a: 우분투 패키지의 이름
ubuntu@ip-172-26-9-205:~$ pwd
/home/ubuntu
pwd: print working directory. 현재 작업중인 디렉토리를 표시한다.
ubuntu@ip-172-26-9-205:~$ cd /var/log
ubuntu@ip-172-26-9-205:/var/log$ pwd
/var/log
ubuntu@ip-172-26-9-205:/var/log$ cd ..
ubuntu@ip-172-26-9-205:/var$ pwd
/var
cd {dir}: change directory. 설정한 경로로 디렉토리를 이동한다.
..: 한단계 상위 디렉토리를 지정한다.
홈으로 돌아가는 방법은 여러가지가 있는데 다음과 같다.
cd /home/ubuntu # 절대경로
cd $HOME # 환경변수
cd ~
cd
ls 명령은 현재 디렉토리 안에 있는 내용(파일,디렉토리)을 보여주는 명령어이다. 그리고 뒤에 여러가지 옵션을 붙여서 다양한 정보를 보여줄 수 있다.
예를 들어,
ubuntu@ip-172-26-9-205:~$ ls -a
. .bash_history .bashrc .conda .profile .sudo_as_admin_successful
.. .bash_logout .cache .gnupg .ssh .viminfo
ls 명령어로는 보이지 않았던 숨김파일(파일명 앞에 .이 붙어있는)을 볼 수 있다.
여기에 -l명령어를 더 붙이면
ubuntu@ip-172-26-9-205:~$ ls -al
total 92100
# 접근 권한 #파일의 소유주/그룹 #용량 #생성일
drwxr-xr-x 8 ubuntu ubuntu 4096 Mar 28 12:58 .
drwxr-xr-x 3 root root 4096 Mar 22 04:54 ..
-rw------- 1 ubuntu ubuntu 4544 Apr 1 11:37 .bash_history
-rw-r--r-- 1 ubuntu ubuntu 220 Apr 4 2018 .bash_logout
-rw-r--r-- 1 ubuntu ubuntu 4254 Mar 22 05:35 .bashrc
drwx------ 3 ubuntu ubuntu 4096 Mar 22 05:40 .cache
drwxrwxr-x 2 ubuntu ubuntu 4096 Mar 22 05:35 .conda
drwx------ 3 ubuntu ubuntu 4096 Mar 22 04:55 .gnupg
-rw-r--r-- 1 ubuntu ubuntu 807 Apr 4 2018 .profile
drwx------ 2 ubuntu ubuntu 4096 Mar 22 04:54 .ssh
-rw-r--r-- 1 ubuntu ubuntu 0 Mar 22 05:30 .sudo_as_admin_successful
-rw------- 1 ubuntu ubuntu 10208 Mar 28 12:58 .viminfo
이처럼 더 상세한 정보를 표시할 수 있게 된다.
여기에 또 -t명령어를 추가하면 어떻게 될까?
ubuntu@ip-172-26-9-205:~$ ls -lta
total 92100
-rw------- 1 ubuntu ubuntu 4544 Apr 1 11:37 .bash_history
drwxr-xr-x 8 ubuntu ubuntu 4096 Mar 28 12:58 .
-rw------- 1 ubuntu ubuntu 10208 Mar 28 12:58 .viminfo
drwx------ 3 ubuntu ubuntu 4096 Mar 22 05:40 .cache
-rw-r--r-- 1 ubuntu ubuntu 4254 Mar 22 05:35 .bashrc
-rw-r--r-- 1 ubuntu ubuntu 0 Mar 22 05:30 .sudo_as_admin_successful
drwx------ 3 ubuntu ubuntu 4096 Mar 22 04:55 .gnupg
drwx------ 2 ubuntu ubuntu 4096 Mar 22 04:54 .ssh
drwxr-xr-x 3 root root 4096 Mar 22 04:54 ..
-rw-r--r-- 1 ubuntu ubuntu 220 Apr 4 2018 .bash_logout
-rw-r--r-- 1 ubuntu ubuntu 807 Apr 4 2018 .profile
차이가 잘 보이지 않는다면 -r 명령어도 추가한 것과 비교해보자
ubuntu@ip-172-26-9-205:~$ ls -ltar
total 92100
-rw-r--r-- 1 ubuntu ubuntu 807 Apr 4 2018 .profile
-rw-r--r-- 1 ubuntu ubuntu 220 Apr 4 2018 .bash_logout
drwxr-xr-x 3 root root 4096 Mar 22 04:54 ..
drwx------ 2 ubuntu ubuntu 4096 Mar 22 04:54 .ssh
drwx------ 3 ubuntu ubuntu 4096 Mar 22 04:55 .gnupg
-rw-r--r-- 1 ubuntu ubuntu 0 Mar 22 05:30 .sudo_as_admin_successful
-rw-r--r-- 1 ubuntu ubuntu 4254 Mar 22 05:35 .bashrc
drwx------ 3 ubuntu ubuntu 4096 Mar 22 05:40 .cache
-rw------- 1 ubuntu ubuntu 10208 Mar 28 12:58 .viminfo
drwxr-xr-x 8 ubuntu ubuntu 4096 Mar 28 12:58 .
-rw------- 1 ubuntu ubuntu 4544 Apr 1 11:37 .bash_history
각각 최신순/오래된 순으로 정렬된 것을 확인할 수 있다.
ubuntu@ip-172-26-9-205:~$ mkdir test
ubuntu@ip-172-26-9-205:~$ cd test
ubuntu@ip-172-26-9-205:~/test$ pwd
/home/ubuntu/test
mkdir: 새로운 디렉토리를 생성한다.
리눅스에는 수많은 명령어가 존재하고 이를 일일이 외워서 사용하기란 어렵다.(물론 주로 사용하는 명령어는 정해져 있지만) 명령어의 자세한 설명을 보기 위해서는 명령어 앞에 man
을 붙인다.
ubuntu@ip-172-26-9-205:~/test$ man ls
ls 명령어의 정의와 옵션이 잘 정리된 매뉴얼이 나타난다.