どうすれば許可を設定できますか? [新しいフォルダを作成]オプションはグレー表示されます。私はこれを試しました:Sudo chmod -rw/opt/lampp/htdocs
しかし、それでも機能しません。 Sudo chmod -rw 755/opt/lampp/htdocsを追加すると、「755」というファイルやディレクトリはありません
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」以外の場合、すべて順調であり、このセクションはスキップできます。
「ルート」の場合は、より賢明なものに変更する必要があります。それが属する新しいグループを作ってみましょう:
$ Sudo groupadd www
次に、ディレクトリのグループを変更します。
$ Sudo chgrp -R www /opt/lampp/htdocs
次に、Webサーバーをグループwwwとして実行する必要があります。 WebサーバーがApacheの場合、/ etc/Apache/httpd.confファイルを確認して、それに応じて「グループ」設定を編集する必要があります。他のWebサーバーの設定がわかりません。
ここで、グループをルートから他のグループに切り替える必要がない場合は、ここにスキップします。
次に、ディレクトリの権限に対処する必要があります。 「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
権限が多少変更されたことがわかります。これらについて説明しましょう。
グループ権限の「s」は「setgid」ビットと呼ばれます。これは、ディレクトリで作成されたすべてのファイルに、ディレクトリ自体からグループ所有者を継承させる特別な権限です。したがって、「users」グループの「fred」ユーザーがそこにファイルを作成すると、「www」グループの「fred」が所有することになります。これは、複数の人がすべて同じファイルを読み書きする共有領域で非常に役立ちます。
しかし、現状では、その領域に書き込む機能はまだありません。どうして? 「www」グループに参加していないからです。それを修正しましょう:
$ Sudo usermod -aG www blub
「www」を冒頭でメモした/ opt/lampp/htdocsディレクトリのグループ所有者に置き換えます。
この変更を有効にするには、ログアウトして再度ログインする必要があります。グループメンバーシップはログイン時に読み取られます。
これを実行すると、突然、/ opt/lampp/htdocsに魔法のようにファイルを書き込むことができることがわかります。
システムに書き込みを許可したい他のユーザーがいる場合は、usermod -aD www <username>
コマンドを使用してwwwグループに追加するだけです。
この単純な端末コマンドでhtdocs
への完全な権限が与えられ、PHPプロジェクトで作業を開始することができました
Sudo chmod 777 -R /opt/lampp/htdocs
ムハンマドのコメントに応えて、Sudo chmod 755 -R /opt/lampp/htdocs
ETHHER + rw OR the octals を使用しますが、両方を使用することはできません。
あなたがしようとしているのは、755と呼ばれるディレクトリと/ opt/lampp/htdocsから読み取りと書き込みの権限を削除することです。
いずれにせよ、xamppを使用するべきではありません。ランプスタックのネイティブインストールをより最新のものにすることができます。taskselを使用してインストールできます。