HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
📝
프론트엔드 스쿨 교안(1기)
/
📝
Server(Linux, Ubuntu, AWS)
/
📝
1. 우분투 실습
📝

1. 우분투 실습

실습을 위해서 설치가 필요없는 클라우드 환경을 이용하도록 하겠습니다. 우리는 구름IDE라는 클라우드 서비스를 이용하여 Linux가 설치된 컴퓨터를 무료로 빌려서 실습할 수 있습니다.
💡
클라우드 서비스란 무엇인가를 빌려쓰는 것이라고 생각하시면 됩니다. google docs, 네이버 클라우드, 구글 클라우드 등을 생각해보시면, 내 컴퓨터에 없는 SW를, 내 컴퓨터에 없는 HW를 빌려쓰고 있죠.
IaaS, PaaS 및 SaaS 비교
"서비스형(as-a-Service)"이라는 용어는 제3사에서 클라우드 컴퓨팅 서비스를 제공한다는 의미입니다. 따라서 사용자는 코드, 고객 관계 관리와 같은 더 중요한 업무에 집중할 수 있습니다. 각 유형의 클라우드 컴퓨팅을 활용하면 관리해야 할 온프레미스 인프라가 지속적으로 감소합니다. 온프레미스 IT 인프라를 관리할 책임은 대부분 사용자와 관리자에게 있습니다.
IaaS, PaaS 및 SaaS 비교
https://www.redhat.com/ko/topics/cloud-computing/iaas-vs-paas-vs-saas
IaaS, PaaS 및 SaaS 비교
  1. SaaS(Software as a Serviece)
    1. SaaS는 가장 사용자 단에 친밀한 서비스이며 네트워크를 통해 애플리케이션 기능을 이용할 수 있는 서비스입니다. 드롭박스, 구글 클라우드 등의 서비스가 여기에 속하죠.
  1. PaaS(Platform as a Service)
    1. PaaS는 빠르게 어플리케이션을 개발하고 서비스할 수 있도록 고안된 것입니다. 예를 들어 서버에는 이미 Node와 같은 런타임이 깔려있고 우리는 javascript 파일 빌드만 하면 되는 것이죠.
  1. IaaS(infrastructure as a Service)
    1. IaaS는 인프라를 제공하는 클라우드 서비스입니다. 기업에서 특히 많이 쓰입니다. AWS의 EC2가 여기에 속하죠.
  • 컨테이너는 어떤 컨테이너를 만드시던지 상관없지만 기본으로 잡혀있는 python 컨테이너 사용하겠습니다.
# shell창은 새로운 창으로 mkdir leehojun # mkdir -p a/{b,c} # mkdir a b cd leehojun pwd # print working directory ls ls -al ll touch test.py ls clear vi test.py # i # print('hello world') # ESC # : # wq! # ESC a, i, o # 편집모드 - 명령모드 - 입력모드 # : ESC # 명령모드에서 아래 명령어 실행 # dd :삭제 # 2dd : 2줄 삭제 # 6x : 6개 char 삭제 # yy : 복사 (아래 붙여넣기를 해야합니다.) # p오른쪽 붙여넣기, P위에 붙여넣기 # i : 입력모드 # o : 커서가 있는 한 칸 아래 # a : 커서 다음으로 추가 # Shift + i : 현재 있는 라인 가장 앞에서 추가 # Shift + a : 현재 있는 라인 가장 뒤에서 추가 # Shift + v : 여러줄 선택(y 눌러서 복사 후 p 누르면 붙여넣기, 또는 d(삭제), 또는 =(정렬)) # Shift + ^, Shift + $ : 처음과 마지막 # hjkl : 방항키 대용 # Ctrl + f, Ctrl + b : 이후와 이전 페이지 보기 # u는 실행 취소 # /python으로 python이라는 단어를 찾을 수 있음, n이면 이후, N이면 이전 python test.py # Tab - 자동완성 # History - 화살표 위, 아래 cat test.py # 양이 많으면 more를 사용 # q : 종료 # enter : 1행 아래로 # z 또는 스페이스바 : 1페이지 다음페이지 # b : 이전페이지 # = : 현재 행번호 표시 # /문자열 : 문자열 검색 (구름에서 제대로 하이라이팅이 되지 않음) # v : 현재 열려있는 위치에서 vi 실행 # ls -al | more echo "hello world" > hello.txt cp test.py test2.py ls ls -al > result.txt mv test2.py ../ mv result.txt ../ ls rm test.py cd .. rmdir leehojun # 파일있는 폴더 지울 때에는 rm -r leehojun/ # -r는 recursive 재귀적으로 파일 지움 mkdir one/two/three # error mkdir -p one/two/three/four # 남은 폴더는 클릭으로 지웁니다. # --parents 옵션으로도 가능 mkdir one;cd one # 동시 실행 touch sample.txt # 안에 위키백과(python에 대해)에서 가지고 온 문구를 넣습니다. cat sample.txt | grep "python" # touch test{3..5}.txt # touch test6.txt test7.txt wget http://www.paullab.co.kr/images/ceo.png # Web에서 get한다! cd .. # 남은 폴더는 클릭으로 지웁니다. sudo apt-get install git #sudo는 Super User Do #apt-get은 패키지 매니저! 앱을 다운로드하는 google studio와 같은 역활! git clone https://github.com/paullabkorea/10000hour.git sudo apt-get update sudo apt-get install nginx vi /etc/nginx/sites-available/default # root /var/www/html; 을 root /workspace/컨테이너이름/web; 으로 고치세요. # :set number # :41 sudo service nginx start # server 확인 # sudo service nginx stop top # 작업관리자 # q를 누르면 빠져나감 ps # 현재 프로세스 상태 ps aux kill 22131 # 22131이라는 PID(프로세스아이디)를 가진 프로세스 종료 cd ~ cd / find / -name 'test2.py' find / -name '*.py' sudo find / -name '*.py' # 현재 폴더면 . cd 위에서 찾은 폴더로 이동 chmod 700 test.py # chmod(Change Mode) # 파일의 종류 / 소유자 / 그룹 사용자 / 기타 사용자 # rwx - 읽기(4), 쓰기(2), 실행(1) ls -al chmod ugo+x test.py # 사용자 카테고리 u(파일 소유자), g(그룹), o(기타 사용자) # +권한 부여, -권한 제거 ls -al # 압축파일 올리고 unzip test.zip mkdir leehojun;touch test.py;touch testTwo.py zip -r leehojun.zip ./leehojun
 
읽어볼만한 글

[Linux] 리눅스 vi 에디터 스왑파일(swp) 생성시 해결방법
vi 에디터 또는 vim 에디터를 사용하다가 파일을 실행하는 경우 다음과 같은 경고를 마주하게 될 때가 있습니다. (여기서는 한국어 버전 리눅스를 사용했는데, 자신의 언어 설정에 따라 경고가 영어로 표기될 수도 있습니다.) 경고 내용을 해석해 보자면 스왑파일(.swp)이 생성되어 있으니 해당 파일에 대해 읽기전용(O), 강제 편집(E), 복구(R), 삭제(D)... 등의 행동들 중 하나를 실행하라는 뜻입니다.
[Linux] 리눅스 vi 에디터 스왑파일(swp) 생성시 해결방법
https://dololak.tistory.com/378
[Linux] 리눅스 vi 에디터 스왑파일(swp) 생성시 해결방법
Ubuntu에서 apt-get 명령어 사용하기
Ubuntu 입문자를 위해 정리해요! Ubuntu는 Debian Linux 에서 나온 운영체제 Ubuntu의 핵심 유틸리티는 Debian에서 나옴! Debian은 dpkg packaging system 을 사용함 시스템에 소프트웨어를 설치하고 유지/관리 하는 방법 중 하나 packaging system 을 사용하면 source code를 받아 프로그램을 빌드하지 않아도 된다!
https://medium.com/@juhyun.kim/ubuntu%EC%97%90%EC%84%9C-apt-get-%EB%AA%85%EB%A0%B9%EC%96%B4-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0-4021cca7a255
Ubuntu에서 apt-get 명령어 사용하기