想要将 AWS S3 挂载到本地目录,可以使用一个名为s3fs的工具来实现。具体安装过程如下:

首先,准备必要的软件包:

sh
1sudo apt update
2sudo apt-get install -y automake fuse gcc g++ git \
3  libcurl4-openssl-dev libfuse-dev libssl-dev libxml2-dev make pkg-config

然后,从源码编译并安装s3fs:

sh
1git clone https://github.com/s3fs-fuse/s3fs-fuse.git
2cd s3fs-fuse
3./autogen.sh
4./configure
5make
6sudo make install

配置访问凭证:

sh
1echo ACCESS_KEY_ID:SECRET_ACCESS_KEY > ~/.passwd-s3fs
2chmod 600 ~/.passwd-s3fs

尝试挂载:

sh
1s3fs bucket_name /path/to/local/mount -o passwd_file=~/.passwd-s3fs

检查是否挂载成功:

sh
1df -h

取消挂载:

sh
1fusermount -u /path/to/local/mount

要设置自动挂载,可以添加如下行到/etc/fstab中:

text
1s3fs#bucket_name /path/to/local/mount fuse _netdev,allow_other,use_path_request_style,url=https://s3.amazonaws.com,passwd_file=/home/your_username/.passwd-s3fs 0 0

如果需要挂载中国区的S3,则在执行挂载命令,指定相关参数(下面以宁夏cn-northwest-1为例):

sh
1s3fs bucket_name /path/to/local/mount \
2  -o passwd_file=~/.passwd-s3fs,url=https://s3.cn-northwest-1.amazonaws.com.cn,endpoint=cn-northwest-1

如果挂载失败,可以通过查看系统日志,定位错误原因:

sh
1sudo cat /var/log/syslog | grep s3fs