GNU/Linux >> Belajar Linux >  >> Linux

Berikan izin eksekusi ke direktori tetapi tidak ke file

Untuk memberikan izin eksekusi (pencarian) ke direktori, tetapi tidak ke file, gunakan:

chmod -R +X .

Untuk menetapkan semua izin seperti pada contoh Anda, gunakan:

chmod -R u=rwX,g=rX,o= .

-R mengubah file dan direktori secara rekursif, sedangkan +X menyetel eksekusi/pencarian hanya jika file tersebut adalah direktori atau sudah memiliki izin eksekusi untuk beberapa pengguna. r dan w tentu saja untuk membaca dan menulis, masing-masing.

Mode X (atas x ) didokumentasikan di halaman manual tradisional dan dokumentasi info.

Itu juga harus bekerja pada sistem mirip Unix lainnya, mis. FreeBSD, NetBSD atau OpenBSD. Mengutip dari halaman manual chmod(1) The Open Group Base Specifications Edisi 7, edisi 2018:

X simbol perm diadopsi dari sistem berbasis BSD karena menyediakan fungsionalitas yang umumnya diinginkan saat melakukan rekursif (-R pilihan) modifikasi. Fungsi serupa tidak disediakan oleh find kegunaan. Versi BSD historis dari chmod , bagaimanapun, hanya mendukung X dengan operasi +; telah diperpanjang dalam volume POSIX.1-2017 ini karena juga berguna dengan op =. (Itu juga telah ditambahkan untuk op - meskipun duplikat x , dalam hal ini, karena intuitif dan lebih mudah dijelaskan.)

man 1 chmod
info '(coreutils)Conditional Executability'


Jika Anda ingin melakukannya secara rekursif, mis. , ke direktori di dalam direktori di dalam direktori, perintah yang digunakan adalah:

 find /path/to/starting/directory -type d -exec chmod +x {} \;

Ini menempatkan semua dan hanya subdirektori (-type d flag) dari direktori /path/to/starting/directory, dan kemudian melakukan perubahan izin eksekusi yang diperlukan untuk masing-masingnya. Ruang sebelum \; adalah wajib.


Linux
  1. Salin file &direktori di Linux

  2. Temukan File atau Direktori Terbesar?

  3. Linux Hapus File dan Direktori

  1. lsof:perintah tidak ditemukan

  2. unzip:perintah tidak ditemukan

  3. Buat instal, tetapi tidak ke direktori default?

  1. Facl Mengabaikan Izin "x" Tapi Hanya Pada File?

  2. Bandingkan Direktori Tapi Bukan Isi File?

  3. Cara chmod file berdasarkan hasil dari perintah find