GNU/Linux >> Belajar Linux >  >> Linux

Sintaks File Konfigurasi Loggedfs?

Apa sintaks dari file konfigurasi LoggedFS?


Dokumentasi resmi hanya memiliki petunjuk penggunaan untuk loggedfs perintah dan contoh file konfigurasi. Oke, ini XML, tapi apa saja kemungkinan tag dan atribut dan apa artinya?

Jawaban yang Diterima:

Saya membuka Config.cpp , file yang bertanggung jawab untuk menguraikan konfigurasi. Konfigurasi contoh sebenarnya cukup bagus untuk menangkap opsi yang tersedia — jumlahnya tidak banyak

Ketika saya mengacu pada "contoh keluaran" di bawah, saya berbicara tentang baris ini (diambil secara acak dari halaman contoh):

17:29:35 (src/loggedfs.cpp:136) getattr /var/ {SUCCESS} [ pid = 8700 kded [kdeinit] uid = 1000 ]

Tag akarnya adalah <loggedFS> . Ini memiliki dua atribut opsional:

  • logEnabled adalah sebuah string — “true” artinya ia harus benar-benar menampilkan info log; hal lain menonaktifkan semua logging. Defaultnya adalah “true”, karena itulah inti dari program ini
  • printProcessName adalah string — “true” berarti keluaran log akan menyertakan nama proses, yang lainnya tidak. Default ke "benar". Dalam contoh keluaran, kded [kdeinit] adalah nama proses

Satu-satunya node anak yang diperhatikan adalah <include> dan <exclude> . Dalam contoh mereka mengelompokkannya di bawah <includes> dan <excludes> blok, tetapi itu diabaikan oleh parser (seperti halnya node lain kecuali <include> dan <exclude> ).

Tentu saja, <include> aturan menyebabkannya menampilkan baris log jika cocok, sementara <exclude> garis menyebabkan tidak. Jika terjadi tumpang tindih, <exclude> menimpa <include> . Biasanya Anda memerlukan setidaknya satu <include> aturan untuk mencocokkan acara yang akan dicatat, tetapi pengecualian adalah jika ada 0 <include> aturan — maka semua peristiwa dicatat, bahkan jika ada <exclude> . yang cocok garis .

Keduanya <include> dan <exclude> ambil atribut yang sama:

  • ekstensi adalah ekspresi reguler yang dicocokkan dengan jalur absolut file yang diakses/dimodifikasi/apa pun (extension adalah nama yang agak buruk, tapi saya rasa itu adalah penggunaan umum). Misalnya, jika Anda touch /mnt/loggedfs/some/file , ekspresi reguler dalam extension perlu (sebagian) cocok dengan /mnt/loggedfs/some/file
  • uid adalah string yang berisi bilangan bulat atau * . Aturan hanya cocok dengan operasi yang diberikan jika pemilik proses yang menyebabkan operasi memiliki ID pengguna yang ditentukan (* secara alami berarti semua ID pengguna cocok). Dalam contoh keluaran, 1000 adalah uid
  • tindakan adalah jenis operasi spesifik yang dilakukan pada sistem file. Dalam contoh keluaran, getattr adalah tindakan. Tindakan yang mungkin dilakukan adalah:
    • akses
    • chmod
    • chown
    • getattr
    • tautan
    • mkdir
    • mkfifo
    • mknod
    • buka
    • buka-baca saja
    • buka-baca-baca
    • buka-tulis saja
    • baca
    • bacadir
    • tautan baca
    • ganti nama
    • rmdir
    • statf
    • symlink
    • memotong
    • batalkan tautan
    • waktu
    • peralatan
    • tulis
  • ganti nama adalah ekspresi reguler. Jika kode pengembalian dari operasi sistem file aktual yang dilakukan oleh LoggedFS adalah 0, ekspresi reguler dicocokkan dengan string SUCCESS . Kode pengembalian bukan nol menyebabkannya cocok dengan FAILURE . Itu adalah satu-satunya nilai yang mungkin, jadi kemungkinan besar Anda akan melakukan hardcode SUCCESS , FAILURE , atau gunakan .* jika Anda ingin keduanya. Pada contoh keluaran, SUCCESS adalah retname

Berbeda dengan <loggedFS> atribut, ini tidak memiliki default. Selain itu, meskipun parser akan mengenali atribut yang tidak diketahui dan kesalahan, parser tidak mendeteksi atribut yang hilang, jadi jika Anda lupa atribut, ia akan menggunakan memori yang tidak diinisialisasi.

Terkait:Linux – Temukan direktori yang berisi lebih dari satu file dengan ekstensi yang sama?
Linux
  1. Pengalihan Input/Output di Linux/Unix

  2. Redirect Dan Output Pipa?

  3. Bagaimana cara menambahkan output ke file?

  1. Cara Menyimpan Output Perintah ke File di Linux

  2. File Konfigurasi Basis Data Magento 2

  3. Contoh sederhana konfigurasi auditd?

  1. Bagaimana cara memeriksa sintaks sudoers

  2. Bagaimana Cara Menampilkan Penyorotan Sintaks Pada File?

  3. Bagaimana Cara Mengarahkan Output Program Ke File Zip??