Bagaimana peramban internet saya dapat menulis file ke dalam file "Unduhan" saya jika izin default tidak memungkinkan untuk "menulis"?

14

Di terminal, saya menggunakan perintah ini:

stat Downloads

Disebutkan bahwa izin untuk folder unduhan saya adalah "drwxr-xr-x"

Bukankah ini berarti hanya admin dan pemilik yang dapat mengedit folder? Bagaimana browser mengunduh sesuatu dan meletakkannya di folder jika tidak memiliki izin, atau apakah Ubuntu mendeteksi bahwa Anda mengizinkan browser untuk melakukannya?

Raffat
sumber
4
Saya menduga bahwa jika Anda masuk ls -ld Downloads maka Anda akan menemukan bahwa Anda sebenarnya adalah pemilik folder Unduhan Anda. Jadi, ketika Anda menjalankan browser Anda, itu adalah Anda, sebagai pemilik direktori, yang mencoba untuk menempatkan sesuatu ke dalam direktori itu.
Charles Green

Jawaban:

20

Program dijalankan dengan hak istimewa pengguna yang memintanya.
Jadi saat Anda meluncurkan browser, proses browser memiliki hak untuk membaca, memodifikasi, dan mengeksekusi file.

Dan karena Anda adalah pemilik folder Unduhan Anda, akun pengguna Anda memiliki (biasanya secara default) hak read / writus / e xecute penuh . Karena itu browser Anda juga memilikinya.

Untuk memperjelas output stat(d rwx r-x r-x) :

  • Huruf pertama (di sini d:) menjelaskan jenis objek sistem file yang Anda periksa. dberarti Anda menunjukkan izin direktori. Jika Anda memeriksa file, Anda akan mendapatkan file -. Ada kemungkinan lain juga, seperti ltautan. Lebih lanjut ada (menurut komentar @ Atsby) buntuk perangkat blok, cuntuk perangkat karakter, puntuk pipa dan mungkin bahkan lebih ...
    Lihat * untuk catatan tentang izin direktori!
  • Tiga huruf pertama rwxmerupakan izin pemilik . Surat berarti bahwa jenis akses masing-masing diberikan, "-" berarti ditolak. -> akses penuh
  • Tiga huruf kedua r-xmewakili izin yang dimiliki pengguna yang merupakan anggota grup pemilik . Itu sama "rwx" -format seperti di atas. -> hanya membaca dan menjalankan izin, tidak ada tulisan
  • Tiga huruf terakhir r-xmewakili izin pengguna lain yang bukan pemilik itu sendiri dan bukan anggota grup pemilik. Masih sama "rwx" -format. -> juga hanya membaca dan mengeksekusi izin, tidak ada tulisan

* Izin direktori:
Perhatikan bahwa izin direktori memiliki arti yang berbeda dari izin file. Untuk direktori ...
baca akses (r) berarti daftar file ( lsperintah) ,
akses tulis (w) berarti mengubah konten direktori (membuat, menghapus, mengganti nama file) dan
menjalankan akses (x) berarti memasuki direktori ( cdperintah atau pembukaan dengan manajer file)


Izin eksekusi lanjutan:

Kadang-kadang Anda menemukan S, s, Tatau tdi mana Anda akan mengharapkan x.

Ada izin SUID (Set User ID) dan SGID (Set Group ID) yang menggantikan normal xjika file harus selalu dieksekusi dengan izin pemiliknya (SUID) atau grup pemiliknya (SGID). Untuk SUID, xizin pengguna (blok pertama) diganti, untuk SGID, xizin grup (blok kedua) diganti. Huruf kapital Sberarti a -(izin ditolak) sementara huruf kecil ssama dengan x(izin diberikan).

Jika xblok ketiga (hak akses orang lain) akan diganti dengan T/ t, ini berarti bahwa 'Sticky Bit' diatur. Saat ini, sebagian besar digunakan untuk mencegah penghapusan file oleh pengguna non-pemilik yang memiliki izin menulis. Sekali lagi, huruf kapital Tsama dengan a -(tidak ada izin eksekusi untuk orang lain) tanpa "Sticky Bit", sementara huruf kecil tberarti akses eksekusi yang diberikan ( x) untuk orang lain.


Notasi oktal:

Izin juga dapat diwakili oleh 3-4 digit (nilai 0-8), yang disebut notasi oktal.
Biasanya Anda memiliki 3 digit atau 4 digit dengan digit pertama ditetapkan ke 0 (misalnya 755atau 0755).

  • Digit pertama (yang dapat dihilangkan jika angka 0) mewakili bendera izin tingkat lanjut. Nilai bendera: SUID = 4, SGID = 2, Sticky = 1.
  • Digit kedua mewakili keadaan bendera izin pemilik (rwx; blok izin pertama dalam pemformatan string). Nilai panji: r = 4, w = 2, x = 1.
  • Digit ketiga menunjukkan status dari bendera izin grup pemilik (rwx; blok izin kedua dalam pemformatan string). Nilai panji: r = 4, w = 2, x = 1.
  • Digit keempat mewakili status semua bendera izin lainnya (rwx; blok izin ketiga dalam pemformatan string). Nilai panji: r = 4, w = 2, x = 1.

Untuk menghitung nilai digit, jumlahkan nilai flag dari semua flag yang ditetapkan. Contoh: rwx = 4 + 2 + 1 = 7, rx = 4 + 0 + 1 = 5


Sumber dan referensi tambahan:
http://www.zzee.com/solutions/linux-permissions.shtml
http://www.informit.com/articles/article.aspx?p=1822622&seqNum=6
Silakan kunjungi tautan tersebut untuk detail lebih lanjut , terutama tentang izin lanjutan.

Komandan Byte
sumber
1
+1, dartinya directory!
kos
@kos Terima kasih, saya akan menambahkan ini. Apa yang akan kemungkinan lain alih-alih "d" di tempat ini?
Byte Commander
Tidak ada, jika itu bukan direktori, itu memang sebuah file, jadi Anda selalu memiliki salah satu datau-
kos
3
@kos ada kemungkinan lain, misalnya luntuk tautan lunak, buntuk perangkat blok, cuntuk perangkat karakter, puntuk pipa ... itu hanya yang saya tahu, mungkin ada lebih banyak
Atsby
@Atsby Anda benar, saya berbicara tentang lskapan memang OP digunakanstat
kos