从Windows安装在Linux上的CIFS显示损坏/失真的图像

妈妈们

我已经使用挂载了Windows(NAS)文件夹到Turnkey-Linux服务器上cifs-utils在Linux上查看某些图像时,它们在视觉上会显示失真/损坏,但在Windows上可以正常显示。

示例1(左:Linux,右:Windows)

示例2(左:Linux,右:Windows)

在某些情况下,使用Firefox(69.0),该图像将完全不会显示,仅在文件位置位于左上角的地方显示空白边框。在Chrome(76.0.3809.132)中,它将显示极其损坏的图像

我已经尝试过的一些故障排除方法:

  • 将文件夹重新安装在相同和不同的位置。相同的图像总是失真/损坏
  • 使用其他(备份)Windows NAS。

有没有人经历过这种情况,并且知道是什么原因造成的?

妈妈们

我使用的Apache2版本(2.4.25 Debian)存在一个已知的错误,该错误以有趣的方式提供CIFS文件,从而导致文件损坏。对于使用Apache2的用户,您可能会处理httpd.conf文件sites-enabled中的文件。在我的Turnkey Django发行版中,它是该文件django.conf一个名为sites-enabled文件,但实际上与相同httpd.conf

默认情况下,Apache2使用MMAP,但是在使用CIFS时,它已损坏。从文件系统上的文件获取md5sum时,您将不断获得不同的哈希值。这是导致问题的原因。

要自己查看,只需使用以下命令获取md5sum: wget http://localhost/file -O -|md5sum 多次运行此行,您将看到md5sum每次都不同。

要在Apache2配置文件中关闭MMAP,请执行以下操作:

  1. cd../apache2/sites-enabled/
  2. nano django.conf 或者 httpd.conf
  3. 在下面ServerName localhost添加EnableMMAP Off
  4. 然后在.conf文件底部添加一个<directory>指向您的CIFS文件夹标记。我的看起来像这样: <Directory "/etc/www/djsys/static/bom/images/part-img/"> </Directory>
  5. 保存.conf文件,然后重新启动Apache2 service apache2 restart

现在应该关闭了MMAP,并且CIFS上的文件也不再损坏。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

TOP 榜单

热门标签

归档