私はそれがあいまいな質問のように聞こえるのを知っていますが、私は次のことを試みましたが、助けにはなりませんでした:
ドライブが下にマウントされています
/media/data
だから私は入った
Sudo chown -R :users /media/data
ただし、そのパーティションにユーザーとして書き込むことはできません。また、/ etc/fstabにエントリを作成しようとしました
UUID=... /media/data ext4 rw,suid,dev,exec,auto,user,async 0 0
しかし、その後、彼はディスクを見つけることができなかったため、私のコンピューターはもう起動できませんでした。
Ubuntu 14.04サーバーがインストールされています。パーティションは/dev/nvmeOn1p1
の下にリストされ、/etc/fstab
には表示されません(下の写真を参照)。
(デバイスは「Intel DC P3700」800GB SSDです)
追加のコメント:パーティションは空なので、たとえばgpartedを使用してフォーマットし、再作成することもできます。パーティションをすべてのユーザーが使用できるように指定する方法は、gpartedまたは他のGUIプログラムにありますか?
私はついに問題を解決しました。 UUIDにタイプミスがあることがわかりました。したがって、fstab
の最後のエントリは次のとおりです。
UUID=... /media/data ext4 defaults 0 0
またはさらに良い:
/dev/sdb1 /media/data ext4 defaults 0 0
リブートする前に単純に呼び出して確認しました:
Sudo umount /media/data
Sudo mount -a
Fstabエントリが正しい場合、すべてが正常にマウントされ、コンピューターのすべてのユーザーがパーティションにアクセスできます(少なくとも、自分が作成した正しい動作のフォルダー)。
一匹の猫が
Sudo chown -R UserNameOfSudo:users /media/data
Sudo chmod -R g+rw /media/data
すべての人がパーティションにアクセスできるように、パーティションはまだマウントされています。
「chown」を実行する場合、次のように入力して、特定のユーザーがグループ「users」の一部であることを確認します。
Sudo adduser yourSpecificUsername users
ログアウトして再度ログインしてください!
編集
デフォルトでマウントした後のパーティションは、rootが所有します。これにより、誰もパーティションに書き込むことができなくなります。上記のようにマウントした後に所有者を「UserNameOfSudo」に変更すると、目的の動作が得られます。
Edit2
ローカルユーザーとLDAPユーザーの間でコンピューターを共有する場合の解決策は、すべてのユーザーにすべての権限を与えることです。
Sudo chmod 777 /media/data
そして、「スティッキービット」を設定します。これは、フォルダ/ファイルを作成したユーザーのみがそれを削除できることを意味します。これにより、適切なセキュリティが追加されます。
Sudo chmod o+t /media/data/
たぶんあなたは間違った順序で物事をやっているのでしょう。 mkfs.ext4
を使用してファイルシステムを作成すると、その内部のすべては、システムのデフォルトの権限が設定されたユーザールートおよびグループルートによって所有されます。
そのファイルシステムをディレクトリにマウントすると、元の所有者とそのディレクトリのアクセス許可に関係なく、ファイルシステムのアクセス許可と所有者が表示されます。
つまり、このようなことをしても動作しません:
Sudo mkfs.ext4 /dev/some/data
Sudo mkdir /media/data
Sudo chown -R :users /media/data
Sudo chmod -R g+rw /media/data
Sudo mount /dev/some/data /media/data
正しいことは、ファイルシステムを作成してマウントし、thenでアクセス許可と所有権を変更することです。/etc/fstabで何をしてもかまいません。
正しい方法はこれです:
Sudo mkfs.ext4 /dev/some/data
Sudo mkdir /media/data
Sudo mount /dev/some/data /media/data
Sudo chown -R :users /media/data
Sudo chmod -R g+rw /media/data
これで質問に答えるはずです。さらに詳細が必要な場合は、読んでください。
何が起こるかをよりよく理解するために、画像ファイルを少し試してみましょう
fallocate -l 100MB /tmp/filesystem.img
を使用してフォーマットおよびマウントする空のファイルを作成します。次に、Sudo mkfs.ext4 /tmp/filesystem.img
を使用してext4ファイルシステムとしてフォーマットします(ブロックデバイスではありませんが、yesと応答すると、動作するext4ファイルシステムを配置できます)。マウントポイントとして使用するディレクトリを作成しますmkdir /tmp/experiment
。
次に、Sudo chown -R :users /tmp/experiment
およびSudo chmod -R g+rw /tmp/experiment
を使用してそのディレクトリの所有者と権限を変更し、ls -la /tmp/experiment
を使用して権限を確認してください。次のようなものが得られます。
ls -la /tmp/experiment/
total 0
drwxrwx--x 2 gerlos users 40 feb 19 10:37 .
drwxrwxrwt 8 root root 180 feb 19 10:38 ..
これは、/ tmp/experimentがユーザーgerlosとグループユーザーによって所有されており、グループメンバーがその上で読み取り、書き込み、実行できることを示しています。たとえば、touch /tmp/experiment/somefile
を使用して、ファイルを配置できます。
ここで、Sudo mount /mnt/filesystem.img /tmp/experiment
を使用してそのディレクトリにファイルシステムをマウントし、ls
出力を再度確認します。
$ ls -la /tmp/experiment/
total 13
drwxr-xr-x 3 root root 1024 feb 19 10:41 .
drwxrwxrwt 8 root root 180 feb 19 10:41 ..
drwx------ 2 root root 12288 feb 19 10:41 lost+found
ご覧のとおり、今では/ tmp/experimentはrootによって所有されており、さまざまな許可が与えられているようです!どうして?私たちは/ tmp/experiment自体ではなく、/ mnt/experimentにマウントされた/mnt/filesystem.imgに含まれるファイルシステムのルートディレクトリを見ているからです。
さらに、通常のユーザーはtouch /tmp/experiment/anotherfile
を使用してそこにファイルを配置できません。
上記のようにchown
およびchmod
を再度実行しようとすると、マウントポイントではなく所有者と権限が変更されますが、マウントされたファイルシステムとユーザーファイルシステムを使用できるようになります。最後にもう一度ls出力を見て確認するには:
$ ls -la /tmp/experiment/
total 13
drwxrwxr-x 3 root users 1024 feb 19 10:41 .
drwxrwxrwt 8 root root 180 feb 19 10:45 ..
drwxrw---- 2 root users 12288 feb 19 10:41 lost+found
ご覧のとおり、ユーザーグループのメンバーがファイルシステムにファイルを配置できるようになりました。実際、通常のユーザーがtouch /tmp/experiment/myfile
で新しいファイルを作成することを妨げるものはありません。
$ ls -la /tmp/experiment/
total 13
drwxrwxr-x 3 root users 1024 feb 19 11:05 .
drwxrwxrwt 8 root root 180 feb 19 11:02 ..
drwxrw---- 2 root users 12288 feb 19 10:41 lost+found
-rw-rw---- 1 gerlos gerlos 0 feb 19 11:02 myfile
任務完了! :-)