Opsi pemasangan “dmask” dan “fmask”

22

Saya mencoba perintah ini untuk memasang secara manual:

sudo mount -t vfat /dev/sdb1 /media/external -o uid=1000,gid=1000,utf8,dmask=027,fmask=137

Saya tidak mendapatkan apa dmaskdan fmasklakukan di sini. Saya tahu mereka digunakan untuk mengatur izin, tetapi ketika saya memeriksa izin file dan folder di dalam direktori yang dipasang, mereka tidak sama dengan yang saya atur menggunakan fmaskdan dmask.

Jadi, apa yang sebenarnya mereka lakukan?

pengguna2650973
sumber

Jawaban:

41

fmaskdan dmaskmerupakan mountopsi untuk sistem file FAT , berdasarkan pada fstab.

Mereka digunakan untuk mendefinisikan izin ( umaskmengaturnya untuk file dan direktori, sementara fmaskhanya berlaku untuk file dan dmaskke direktori).

Topeng BUKAN izin file, mereka digunakan untuk mendapatkan izin yang Anda inginkan. Selain itu, topeng tidak dapat menambahkan izin, mereka hanya membatasi izin apa yang dimiliki file atau direktori.


Ini umaskadalah default untuk file dan folder, jika Anda ingin menyesuaikan file dan izin folder Anda harus menggunakan fmaskdan dmaskmenggunakan yang sama dengan umask.

Izin topeng tidak seperti kode izin oktal yang diteruskan ke chmodperintah, namun tabel ini sangat membantu memahami cara kerja izin topeng:

    0   1   2   3   4   5   6   7
r   +   +   +   +   -   -   -   -
w   +   +   -   -   +   +   -   -
x   +   -   +   -   +   -   +   -

Ini berfungsi sebagai izin oktal normal tetapi dikurangi dari 7, dan gunakan nilai absolut. misalnya jika Anda ingin mengatur izin untuk 0777Anda perlu mengaturnya 0000di umask(misalnya umask=0000), jika Anda ingin mengaturnya 0755Anda akan mengaturnya ke 0022:

  • Karakter pertama menyatakan bahwa itu merupakan izin oktal
  • Yang kedua adalah untuk pemilik
  • Yang ketiga adalah grup
  • Yang keempat adalah untuk yang lain, yaitu setiap pengguna lain

( Sumber )


man mount memberikan ini:

   umask=value
          Set the umask (the bitmask  of  the  permissions  that  are  not
          present).  The default is the umask of the current process.  The
          value is given in octal.

   dmask=value
          Set the umask applied to directories only.  The default  is  the
          umask of the current process.  The value is given in octal.

   fmask=value
          Set the umask applied to regular files only.  The default is the
          umask of the current process.  The value is given in octal.

Anda juga akan menemukan contoh dan penjelasan teknis dari Drenriza di Ubuntuforums dan tentu saja Wikipedia banyak membantu, seperti biasa.

TuanVaykadji
sumber
1
Apakah Anda mencoba mengubah digit pertama dari 0 ke yang lain? Bitmask of 1 = setuid 2 = setgid 4 = sticky.
Paul Stelian