[英]Read ACLs from CIFS mounted file system in Java
在Linux機器上,我使用以下命令安裝了CIFS文件系統:
mount ... cifs ...,cifsacl
並且我能夠使用/usr/bin/getcifsacl
讀取ACL。 此外,在Windows機器上,用Java讀取ACL可以使用:
AclFileAttributeView view =
Files.getFileAttributeView(path, AclFileAttributeView.class)
但是,當我將相同的Java代碼應用於Linux上的CIFS掛載時,該view
為null
。
是否有機會調整CIFS掛載或Java代碼,以便我可以讀取ACL? (我知道jCIFS,但是不需要任何其他Java類庫。)
是否有機會調整Java代碼,使我可以讀取ACL?
您始終可以下載OpenJDK源代碼,弄清楚如何構建它,然后進行更改以完成所需的工作。 但這是一個壞主意。 您不太可能找到願意承擔您的更改的人,而且大多數人都不願意進行更改。
作為記錄,Linux的OpenJDK構建中的“ rt.jar”文件不包括Windows文件屬性視圖提供程序類。 他們不在那里。 因此,您將無法使用(假設的)反射性調整來使用Windows視圖。 也許您可以編譯它們並將它們添加到bootclasspath中。
請注意,如果出於許可原因不願使用jCIFS,則相同的理由也應防止您“調整” OpenJDK。 OpenJDK被許可為GPLv2(帶有“ classpath異常”),並且您的調整也將涵蓋在內。 (請注意,JCIFS是LGPLv2.1 ......這應該是比GPLv2的問題較少 。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.