
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的人都在学习java编程开发语言,而今天我们就一起来了解一下,java编程开发文件安全性问题都有哪些。
一、文件格式
A : 当设置了A属性时,这个文件(或目录)的存取时间atime(access)将不可被修改,可避免例如手提电脑有磁盘I/O错误的情况发生。
S : 这个功能有点类似sync.就是将数据同步写入磁盘中。可以有效地避免数据流失。
a : 设置a之后,这个文件将只能增加数据,而不能删除,只有root才能设置这个属性。
c : 这个属性设置之后,将会自动将此文件“压缩”,在读取的时候将会自动解压缩,但在存储的时候,将会先进行压缩后再存储(对于大文件有用)。
d : 当执行dump(备份)程序的时候,设置d属性将可使该文件(或目录)具有转储功效。
i : i的作用很大。它可以让一个文件“不能被删除、改名、设置连接,也无法写入或新增数据”。对于系统安全性有相当大的帮助。
j : 当使用ext3文件系统格式时,设置j属性将会使文件在写入时先记录在journal中。但是,当文件系统设置参数为data=journalled时,由于已经设置日志了,所以这个属性无效。
s : 当文件设置了s参数时,它将会从这个硬盘空间完全删除。
u : 与s相反,当使用u来设置文件时,则数据内容其实还存在磁盘中,可以用来还原删除。
特殊文件
linux中还有一些特殊的文件,比如链接文件和设备文件。
在处理链接文件的时候,我们需要注意判断链接文件的真实指向。
而设备文件我们需要注意不合理的授权访问。
二、java中在共享目录中使用文件要注意的问题
共享目录中因为所有人都有操作文件的权限,所以,我们需要特别注意在java中共享目录中文件的操作。
根据java的规范, java.nio.channels.FileLock可以用来表示文件的锁定。
通常来讲,锁定有两种,一种是排他锁,一种是共享锁。
共享锁可防止其他同时运行的程序获取重叠的排他锁,但确实允许它们获取重叠的共享锁。排他锁可防止其他程序获取任一类型的重叠锁。
共享锁支持来自多个进程的并发读取访问;独占锁支持独占写访问。
但是,加锁是否真正的阻塞其他程序对该文件的访问,实际是取决于操作系统。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请在707945861群中学习了解。