Articles of 文件系统

数据库和链接文件的有效备份和归档策略

我正在使用Postgres来存储一个Web应用程序的各种应用程序数据。 部分应用程序涉及存储和检索用户上传的文件。 我将这些文件与数据库中的一些关联的元数据一起存储在文件系统中。 我正在想出一个备份和存档策略,以便我可以有效地备份和存档/恢复数据库和链接的文件。 这是我想要完成的事情。 执行可用于从故障中恢复的例程备份,其中包括所有数据库数据和链接文件。 理想情况下,这个备份将在应用程序运行时完成。 实时备份对于数据库来说当然是可能的,但我不知道如何在备份过程中保持链接文件与数据库一致 归档大量的数据,因为他们变得“老”。 这些块必须包含数据库数据和所有链接的文件。 应该可以将存档数据重新投入生产。 如果容易确定每个块中存储了哪些范围的对象,那将是理想的。 你有什么build议如何实现这些目标? 如果这些文件在BLOBS数据库中,那么这些任务将会容易得多,因为正常的数据库备份和恢复function可以解决这个问题。 当文件数据链接到数据库行时,我不知道如何完成同样的事情。

Linux RAMDisk文件系统在文件系统已满时阻塞写入

我需要设置一个Linux RAMDisk来实现一个队列。 基本思想是将进程写入RAMDisk。 同时还有一些进程监视新文件,并在进入时读取和删除它们。 在写入速度快于读取速度并且RAMDisk填满的情况下,应该阻止写入,直到RAMDisk中有足够的空间来存储正在进入的新文件。 一种select是使用tmpfs,当分配给文件系统的ram被全部使用时,它会“溢出”到磁盘上,但是,由于缓慢的HDD IO,整个系统将会减速,在我的高性能系统那将是不可接受的。 我想理想的是一个文件系统,当RAMDisk已满时自动阻止写入,直到有足够的空间可用。 注意我没有对写入过程的控制权,所以他们没有能力查询空闲空间并等待 – 它们只是简单的写入所有的时间。 任何解决scheme

ASP.NET,达到了DFSR的极限,以及文件存储分片

我们运行一个stream行的Web应用程序,并且我们的后端文件存储位于文件服务器上,并被复制到另一个文件服务器以便与DFSR进行故障转移。 我们已经达到了DFSR的理论极限,因此需要开始分析我们的存储。 什么是最好的方式去分片? 我知道我们可以在应用程序级别抽象出我们的文件存储空间,但是除此之外,我的脑海里浮现出与文件系统交互的第三方控件将如何挂钩到抽象中。 你见过的最好的技术是什么,或者能想到什么? 现在假定我们有一个目录结构,例如/ Customers /自行车系统,/ Customers / 10degrees等等。客户数据的一个大目录,每个客户在该目录中都有自己的文件夹。 我最初的想法是把大客户目录分解成更多的层次结构,比如/ Customers / b /自行车系统/ Customers / 1 / 10degrees(取每个客户ID的第一个字母或数字),这给了我能力为构成客户ID的每个第一个字符创buildDFS命名空间(对于您的正则expression式人员是[a-z0-9])。 所以,一个潜在的36个DFS命名空间。 然后从那里我可以随着容量的增加将这些命名空间转移到各种服务器上。 在达到理论上的DFSR限制之前,这会给我更多的喘息空间。 这是最好的方法吗? 我知道我们可以看看Linux或其他企业级存储系统(Isilon等)。 但是,对于这个讨论,我想暂时讨论一下Windows的讨论。 当然,除非你有强烈的欲望来颂扬不同的解决scheme的好处,而且你想帮助我看到光明!

IIS 7,ASP.NET安全噩梦

没有明显的原因,我知道,我的本地开发服务器(IIS 7)上的ASP.NET网站开始返回错误代码500 – 内部服务器错误 。 授予用户“ Users (MY_COMPUTER_NAME\Users) ”对该文件夹(在IIS下虚拟Users (MY_COMPUTER_NAME\Users)完全控制权后,网站开始再次运行。 但是这一次我的PDF创build者DLL仍然没有工作(只是保持返回null),它似乎仍然是这个安全问题。 我是否缺less其他安全设置? 我已经把文件夹完全控制给下列用户: IUSR 系统 本地服务 networking服务 MYNAME(Belrije \ MYNAME) pipe理员(Belrije \pipe理员) 用户(Belrije \ Users) IIS_IUSRS(Belrije \ IIS_USRS) P / S: Belrije是计算机名称 注:我有这个相同的设置运行在我的笔记本电脑上,没有任何问题。 我在用: IIS 7 Windows 7 Ultimate ASP.NET 3.5 Website

安全担心IIS网站的访问权限 – 限制他们不能读取c:\等

我有一些关于我的IIS网站的安全问题。 从我们的服务器上的PHP文件(FastCGI),脚本能够读取我系统的根目录( c:\ ),但是甚至列出了c:\windows的内容。 更麻烦的是,我甚至可以在这样的根目录下创build目录: mkdir('c:\asdasd'); ,而且没有任何问题。 我甚至可以阅读其他网站的目录(所以实际上我可以从PHP脚本映射整个系统的目录树)。 我认为这是一个巨大的安全问题。 没有人应该能够读取或写入c:\或其他托pipe网站的内容。 我知道PHP中有open_basedir指令,但我认为设置这个指令并不能解决问题,因为我也可以使用任何其他服务器语言来访问相同的上述目录。 我的网站的目录树是这样的: c:\net\web\php\ |- website1 |- other |- htdocs |- website2 |- other |- htdocs |- website3 |- other |- htdocs |- … 网站的源文件在htdocs目录下,所以这是这些网站的“根目录”。 我只是想启用网站的第一个父目录的读/写权限,例如c:\net\web\php\website1 (例如“ c:\net\web\php\website1\other ”可能是写,但c:\net\web\php\不应该)。 我该如何限制访问? 谢谢!

Iozone的logging尺寸和真实的目的

我对Iozonelogging大小感到困惑。 我的问题是: 如何找出我的应用程序使用的logging大小? 什么是Iozonelogging大小和文件系统Block Size之间的相关性? 我怎样才能调整我的文件系统(ext4)受益于特定的logging大小? 谢谢!

加快目录创build/文件链接

我正在使用rsnapshot进行备份。 目前这意味着每次运行更新(即使没有任何数据差异),我只获得〜100M的目录结构+ inode列表的副本。 这些文件几乎完全是硬链接。 潜在的问题是备份的初始副本每个备份目标需要大约2分钟,而以下rsync只需要几秒钟的时间。 有什么办法可以加速吗? 当前的文件系统是ext4 – 有没有其他的在这个任务上会更快?

networking映射文件系统将丢弃到只读中途stream,设备映射程序发生缓冲区I / O错误

在Linux 2.6(实际上是CentOS 5.3)下,我有一个文件系统可以正常工作几分钟,然后下降到只读模式 ,而我试图读取/写入数据。 这是一个ext3文件系统,通过device-mapper引用一个luks (cryptsetup)设备。 luks裸设备实际上是一个环回设备,并且该环回设备引用一个文件。 该文件引用通过sshfs映射的远程系统上的文件。 是啊,很多的容器。 这就是我正在做的安全备份存储到一个比我更喜欢的安全性稍低的云环境。 详细: 远程系统有一个文件夹backupFolder包含一个预先分配的20G文件backupFile。 本地系统使用sshfs将backupFolder挂载到本地挂载点backupMapped。 本地系统创build一个指向backupMapped / backupFile的环回设备(使用losetup)。 本地系统使用cryptsetup luksOpen将loop设备映射应用到回送设备,产生/ dev / mapper / backup。 本地系统将/ dev / mapper / backup作为ext3设备挂载在不同的本地挂载点上,例如/ root / rpg / d01 然后,我可以使用rsync来更新cleartextBackup上的数据/使用本地系统上的原始数据。 这在小的差异,小的rsyncstesting时效果很好。 然而,对于更大的操作,大约十五分钟的显然成功的操作之后,rsync挂起了相当长的一段时间,然后通过源文件继续生成各种错误消息: rsync:mkstemp“/root/rpg/d01/db_pgexports/dbdump.sql”失败:只读文件系统(30) 和 rsync:can not stat destination“/ root / rpg / d01 / db_myexports /”:input/输出错误(5)rsync错误:在main.c(493)selectinput/输出文件,目录(代码3) 0.8] 和 rsync:recv_generator:mkdir“/ root […]

创build新文件时,文件夹默认ACL不会inheritance

我是一个Unix系统的初学者,但是我在Windows服务器上运行Cygwin,我正在试图找出一些与扩展ACL有关的东西。 我有一个目录,我设置了以下ACL: Administrator@MyServer ~ $ setfacl -md:u:Someuser:r– somedir Administrator@MyServer ~ $ getfacl somedir/ # file: somedir/ # owner: Administrator # group: None user::rwx group::rx mask:rwx other:rx default:user::rwx default:user:Someuser:r– default:group::rx default:mask:rwx default:other:rx 正如你所看到的default ACL的mo​​se有x位。 那么当我创build罚款,它不会inheritance它应该的ACL: Administrator@MyServer ~ $ touch somedir/somefile Administrator@MyServer ~ $ getfacl somedir/somefile # file: somedir/somefile # owner: Administrator # group: None user::rw- user:Someuser:r– […]

上传文件时,服务器上CPU使用率过高的原因是什么?

当我尝试上传一个巨大的文件大小(大约2GB),服务器的CPU使用率非常高。 我该怎么办才能解决这个问题? 我只是使用标准的HTML表单和PHPfile upload。 如果我在错误的论坛上发帖,我很抱歉。 请指向正确的方向 这里是上传命令的结果,上传4个文件(18mb,38mb,60mb,33mb) 1904 apache 20 0 33504 5740 1952 R 28.3 0.2 0:02.19 httpd 1905 apache 20 0 33504 5740 1952 R 28.3 0.2 0:01.99 httpd 1903 apache 20 0 33232 6968 3060 R 28.0 0.2 0:01.98 httpd 1910 apache 20 0 33240 6020 2248 S 11.5 0.2 0:02.85 httpd […]