본문 바로가기
[2020]KIC 캠퍼스 복습/Linux(6)

[수업 D-28 ] AWS) GIT Bash , Linux 기초

by 두블두블 2020. 8. 20.

82020.08.20(목) 5주차 4일

 

목~금 2일동안 

AWS 튜토리얼, AWS 소개 

 

오늘은 AWS를 활용한 서버 구축리눅스 운영체제 경험

내일은 그동안 배운 언어(JAVA, SQL)툴(Maria DB, Tomcat) 을 리눅스에 설치할 것이다. 

내일  빡셀듯

 


1. AWS 소개 

  요새는 기업들이 자체서버를 운영하기보다 AWS를 활용해서 운영한다. 

  개발자들도 개발뿐만이 아닌 개발환경에 대해서 신경을 써야하는 시대 

  AWS 핵심기능 200~300개 
  그중 50~60개 구현 가능하면 정말 잘 써먹는 것

  정처기 공부하고 AWS 자격증도 공부하는 것을 추천한다. 

 

2. AWS 서버 구축 

강사님이 주신 PPT : Amazon-20200818.pptx

  1) 키페어 설정 : ubuntu-20200820 (서버이름 만든날짜 ) 국룰인듯 

   * 팁) 키페어는 다운받아서 이곳저곳에 복사 및 백업을 해주는 것이 좋다.  


  2) 퍼블릭 DNS : 접속 주소, IP같은것 

2. AWS 인스터스 생성 중 키페어 설정
2. 아까 설정한 키페어 이름과 Public IP가 설정된 것을 확인할 수 있다.


3. GIT bash

3. GIT Bash에서 ubuntu의 Password를 지정한다.

 

대부분의 회사 서버환경은 '리눅스'다. 

(0) Window의 cmd에선 리눅스,SSHD가 인식이 안됨 
하지만 GIt을 이용하면 윈도우에서도 된다.  
맥북 터미널에선 그냥 됨  
맥북 개발자한테 좋음. 부팅 빠름. 구동도 잘됨.  
팁) TAb을 치면 자동완성 

Ctrl + "+" 숫자 키우기 

(1) 리눅스 개발 환경 접속하기 

 

cd do 
cd downloads/ 
ls 
clear 

 

(2) 리눅스 개발환경 실행 
$, ~$ 사용 주의  
$  일반 사용자 ubuntus 
#   root 관리자 계정  


#은 업데이트 등 서버의 관리가 가능하지만 
$은 불가능하다. 

3. (2) $일반사용자의 서버 관리 업데이트 명령이 안 되고 있다.

 


4.  Linux 파일 관련 명령어 

4.(1) Home directory엔 ubuntu만 있다. 

(1) 파일시스템  

/    : 최상의 디렉토리 
/bin : 기본적인 명령어가 저장된  
        디렉토리 
/home : 사용자 홈 디렉토리 
/etc : 리눅스 시스템의 거의 모든 설정파일이  
        존재하는 디렉토리 
/mnt : 탈부착이 가능한 장치 :  AWS는 불가능-의미없음, 하드디스크(외부장치)를 운영하는 서버는 가능 

/root : 시스템 최고관리자인 root 사용자의  
         개인 홈 디렉토리 
/usr :  프로그램 설치 디렉토리 
/tmp : 모든 사용자들이 공동으로 사용하는 디렉토리 
/var : 일시적으로 저장하기 위한 디렉토리 

 

(2) 파일 경로와 순서

절대 경로 vs 상대경로 => 주로 상대경로를 쓴다.  

ubuntu@ip-172-31-43-95:/$ ls -l 
ls -l 모든정보 

drwxr-xr-x  5 ubuntu ubuntu 4096 Aug 20 01:00 ubuntu 
파일인지아닌지 - 사용자정의 - 접속권한, 파일갯수, root, root,  

ls - al 숨김파일 보이기 
ls - alt 내림차순으로 보기  

예제) 사용자 디렉토리에서 document, download, workspace/Hello.java, bin 만들기

4. document, download, workspace, bin를 먼저 만들었다.
4. workspace에 들어와서 Hello.java를 만들었다.


5.  Linux 삭제  관련 명령어  

rmdir : dir 삭제 : 폴더(dir) 안에 있으면 삭제가 안됨 
그래서 rmdir -p 지울 폴더/하위 폴더, 근데 폴더만 삭제해서 기능이 약함.
그래서 안쓰임
그래서~ rm을 씀 
===============
mkdir : 디렉토리 생성
rmdir : 디렉토리 삭제
touch : 빈 파일 생성
mv : 파일 이동 /변경
rm : 파일 삭제 (옵션 : -r)
cp : 파일 복사

5. test dir 이 삭제됨
5. mv명령어를 통해 파일을 옮기고 있다/ 


6.  Linux 파일 찾기 , 파일보기 관련 명령어  

6. 왜 workspace에 있는 Hello4.java는 검색결과에 나오지 않았을까?!

답은 find . - name *.java -size +1c

= 1바이트? 이상의 자바 파일을 찾아라 때문이다.

 

cat Hello.java Hello2.java Hello3.java

= 헬로 123 자바를 보여줘

1) CAT(전체) HEAD(위에서부터 일부분) TAIL (아래서부터 일부분)

2) 문자열 찾기 grep "public class"

grep -i system Hello.java : -i 대소문자 구분 없이 찾기

그냥 grep에선 System.out.prinyln이니까 S로 특정하지않으면 안찾아짐

 


리눅스, 너무 어렵지? 그래서 '편집기'가 있다!

7.  Linux 파일 편집기  

파일 편집 및 관리1  (vi)

workspace에서 vi '호출할 파일'

/workspace$ vi Hello.java

편집기 모드에 Hello.java 실행

i로 데이터 입력하기

: 시리즈

:w 저장

:q 우분투 서버창으로 빠져나오기 (:q! 저장 안하고 나가기)

:wq 동시에 ㅋㅋ

 

:set number 

 

장점 : 없던 파일도 만들 수 있다. : vi name.txt 면 name.txt가 디렉토리에 없었어도 만들 수 있다.

단점 : 명령모드가 불편

 

 

파일 편집 및 관리2  (nano)

nano 에디터 

바로 편집 가능 

많이 씀 


컨트롤 o : 저장,  컨트롤 

 


8. Linux 유용한 명령어 (선생님 픽)

history

redirection > :  history > history.txt 왼쪽에 있는 것을 오른쪽으로 리다이렉션

piping 각종 찾기 : | (Shift + \) 을 사용한다.

ls -l | more 엔터는 한 문장씩 내려감, 스페이스바 한 페이지씩 소환

ls -l | less more은 엔터 스페이스만 먹지만, less는 방향키도 먹는다

원하는 값 찾고 q누르면 빠져나옴

 

파일 압축 : tar.gz를 위주로 할 것. 압축 파일명에 날짜 꼭 기입하기(국룰)

tar –zcf

압축파일 풀기 

tar –zxvf

 

 

v option?

압축

 


 

8.  Linux 링크 파일 만들기 :두 가지 방법

= 위도우에서 바로가기 기능

 

 

 

(1) Hard link : $ ln test.txt testln.txt

원본 파일이 삭제되어도 존재함

원본파일이 변경되어도 하드링크 파일은 변화가 없음

마찬가지로 하드링크 파일을 건드려도 오리지널은 변화없음

 

 

(2) symbolic link : ln –s test.txt testln.txt

원본 파일이 삭제되어면 못 쓰는 파일이 됨

원본파일이 변경되면 심볼 파일에 변화가 반영됨

마찬가지로 심볼 파일을 건드리면 오리지널도 변화됨

 


※ 오늘 배우고 느낀 것 

 

1. 

 

2.

 

3.