Putty
리눅스 참고)
리눅스(Linux)는 무엇이고 우분투(Ubuntu)는 무엇인가 - 하나몬
❗️리눅스(Linux)란? 👉 Linux는 커널이다. ⇒ 커스텀 OS 만들기 가능 Windows나 Mac과 달리 Linux는 실제로 분리되고 잘 정의된 운영 체제가 아니다. 오히려 Linux는 커스터마이즈된 OS를 만들 수 있는 커
hanamon.kr
레드햇 리눅스 참고)
https://namu.wiki/w/%EB%A0%88%EB%93%9C%ED%96%87%20%EB%A6%AC%EB%88%85%EC%8A%A4
레드햇 리눅스 - 나무위키
이 저작물은 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다. (단, 라이선스가 명시된 일부 문서 및 삽화 제외) 기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권
namu.wiki
퍼티 팁!
- 그냥 드래그하면 복사가 됩니다. 퍼티 안에서는 우클릭만 해주면 붙여넣기 완료!
- 자동완성은 tab키로 가능합니다~!!
[putty]
ec2 설정한것을 이용하려면 푸티를 다운로드 해야합니다.
푸티는여?
클라이언트로 동작하는 자유 및 오픈 소스 단말 에뮬레이터 응용 프로그램..
예,,??
걍 한마디로
<원격 접속 프로그램>
푸티를 다운로드 합니다! 구글에 푸티쳐서 다운로드 받으삼.
이렇게 2개를 다운로드 합니다.
왼쪽은 찐 푸티, 오른쪽 푸티젠은 파일을 변형시켜 주는 것입니다.
왼쪽에 있는 푸티에 ssh가 왜인지 익숙해보이지 않으신가요..
[초기 설정 - 푸티젠]
먼저, 푸티젠을 실행합니다.
conversions-import-.pem 확장자를 클릭합니다,
자그러면 여기서
save private key 누르고요. 예 누른다음! 아래 처럼 저장해주었습니다.
이렇게 된 다음에는 그냥 푸티를 눌러주고요,
auth에서 browse를 눌러서 방금 변형해준 ppk를 눌러줍니다.
오픈을 클릭하면 저장 완!!
자 그다음에 맨 위에 있는 session을 선택합니다.
아까 ec2로 다시 가서 퍼블릭 IPv4 주소를 복사해 옵니다.
그 아이피 주소 앞에 ec2-user@ 붙여줘도 됩니다!
걍 이렇게 해주었습니다..
저 서버는 걍 내가 위에다가 이름 쓰고 save해서 불러왔고요, 다음번에는 그냥 load만 눌러주면 되겠습니다.
하고 오픈을 누르면?
이렇다,,,
사실 오류가 났었는데요,,,^^,, 창 닫고 다시 만드니 되었다~^^ 다들 머 띄어쓰기 등등 조심하라구여.
자 그 다음에는요,
다시 ec2 인스턴스 - 보안 - 보안그룹- 인바운드 규칙 에서
ssh의 이름을
이렇게 바꾸어 놓았어요.
자 그러면 이제 서버 준비는 드디어 끝임다! 리눅스를 깔 필요 없이 이렇게만 해주면 되겠습니다.
[자바 연결하기]
그러면 자바랑 연결을 시켜볼가요~~^^?
푸티에 sudo yum update 를 누르면 주르르륵 뜨고요 계속해서 y를 눌러주면 쭈주죽 업데이트가 되어집니다.
컴플릿!
그 다음에는요
와 우리가 레드햇 했다는거를 얘가 잘 알려주고 있어요.
그러면 우리 자바를 설치해보도록 하겠습니다.
일단 이렇게 검색하여 주세여.
저 뜻은 자바로 시작하는 것 중에 jdk 디벨로퍼만요. 라는 뜻
그리고 위에 이렇게 리스트 3개가 나오고 있지요?? 우리는 11버전 쓸것임~^^
[ec2-user@ip-172-31-12-46 ~]$ sudo yum install -y java-11-openjdk-devel.x86_64
자 이렇게 쓰세여. 중간에 -y 누르면 다 yes 한다는 이야기 입니다.
그런데 이거 복사를 어케했냐고요? 드래그 하면됨. 이렇게 블로그에 컨트롤브이해주면 되고 여기 푸티에서는 우클릭!!
와 너무 쉽당.
여기서 자바 버전을 살펴보면?
와~~ 11버전이다~~
와~~ 디렉토리와 자바씨의 버전도 잘 살펴보았습니당.
오키 자바 설정 완!
그 다음에 우리가 톰캣을 쓴다면?
여기에 또 깔아주면 됩니다.
일단은 시간 변경 먼저 해준다.!
잠깐!!
여기서 팁!!! 푸티에 있는 자동완성 기능!!
한글자 치고 Tab!! 누르면 되겠슴당.
이렇게 되면 서울 시간으로 되었어요!
KST 로 왜나올까,,
바로
Korea Standard Time 이기 때문.
[톰캣 연결하기(=퍼티에 다운로드)]
자 이제는여 ec2에 톰캣 설치를 해볼게요.
아쉽게도 교재에는 없기때문에,,, 하려면?
이 블로그를 보아야한다.. 그러니 눈 똑바로 뜨고 살펴보자고요.
톰캣을 설치하려면 이미 파일이 있어야 하고 그거를 업로드해주어야합니다.
물리적인 컴에는 있지만 이건 가상컴이니까,,,
그러니 파일 전송 프로그램이 있어야하겠지요?
그것이 바로 파일질라!
https://filezilla-project.org/download.php?type=client
위에 가서 클라이언트 용으로 다운 받습니다.
우리는 무료버전으루~~ 해서 업로드를 해도 되고요,
사실 우리가 아마존꺼를 썼으면 wget이라는 명령어를 통해 바로 할 수 있었지만 우리는?
레드햇이다!!
근데 지금은? 깔아줘야해.
걍 깔아줘볼까요?
먼저 톰캣 사이트에서 우리는 9버전을 쓸거니까 9버전 아래쪽에 가서 tar파일 우클릭 후 링크 주소 복사를 해둡니다.
퍼티를 열어주고,
[ec2-user@ip-172-31-12-46 ~]$ sudo yum install -y wget
하고요,
저기서 링크 주소 복사 한것을 해줍니다. 어케요? 이케요!
이렇게 쭉쭉 나오면 되겠습니다.
ll하면 목록이 나오고 있고 현재 루트권한으로 되어 있다는 것을 볼 수 있습니다.
그러나 저거를 루트로 하면 안됩니다.. 권한을 바꾸어야해요!! 해볼가요?
왜냐면
루트로 하면 삶이 복잡 그 잡채,,
sudo 명령어를 조금 덜 쓰기 위하여서 root에서 유저로 권한을 바꾸어 줍니다.
여기서 말하는 유저는 우리가 ec2 설정할때 만들었던 그 유저이름입니다!
리눅스 파일 권한 변경
ㅇㄴ 중간에 있는 root는 바뀌었는데 저 첫 번째껀 머야!!
그룹이랴요,, 그룹권한,,
이것도 바꿀게여.
요롷코롬~~!!
어쨌든 바꾸어주었슴다. 짝짞
무언가 또 바뀐게 보이시는지? 뒤에가 걍 tar 되었습니다.
다음으로는 압축해제
먼저는 gunzip 건집아니고 지언집을 해줍니다.
그러면? 뒤에 있는 gz가 없어졌습니다~!!
그 후에 찐 압축 해제를 해줄게요.
[ec2-user@ip-172-31-12-46 ~]$ tar -xvf apache-tomcat-9.0.63.tar
위에처럼 써주면?
됨다.
와~~ 잘 됐다~~!
압축 해제 전 파일(.tar) 삭제는?
*sudo rm -r apache-tomcat-9.0.63/
이거는 디렉토리 지우는거
*rm =remove
-r =디렉토리
-x = 압출 풀기
-v = view 보기
-f = 폴더,,?!!?
[톰캣 서버 파일 옮기기]
이제 파일을 좀 옮겨 볼게요.
pwd는 현재 디렉토리 파일을 알려줍니다. 현재 파일 위치!
저 톰캣 파일이 여기 있다는걸 알려주는 검다.
톰캣 파일을 함 볼가요?
파일을 볼때는 파일을 바꾸어주고, 꼭 ll을 눌러줍니다!!
여기서 디렉토리 하나만 만들고 갈게요!
원래 폴더로 가서 지금 만들었당.
그 안에 하나 더 만들게여. 그곳은? 서버 위치로!
spring 폴더로 바꾸었고 콘솔에서 그래픽 모드로 사용 할 수 없어서 메모장의 역할을 하는(노트패드 같은) vim 에디터를 설치해 주었습니다. 볼게요!
이렇게 하면 그 원래 서버 위치에서 나왔던 곳의 파일을 보는 경로는 아래와 같습니다.
vim 과 vi의 차이는 색이 있고, 없고 라는 뜻입니다~!!
이것이 바아로 vim !!
파란색은!?!? 다 주석임ㅋ
만약 빈 페이지가 나왔다면 그것은 오류입니다.
*vim 하는거
이미 ec2권한이기 때문에 sudo를 안하고 그냥
vim server.xml
root 권한이면 권한이 없으니까 sudo vim 을 해주어야합니다.
자 그러면 여기서!
호스트 이름을 변경해주어야 합니다. 왜요?
아니 아까 서버 위치 바꾼다구 했자나~~ 스프링 폴더도 만들었으니까요!
이름 바꾸어주려면 먼저 i를 눌러서 맨 아래에 인서트가 떠야 합니다.
보이삼?!
지금은 저기 아래 옵션들을 false로 주었는데요, 아직 연습중이라 그래~~
나중에 다시 true로 바꿀수 있으니 울지말자.
하고 esc 누르면 아까 있었던 insert 가 없어집니다.
그리고 걍 바로 거기에
:wq
눌러서 나와줍니다!!
이건,, 캡쳐본이 없어,,
암튼 나 자신을 믿고 해보면 나오게 됩니다.
저기서 w는 저장하는것, q는 빠져나오는것! 합쳐서 저장하고빠져나오기가 되겠습니다.
여기서 잘못하면 오류난다구여. 조심해!
아파치 폴더에서 웹앱스-루트- 를 보자면 이렇게 되어있는데요, 이 루트 폴더안에 우리의 서버를 사용합니다.
*cd 만 입력하면 home/ec2-user 경로로 바아로 감.
[톰캣 파일 명령어 확인하기]
bin 파일로 들어갑니다.
[ec2-user@ip-172-31-12-46 spring]$
[ec2-user@ip-172-31-12-46 spring]$ pwd
/home/ec2-user/spring
[ec2-user@ip-172-31-12-46 spring]$ cd /usr/local/apache-tomcat-9.0. 63/
*bin 파일 바로 실행
/usr/local/apache-tomcat-9.0.63/bin/startup.sh
이거는 아까 우리가 :wq하고 나왔던 곳에서부터 시작합니다.
그럼 이 명령어를 어케 시작할가요?
이런 명령어를 시작하고 shutdown으로 닫아줍니다.
*셧다운은 이렇게 빈가서 해야함.
/usr/local/apache-tomcat-9.0.63/bin/shutdown.sh
tab키로 누르는거 잊지 말자고요!
이제 시작해서 로그를 살펴보도록 합시다.
이러한 태그들,,, 이 있고요,
ctrl + z 로 빠져나옵니다.
아련함을 위해서 ..을 쓴것이아니라!
위 폴더로 올라간단 소리입니다.
언제나 띄어쓰기 주의!!
[ec2-user@ip-172-31-12-46 spring]$ cd /
[ec2-user@ip-172-31-12-46 /]$ pwd
/
최상위 폴더는 c드라이브나 d드라이브가 아닌 걍 루트!가 최상위 파일입니다.
[ec2-user@ip-172-31-12-46 /]$ ll
total 16
lrwxrwxrwx. 1 root root 7 Jun 21 2021 bin -> usr/bin
dr-xr-xr-x. 5 root root 4096 May 30 12:09 boot
drwxr-xr-x. 18 root root 2660 May 30 10:46 dev
drwxr-xr-x. 99 root root 8192 May 30 14:16 etc
drwxr-xr-x. 3 root root 22 May 30 10:46 home
lrwxrwxrwx. 1 root root 7 Jun 21 2021 lib -> usr/lib
lrwxrwxrwx. 1 root root 9 Jun 21 2021 lib64 -> usr/lib64
drwxr-xr-x. 2 root root 6 Jun 21 2021 media
drwxr-xr-x. 2 root root 6 Jun 21 2021 mnt
drwxr-xr-x. 2 root root 6 Jun 21 2021 opt
dr-xr-xr-x. 105 root root 0 May 30 10:46 proc
dr-xr-x---. 3 root root 119 May 30 15:46 root
drwxr-xr-x. 28 root root 920 May 30 12:09 run
lrwxrwxrwx. 1 root root 8 Jun 21 2021 sbin -> usr/sbin
drwxr-xr-x. 2 root root 6 Jun 21 2021 srv
dr-xr-xr-x. 13 root root 0 May 30 10:46 sys
drwxrwxrwt. 10 root root 222 May 30 16:09 tmp
drwxr-xr-x. 12 root root 144 Jan 28 00:53 usr
drwxr-xr-x. 20 root root 278 May 30 10:46 var
최상위 폴더에는 이러한 폴더들이 있습니다. = 레드햇 계열의 디렉토리 구조.
이 상태에서
[ec2-user@ip-172-31-12-46 /]$ cd
[ec2-user@ip-172-31-12-46 ~]$ pwd
/home/ec2-user
이렇게 하면 ~ 폴더는 유저 폴더임을 알 수 있습니다.
파일이 계속 실행되고 있으니 닫아줍니다.
[ec2-user@ip-172-31-12-46 /]$ /usr/local/apache-tomcat-9.0.63/bin/shutdown.sh
[푸티 톰캣에 파일 업로드]
간단한 프로젝트 하나만 만들어주고요. war로 일단 저장해주고 파일 업로드 하는거 한번 해보겠습니다!
아까 초반에 파일을 업로드 하는것은 파일질라로 해야합니다.
참고로 다운받을 때 옵셔널은 선택하지 않아도 됩니다. brave요!!
그리고 다운받고 파일-사이트 관리자 에서 아래와 같이 설정해줍니다.
1. new site를 누르고
2. 프로토콜을 ssh로 바꿉니다.
3. 호스트는 ec2에서 복사해옵니다.
4. 로그온 유형은 키 파일로.
5. 사용자 이름은 저렇게.
6. 키파일은 아까 했던 aws 폴더에서 .ppk 파일을 선택하여 줍니다.
7. 계속해서 확인,확인을 누르고 끝내기.
아까 배경화면에 저장해줬던 war 파일을 spring 파일에 넣습니다.
[ec2-user@ip-172-31-12-46 ~]$ cd src/spring
[ec2-user@ip-172-31-12-46 spring]$ ll
total 13276
-rw-rw-r--. 1 ec2-user ec2-user 13591275 May 30 16:41 springweb.war
[ec2-user@ip-172-31-12-46 spring]$ jar -xf springweb.war
[ec2-user@ip-172-31-12-46 spring]$ ll
total 13276
drwxrwxr-x. 2 ec2-user ec2-user 25 May 30 16:42 META-INF
-rw-rw-r--. 1 ec2-user ec2-user 13591275 May 30 16:41 springweb.war
drwxrwxr-x. 4 ec2-user ec2-user 32 May 30 16:22 WEB-INF
[ec2-user@ip-172-31-12-46 spring]$ /usr/local/apache-tomcat-9.0.63/bin/startup.sh
그리고 파일을 확인하세요!
스프링파일 안에 .war 파일이 있다는것을 알 수 있습니다.
압축을 풀어주고요,
*파일 푸는것.
jar -xf my-project.war
바아로 스타트도 시켜줍니다.
그러면 올라왔는데 바로 볼 수 있느냐??
아님,, 왜냐면 8080포트를 안열어줬거든요ㅋ.
다시 아마존에 갑시다!!
인스턴스 - 보안그룹 - 인바운드 규칙 편집 - 규칙 새로 만들기!
이렇게 하고 할당받은 IP뒤에 :8080 을 해주면?!?
배성!! 배포 성공이라는 뜻.
*AWS의 데이터베이스에서도 연결이 되어 있어야 합니다. 인바운드 규칙에서 규칙 편집 !!
=> 데이터베이스의 보안그룹과 ec2 인스턴스의 보안그룹이 같아야함!
[리눅스 삭제하기]
이젠 눈물을 머금고 한번 제거해보도록 하겠습니다. 눈물난다.
위 아래를 보면 맨 첫번째에 있는 아파치가 사라졌다는것을 확인 할 수 있습니다.
이렇게 하면 삭제가 되고요, 이상입니다!