キーボード一体型Raspberry Pi 400レビューはこちら

フォルダが削除できないのは権限の問題かも、rmコマンド

omv5-rm-title openmediavault
openmediavault

OpenMediaVault5を簡易的なファイルサーバーとして利用していて、sambaで割り当てた領域のフォルダが削除できない時の例をご紹介します。

WindowsやMacでOMV5のネットワークフォルダを開いているとします。ここでファイルを母艦から転送したりしているわけです。

そもそも、それを閲覧できるということは、OMV5に設定したユーザー名とパスワードでネットワークドライブ(フォルダ)を割り当てている状態です。

この時、フォルダの削除ができない場面に遭遇することもあるでしょう。実は権限の問題でできないパターンがあります。

rmコマンドで削除できないよー、って場合は参考にしてください。

スポンサーリンク

-lオプション付きlsコマンド

よく使うコマンドの1つに、lsコマンドがあります。リストの略ですね。

オプションに-lまたは-alを付けてあげると、権限などの詳細がリスト表示されます。

-rw-------+  1 root     users      6144 Sep  8 12:06  aquota.group
-rw-------+  1 root     users      6144 Sep  8 12:06  aquota.user
drwxrwxr--+  4 pi       users      4096 Dec 31  2016 フォルダ名

rootの権限なのか、piなのか、はたまた自分で作ったユーザー名が表示されるでしょう。

Raspberry Piでは、基本はrootのパスワードは設定されていません。それに通常はrootでログインして処理することはありません。sudoコマンドでできるからです。

セキュリティの観点からも、rootのパスワードは設定しない、つまりデフォルトのままの方が安全です。rootにパスワードが無い状態の初期状態ならば、そもそもログインできないからです。

脱線しました。

今回削除できないフォルダの中は全て空でした。何もファイルはありません。隠しファイルもありません。

しかし、共有されたPCのネットワーク越しに削除できないフォルダのエラーは中身がありますよ、というものでした。本当にあればまた別の話になりますが、今回の場合は無い。

こうなると恐らく権限の問題です。

OMV5側でsamba共有する際にユーザーを指定しましたよね?

OMVを利用している人は最初に行ったハズです。ここでは例として「omv-user」としておきます。

そして元々、セットアップする時にRaspberry Pi LiteにOMVをインストールしたわけで、最初から「pi」ユーザーもあります。

(もちろん、セキュリティを考慮して、piユーザーを無効にしていれば別です。私はそのまま。)

結論から言えば、ネットワーク越しには「omv-user」で操作していましたが、消せないフォルダは「pi」ユーザー権限だったというわけです。

それならば、piユーザーでOMVのラズパイにログインして消せば良いことになります。

スポンサーリンク

SSHで接続

「omv-user」はSSHを許可していませんでしたから、必然的にpiでログインします。

ssh pi@omvのnasアドレス

ここで厄介なのは、外付けHDDを繋いだ場所です。

よくあるのは、「media」「mnt」などに割り当てる場合です。よく手動で指定しました。

次にOMV5側でマウントした場合、表示は「dev」になっていると思います。(例:dev/sda、dev/sdb1)

ただ、これだとそこに移動ができません。実際はそこにマウントされていても、シンボリックリンクになっていることがあります。

今回、OMV5でほぼ自動的にマウントした外付けHDDのディスクは、別の場所でした。

よくあるマウント場所

  • /dev
  • /media
  • /mnt
  • /srv

実際の場所

今回はネットワーク越しにsshでOMV5に繋いで、コマンドでフォルダを削除する事例です。

次のUUIDは一例です。私が繋いでいるHDDの1つでご説明します。

/srv/dev-disk-by-uuid-405cd060-bd97-46cc-9e08-9d8b172129a1

このように、dev/sdb1などに接続されていても、piユーザーで辿る実際の場所は、srv/内にuuid毎で見つかります。

ここにcdコマンドで移動してみれば、実際のファイル、つまりネットワークドライブ越しに見ていたファイル類が見つかると思います。

フォルダを中身ごと削除

気をつけたいことが1つ。Linuxにいて、削除コマンドはそのまま消えてしまいますので慎重に実行しましょう。

「ちょっと、タンマ!」は効きません。(昭和語ですみません)

フォルダを削除するコマンドは、オプション-rを付ける。

rm -r フォルダ名/

omv5でもpiユーザーが作成したフォルダを削除するので、sudoは要りません。

これで消えなかったフォルダが消えて無くなりました。

グループ権限

権限のお話は、ちょっと複雑ですけど間違えて消すことが無いと考えれば、ある意味で安全な仕組みです。

OMV5のユーザー画面で、グループ毎に権限を付与してあげることもできます。

この例のように、omv-userはsshを許可していません。同じようにssh接続してあげれば、イチイチpiユーザーでなくてもomv-userでできます。

でも、私はomv-userはファイルの読み書きだけにしたかったので、何も余計な権限は与えていません。

Piレッド
Piレッド

例えるなら、万年の平社員のままということ。

本来はpiユーザー自体も権限とホームフォルダをコピーした後、別のユーザーを作成し使った方が安全です。(私はしていませんが)

必要に応じて権限を付与してあげてください。

おまけ

フォルダの権限をフォルダの中身毎すべて変更する。(所有者の変更)

sudo chown -R ユーザー名 フォルダ名

-Rオプションでフォルダの中すべてを指定します。

\ 初めてのRaspberry Pi はセットで始めよう /
NewLife NewDesingストア

2台目にも最適な最小基本セット!

\ 初めてのRaspberry Pi はセットで始めよう /
NewLife NewDesingストア

2台目にも最適な最小基本セット!

スポンサーリンク
ラズパイダ

コメント ご感想をお願いします。

タイトルとURLをコピーしました