Saya perlu mengizinkan pengguna non-root untuk me-mount / melepas perangkat. Saya seorang noob total ketika datang ke UNIX, jadi tolong bodohkan untuk saya.
Saya telah mencari di seluruh interwebz untuk menemukan jawaban dan tampaknya semua orang memberikan jawaban yang sama, yaitu memodifikasi /etc/fstab
untuk memasukkan perangkat itu dengan user
opsi (atau users
, mencoba keduanya). Saya melakukan itu dan masih dikatakan mount: only root can do that
.
Berikut adalah isi dari fstab saya:
# / etc / fstab: informasi sistem file statis. # # Gunakan 'vol_id --uuid' untuk mencetak pengidentifikasi unik universal untuk a # perangkat; ini dapat digunakan dengan UUID = sebagai cara yang lebih kuat untuk memberi nama perangkat # itu berfungsi bahkan jika disk ditambahkan dan dihapus. Lihat fstab (5). # # proc / proc default proc 0 0 # / ada di / dev / mapper / minicc-root selama instalasi UUID = 1a69f02a-a049-4411-8c57-ff4ebd8bb933 / ext3 relatime, errors = remount-ro 0 1 # / boot pada / dev / sda5 selama instalasi UUID = 038498fe-1267-44c4-8788-e1354d71faf5 / boot ext2 relatime 0 2 # swap ada di / dev / mapper / minicc-swap_1 saat instalasi UUID = 0bb583aa-84a8-43ef-98c4-c6cb25d20715 tidak ada swap sw 0 0 / dev / scd0 / media / cdrom0 udf, pengguna iso9660, noauto, exec, utf8 0 0 / dev / scd0 / media / floppy0 auto rw, pengguna, noauto, exec, utf8 0 0 / dev / sdb1 / mnt / sdcard otomatis, pengguna, rw, exec 0 0
Partisi drive jempol saya muncul sebagai /dev/sdb1
. Saya cukup yakin saya fstab
sudah diatur OK, tetapi semua orang di posting lain tampaknya gagal menyebutkan bagaimana mereka benar-benar memanggil mount
perintah setelah entri ini ada di file fstab. Saya pikir di sinilah masalah saya. Perintah yang saya gunakan untuk memasang drive adalah:
$ mount /dev/sdb1 /mnt/sdcard
/bin/mount
dimiliki oleh root dan berada di grup root dan memiliki 4755 izin.
/bin/umount
dimiliki oleh root dan berada di grup root dan memiliki 4755 izin.
/mnt/sdcard
dimiliki oleh saya dan berada di salah satu grup saya dan memiliki 0755 izin.
Perintah mount saya berfungsi dengan baik jika saya menggunakan sudo
, tetapi saya harus dapat melakukan ini tanpa sudo
(harus dapat melakukannya dari skrip PHP menggunakan shell_exec
). Ada saran?
Jawaban:
Saat memasang volume sebagai pengguna biasa, Anda hanya perlu memberikan nama titik pemasangan, yaitu:
The
/etc/fstab
file menyediakan perangkat yang akan digunakan.sumber
fstab
akan memasok titik pemasangan.Coba ubah kepemilikan
/dev/sdb1
menjadi root:dan
fstab
jalur Anda keDan lakukan
mount
seperti ini:sumber
Saya pikir opsi otomatis melakukan kekacauan. Ganti saja dengan noauto.
sumber