4Jul

Bagaimana Izin File Linux Bekerja?

Jika Anda telah menggunakan Linux untuk beberapa waktu( dan bahkan OS X), Anda mungkin akan menemukan "permissions" error. Tapi apa sebenarnya mereka, dan mengapa mereka perlu atau berguna? Mari kita lihat dari dalam. Izin Pengguna

Kembali pada hari itu, komputer adalah mesin besar yang harganya sangat mahal. Untuk memanfaatkannya dengan maksimal, beberapa terminal komputer tersambung sehingga memungkinkan banyak pengguna menjalankan bisnis mereka secara bersamaan. Pengolahan dan penyimpanan data dilakukan pada mesin, sementara terminal itu sendiri tidak lebih dari sekedar alat untuk melihat dan memasukkan data. Jika Anda memikirkannya, cukup banyak bagaimana kita mengakses data pada "awan";Lihatlah sistem Amazon Cloud MP3, Gmail, dan Dropbox, dan Anda akan melihat bahwa sementara perubahan dapat dilakukan secara lokal, semuanya tersimpan dari jarak jauh.

( Gambar: Zenith Z-19 "bodoh" terminal; kredit: ajmexico)

Agar ini bisa berjalan, pengguna perorangan perlu memiliki akun. Mereka perlu memiliki bagian dari area penyimpanan yang dialokasikan untuk mereka, dan mereka perlu diizinkan menjalankan perintah dan program. Semua orang mendapat "izin pengguna" spesifik, yang menentukan apa yang dapat dan tidak dapat mereka lakukan, di mana pada sistem yang mereka lakukan dan tidak memiliki akses, dan file mana yang dapat dan tidak dapat mereka modifikasi. Setiap pengguna juga ditempatkan dalam berbagai kelompok, yang memberikan atau membatasi akses lebih jauh. Akses File

Di dunia multi-user yang aneh ini, kita telah menyiapkan batasan mengenai apa yang dapat dilakukan pengguna. Tapi bagaimana dengan apa yang mereka akses? Nah, setiap file memiliki seperangkat hak akses dan pemilik. Penunjukan pemilik, biasanya terikat saat file dibuat, menyatakan pengguna mana pengguna itu, dan hanya pengguna tersebut yang dapat mengubah izin aksesnya.

Di dunia Linux, perizinan dipecah menjadi tiga kategori: baca, tulis dan eksekusi. Akses "Baca" memungkinkan seseorang untuk melihat isi file, akses "tulis" memungkinkan seseorang untuk memodifikasi isi file, dan "mengeksekusi" memungkinkan seseorang menjalankan seperangkat instruksi, seperti naskah atau program. Masing-masing kategori ini diterapkan pada kelas yang berbeda: pengguna, grup, dan dunia."Pengguna" berarti pemilik, "grup" berarti setiap pengguna yang berada dalam grup yang sama dengan pemiliknya, dan "dunia" berarti siapa saja dan semua orang.

Folder juga dapat dibatasi dengan izin ini. Anda dapat, misalnya, mengizinkan orang lain di grup Anda untuk melihat direktori dan file di folder rumah Anda, namun tidak ada orang di luar grup Anda. Anda mungkin ingin membatasi akses "tulis" hanya pada diri Anda sendiri, kecuali jika Anda mengerjakan proyek bersama. Anda juga dapat membuat direktori bersama yang memungkinkan seseorang melihat dan memodifikasi file di folder itu.

Mengganti Izin di Ubuntu

GUI

Untuk mengubah hak akses file yang Anda miliki di Ubuntu, cukup klik kanan file dan masuk ke "Properties."

Anda dapat mengubah apakah Pemilik, Grup, atau Orang Lain dapat membaca dan menulis,membaca saja, atau tidak melakukan apapunAnda juga dapat memeriksa kotak untuk mengizinkan eksekusi file, dan ini akan memungkinkannya untuk Pemilik, Grup, dan Lainnya secara bersamaan.

Command-Line

Anda juga bisa melakukan ini melalui command-line. Pergi ke direktori yang memiliki file di dalamnya dan ketik perintah berikut untuk melihat semua file dalam daftar:

ls -al

Di samping setiap file dan direktori, Anda akan melihat bagian khusus yang menguraikan hak akses yang dimilikinya. Ini seperti ini:

-rwxrw-r-

r singkatan dari "baca," w adalah singkatan dari "write", dan x adalah singkatan dari "execute." Direktori akan dimulai dengan sebuah "d "bukan" - ".Anda juga akan memperhatikan bahwa ada 10 ruang yang memiliki nilai. Anda dapat mengabaikan yang pertama, dan kemudian ada 3 set dari 3. Set pertama adalah untuk pemilik, set kedua adalah untuk grup, dan set terakhir adalah untuk dunia.

Untuk mengubah izin file atau direktori, mari kita lihat bentuk dasar perintah chmod.

chmod [class] [operator] [permission] file

chmod [ugoa] [+ atau -] [rwx] file

Ini mungkin tampak rumit pada awalnya, tapi percayalah, ini cukup mudah. Pertama, mari kita lihat kelasnya:

  • u: Ini untuk pemiliknya.
  • g: Ini untuk grup.
  • o: Ini untuk semua yang lain.
  • a: Ini akan mengubah perizinan untuk semua hal di atas.

Selanjutnya, operator:

  • +: Tanda tambah akan menambahkan hak akses yang diikuti.
  • - Tanda minus akan menghapus hak akses yang diikuti.

Masih dengan saya? Dan bagian terakhir sama seperti saat kami memeriksa hak akses file:

  • r: Memungkinkan akses baca.
  • w: Mengizinkan akses tulis.
  • x: Mengizinkan eksekusi.

Sekarang, mari kita menggabungkannya. Katakanlah kita memiliki sebuah file bernama "todo.txt" yang memiliki hak akses berikut:

-rw-rw-r-

Artinya, pemilik dan grup bisa membaca dan menulis, dan dunia hanya bisa membaca. Kami ingin mengubah hak akses ini:

-rwxr--

Artinya, pemilik memiliki izin penuh, dan kelompok tersebut dapat membaca. Kita bisa melakukan ini dalam 3 langkah. Pertama, kami akan menambahkan izin eksekusi untuk pengguna. Kami akan menghapus izin menulis untuk grup tersebut. Kami akan menghapus izin baca untuk semua pengguna lainnya.

chmod o-r todo.txt

Kita juga bisa menggabungkannya menjadi satu perintah, seperti:

chmod u + x, g-w, o-r todo.txt

Anda dapat melihat bahwa setiap bagian dipisahkan dengan koma dan tidak ada spasi.

Berikut adalah beberapa perizinan yang berguna:

  • -rwxr-xr-x: Pemilik memiliki izin penuh, kelompok dan pengguna lain yang dapat membaca isi file dan mengeksekusi.
  • -rwxr-r-: Pemilik memiliki izin penuh, kelompok dan pengguna lainnya hanya dapat membaca file( berguna jika Anda tidak keberatan orang lain melihat file Anda.
  • -rwx--: Pemilik memiliki izin penuh, yang lainnya tidak memiliki satupun( bergunauntuk skrip pribadi)
  • -rw-rw--: Pemilik dan kelompok dapat membaca dan menulis( berguna untuk kolaborasi dengan anggota kelompok).
  • -rw-r-r-: Pemilik dapat membaca dan menulis, membuat grup dan pengguna lainnya hanya dapatbaca file( berguna untuk menyimpan file pribadi pada jaringan bersama).
  • -rw ---: Pemilik dapat membaca dan menulis, yang lainnya tidak ada( berguna untuk menyimpan file pribadi). Di beberapa hal lain yang dapat Anda lakukan denganchmod - seperti setuid dan setgid - tapi agak sedikit mendalam dan kebanyakan pengguna tidak akan benar-benar perlu menggunakannya.

    File Root atau Super User dan Sistem

    Saat ini, kita tidak selalu menjalankan sistem yangAda banyak pengguna Mengapa kita masih khawatir dengan perizinan?

    Nah, Unix danturunannya - Linux, OS X, antara lain - juga membedakan antara hal-hal yang dijalankan oleh pengguna, hal-hal yang dijalankan oleh administrator atau dengan hak istimewa admin, dan hal-hal yang dijalankan oleh sistem itu sendiri. Dengan demikian, hal-hal yang tidak terpisahkan bagi sistem membutuhkan hak istimewa admin untuk diubah atau diakses. Dengan cara ini, Anda tidak mengacaukan sesuatu secara tidak sengaja.

    Di Ubuntu, untuk membuat perubahan pada file sistem Anda menggunakan "sudo" atau "gksudo" untuk mendapatkan hak istimewa Administrator yang setara. Di distro lain, Anda beralih ke "root" atau "super-user" yang secara efektif melakukan hal yang sama sampai Anda log out.

    Sadarilah bahwa dalam kedua situasi ini, mengubah hak akses file dapat menyebabkan program tidak berjalan, mengubah kepemilikan file secara tidak sengaja menjadi pengguna root( bukan pemiliknya), dan membuat sistem kurang aman( dengan memberi lebih banyak izin).Dengan demikian, sebaiknya Anda tidak mengubah hak akses file - terutama file sistem - kecuali jika diperlukan atau Anda tahu apa yang Anda lakukan. Perizinan berkas

    tersedia untuk menyediakan sistem keamanan dasar di antara pengguna. Mempelajari bagaimana cara kerjanya dapat membantu Anda mengatur pembagian dasar di lingkungan multi-pengguna, melindungi file "publik", dan memberi tahu petunjuk kapan ada yang salah dengan kepemilikan file sistem.

    Pikirkan Anda bisa menjelaskan semuanya dengan lebih mudah? Apakah ada koreksi? Ingin mengenang masa lalu? Istirahatlah dan letakkan pikiran Anda di dalam komentar.