네트워킹 기반 가상 컴퓨터, 스토리지, 네트워크 인프라 등 다양한 서비스를 제공하고 있어 필요한 서비스로 조합하여 사용 가능하다.
장점 ? 저렴한 비용, 속도 및 민첩성, 데이터센터 운영 및 유지 비용 감소
리눅스 트리 명령어
-d : 디렉토리만 표시 (tree -L 2 -d) ->2depth와 디렉토리만 표시
-fi : 디렉토리 경로 표시 (tree -L 2 -d -fi) ->2depth 디렉토리 경로 표시
-l : 확인필요
-L : depth 레벨 설정 하여 표시 (tree -L 2)
-p : 파일 권한 표시 (tree -L 2 -p) ->2depth 파일권한 표시
->주로, tree -d -f -p 또는 tree -d -f
[history]
!번호 : 해당 번호의 명령 재입력 가능함
디렉토리 및 파일 관련
pwd : 현재 위치하고 있는 경로 출력
mkdir : 디렉토리 생성(mkdir 디렉토리명)
rm : 파일 삭제 명령
cd : 이동
- ~ : 사용자 홈디렉토리
- . : 현 디렉토리
- .. : 상위 디렉토리
- 절대경로(/부터 모든 경로) : cd/etc : /etc 디렉토리 이동
- 상대경로(현위치 기준 경로) : 현재 /etc/ssh일 때, /로 이동하려면 -> cd ../..
ls : 목록확인
- (ll)ls -l : 파일과 디렉토리에 대한 내용을 구체적으로 출력함
(권한 소유계정 그룹계정 파일크기[Byte] 생성날짜 파일이름)
ls -a
: 현재 디렉토리에서 숨김파일을 포함하여 출력함ls -li
: ls-l
상태에서 inode
번호를 함께 출력함ll
: ls-l
과 동일함 cp : 파일 및 디렉토리 복사
- 원본파일[원본디렉토리] 대상디렉토리/바꿀파일명
- -r 사용해야 디렉토리까지 복사
- -f 강제로 무조건 복사
mv : 파일 및 디렉토리 이동
- 파일 이동 : 원본파일[원본디렉토리] 대상디렉토리/바꿀파일[디렉토리]명
- 이름만 변경 : 원본파일[원본디렉토리] 바꿀파일[디렉토리]명
cat : 짧은 텍스트 파일 보기
- cat 파일명 : 파일 내용 표시
- cat 파일명 : 파일에 입력하는 내용저장 & 작성종료 ctrl + d
less : 긴 텍스트 파일 보기, 수정
- v : vi or nano편집기로 이동
find : 파일찾기
- find 찾을디렉토리 옵션(find /home/sunny -name sc)
- 전체 검색해서 파일명 검색하기(find /home | grep sshd_config)
grep : 텍스트 문서, 명령 결과물에서 원하는 패턴 포함된 라인만 출력?
echo : 변수값 찾고 싶을 때 사용
- $앞에 : 텍스트가 갖고 있는 값 출력
- S앞에 :
head : 텍스트 파일 첫 10줄만 출력
tail : 텍스트 파일 마지막 10줄만 출력
df : 파일시스템 사용가능 용량 체크
du : 특정 디렉토리 모든 파일
- 디렉토리 전체 크기 확인 : du -sh guestbook
chmod : 권한 변경
vi 편집기 - 명령모드로 돌아오기 위해서는 esc키를 누름.
[입력모드]
i,a,o : 입력
x : 삭제
dd : 한줄 삭제
[라스트라인 모드]
/패턴 : 검색
:%s/찾을문자열/바꿀문자열/g
:set number -> ~/.vimrc에 넣어주면 번호 자동 생성
echo "set number" > .vimrc
[명령모드]
:w : 저장
:q : 종료
:wq : 저장 후 종료
:wq! : 저장 후 강제 종료(read only 파일일 때 사용할 수 있음.)
user group other
rwx rwx rwx
7 7 7
r : 읽기, w: 쓰기, x: 실행
r-- --- --- 400 : 권한없음
rw- rw- r-- 664 :
rwx rwx r-x 755
디렉토리 w : 디렉토리에서 파일을 생성,삭제 할 수 있는 권한
디렉토리 x : cd로 디렉토리에 접근할 수 있는 권한
권한변경
1) 우분투
sudo apt update
sudo apt install vsftpd
sudo apt remove vsftpd
2) Amazon linux, Rocky linuxRedhat
sudo yum update
sudo yum install vsftpd
sudo yum remove vsftpd
sudo systemctl start vsftpd
sudo systemctl stop vsftpd
sudo systemctl restart vsftpd
sudo systemctl enable vsftpd
sudo ps -ef | grep 패턴
sudo kill -9 프로세스ID
sudo kill -9 $(pgrep 프로세스명)
ip addr : IP주소 확인
ip route : 라우팅 테이블 확인
nslookup : DNS 동작 확인
ping : 원격 호스트와 통신 테스트(방화벽에서 차단하고 있는 경우가 많음)
wget : url을 이용하여 다운로드
curl : 셸에서 페이지 접속 테스트, curl ifconfig.me 현재 시스템에서 사용하고 있는 공인IP주소 확인 (리눅스) 기본명령어
Netstat
이 명령은 열린 포트 및 활성 포트를 포함하여 Mac의 TCP 연결 만 반환합니다. 또한 자세한 출력을 사용하여 각 연결과 관련된 PID를 나열합니다.
//앱파일 및 키파일 인스턴스로 복사
935 ssh -i guestbook.zip ubuntu@57.180.30.138
936 ssh -i ljy2_keypair.pem ubuntu@57.180.248.108
3 sudo apt install unzip
29 unzip guestbook //앱 압축풀기
7 cd guestbook/src/main/resources
8 vi application.properties //환경설정
11 scp -i ljy_keypair.pem guestbook.zip ubuntu@3.112.71.70:/home/ubuntu
20 sudo apt install openjdk-8-jdk //파일실행 위한 jdk 다운로드
24 java -version
25 ls
43 chmod u+x mvnw mvnw.cmd //권한부여
44 ./mvnw clean package //빌드
45 cd target
46 sudo java -jar guestbook-0.0.1-SNAPSHOT.jar //실행(서버확인 후)
62 sudo yum update
63 sudo yum install docker -y
64 docker -v
65 sudo service docker start
66 sudo usermod -aG docker ec2-user
67 exit
68 sudo service docker start
70 docker container run -d --name=mysqldb --restart=always -e MYSQL_ROOT_PASSWORD=education -e MYSQL_DATABASE=guestbook -p 3306:3306 yu3papa/mysql_hangul:2.0