GNU/Linux >> Linux Esercitazione >  >> Linux

ls si blocca per una determinata directory

Soluzione 1:

Esegui strace ls /var/www/ e vedi a cosa si attacca. È certamente legato all'I/O -- questo è il D stato nel tuo ps output significa (e poiché kill non aiuta, è una delle chiamate di sistema I/O ininterrotte). La maggior parte dei blocchi coinvolge un server NFS che è andato a rotoli, ma basato sul tuo df questo non è il caso qui. Un rapido controllo di dmesg per qualsiasi cosa relativa a filesystem o dischi potrebbe valere la pena, per ogni evenienza.

Soluzione 2:

Ho avuto un problema con gli stessi sintomi. Si è scoperto che avevo un collegamento simbolico in quella directory a un montaggio SMB su GVFS.

lrwxrwxrwx  1 alex alex        45 Sep 16  2011 foo -> /home/alex/.gvfs/bar on foo/data/

Normalmente ls verrebbe completato immediatamente indipendentemente dal fatto che la condivisione fosse montata o meno. Ma in questo caso avevo sospeso e ripreso la macchina, e la montatura in generale funzionava male. Il rimontaggio della condivisione ha risolto il problema.

Soluzione 3:

Nella speranza che questo possa essere utile, ho avuto i sintomi di cui sopra causati dall'uso di docker e docker compose con il driver AUFS in Ubuntu 14.04. ls <dir> era sospeso e strace ls <dir> ha mostrato che era appeso al getdents chiamata. L'arresto di tutti i contenitori in esecuzione mi ha permesso di iniziare a utilizzare l'unità come previsto.

Soluzione 4:

Stavo riscontrando lo stesso problema.

L'inserimento di una directory va bene, l'elenco si blocca, trova i lavori, la scheda completa si blocca e alcune cartelle sotto fai opera. Molto strano.

Leggere questo thread su Server Fault mi ha portato su un percorso logico verso la soluzione.

Avendo a che fare con il NAS, e il NAS viene comunemente indicato come "automount" mi ha fatto capire che di recente avevo cambiato il mio fstab in "automount" di alcune unità USB se erano presenti, ma continuavo normalmente quando non lo erano.

Ho quindi proceduto come segue:

  1. Smonta la partizione contenente la directory delinquente.
  2. Modifica fstab e converti tutti gli automount in commentati o senza auto.
  3. Ricarica SystemD se ce l'hai:systemctl --system daemon-reload
  4. mount -a

Prova ad entrare di nuovo nella directory e senti quella calda e confusa sensazione di aver risolto il problema.


Linux
  1. Nessuna pagina man per il comando cd

  2. la password di root non funziona per su nel terminale

  3. Il demone di trasmissione non rileva la directory di controllo

  4. È possibile nascondere oggetti smarriti e trovati?

  5. L'installazione di postfix si blocca alla schermata di configurazione di Postfix?

Crea directory home per utenti esistenti in Linux

Diff -r Solo per determinati tipi di file?

Spiegazione della struttura della directory di Linux per i principianti

Comando shell per ottenere l'indirizzo IP?

Come rimuovere i file ._ in una directory? Ubuntu

Interfaccia Web per la gestione LDAP