Berbeda UID / GID saat menggunakan drive USB yang diformat dengan ext4 dengan komputer lain

11

Masalah menggunakan sistem file seperti ext4pada stik USB atau kartu memori adalah ketika ia dipasang ke sistem lain, UID / GID disk mungkin tidak ada.

Bisakah ini diperbaiki dengan opsi pemasangan?

Marc
sumber
Pertanyaan serupa: askubuntu.com/questions/12009/...
jofel

Jawaban:

11

Saya berasumsi Anda berharap untuk menemukan yang setara dengan uid=Ndan gid=Nopsi yang didukung oleh beberapa filesystem lain yang mountdiketahui perintah Linux . Maaf, tetapi tidak, ext4 tidak memiliki opsi itu.

Filesystem lain ini memiliki opsi seperti itu untuk memberikan izin ke file untuk filesystem yang mungkin tidak memiliki izin POSIX yang berguna. Anda mencari untuk mengambil izin - atau setidaknya, menugaskan kembali mereka - yang merupakan ide buruk dari sudut pandang keamanan, yang tidak diragukan lagi mengapa opsi ini tidak ada.

Ketika Anda menggunakan sistem file seperti ext4 pada media yang dapat dipindahkan, Anda mengatakan bahwa Anda peduli tentang hal-hal seperti izin POSIX. Itu berarti Anda harus mengambil langkah-langkah yang sama untuk menyinkronkan ID pengguna dan grup seperti yang Anda lakukan untuk, katakanlah, NFS.

Jika Anda benar-benar tidak peduli tentang izin, mungkin ada sistem file yang lebih tepat untuk situasi Anda.

Saya mencoba UDF sebagai kandidat untuk sistem file seperti itu setelah komentar di bawah, tetapi sayangnya, itu tidak akan berfungsi:

  • Jika Anda membuat sistem file UDF pada satu kotak Linux, menambahkan file ke dalamnya, mengubah izinnya, dan memasangnya di kotak Linux lain, itu akan mematuhi izin yang ditemukannya di sana, bahkan jika Anda memberi uid=N,gid=N. Anda harus menyinkronkan UID dan GID di sini, seperti halnya NFS.

  • Mac OS X berperilaku seperti yang diharapkan: ia percaya ia memiliki segalanya pada sistem file UDF yang dibuat pada kotak Linux. Tapi, tambahkan file ke disk, dan itu akan mengatur UID dan GID file, yang kemudian dipatuhi oleh kotak Linux.

  • Jika Anda kemudian mencoba untuk me-mount sistem file itu pada kotak FreeBSD, itu berteriak invalid argument. Saya berasumsi ini karena devs kernel tidak menyadari UDF dapat muncul di media non-optik, hanya karena saya tidak dapat menemukan laporan keberhasilan online. Mungkin ada mantra sihir yang saya lewatkan.

  • Dilaporkan mungkin untuk mendapatkan hard drive UDF untuk bekerja di Windows, tetapi sangat pilih-pilih tentang cara itu dibuat. Jika Anda ingin ini berfungsi, mungkin yang terbaik adalah memformat dari dalam Windows. Dari baris perintah:

    format /fs:udf x:

    Jangan gunakan /q: yang menciptakan sistem file yang cenderung untuk me-mount pada OS lain.

    Perhatikan bahwa UDF hanya baca / tulis di Vista dan yang lebih baru. XP akan memasang hard drive UDF yang dibuat di Vista, tetapi tidak akan dapat menulisnya.

Beberapa bentuk FAT mungkin merupakan opsi terbaik di sini. Jika Anda menghindarinya karena batas ukuran file FAT32 4 GB, Anda mungkin ingin melihat exFAT . Ada versi FUSE gratis yang tersedia.

NTFS mungkin juga berfungsi, jika Anda menggunakan distro Linux yang cukup baru yang menyertakan dukungan baca / tulis yang andal untuk NTFS.

Warren Young
sumber
Saya melakukan beberapa perbaikan pada opsi-opsi ini pada udf beberapa waktu lalu dan menambahkannya ke ext [234] sudah ada dalam daftar todo saya untuk sementara waktu. Tampaknya konyol bahwa Anda dapat melakukan ini dengan udf, dan mac dapat melakukannya dengan hfsplus mereka, tetapi linux masih tidak dapat dengan fs yang disukai.
psusi
3
Sebenarnya UDF memang memiliki izin posix. Jika Anda tidak menentukan opsi uid / gid, ia menyimpan kepemilikan dan izin seperti ext [234] atau posix fs lainnya. Jika Anda menentukan id, defaultnya adalah menerjemahkan id itu menjadi -1 saat menulis ke disk, dan menerjemahkan -1 ke id itu ketika membaca dari disk. Ini memudahkan pengguna normal untuk memindahkan file antar sistem di mana id mereka berbeda. Beberapa tahun yang lalu saya menambahkan "abaikan" sebagai nilai untuk menerapkan id selalu, bukan hanya ketika itu adalah -1 pada disk, dan "lupa" selalu menulis -1 ke disk, apakah pemiliknya cocok dengan id default atau tidak.
psusi
Saya menduga alasan mereka mengizinkan ini untuk UDF adalah bahwa UDF biasanya digunakan dengan CD-RW dan DVD. Itu menjadikannya sistem file "mobile", jadi menerapkan izin kepemilikan yang hilang akan menjadi kebutuhan bersama. Selain itu, mungkin jarang melihat sistem file UDF yang mencakup izin pengguna dan grup. Saya masih berpikir menambahkan opsi seperti itu ke ext4 akan menjadi lubang keamanan potensial. Tetapi, jika itu tidak masalah bagi Anda, mungkin UDF adalah alternatif yang baik untuk ext4 dalam kasus ini.
Warren Young
Jadi UDF adalah solusi hebat untuk perangkat yang akan digunakan di antara sistem operasi yang berbeda, bukan vfat.
Marc
1
Satu-satunya keamanan yang ada untuk media lepasan adalah keamanan fisik, atau enkripsi. Tidak masalah apa pun yang Anda gunakan, jika Anda memberikan saya sebuah disk, saya selalu dapat memasangnya dan mengubah izinnya. Mampu menimpanya secara otomatis hanyalah masalah kenyamanan.
psusi