导航:首页 > 文件管理 > 存储桶配置文件可匿名访问

存储桶配置文件可匿名访问

发布时间:2023-09-08 22:38:22

㈠ 信息以文件形式存储,文件用什么分类分层存放

文件、块和对象是三种以不同的方式来保存、整理和呈现数据的存储格式。这些格式各有各的功能和限制。文件存储会以文件和文件夹的层次结构来整理和呈现数据;块存储会将数据拆分到任意划分且大小相同的卷中; 对象存储会管理数据并将其链接至关联的元数据。

块存储
块存储会将数据拆分成块,并单独存储各个块。每个数据块都有一个唯一标识符,所以存储系统能将较小的数据存放在最方便的位置。这意味着有些数据可以存储在 linux 环境中,有些则可以存储在 Windows 单元中。

块存储通常会被配置为将数据与用户环境分离,并会将数据分布到可以更好地为其提供服务的多个环境中。然后,当用户请求数据时,底层存储软件会重新组装来自这些环境的数据块,并将它们呈现给用户。它通常会部署在存储区域网络 (SAN) 环境中,而且必须绑定到正常运行的服务器。

由于块存储不依赖于单条数据路径(和文件存储一样),因此可以实现快速检索。每个块都独立存在,且可进行分区,因此可以通过不同的操作系统进行访问,这使得用户可以完全自由地配置数据。它是一种高效可靠的数据存储方式,且易于使用和管理。它适用于要执行大型事务的企业和部署了大型数据库的企业。这意味着,需要存储的数据越多,就越适合使用块存储。

块存储有一些缺点。块存储的成本高昂。它处理元数据的能力有限。

操作对象:磁盘

存储协议:SCSI、iSCSI、FC

接口命令:以SCSI为例,主要有Read/Write/Read Capacity

存储架构:DAS、SAN

文件存储
文件存储也称为文件级存储或基于文件的存储,数据会以单条信息的形式存储在文件夹中。当需要访问该数据时,计算机需要知道相应的查找路径。存储在文件中的数据会根据元数据来进行整理和检索,这些元数据会告诉计算机文件所在的确切位置。

请试想一下塞满文件柜的储藏室。每个文档都会按照某种类型的逻辑层次结构来排放 ——按文件柜、抽屉、文件夹,然后再是纸张。“分层存储”这个术语就是这么来的,而这就是文件存储。它是适用于直接和网络附加存储(NAS)系统的最古老且运用最为广泛的一种数据存储系统;当访问保存在个人计算机上的文件中的文档,就是在使用文件存储。文件存储具有丰富多样的功能,几乎可以存储任何内容。它非常适合用来存储一系列复杂文件,并且有助于用户快速导航。

问题是基于文件的存储系统必须通过添置更多系统来进行横向扩展,而不是通过增添更多容量来进行纵向扩展。

操作对象:文件和文件夹

存储协议:NFS、SAMBA(SMB)、POSIX

接口命令:以NFS为例,文件相关的接口命令包括:READ/WRITE/CREATE/REMOVE/RENAME/LOOKUP/ACCESS 等;文件夹相关的接口命令包括:MKDIR/RMDIR/READDIR 等

存储架构:NAS (【Linux】NAS存储_Jacky_Feng的博客-CSDN博客)
对象存储
对象存储,也称为基于对象的存储,是一种扁平结构,其中的文件被拆分成多个部分并散布在多个硬件间。在对象存储中,数据会被分解为称为“对象”的离散单元,并保存在单个存储库中,而不是作为文件夹中的文件或服务器上的块来保存。

对象存储卷会作为模块化单元来工作:每个卷都是一个自包含式存储库,均含有数据、允许在分布式系统上找到对象的唯一标识符以及描述数据的元数据。元数据包括年龄、隐私/安全信息和访问突发事件等详细信息。为了检索数据,存储操作系统会使用元数据和标识符,这样可以更好地分配负载,并允许管理员应用策略来执行更强大的搜索。

对象存储需要一个简单的 HTTP 应用编程接口 (API),以供大多数客户端(各种语言)使用。对象存储经济高效:您只需为已用的内容付费。它可以轻松扩展,因而是公共云存储的理想之选。它是一个非常适用于静态数据的存储系统,其灵活性和扁平性意味着它可以通过扩展来存储极大量的数据。对象具有足够的信息供应用快速查找数据,并且擅长存储非结构化数据。
它的缺点是无法修改对象 ,即必须一次性完整地写入对象。对象存储也不能很好地与传统数据库搭配使用,因为编写对象是一个缓慢的过程,编写应用以使用对象存储 API 并不像使用文件存储那么简单。

操作对象:对象(Object)

存储协议:S3、Swift

接口命令:主要有PUT/GET/DELETE等

存储架构:去中心化框架

对象存储概念
对象存储的数据组成

存储桶(Bucket):存放对象的“容器”,且该“容器”无容量上限。对象以扁平化结构存放在存储桶中,无文件夹和目录的概念,用户可选择将对象存放到单个或多个存储桶中。存储桶的容量大小需要通过累加各个对象的大小得到。

每个存储桶可容纳任意数量的对象,但同一个主账号下存储桶数量最多仅能够创建200个。(???)

对于存储桶,应当以用途为粒度进行划分,确保每个存储桶的用途尽可能单一。例如,针对存放个人文件、发布静态网站、存储备份等用途都应该创建不同的存储桶。此外,不同项目的数据、不同的网站,或者完全私人的文件与工作性质、需要分享的文件,也应该划分不同的存储桶。

对象存储中也没有「文件夹」的概念。对象存储的管理平台为了模仿本地存储的使用习惯,并与本地存储系统互相兼容而模拟了目录结构,背后的原理也仅仅是根据 / 这个字符对 key 进行分隔。为了表示空目录,部分云平台也提供「文件夹」对象,实际上只是 key 以 / 结尾的空存储对象。

存储桶所在地域(Regin)

指对象存储的数据中心所在地域。对象存储允许用户在不同地域创建存储桶,可以选择在离业务最近的地域上创建存储桶,以满足低延迟、低成本以及合规性要求。

Bucket读写权限

Bucket读写权限包括:私有读写、公有读私有写和公有读写。

私有读写
只有该存储桶的创建者及有授权的账号才对该存储桶中的对象有读写权限,其他任何人对该存储桶中的对象都没有读写权限。存储桶访问权限默认为私有读写,推荐使用。
公有读私有写
任何人(包括匿名访问者)都对该存储桶中的对象有读权限,但只有存储桶创建者及有授权的账号才对该存储桶中的对象有写权限。
公有读写
任何人(包括匿名访问者)都对该存储桶中的对象有读权限和写权限,不推荐使用。
对象(Object):对象存储的基本单元,可理解为任何格式类型的数据,例如图片、文档和音视频文件等。

每个对象都由对象键(Key)、对象值(Data)、和对象元数据(Metadata)组成。

对象键(Key):对象键是对象在存储桶中的全局唯一标识(UID),可以理解为文件(名)路径。
key用于检索对象,文件对象的 key 与实际存储路径无关,服务器和用户不需要知道数据的物理地址,通过key就能找到对象。

对象值(Data):即存储对象内容数据,可以理解为文件内容(Object Content)。
对象元数据(Metadata):是一组键值对,可以通俗的理解为文件的属性,例如文件的修改时间、存储类型等。(传统的文件存储,元数据属于文件本身,和文件一起封装存储。而对象存储,元数据独立出来,并不在数据内部封装。)
对象访问地址

对象的访问地址由存储桶访问地址和对象键组成,其结构形式为<存储桶域名>/<对象键> 。

例如:上传对象exampleobject.txt到广州(华南)的存储桶examplebucket-1250000000中,那么exampleobject.txt的访问地址是:examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com/exampleobject.txt。其中examplebucket-1250000000.cos.ap-guangzhou.myqcloud.com为存储桶域名,exampleobject.txt为对象键。

目录和文件夹

对象存储中本身是没有文件夹和目录的概念的,对象存储不会因为上传对象project/a.txt而创建一个project文件夹。为了满足用户使用习惯,对象存储在控制台、COS browser 等图形化工具中模拟了「文件夹」或「目录」的展示方式,具体实现是通过创建一个键值为project/,内容为空的对象,展示方式上模拟了传统文件夹。

对象操作

用户通过控制台、工具、API、SDK等多种方式管理对象。

对象存储架构
对象存储设备(OSD)
OSD由存储介质、处理器、内存以及网络系统等组成,负责管理本地的对象,是对象存储系统的核心。和块设备相比,它们的差异在于提供的访问接口。OSD的主要功能是数据存储和安全访问。

数据存储:OSD管理对象数据,并将它们放置在标准的磁盘系统上,OSD不提供块接口访问方式,Client请求数据时用对象ID、偏移进行数据读写。

智能分布:OSD用其自身的CPU和内存优化数据分布,并支持数据的预取。由于OSD可以智能地支持对象的预取,从而可以优化磁盘的性能。

对象元数据管理:OSD管理存储的对象元数据与传统的inode元数据相似,通常包括对象的数据块和对象的长度。而在传统的NAS系统中,这些元数据是由文件服务器维护的,对象存储架构将系统中主要的元数据管理工作由OSD来完成,降低了Client的开销。

元数据服务器(MDS)
MDS控制Client与OSD对象的交互,为客户端提供元数据,主要是文件的逻辑视图(文件与目录的组织关系、每个文件所对应的OSD等)。主要功能如下:

对象存储访问:MDS构造和管理描述每个文件分布的逻辑视图,允许Client直接访问对象。MDS为Client提供访问该文件所含对象的能力,OSD在接收到每个请求时将先验证该能力,然后才可以访问。

文件和目录访问管理:MDS在存储系统上构建一个文件结构,包括限额控制、目录和文件的创建和删除、访问控制等。

Client Cache一致性:为了提高Client性能,在对象存储系统设计时通常支持Client方的Cache。由于引入Client方的Cache,带来了Cache一致性问题,MDS支持基于Client的文件Cache,当Cache的文件发生改变时,将通知Client刷新Cache,从而防止Cache不一致引发的问题。

客户端(Client)
对象存储系统提供给用户的也是标准的POSIX文件访问接口。接口具有和通用文件系统相同的访问方式,同时为了提高性能,也具有对数据的Cache功能和文件的条带功能。同时,文件系统必须维护不同客户端上Cache的一致性,保证文件系统的数据一致。

文件系统读访问流程:

① 客户端应用发出读请求;

② 文件系统向元数据服务器发送请求,获取要读取的数据所在的OSD;

③ 直接向每个OSD发送数据读取请求;

④ OSD得到请求以后,判断要读取的Object,并根据此Object要求的认证方式,对客户端进行认证,如果此客户端得到授权,则将Object的数据返回给客户端;

⑤ 文件系统收到OSD返回的数据以后,读操作完成。

对象存储的优缺点
(1)优点:

容量大,高扩展性
对象存储的容量是EB级以上,对象存储的所有业务、存储节点采用分布式集群方式工作,各功能节点、集群都可以独立扩容。从理论上来说,某个对象存储系统或单个桶(bucket),并没有总数据容量和对象数量的限制,即服务商就可以不停地往架构里增加资源,这个存储空间就是无限的,也是支持弹性伸缩的。

高安全性,可靠性
对象存储采用了分布式架构,对数据进行多设备冗余存储(至少三个以上节点),实现异地容灾和资源隔离。数据访问方面,所有的桶和对象都有访问控制策略,所有连接都支持SSL加密,访问用户进行身份权限鉴定。

高性能,支持海量用户的并发访问
(2)缺点:

不支持直接在存储上修改
对象存储系统保存的Object不支持修改(追加写Object需要调用特定的接口,生成的Object也和正常上传的Object类型上有差别)。用户哪怕是仅仅需要修改一个字节也需要重新上传整个Object。因此,它不适合存储需要频繁擦写的数据。

参考链接:

对象存储,为什么那么火? - 知乎 (hu.com)
对象存储 存储桶概述 - 开发者指南 - 文档中心 - 腾讯云 (tencent.com)
基本概念 (aliyun.com)
文件存储、块存储还是对象存储? (redhat.com)
linux
驻马店市民请关注领取补贴!
巨魔-抽手机公告
广告

对比块存储、文件存储、对象存储
1242阅读·0评论·3点赞
2019年2月27日
ShapeFile的文件格式设计
90阅读·0评论·0点赞
2009年3月20日
应用ceph对象存储(ceph-13.2.10)
72阅读·0评论·0点赞
2022年11月26日
三种存储类型比较-文件、块、对象存储
4.8W阅读·0评论·13点赞
2016年7月26日
常见图片存储格式文件简介
4534阅读·0评论·0点赞
2020年5月4日
s3cmd常用命令
781阅读·0评论·0点赞
2022年11月17日
驻马店发布,你有一台5G手机待领取

00:23
巨摩互动
广告
常见的存储格式
1083阅读·0评论·0点赞
2022年2月15日
文件、对象、块区别
1399阅读·0评论·0点赞
2020年7月13日
对象存储、文件存储、块存储的区别和联系
7330阅读·2评论·5点赞
2021年10月16日
数据分析中常见的存储方式
1537阅读·0评论·0点赞
2021年11月16日
三种存储类型:块存储、文件存储、对象存储
1.5W阅读·3评论·55点赞
2020年11月2日
如何设计二进制文件格式
1940阅读·0评论·1点赞
2020年3月6日
BMP文件存储格式
472阅读·0评论·2点赞
2021年8月2日
hive 的存储格式
1765阅读·0评论·1点赞
2022年6月18日
数据存储格式
446阅读·0评论·0点赞
2022年12月21日
总结:对象存储、块存储、文件存储的区别
6606阅读·0评论·3点赞
2022年4月9日
c语言中文件rw,什么是“块文件”?
386阅读·0评论·0点赞
2021年5月23日
【存储】块存储、文件存储和对象存储的区别?
350阅读·0评论·0点赞
2022年7月22日
块存储、文件存储与对象存储的区别与应用场景
1846阅读·1评论·0点赞
2022年6月5日
数据在内存中的存储方式
272阅读·0评论·0点赞
2022年8月21日
去首页
看看更多热门内容

㈡ 如何访问局域网内Synology NAS上的文件

买一台西部数据My Cloud的NAS设备,注册账户后将数据存储在内,可以通过西数的个人云存储软件进行互联网远程访问。

㈢ vsftpd 怎么设置允许匿名访问

vsftpd服务程序中匿名开放是一种最不安全的验证模式,任何人都可以无需密码验证就登陆到FTP服务端主机,这种模式一般只用来保存不重要的公开文件,尤其是在生产环境中更要注意不放敏感文件,当然也非常推荐用咱们第八章中学习的防火墙管理工具(例如Tcp_wrappers)将vsftpd服务程序的允许访问主机范围设置为企业内网,这样还算能够保证基本的安全性。

vsftpd服务程序默认已经开启了匿名访问模式,咱们需要做的就是进一步允许匿名用户的上传、下载文件的权限,以及让匿名用户能够创建、删除、更名文件的权限,这些权限对于匿名用户来讲非常的危险,咱们只是为了练习Linux系统中vsftpd服务程序的配置能力,十分不推荐在生产环境中使用,匿名用户的权限参数及介绍:

参数 作用

anonymous_enable=YES 允许匿名访问模式。

anon_umask=022 匿名用户上传文件的umask值。

anon_upload_enable=YES 允许匿名用户上传文件

anon_mkdir_write_enable=YES 允许匿名用户创建目录

anon_other_write_enable=YES 允许匿名用户修改目录名或删除目录

[root@linuxprobe~]#vim/etc/vsftpd/vsftpd.conf
anonymous_enable=YES
anon_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

确认参数填写正确后保存并退出vsftpd服务程序的主配置文件,还需要重启vsftpd服务程序来让新的配置服务参数生效,并且同学们在生产环境中或者红帽RHCSA、RHCE、RHCA认证考试中也请记得一定要把配置过的服务程序加入到开机启动项中,以保证下次服务器重启后依然能够为用户正常提供ftp文件传输服务:

[root@linuxprobe~]#systemctlrestartvsftpd
[root@linuxprobe~]#systemctlenablevsftpd
ln-s'/usr/lib/systemd/system/vsftpd.service''/etc/systemd/system/multi-user.target.wants/vsftpd.service

这样咱们就可以在客户端上面使用ftp命令连接到远程的FTP服务器上面了,FTP服务的匿名开放模式的帐号统一为anonymous,密码为空。匿名模式登陆到FTP服务器后默认所在位置为/var/ftp目录,咱们可以切换至里面的pub目录中,然后尝试创建一个新的目录文件来检验是否已经有了写入权限:

[root@linuxprobe~]#ftp192.168.10.10
Connectedto192.168.10.10(192.168.10.10).
220(vsFTPd3.0.2)
Name(192.168.10.10:root):anonymous
331Pleasespecifythepassword.
Password:此处敲击回车即可
230Loginsuccessful.
RemotesystemtypeisUNIX.
.
ftp>cdpub
.
ftp>mkdirfiles
550Permissiondenied.

刚刚咱们已经把iptables防火墙策略清空,而且也在vsftpd服务程序的主配置文件中添加了允许匿名用户创建目录和写入文件的权限,那么为什么还会被拒绝呢?建议同学们先不要往下面看,思考后用自己的方法尝试解决下这个问题,长期这样您的Linux系统排错能力就一定会练出来的。

回想起前面操作的细节,咱们FTP服务的匿名开放模式是默认登陆到了/var/ftp目录中,查看下这个目录的权限后才发现原来只有root管理员用户才有写入权限的,怪不得会提示写入出错呢,咱们只需要把目录的所有者身份改成系统帐户ftp即可,这样就应该可以了吧~

[root@linuxprobe~]#ls-ld/var/ftp/pub
drwxr-xr-x.3rootroot16Jul1314:38/var/ftp/pub
[root@linuxprobe~]#chown-Rfftp/var/ftp/pub
[root@linuxprobe~]#ls-ld/var/ftp/pub
drwxr-xr-x.3ftproot16Jul1314:38/var/ftp/pub
[root@linuxprobe~]#ftp192.168.10.10
Connectedto192.168.10.10(192.168.10.10).
220(vsFTPd3.0.2)
Name(192.168.10.10:root):anonymous
331Pleasespecifythepassword.
Password:此处敲击回车即可
230Loginsuccessful.
RemotesystemtypeisUNIX.
.
ftp>cdpub
.
ftp>mkdirfiles
.

又报错了!!此时再次使用ftp命令登入到FTP服务器主机后依然会提示写入操作失败,但细心的同学一定发现报错信息已经产生了变化,在刚刚没有写入权限的时候提示说权限拒绝(Permission denied.)所以咱们怀疑是权限的问题,但现在是提示创建目录的操作失败(Create directory operation failed.)那么咱们同学应该也能马上意识到是SELinux服务在限制这个操作了吧,查看下所有与ftp相关的SELinux域策略有那些吧:

[root@linuxprobe~]#getsebool-a|grepftp
ftp_home_dir-->off
ftpd_anon_write-->off
ftpd_connect_all_unreserved-->off
ftpd_connect_db-->off
ftpd_full_access-->off
ftpd_use_cifs-->off
ftpd_use_fusefs-->off
ftpd_use_nfs-->off
ftpd_use_passive_mode-->off
httpd_can_connect_ftp-->off
httpd_enable_ftp_server-->off
sftpd_anon_write-->off
sftpd_enable_homedirs-->off
sftpd_full_access-->off
sftpd_write_ssh_home-->off
tftp_anon_write-->off
tftp_home_dir-->off

根据策略的名称和经验可以猜测出是哪一条规则策略,咱们在设置的时候请记得使用-P参数来让配置过的策略永久生效,保证在服务器重启后依然能够顺利写入文件,咱们可以分别尝试下创建目录文件、对文件进行改名以及删除目录文件等等操作。最后,恭喜同学们完成了这个实验课程,建议您在进行一次实验课程前还原虚拟机到最初始的状态,以免多个配置参数之间产生冲突。

[root@linuxprobe~]#setsebool-Pftpd_full_access=on
[root@linuxprobe~]#ftp192.168.10.10
Connectedto192.168.10.10(192.168.10.10).
220(vsFTPd3.0.2)
Name(192.168.10.10:root):anonymous
331Pleasespecifythepassword.
Password:此处敲击回车即可
230Loginsuccessful.
RemotesystemtypeisUNIX.
.
ftp>cdpub
.
ftp>mkdirfiles
257"/pub/files"created
ftp>renamefilesdatabase
350ReadyforRNTO.
250Renamesuccessful.
ftp>rmdirdatabase
.
ftp>exit
221Goodbye.

看了还不会的话 就回去看下原文吧《Linux就该这么学》第11章节~

㈣ 我linux中做了samba,,访问时可以访问到我所共享的文件夹,,但是没有权限进去。求解,

首先要修改samba的配置文件,路径是/etc/samba/smb.conf。
vim /etc/samba/smb.conf
在[global]区域里修改如下字段:
security = share #访问方式为共享,不用输入用户名和密码,可以匿名访问
hosts allow = 192.168.5.10 #允许192.168.5.10访问,也可以是一个网段
hosts deny = all #拒绝所有其他机器访问

在share definitions字段中添加要共享的目录,如:
[public]
path = /public #共享目录的路径
public = yes #目录是公开的
guest ok = yes #允许匿名访问
create mode = 0666 #默认创建文件的权限
directory mode = 0777 #默认创建目录的权限
writable = yes #目录是可写的

阅读全文

与存储桶配置文件可匿名访问相关的资料

热点内容
电子资料文件有哪些 浏览:241
猥琐猫表情教程 浏览:599
android音频文件格式 浏览:458
漫画脸app哪里可以下载 浏览:959
购买欢乐升级欢乐豆 浏览:282
学习智能机器人用什么编程最好 浏览:655
苹果手机如何管控app 浏览:633
mn文件夹 浏览:590
安卓平板通用刷机包下载 浏览:751
安卓获取内部存储路径 浏览:880
写代码两台显示器 浏览:327
unitypackage压缩文件 浏览:493
奕心安卓 浏览:563
使用土地的有关证明文件包含哪些 浏览:493
数据标注哪里可以接 浏览:482
在家自学编程下什么学 浏览:705
最近很火的app软件是什么软件 浏览:862
ai文字工具 浏览:157
兰博玩游戏路径怎么选择正确文件 浏览:972
淘宝直通车恢复老版本 浏览:510

友情链接