Mencari layanan yang diselesaikan sistem setelah pengungkapan kerentanan terbaru, saya datang untuk melihat perilaku yang sangat aneh dari perintah find.
root@localhost:/# find . -name "*systemd-resolved*"
./usr/share/man/man8/systemd-resolved.service.8.gz
./usr/share/man/man8/systemd-resolved.8.gz
Perintah mengembalikan 0 atau dua baris sebagai output untuk menjalankan pertama. Tetapi jika saya menjalankan perintah yang kedua kalinya saya dapatkan:
root@localhost:/# find . -name "*systemd-resolved*"
./usr/share/man/man8/systemd-resolved.service.8.gz
./usr/share/man/man8/systemd-resolved.8.gz
./lib/systemd/systemd-resolved
./lib/systemd/system/systemd-resolved.service.d
./lib/systemd/system/systemd-resolved.service
Ini berarti pertama kali, "temukan" sebenarnya tidak menemukan segalanya. Ini juga hanya terjadi satu kali. Menjalankan perintah kali berikutnya menunjukkan output yang benar. Saya memeriksa ini pada beberapa sistem lain dengan Debian 8 (jessie) diinstal. Pada mereka yang memiliki Kernel 4.9+ masalah persis ini selalu terjadi tetapi pada sistem dengan kernel 3.16 itu tidak terjadi.
Setelah sistem reboot semua ini terjadi lagi. Tetapi perilaku ini sama untuk setiap sistem individu. Itu berarti bahwa jika pengujian pada sistem tertentu mengembalikan (salah) dua baris output untuk menjalankan pertama dan mengoreksi output untuk menjalankan kedua, maka jalankan perintah pertama setelah me-reboot sistem lagi mencetak 2 baris. Jadi sistem menunjukkan perilaku yang sama setelah setiap reboot (menurut tes saya). Rincian file adalah sebagai berikut:
-rw-r--r-- 1 root root ./usr/share/man/man8/systemd-resolved.service.8.gz
lrwxrwxrwx 1 root root ./usr/share/man/man8/systemd-resolved.8.gz -> systemd-resolved.service.8.gz
-rwxr-xr-x 1 root root ./lib/systemd/systemd-resolved
drwxr-xr-x 2 root root ./lib/systemd/system/systemd-resolved.service.d
-rw-r--r-- 1 root root ./lib/systemd/system/systemd-resolved.service
EDIT: Untuk semua orang yang menyarankan masalah mungkin terkait dengan kasus khusus ini untuk file-file spesifik ini: " sistem-diselesaikan " hanyalah sebagai contoh. Ini terjadi ketika mencari kata kunci lain juga. Ini adalah contoh lain yang memberikan hasil yang salah untuk proses pertama:
root@localhost:/# find . -name "*apache*"
Tidak ada orang di sini yang dapat memeriksa masalah ini pada Debian 8 dengan kernel terbaru dari repositori backport?
/lib/systemd
dipasang? Sistem file apa itu? Jika itu terpisah mount point, apa waktu itu itu dipasang?
strace
? Di OS mana Anda mengamati perilaku yang salah? Apa yang Anda maksud dengan "mengembalikan 0 atau dua hasil seperti di atas"? Nol atau dua baris output, atau keluar kode 0 + dua baris? Apakah itu terjadi lagi setelah memulai shell baru atau me-reboot? Mungkin relevan bahwa panggilan pertama hanya mengembalikan file, sedangkan panggilan kedua mengembalikan file dan direktori.