FTP経由で所有フォルダを削除できません。

FTP経由で所有フォルダを削除できません。

この質問を何度も受けましたが、解決策が見つからないことを知っています。

だから私はクライアントとしてvsftpdand を使います。FileZilla

存在する/var/www/

drwxrwsr-x+  8 myuser ftpusers 4.0K Sep  2 10:37 html

存在する/var/www/html/

drwxrwxrwx   3 myuser ftpusers 4.0K Sep  2 10:38 directory

ディレクトリを所有していますが、削除できません。

FileZillaのログによると

rmdir /www/html/directory: failure

私は成功せずにHTMLフォルダで777を試しました。コマンドラインでのみ実行されますが。

Pythonスクリプトをからに変更した後に問題がなくなったようですos.mkdiros.system("mkdir")しかし、誰かが私に手がかりを与えることができるかどうか疑問に思います。

/var/www$ getfacl html
# file: html
# owner: myuser
# group: ftpusers
user::rwx
group::rwx
group:admin:rwx
group:synchronizer:rwx
mask::rwx
other::--x

答え1

あなたのディレクトリのリストに

drwxrwsr-x+  8 myuser ftpusers 4.0K Sep  2 10:37 html

「+」は存在することを意味します。拡張権限htmlディレクトリに。ランタイム呼び出し(たとえば、os.mkdirシェルコマンドの代わりに)を使用している場合は、どちらos.systemもまず次のように確認できます。accessこのディレクトリを削除できるかどうかは、OSによって決まります。

Debian Wiki特権この可能性は次のように述べられている。

最後の列は+シンボル。今はディレクトリを一覧表示するときにそれを見る可能性はありませんが(空白のように見えます)、これは拡張アクセスルールが適用されるという意味です。ファイルの実際の権限は、ファイルアクセスモードで指定されたものではありません。- このガイドの下でACLについて読むことができます。

問題は、(たとえば)ACLが特定のグループIDで実行されているエントリ(ftpプロセスが独自のグループで実行されている場合)の削除を防ぐこと、またはftpデーモンが別のグループで実行されているかどうかをアクセスチェックで確認できることです。実際のユーザー

追加資料:

関連情報