Saya tahu ini terdengar seperti pertanyaan ganda, tetapi saya mencoba yang berikut ini dan tidak membantu:
Drive saya dipasang di bawah
/media/data
jadi saya masuk
sudo chown -R :users /media/data
Namun saya masih tidak dapat menulis ke partisi itu sebagai pengguna.
Saya juga mencoba membuat entri di /etc/fstab
UUID=... /media/data ext4 rw,suid,dev,exec,auto,user,async 0 0
tetapi setelah itu komputer saya tidak bisa boot lagi karena dia tidak dapat menemukan disk.
Saya telah menginstal Ubuntu 14.04 Server. Partisi terdaftar di bawah /dev/nvmeOn1p1
dan tidak muncul di /etc/fstab
(lihat gambar di bawah).
(perangkatnya adalah SSD 800GB “Intel DC P3700”)
Catatan Tambahan:
Karena partisinya kosong, saya juga dapat memformatnya dan membuatnya kembali menggunakan gparted misalnya. Apakah ada cara di gparted atau program gui lainnya untuk menentukan bahwa partisi harus dapat digunakan oleh semua pengguna?
Jawaban yang Diterima:
Mungkin Anda melakukan hal-hal dalam urutan yang salah. Saat Anda membuat sistem file dengan mkfs.ext4
, semua yang ada di dalamnya dimiliki oleh root pengguna dan root grup dengan pengaturan izin default sistem Anda.
Saat Anda memasang sistem file tersebut pada direktori, Anda akan melihat izin dan pemilik sistem file, terlepas dari pemilik asli dan izin pada direktori tersebut.
Jadi, melakukan hal seperti ini tidak akan berhasil:
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
Hal yang benar untuk dilakukan adalah membuat sistem file, memasangnya, dan lalu ubah izin dan kepemilikan di atasnya. Tidak masalah apa yang Anda lakukan di /etc/fstab.
Cara yang tepat untuk melakukannya adalah ini:
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
Ini harus menjawab pertanyaan Anda. Jika Anda memerlukan detail lebih lanjut, baca terus.
Untuk lebih memahami apa yang terjadi, mari bereksperimen sedikit dengan file gambar
Buat file kosong untuk diformat dan di-mount menggunakan fallocate -l 100MB /tmp/filesystem.img
. Kemudian format sebagai sistem file ext4 dengan sudo mkfs.ext4 /tmp/filesystem.img
(ini bukan perangkat blok, tetapi jika Anda menjawab ya, Anda tetap dapat menempatkan sistem file ext4 yang berfungsi) dan membuat direktori untuk digunakan sebagai titik mount mkdir /tmp/experiment
.
Sekarang coba ubah pemilik dan izin pada direktori itu dengan sudo chown -R :users /tmp/experiment
dan sudo chmod -R g+rw /tmp/experiment
, dan periksa izin dengan ls -la /tmp/experiment
. Anda akan mendapatkan sesuatu seperti ini:
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 ..
Ini memberitahu Anda bahwa /tmp/experiment dimiliki oleh gerlos pengguna dan pengguna grup, dan anggota grup dapat membaca, menulis, dan mengeksekusinya. Anda dapat meletakkan file di dalamnya, misalnya dengan touch /tmp/experiment/somefile
.
Sekarang mount sistem file pada direktori itu dengan sudo mount /mnt/filesystem.img /tmp/experiment
, dan lihat kembali ls
keluaran:
$ 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
Seperti yang Anda lihat, sekarang /tmp/experiment tampaknya dimiliki oleh root, dengan izin yang berbeda! Mengapa? Karena kita tidak melihat /tmp/experiment itu sendiri, tetapi pada direktori root dari sistem file yang terdapat di /mnt/filesystem.img, yang dipasang di /mnt/experiment.
Terkait:18.04:Mengapa Xorg dan Xwayland?
Selain itu, pengguna biasa Anda tidak akan dapat meletakkan file di sana dengan touch /tmp/experiment/anotherfile
.
Jika sekarang Anda coba lagi menjalankan chown
dan chmod
seperti di atas, Anda akan mengubah pemilik dan izin bukan pada titik pemasangan, tetapi pada sistem berkas terpasang , dan pengguna Anda akan dapat menggunakan sistem file. Untuk mengonfirmasi tampilan ini pada keluaran ls untuk terakhir kalinya:
$ 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
Seperti yang Anda lihat, sekarang anggota grup pengguna dapat meletakkan file di sistem file! Faktanya, tidak ada yang mencegah pengguna normal Anda membuat file baru di sana dengan 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
Misi selesai!