GNU/Linux >> Belajar Linux >  >> Linux

Cara Mengubah Izin File Secara Rekursif dengan chmod di Linux

Pendahuluan

Sistem multi-pengguna, seperti Linux, memerlukan pengaturan dan pengelolaan izin file yang memastikan hanya pengguna yang berwenang yang memiliki akses ke file yang seharusnya.

Jika Anda perlu mengubah izin file, gunakan chmod memerintah. Ini juga memungkinkan untuk mengubah izin file secara rekursif untuk mengonfigurasi banyak file dan sub-direktori menggunakan satu perintah.

Dalam tutorial ini, Anda akan mempelajari cara menggunakan chmod secara rekursif dan mengubah izin file di Linux.

Prasyarat

  • Jendela baris perintah / terminal (Ctrl +Alt +B atau Ctrl +Alt+F2 )
  • Akun pengguna dengan sudo hak istimewa (opsional)
  • Sistem Linux

Periksa Izin File

Jika Anda perlu memeriksa izin file di direktori kerja, gunakan perintah:

ls –l

Output mencantumkan izin semua file dalam direktori.

Misalnya, Contoh direktori berisi tiga file (test1.txt , test2.txt , dan test3.txt ) dengan izin yang sama (-rw-rw-r– ).

Izin file yang tercantum di atas memberi tahu kita hal berikut:

  • Si pemilik telah membaca dan menulis hak istimewa
  • Grup pemilik telah membaca dan menulis hak istimewa
  • Pengguna lain telah membaca hak istimewa

Ubah Izin Secara Rekursif

Adalah umum untuk menggunakan chmod dasar perintah untuk mengubah izin satu file. Namun, Anda mungkin perlu mengubah izin secara rekursif untuk semua file dalam direktori.

Dalam kasus seperti itu, chmod rekursif opsi (-R atau --recursive ) menetapkan izin untuk direktori (dan file yang dikandungnya).

Sintaks untuk mengubah izin file secara rekursif adalah:

chmod -R [permission] [directory]

Oleh karena itu, untuk menyetel 755 izin untuk semua file di Contoh direktori, Anda akan mengetik:

sudo chmod -R 755 Example

Perintah tersebut memberikan baca, tulis, dan jalankan hak istimewa kepada pemiliknya (7 ) dan membaca dan mengeksekusi akses ke orang lain (55 ).

Ubah Izin Dengan Perintah find

Untuk menetapkan izin terpisah ke direktori dan file, Anda dapat menggunakan find perintah.

Sintaks dasarnya mencakup penggunaan find perintah untuk mencari file/direktori dan kemudian meneruskannya ke chmod untuk mengatur izin:

sudo find [directory] -type [d/f] -exec chmod [privilege] {} \;
  • Ganti [directory] dengan jalur direktori yang menyimpan file dan subdirektori yang ingin Anda konfigurasi.
  • Tentukan apakah itu mencari direktori -type d atau file -type f .
  • Setel file [privilege] dengan chmod perintah menggunakan mode numerik atau simbolis.

Hindari menetapkan hak eksekusi ke file. Pengaturan umum akan mencakup menjalankan perintah berikut:

sudo find Example -type d -exec chmod 755 {} \;
sudo find Example -type f -exec chmod 644 {} \;

Dalam contoh ini, direktori memiliki 755 (u=rwx,go=rx ) hak istimewa, sedangkan file memiliki hak istimewa 644 (u=rw,go=r).

Anda dapat memeriksa untuk memverifikasi direktori dan file memiliki setelan izin yang berbeda dengan berpindah ke Contoh direktori (cd Example ) dan mencantumkan konten (ls -l ). Outputnya harus mirip dengan yang di bawah ini:

Ubah Izin File Tertentu Secara Rekursif

Menggabungkan find perintah dengan chmod juga dapat digunakan untuk mengubah izin file dengan tipe tertentu.

Sintaks perintah untuk mengubah izin jenis file tertentu dalam direktori adalah:

find [directory] -name "*.[filename_extension]" -exec chmod [privilege] {} \;

Misalnya, untuk membuat semua .sh file di direktori saat ini dapat dieksekusi , Anda akan menggunakan:

find . -name "*.sh" -exec chmod +x {} \;

Linux
  1. Cara Melihat atau Mengubah ACL di File Linux

  2. Izin File di Linux dengan Contoh

  3. Cara Menggunakan Perintah chmod (Ubah Mode) di Linux

  1. Cara Menemukan File Di Linux Di Semua Direktori Secara Rekursif

  2. Izin Linux:Pengantar chmod

  3. Linux chmod and chown – Cara Mengubah Izin dan Kepemilikan File di Linux

  1. Bagaimana Cara Mengubah Izin Pada Satu File?

  2. Pelajari cara mengubah izin untuk file dan folder

  3. Bagaimana cara menggunakan chmod untuk mengubah izin file?