Der Befehl find gibt nichts aus


1

In letzter Zeit ist das Verhalten von find-Befehlen seltsam.

[root@luna ~]# find / -name \*.sh -print
[root@luna ~]# find / -name \*.sh -print
/home/data/tools/rd/RDService/scripts/createZipArchive.sh
/home/data/tools/rd/RDService/scripts/createImgArchive.sh
find: `/home/data/lost+found': Permission denied
find: `/home/music/lost+found': Permission denied
(snip)

Ich habe find ausgeführt, aber ich habe nichts bekommen und es wurde innerhalb von 1 Sekunde beendet. Also habe ich es wieder getan. Diesmal habe ich das richtige Ergebnis erzielt. (Die Verweigerung der Berechtigung erfolgt durch NFS.)

Ich benutze Arch Linux 64bit. Die Version von find lautet wie folgt:

[root@luna ~]# type -a find
find is /usr/bin/find
[root@luna ~]# find --version | head -1
find (GNU findutils) 4.4.2
[root@luna ~]# 

Irgendeine Hilfe?

BEARBEITEN:

[root@luna ~]# find / -name \*.sh -print
[root@luna ~]# echo $?
0
[root@luna ~]# find / -name \*.sh -print
/home/data/tools/rd/RDService/scripts/createZipArchive.sh
/home/data/tools/rd/RDService/scripts/createImgArchive.sh
find: `/home/data/lost+found': Permission denied
^C
[root@luna ~]# 

BEARBEITEN:

Es scheint einmal nach dem Neustart reproduzierbar zu sein.

Ich habe diese beiden Zeilen in / etc / fstab:

nicobo:/export/music    /home/music     nfs             vers=4.2,rw,soft,bg,intr,noauto,x-systemd.automount,x-systemd.device-timeout=10 0 0
nicobo:/export/data     /home/data      nfs             vers=4.2,rw,soft,bg,intr,noauto,x-systemd.automount,x-systemd.device-timeout=10 0 0

Nachdem ich diese Zeilen auskommentiert und neu gestartet habe, ist es nicht reproduzierbar. Ich habe das Kommentarzeichen entfernt, einen Neustart durchgeführt und Folgendes erhalten:

[root@luna ~]# ls /home/data > /dev/null
[root@luna ~]# ls /home/music > /dev/null
[root@luna ~]# find / -name \*.sh -print
/home/data/tools/rd/RDService/scripts/createZipArchive.sh
/home/data/tools/rd/RDService/scripts/createImgArchive.sh
find: `/home/data/lost+found': Permission denied
^C
[root@luna ~]# 

Und ich kann es reproduzieren:

[root@luna ~]# umount /home/data
[root@luna ~]# find / -name \*.sh -print
[root@luna ~]# find / -name \*.sh -print
/home/data/tools/rd/RDService/scripts/createZipArchive.sh
/home/data/tools/rd/RDService/scripts/createImgArchive.sh
find: `/home/data/lost+found': Permission denied
^C
[root@luna ~]# umount /home/data
[root@luna ~]# find / -name \*.sh -print
[root@luna ~]# find / -name \*.sh -print
/home/data/tools/rd/RDService/scripts/createZipArchive.sh
/home/data/tools/rd/RDService/scripts/createImgArchive.sh
find: `/home/data/lost+found': Permission denied
^C
[root@luna ~]# 

Es scheint sich um ein Problem im Zusammenhang mit Autofs zu handeln.


1
Hallo, willkommen bei Super User. Ich habe die gleiche Version findauf einer anderen Distribution. Mine funktioniert wie erwartet. Führen Sie das Programm erneut aus find / -name \*.sh -printund schreiben Sie echo $?, wenn es beendet wird , um zu verstehen, ob es abgestürzt ist.
Hastur

Ich führe die gleiche findVersion auch unter ArchLinux amd64 aus. Es funktioniert perfekt auf meinem System.
MariusMatutiae

Es sieht also so aus, als wäre finddas Dateisystem beim ersten Start einfach nicht gemountet, aber beim zweiten Mal hat autofs seine Sache erledigt? Wenn ja, denke ich, funktioniert es wie erwartet.
ams

Wenn das Dateisystem nicht gemountet ist und ich darauf zugegriffen habe, sollte es gemountet und zugänglich sein, denke ich. Git-Version von Findutils wurde bereits behoben.
20.

Antworten:


0

Es scheint mit findutils 4.6.0 in Arch Linux behoben zu sein.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.