java 處理一些通用的權(quán)限
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了山陽免費建站歡迎大家使用!
1、在java中,文件的權(quán)限對于不同的操作系統(tǒng)有不同的權(quán)限。 java 處理一些通用的權(quán)限。
2、檢查文件是否允許:
file.canExecute(); – return true, file is executable; false is not.
file.canWrite(); – return true, file is writable; false is not.
file.canRead(); – return true, file is readable; false is not.
3、設(shè)置文件權(quán)限:
file.setExecutable(boolean); – true, allow execute operations; false to disallow it.
file.setReadable(boolean); – true, allow read operations; false to disallow it.
file.setWritable(boolean); – true, allow write operations; false to disallow it.
4、在*nix系統(tǒng)中,你可能需要配置更加明確的文件權(quán)限,如設(shè)置某個文件的權(quán)限為777.但是,java IO類沒有相關(guān)方法。
Runtime.getRuntime()。exec("chmod 777 file");
java 處理一些通用的權(quán)限
1、在java中,文件的權(quán)限對于不同的操作系統(tǒng)有不同的權(quán)限。 java 處理一些通用的權(quán)限。
2、檢查文件是否允許:
file.canExecute(); – return true, file is executable; false is not.
file.canWrite(); – return true, file is writable; false is not.
file.canRead(); – return true, file is readable; false is not.
3、設(shè)置文件權(quán)限:
file.setExecutable(boolean); – true, allow execute operations; false to disallow it.
file.setReadable(boolean); – true, allow read operations; false to disallow it.
file.setWritable(boolean); – true, allow write operations; false to disallow it.
4、在*nix系統(tǒng)中,你可能需要配置更加明確的文件權(quán)限,如設(shè)置某個文件的權(quán)限為777.但是,java IO類沒有相關(guān)方法。
Runtime.getRuntime()。exec("chmod 777 file");
你這是權(quán)限不足 ,試試在chmod前加上sudo 命令
sudo chmod 777,然后會提示你輸入root管理員的密碼。輸入密碼后就可以了。否則,權(quán)限不足
以root用戶登錄,或者切換到root用戶
chmod?-R?777?usr/local/java
關(guān)于chmod命令的使用,本人整理了一下
chmod?修改文件或目錄的權(quán)限
權(quán)限修改有兩種模式
模式一:?
ugo分別代表用戶,組,其它
+?-?代碼加入和刪除對應(yīng)權(quán)限
例如:?chmod?u+w?test?表示增加所屬用戶可寫的權(quán)限
chmod?g+w?test?表示增加所屬組可寫的權(quán)限
chmod?o+w?test?表示增加其它用戶可寫的權(quán)限
chmod?a+rwx?表示給用戶,組,其它用戶所有權(quán)限
a?=?all?所有
chmod?u-w?test?表示刪除所屬用戶可寫的權(quán)限
-?和+相同
root用戶不受權(quán)限控制
chmod可增加參數(shù)
-R?遞歸修改文件目錄的權(quán)限
模式二:
chmod支持以數(shù)字的方式修改權(quán)限
三個權(quán)限以三個數(shù)字表示
r?????=????4??(2^2)
w????=????2??(2^1)
x?????=????1??(2^0)
使用數(shù)字方式修改權(quán)限時,每組權(quán)限分別對應(yīng)數(shù)字之和,且必須同時修改UGO三個部分
例如:?rw????=????4+2?????????=6
rwx???=????4+2=1????=7?
rx??????=????4+1????????=?5
使用數(shù)字的方式UGO權(quán)限使用如下?:
chmod?660?實際等于?rw-?rw-?---
chmod?755???????等于?rwx?r-x?r-x
Linux默認權(quán)限可使用umask來查看
umask?使用數(shù)字的權(quán)限方式表示
umask?默認是?022
root用戶目錄的默認權(quán)限是?777?-?umask?=?755?=?rwx?r-x?r-x
root用戶文件的默認權(quán)限是?666?-?umask?=?644?=?rw-?r--?r--
普通用戶的umask默認是?002
目錄的默認權(quán)限是?777?-?umask?=?775?=?rwx?rwx?r-x
文件的默認權(quán)限是?666?-?umask?=?664?=?rw-?rw-?r--
umask?022?可以修改umask值,但是不建議去修改
執(zhí)行umask?返回了四位數(shù)的權(quán)限,其中第一位是特殊權(quán)限
suid?表示以文件的所屬用戶身段去執(zhí)行
sgid?表示以文件的所屬組身份去執(zhí)行