Linux에 S3fs 설치

Linux 서버에 S3fs를 설치하고 S3 버킷을 마운트하는 방법

C05348A3-9AB8-42C9-A6E0-81DB3AC59FEB
           

6013166

S3fs는 S3 버킷을 Ubuntu 파일 시스템에 마운트하고 S3 버킷을 네트워크 드라이브로 사용하도록 관리할 수 있는 Linux 도구입니다. S3fs는 Amazon S3에서 지원하는 퓨즈 기반 파일 시스템입니다. 이를 통해 S3 버킷을 마운트하고 서버에서 로컬 스토리지로 표시할 수 있습니다. 물론 로컬 드라이브와 동일한 성능을 기대하지는 않지만 합리적인 가격에 무제한 스토리지를 추가할 수 있는 좋은 방법입니다.

이 자습서에서는 Ubuntu에 S3fs를 설치하고 S3 버킷을 마운트하는 방법을 배웁니다. 다른 버전의 Linux에 대한 명령은 다릅니다.

자귀

1단계. S3fs 설치

시스템에서 터미널 콘솔을 열고 SSH를 통해 Ubuntu EC2 서버에 원격으로 연결합니다. 시스템 저장소를 업데이트하고 명령을 실행하십시오.

설치 업데이트가 완료되면 아래 명령을 입력하여 시스템에 S3fs를 설치합니다.

sudo apt-get update
sudo apt install s3fs awscli -y

2단계. S3 버킷 생성 및 액세스 구성

AWS 콘솔에서 새 S3 버킷을 생성합니다. 우리는 우리의 이름을 "MyS3Bucket"으로 지정할 것이지만 자신의 이름을 선택합니다.

IAM 콘솔에서 새 사용자를 생성하고 " 액세스 키 - 프로그래밍 방식 액세스 "를 선택하고 액세스 키 ID와 비밀 키를 업로드해야 합니다. 이 사용자에게 이 버킷에 대한 액세스 권한을 부여하는 새 IAM 정책을 생성하고(아래 예 참조) 이를 사용자에게 연결합니다.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["s3:ListBucket"],
      "Resource": ["arn:aws:s3:::MyS3Bucket"]
    },
    {
      "Effect": "Allow",
      "Action": [
        "s3:PutObject",
        "s3:GetObject"
      ],
      "Resource": ["arn:aws:s3:::MyS3Bucket/*"]
    }
  ]
}

3단계. S3fs 자격 증명 파일 생성

서버 콘솔로 돌아가서 사용자 액세스 ID 및 IAM 비밀 키를 관리할 파일을 만들고 명령을 사용합니다(ACCESS_KEY_ID 및 SECRET_ACCESS_KEY를 이전 단계의 값으로 교체).

또한 적절한 액세스 권한을 설정하여 파일 자격 증명을 보호해야 합니다.

마지막으로 마운트 지점 디렉토리도 생성하고 "백업"이라고 부를 것입니다.

echo ACCESS_KEY_ID:SECRET_ACCESS_KEY > /home/ubuntu/.s3fs-creds
chmod 600 /home/ubuntu/.s3fs-creds
 
mkdir /home/ubuntu/backup

4단계. Fstab에서 S3FS 자동 마운트

서버를 다시 시작할 때마다 디스크가 마운트되도록 하려면 fstab 파일에 항목을 추가하는 것이 좋습니다. 이 파일의 rood 볼륨 항목을 실수로 변경하면 서버가 시작되지 않으므로 이 파일을 편집할 때 주의하십시오.

fstab 파일을 편집하고 이 파일의 끝에 아래 항목을 추가하여 MyS3Bucket을 버킷 이름으로 바꿉니다.

sudo nano /etc/fstab
 
...
s3fs#MyS3Bucket /home/ubuntu/backup fuse _netdev,allow_other,passwd_file=/home/ubuntu/.s3fs-creds 0 0

5단계. 드라이브 마운트 및 파일 다운로드 테스트

마운트 지점 디렉터리를 열고 다음 명령을 입력합니다.

cd /home/ubuntu/s3_uploads복사

그리고 touch 명령을 사용하여 더미 파일을 만듭니다.

sudo mount /home/ubuntu/backup
df -h
touch /home/ubuntu/backup/file{1..10}.txt
ls -al /home/ubuntu/backup

앞의 명령은 이 디렉터리에 몇 개의 빈 파일을 만듭니다. 파일이 S3에서 생성되었는지 확인하려면 AWS 콘솔을 사용하여 S3 콘솔을 통해 파일을 봅니다.

드라이브가 마운트되지 않은 경우 시스템 로그를 확인하여 잠재적인 문제를 해결하십시오. 권한 문제가 발생할 수도 있습니다. 기본 권한 설정: Plex Media Server 에 대한 이 문서를 참조하십시오.

몇 가지 유용한 추가 명령:

#Display the system logs
tail -f /var/log/syslog
 
#Dismount the drive
sudo umount /home/ubuntu/backup
댓글을 게시했습니다: 0