Asumsikan topeng default 0666. umask
0022 akan membuat topeng baru 0644 (0666-0022 = 0644) yang berarti bahwa grup dan orang lain telah membaca (tidak menulis atau mengeksekusi) izin.
Digit "ekstra" (angka pertama = 0), menentukan bahwa tidak ada mode khusus.
Jika mode dimulai dengan angka maka akan ditafsirkan sebagai oktal jika tidak dimaksudkan untuk menjadi simbolis.
0 adalah digit, seperti 1 (untuk bit yang lengket) atau 6 (untuk SGID). Perintah seperti chmod
dapat dipanggil dengan metode lain, seperti di chmod ug+rw mydir
mana Anda akan menambahkan izin baca dan tulis ke pengguna dan grup. Perhatikan bahwa mode dalam kasus ini (ug + rw) tidak dimulai dengan digit, sehingga tidak akan diartikan sebagai oktal tetapi lebih simbolis.
Lihat en.wikipedia.org/wiki/Chmod#Symbolic_examples untuk simbolik serta www.lifeaftercoffee.com/2007/03/20/special-permission-modes-in-linux-and-unix/ untuk sedikit tentang mode khusus.
Saya tidak tahu bahwa Anda akan membuka kedok bit pertama umask
, tetapi secara teknis Anda bisa. Ini akan menjelaskan mengapa Anda hampir selalu melihatnya sebagai nol.
Kredit ke pinkfloydx33
Digit pertama dari mask berkaitan dengan izin khusus yang tidak begitu pas dengan pemilik / grup / model lainnya. Ketika empat digit disediakan untuk izin file, yang pertama merujuk pada nilai-nilai khusus:
4000 = SUID
2000 = SGID
1000 = sticky bit
Bit SUID, kependekan dari set-user-ID, menyebabkan program yang dapat dieksekusi dijalankan dengan id pengguna yang efektif (uid) dari pemilik - dengan kata lain, tidak peduli siapa yang mengeksekusinya, program dijalankan dengan hak-hak pemilik. Ini biasanya terlihat dalam program yang melakukan hal-hal yang memerlukan hak akses root, tetapi dimaksudkan untuk dijalankan oleh pengguna normal:passwd
adalah salah satu contohnya.
Bit SGID, kependekan dari set-group-ID, sangat mirip, tetapi berjalan dengan id grup (gid) pemilik yang efektif .
Bit lengket sedikit lebih rumit, jika Anda ingin informasi lebih lanjut tentang itu, Anda dapat membaca halaman manualnya sticky
.
Bit-bit ini juga dapat digunakan dengan direktori, tetapi artinya berubah.
Saya tidak percaya Anda dapat mengaturnya umask
agar Anda dapat mengaktifkan bit tambahan ini secara default, tetapi Anda mungkin tidak akan pernah mau melakukannya.
Kredit ke pengguna470379
man 2 umask
(panggilan sistem yang sesuai) "hanya bit izin filemask
yang digunakan". Dalambash
, umask 1000 menghasilkan kesalahan: "angka oktal di luar jangkauan". Jadi mengapa 0 ekstra? Saya pikir itu hanya untuk menunjukkan bahwa angka tersebut dalam oktal.