Local 파일을 Aws 서버에 쉽게 전송해보자

윤학·2023년 3월 2일
0

Linux

목록 보기
1/2
post-thumbnail

프로젝트를 진행하던 중 Ai 팀에서 돌릴 모델을 미리 띄어 놓은 EC2 내에 올려놓아야 하는 일이 있었다.
이유는 Ai 팀이 사용 할 Flask 서버도 같은 EC2 인스턴스 내에 있었기 때문!
Github에는 파일이 너무 커 올라가지 않고 구글 드라이브에 올리면 내가 다운받아서 Ai팀이 사용하는 경로에 올려 놓는 임무였다.

전송방법은 정말 쉬우며 과정을 따라하기만 하면 된다.
여기서 내 환경은 EC2 OSubuntu이며 user name은 기본으로 생성되는 ubuntu이다

시작!
하기전에.. cmd에서 전송하는 명령어는 이렇다..!

scp {전송할 Local File} {ubuntu user name}@{ec2 ip}:{파일을 저장 할 EC2 내의 경로}
전송할 File이 여러개면 띄어쓰기를 구분으로 전송할 Local File부분에 나열하면 됨

시작!

1. Permission denied


아마 처음 시도에는 이런 오류가 날 것인데 ubuntu내의 파일을 수정해주자
sudo vi /etc/ssh/sshd_config

2. 사용자에 대한 Password 설정

이후에 ubuntu 사용자에 대한 Password를 설정해야 하는데 그러기 위해선 root 사용자에 대해서 먼저 Password를 설정하자. 이 과정은 찾아보면 너무 많이 나오므로 패스!

비밀번호 설정 완료 이후 다시 시도해보면 해당 경로에 잘 전송 되는 것을 볼 수 있다.

정상적인 경우에는 No space left on device라는 오류는 나오지 않기 때문에 신경 쓰지 않아도 된다.

파일의 dest 경로로 가보면 잘 들어가 있는 것을 확인할 수 있다!

이 방식의 문제점

이 방법은 root 계정으로 로그인을 허락하고, Password로 ssh 접속을 허용하므로 보안상 권장 하지 않는 방법이기 때문에 publickey로 전송하는 방법으로 변경하든 파일만 보내고 다시 인증 방식을 돌려놓아야 한다.

profile
해결한 문제는 그때 기록하자

0개의 댓글