
我如何設定權限,以便我可以? “建立新資料夾”選項呈灰色。
我試過這個:
sudo chmod -rw /opt/lampp/htdocs
但它仍然不起作用。當我添加:
sudo chmod -rw 755 /opt/lampp/htdocs,
它說:"755" no such file or directory
答案1
您誤解了 chmod 和 unix 檔案權限的操作方式。
您需要設定 /opt/lampp/htdocs 目錄,以便您登入的使用者俱有寫入權限。您還需要確保 LAMPP 使用的任何 Web 伺服器都可以讀取您在其中寫入的內容(不幸的是,我對 LAMP 不熟悉。)
首先,您需要查看誰擁有 /opt/lampp/htdocs:
$ ls -ld /opt/lampp/htdocs
應該返回類似:
drwxr-xr-x 4 lampp www 4096 2011-03-22 12:43 /opt/lampp/htdocs
第一個位元(dwrxr-xr-x)是檔案權限。 「lampp」是目錄的擁有者,「www」是目錄的群組擁有者。你需要注意這一點。
首先讓我們對組別進行排序。如果該群組是除“root”之外的任何群組,那麼一切都很好,您可以跳過此部分:
如果它是“root”,則需要更改為更合理的內容。讓我們為其建立一個新群組:
$ sudo groupadd www
然後更改目錄上的群組:
$ sudo chgrp -R www /opt/lampp/htdocs
現在您需要使 Web 伺服器作為 www 群組運行。如果 Web 伺服器是 Apache,那麼您應該檢查 /etc/apache/httpd.conf 檔案並相應地編輯「Group」設定。我不知道其他網頁伺服器的設定。
現在,如果您不需要將群組從 root 切換到其他群組,則可以跳到此處。
我們現在需要解決目錄的權限問題。我們希望使用一些非常特殊的權限,稱為「setgid」位元。
$ sudo chmod 2775 /opt/lampp/htdocs
$ ls -ld /opt/lampp/htdocs
drwxrwsr-x 4 lampp www 4096 2011-03-22 12:43 /opt/lampp/htdocs
您會看到權限現在已經發生了一些變化。讓我們解釋一下這些。
- 第一個字母是文件類型。在本例中,「d」代表目錄。
- 接下來的三個「rwx」是擁有者 (lampp) 對目錄的權限。 r = 讀取,w=寫入,x=查看目錄內容。
- 接下來的三個「rws」代表群組擁有者 (www),但您會注意到本例中的 x 實際上是 s - 我們稍後會討論這一點。
- 最後三個“rx”適用於其他所有人。即讀取,並查看目錄內容。沒有寫作。
群組權限中的「s」稱為「setgid」位元。這是一種特殊權限,它會導致在目錄中建立的任何檔案從目錄本身繼承群組擁有者。因此,如果「users」群組中的使用者「fred」在其中建立一個文件,則該文件將歸「www」群組中的「fred」所有。這對於多人讀寫相同檔案的共用區域非常有用。
但就目前情況而言,您仍然無法寫入該區域。為什麼?因為你不在「www」組。現在讓我們來修正這個問題:
$ sudo usermod -aG www blub
將“www”替換為您在開頭附近記下的 /opt/lampp/htdocs 目錄的群組擁有者。
您需要登出並再次登入才能使此變更生效 - 您的群組成員資格將在登入時讀取。
完成此操作後,您應該突然發現您現在可以神奇地在 /opt/lampp/htdocs 中寫入檔案。
如果您希望允許系統上的其他使用者寫入,只需使用命令將他們新增至 www 群組即可usermod -aD www <username>
。
答案2
這個簡單的終端命令給了我完全的權限,htdocs
我能夠開始處理 PHP 項目
sudo chmod 777 -R /opt/lampp/htdocs
針對穆罕默德的評論,最好使用sudo chmod 755 -R /opt/lampp/htdocs
答案3
您使用 +rw 或八進位, 不是都。
您想要做的是從名為 755 的目錄以及 /opt/lampp/htdocs 中刪除讀取和寫入權限。
無論如何,您不應該使用 xampp - 您可以獲得更新的、本機安裝的燈堆疊 - 您可以使用taskel 安裝它。
答案4
將目錄/opt/lampp/htdocs
及其內容的群組所有權變更為群組jade
。
sudo chgrp -R jade /opt/lampp/htdocs
然後,如果您想要修改權限(例如,授予群組jade
寫入權限),通常會使用 chmod 命令。例如:
sudo chmod -R g+w /opt/lampp/htdocs