Linux Upskill 1. 서버접속과 디렉토리 관련 명령어, 매뉴얼 확인

jiffydev·2021년 4월 1일
0

linux upskill

목록 보기
1/8

본 포스트는 박재호님의 유튜브 강의를 보고 개인적으로 정리한 내용입니다.

1. 서버에 접속하기

강의에 나와있는 대로 AWS계정을 만들고, EC2 인스턴스를 생성한다. ssh 접속을 위해 키페어를 생성하는데, 윈도우 사용자일 경우 PuTTY를 사용해야 ssh 접속을 할 수 있고, AWS에서 제공하는 키가 pem 형식이기 때문에 이를 ppk로 변환해주는 PuTTYgen을 사용한다.
(윈도우 사용자이더라도 WSL을 사용한다면 PuTTY를 다운받지 않아도 바로 ssh로 접속할 수 있다.)

1-1. 명령어 실습

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: 우분투 패키지의 이름

2. 디렉토리 이동과 파일목록

2-1. 명령어 실습

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

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 명령어의 정의와 옵션이 잘 정리된 매뉴얼이 나타난다.

profile
잘 & 열심히 살고싶은 개발자

0개의 댓글