- Ladění Javy je odlišný šálek čaje, ale jednoduchý trik na Javu od Oraclu a některé jiné JVM je, že stále můžete použít `kill -3 <pid>` a výpis zásobníku a haldy (včetně obecnějších detailů z **garbage collectoru**, které mohou být nesmírně informativní) bude zapsán do stderr/logs. Nástroje JDK jako `jps`, `jstat`, `jstack` a `jmap` jsou také užitečné, avšak [SJK tools](https://github.com/aragozin/jvm-tools) jsou více pokročilé.
- Použijte `mtr` jako lepší `traceroute` pro identifikování potíží se sítí.
- Použijte [`mtr`](http://www.bitwizard.nl/mtr/) jako lepší `traceroute` pro identifikování potíží se sítí.
- Při zjištování proč je disk plný, `ncdu` šetří čas oproti obvyklým příkazům jako `du /sh *`.
- Při zjištování proč je disk plný, [`ncdu`](https://dev.yorhel.nl/ncdu) šetří čas oproti obvyklým příkazům jako `du /sh *`.
- Ke zjištění, který socket nebo proces zahlcuje pásmo, zkuste `iftop` nebo `nethogs`.
- Ke zjištění, který socket nebo proces zahlcuje pásmo, zkuste [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) nebo [`nethogs`](https://github.com/raboof/nethogs).
- Nástroj `ab` (přibalený k Apachi) je užitečný pro rychlé a hrubé zkontrolování výkonosti webového serveru. Komplexnější měření umožňuje `siege`.
- Pro důslednější síťové ladění, `wireshark`, `tshark` nebo `ngrep` jsou to pravé.
- Pro důslednější síťové ladění, [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html) nebo [`ngrep`](http://ngrep.sourceforge.net/) jsou to pravé.
- Nezapomínejte na `strace` a `ltrace`. Mohou být nápomocné zejména pokud některý program selhává, zasekává se nebo padá a nevíte proč nebo pokud chcete mít obecnou představu o výkonu. Myslete na přepínač profilingu (`-c`) a schopnost připnout se k běžícímu procesu (`-p`).
@ -280,7 +280,7 @@ Příklady:
- Používejte `/proc`. Je úžasně nápomocný v okamžicích, kdy ladíte živé problémy. Příklady: /proc/cpuinfo`, `/proc/meminfo`, `/proc/cmdline`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps` (kde `xxx` je id nebo pid procesu.).
- Když zjišťujete proč se něco v minulosti pokazilo, `sar` může být nedocenitelný. Ukazuje historické statistiky CPU, paměti, sítě, atd.
- Když zjišťujete proč se něco v minulosti pokazilo, [`sar`](http://sebastien.godard.pagesperso-orange.fr/) může být nedocenitelný. Ukazuje historické statistiky CPU, paměti, sítě, atd.
- Pro hlubší systémovou a výkonostní analýzu se podívejte na `stap`([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](https://en.wikipedia.org/wiki/Perf_(Linux)), a [`sysdig`](https://github.com/draios/sysdig).
@ -428,15 +428,15 @@ Pár příkladů na spojování příkazů:
- `strace`: ladění systému
- `mtr`: vylepšení traceroute pro síťové ladění
- [`mtr`](http://www.bitwizard.nl/mtr/): vylepšení traceroute pro síťové ladění
- `cssh`: vizuální souběžný shell
- `rsync`: synchronizuje soubory a adresáře přes SSH nebo v lokálním systému souborů
- `wireshark` a `tshark`: zachytávání packetů a síťové ladění
- [`wireshark`](https://wireshark.org/) a [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): zachytávání packetů a síťové ladění
- `ngrep`: grep pro síťovou vrstvu
- [`ngrep`](http://ngrep.sourceforge.net/): grep pro síťovou vrstvu
- `host` a `dig`: DNS vyhledávání
@ -460,9 +460,9 @@ Pár příkladů na spojování příkazů:
- `id`: informace o identitě uživatele/skupiny
- `sar`: historické systémové statistiky
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/): historické systémové statistiky
- `iftop` nebo `nethogs`: využití sítě pro proces nebo socket
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) nebo [`nethogs`](https://github.com/raboof/nethogs): využití sítě pro proces nebo socket
- Η αποσφαλμάτωση συστημάτων Java είναι άλλη ιστορία, αλλά ένα απλό κόλπο για το JVM της Oracle και άλλων είναι να τρέξετε την εντολή `kill -3 <pid>` και ένα πλήρες ίχνος στοίβας και περίληψη σωρού (συμπεριλαμβανομένων και λεπτομερειών που αφορούν τη συλλογή απορριμάτων σε γενιές, που μπορεί να είναι πολύ κατατοπιστικές) θα εμφανιστούν στο stderr/logs. Οι εντολές του JDK `jps`, `jstat`, `jstack`, `jmap` είναι χρήσιμες. [Τα εργαλεία SJK](https://github.com/aragozin/jvm-tools) είναι για πιο προχωρημένους.
- Χρησιμοποιήστε την `mtr` ως μια βελτίωση της traceroute γιανα ανιχνεύετε ζητήματα του δικτύου.
- Χρησιμοποιήστε την [`mtr`](http://www.bitwizard.nl/mtr/) ως μια βελτίωση της traceroute γιανα ανιχνεύετε ζητήματα του δικτύου.
- Για να δείτε γιατί ένας δίσκος είναι γεμάτος, η `ncdu` εξοικονομεί χρόνο σε σύγκριση με τις συνήθεις εντολές όπως `du -sh *`.
- Για να δείτε γιατί ένας δίσκος είναι γεμάτος, η [`ncdu`](https://dev.yorhel.nl/ncdu) εξοικονομεί χρόνο σε σύγκριση με τις συνήθεις εντολές όπως `du -sh *`.
- Για να βρείτε ποια δικτυακή σύνδεση ή διεργασία χρησιμοποιεί εύρος ζώνης, δοκιμάστε `iftop` ή `nethogs`.
- Για να βρείτε ποια δικτυακή σύνδεση ή διεργασία χρησιμοποιεί εύρος ζώνης, δοκιμάστε [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) ή [`nethogs`](https://github.com/raboof/nethogs).
- Το εργαλείο `ab` (έρχεται μαζί με Apache) βοηθά στον πρόχειρο έλεγχο της απόδοσης web server. Για πιο σύνθετο έλεγχο φόρτου, δοκιμάστε `siege`.
- Για πιο σοβαρή αποσφαλμάτωση δικτύου, `wireshark`, `tshark`, ή `ngrep`.
- Για πιο σοβαρή αποσφαλμάτωση δικτύου, [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html), ή [`ngrep`](http://ngrep.sourceforge.net/).
- Να γνωρίζετε για τις `strace` και `ltrace`. Αυτές μπορεί να φανούν χρήσιμες, όταν ένα πρόγραμμα αποτυγχάνει, κρεμάει ή σκάει και δε γνωρίζετε γιατί ή αν θέλετε να έχετε μία γενική ιδέα της απόδοσης. Σημειώστε την επιλογή μέτρησης (`-c`) και τη δυνατότητα να συνδέσετε σε μία διεργασία που εκτελείται (`-p`).
- Χρησιμοποιήστε τον κατάλογο `/proc`. Είναι εκπληκτικά χρήσιμος ορισμένες φορές, όταν αποσφαλματώνετε ζωντανά προβλήματα. Παραδείγματα: `/proc/cpuinfo`, `/proc/meminfo`, `/proc/cmdline`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps` (όπου `xxx` είναι το id της διεργασίας ή pid).
- Όταν αποσφαλματώνετε κάτι που ήταν λάθος στο παρελθόν, η `sar` μπορεί να είναι πολύ χρήσιμη. Δείχνει ιστορικά στατιστικά για επεξεργαστή, μνήμη, δίκτυο κλπ.
- Όταν αποσφαλματώνετε κάτι που ήταν λάθος στο παρελθόν, η [`sar`](http://sebastien.godard.pagesperso-orange.fr/) μπορεί να είναι πολύ χρήσιμη. Δείχνει ιστορικά στατιστικά για επεξεργαστή, μνήμη, δίκτυο κλπ.
- Για πιο εις βάθος ανάλυση συστήματος και απόδοσης, δείτε τις `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](https://en.wikipedia.org/wiki/Perf_(Linux))και [`sysdig`](https://github.com/draios/sysdig).
- `mtr`: καλύτερο εργαλείο traceroute για αποσφαλμάτωση δικτύου
- [`mtr`](http://www.bitwizard.nl/mtr/): καλύτερο εργαλείο traceroute για αποσφαλμάτωση δικτύου
- `cssh`: visual concurrent shell
- `rsync`: συγχρονισμός αρχείων και καταλόγων μέσω SSH ή σε τοπικό σύστημα αρχείων
- `wireshark` και `tshark`: συλλογή πακέτων και αποσφαλμάτωση συστήματος
- [`wireshark`](https://wireshark.org/) και [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): συλλογή πακέτων και αποσφαλμάτωση συστήματος
- `ngrep`: grep για το επίπεδο δικτύου
- [`ngrep`](http://ngrep.sourceforge.net/): grep για το επίπεδο δικτύου
- El sistema de depuración de Java es harina de otro costal, pero un truco simple en las JSM de Oracle y otros consta en que puedes ejecutar `kill -3 <pid>` y una traza completa y un resumen del montículo "heap summary" (incluyendo del detalle de la colección de basura generacional, la cual puede ser altamente informativa) serán descargados al stderr/logs. Las herramientas `jps`, `jstat`, `jstack`, `jmap` del JDK son útiles. [SJK tools](https://github.com/aragozin/jvm-tools) son más avanzadas.
- Usa `mtr` como un mejor traceroute para identificar los problemas en la red.
- Usa [`mtr`](http://www.bitwizard.nl/mtr/) como un mejor traceroute para identificar los problemas en la red.
- Para examinar por qué el disco está lleno, `ncdu` ahorra tiempo en comparación con los comandos usuales como `du -sh *`.
- Para examinar por qué el disco está lleno, [`ncdu`](https://dev.yorhel.nl/ncdu) ahorra tiempo en comparación con los comandos usuales como `du -sh *`.
- Para encontrar cual socket o proceso está utilizando el ancho de banda, prueba `iftop` o `nethogs`.
- Para encontrar cual socket o proceso está utilizando el ancho de banda, prueba [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) o [`nethogs`](https://github.com/raboof/nethogs).
- La herramienta `ab` (viene con Apache) es útil para una verificación rápida del rendimiento de un servidor web. Para pruebas de carga más complejas prueba `siege`.
- Para una depuración mas seria de redes, `wireshark`, `tshark`, o `ngrep`.
- Para una depuración mas seria de redes, [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html), o [`ngrep`](http://ngrep.sourceforge.net/).
- Conoce acerca de `strace` y `ltrace`. Estas puede ser de utilidad si un programa está fallando, suspendido, o colgado, y no sabe por qué, o si quieres tener una idea general del rendimiento. Considera la opción de elaboración de perfiles (`-c`), y la habilidad de adjuntar a un proceso en ejecución (`-p`).
- Usa `/proc`. Es extraordinariamente útil algunas veces cuando se depuran problemas en vivo. Ejemplos: `/proc/cpuinfo`, `/proc/xxx/cwd`, `/proc/meminfo`, `/proc/cmdline`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps` (donde `xxx` es el id o pid del proceso).
- Cuando se depura porque algo salió mal en el pasado, `sar` puede ser muy útil. Este muestra la estadística histórica en CPU, memoria, red, etc.
- Cuando se depura porque algo salió mal en el pasado, [`sar`](http://sebastien.godard.pagesperso-orange.fr/) puede ser muy útil. Este muestra la estadística histórica en CPU, memoria, red, etc.
- Para sistemas y análisis de rendimiento de mayor profundidad, examina `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](https://en.wikipedia.org/wiki/Perf_(Linux)), y [`sysdig`](https://github.com/draios/sysdig).
@ -435,15 +435,15 @@ Algunos ejemplos de comandos reunidos:
- `strace`: depuración de llamadas del sistema
- `mtr`: mejor traceroute para la depuración de la red
- [`mtr`](http://www.bitwizard.nl/mtr/): mejor traceroute para la depuración de la red
- `cssh`: shell concurrente visual
- `rsync`: sincronización de archivos y carpetas sobre SSH o en sistema de archivos locales
- `wireshark` y `tshark`: captura de paquetes y depuración de la red
- [`wireshark`](https://wireshark.org/) y [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): captura de paquetes y depuración de la red
- `ngrep`: grep para la capa de la red
- [`ngrep`](http://ngrep.sourceforge.net/): grep para la capa de la red
- `host` y `dig`: consultas DNS
@ -467,9 +467,9 @@ Algunos ejemplos de comandos reunidos:
- `id`: información de identidad de usuario/grupo
- `sar`: estadísticas históricas del sistema
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/): estadísticas históricas del sistema
- `iftop` o `nethogs`: utilización de la red por un socket o proceso
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) o [`nethogs`](https://github.com/raboof/nethogs): utilización de la red por un socket o proceso
@ -380,16 +380,16 @@ En particulier, ayez à l'esprit que la valeur du « cache » est la mémoire ut
- Le système de debogage de Java est une autre paire de manche, cependant un truc simple sur la JVM d'Oracle et quelques autres JVMs consiste à exécuter `kill -3 <pid>` pour obtenir une trace complète des appels et une empreinte de la mémoire (y compris des détails sur le ramasse-miettes qui peuvent être hautement instructifs) dans stderr ou des fichiers journaux.
Les commandes `jps`, `jstat`, `jstack` et `jmap` de la JDK sont utiles. L'[outil SJK](https://github.com/aragozin/jvm-tools) est plus avancé.
- Utilisez `mtr` comme un `traceroute` amélioré pour identifier les problèmes de réseau.
- Utilisez [`mtr`](http://www.bitwizard.nl/mtr/) comme un `traceroute` amélioré pour identifier les problèmes de réseau.
- Pour déterminer les raisons pour lesquelles un disque est plein, `ncdu` permet de gagner du temps par rapport aux commandes habituelles telles que `du -sh *`.
- Pour déterminer les raisons pour lesquelles un disque est plein, [`ncdu`](https://dev.yorhel.nl/ncdu) permet de gagner du temps par rapport aux commandes habituelles telles que `du -sh *`.
- Pour trouver quel socket ou processus utilise la bande passante, essayez `iftop` ou `nethogs`.
- Pour trouver quel socket ou processus utilise la bande passante, essayez [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) ou [`nethogs`](https://github.com/raboof/nethogs).
- L'outil `ab` (fourni avec Apache) est utile pour une vérification rapide et grossière des performances d'un serveur web.
Pour des tests de charge plus complexes, essayez `siege`.
- Pour du debogage réseau plus sérieux : `wireshark`, `tshark` ou `ngrep`.
- Pour du debogage réseau plus sérieux : [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html) ou [`ngrep`](http://ngrep.sourceforge.net/).
- Sachez utiliser `strace` et `ltrace`.
Ces commandes peuvent être utiles si un programme fonctionne mal ou plante et que vous n'en connaissez pas la raison, ou si vous voulez vous faire une idée des performances.
@ -402,7 +402,7 @@ Remarquez l'option de profilage (`-c`) et la possibilité de les attacher à un
- Utilisez `/proc`. C'est parfois incroyablement utile pour résoudre des problèmes en live.
Exemples : `/proc/cpuinfo`, `/proc/meminfo`, `/proc/cmdline`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd`, `/proc/xxx/smaps` (où `xxx` est l'identifiant du processus ou pid).
- Pour comprendre pourquoi quelque chose a mal tourné antérieurement, `sar` peut-être très utile.
- Pour comprendre pourquoi quelque chose a mal tourné antérieurement, [`sar`](http://sebastien.godard.pagesperso-orange.fr/) peut-être très utile.
Elle fournit un historique concernant l'usage du CPU, de la mémoire, du réseau, etc.
- Pour une analyse plus approfondie du système et de ses performances, regardez `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](https://en.wikipedia.org/wiki/Perf_(Linux) et [`sysdig`](https://github.com/draios/sysdig).
@ -560,15 +560,15 @@ Si vous voulez un décompte du nombre de requêtes pour chaque valeur de `acct_i
- `strace`: trace les appels système.
- `mtr`: un traceroute amélioré pour débugguer un réseau.
- [`mtr`](http://www.bitwizard.nl/mtr/): un traceroute amélioré pour débugguer un réseau.
- `cssh` : visual concurrent shell
- `rsync` : synchronise des fichiers et des dossiers via SSH ou localement.
- `wireshark` et `tshark`: capture de paquets et dépannage réseau.
- [`wireshark`](https://wireshark.org/) et [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): capture de paquets et dépannage réseau.
- `ngrep` : grep pour les couches réseaux.
- [`ngrep`](http://ngrep.sourceforge.net/) : grep pour les couches réseaux.
- `host` et `dig`: interroge les serveurs DNS.
@ -592,9 +592,9 @@ Si vous voulez un décompte du nombre de requêtes pour chaque valeur de `acct_i
- `id` : affiche les informations sur un utilisateur et ses groupes.
- `sar` : statistiques sur l'activité du système
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/) : statistiques sur l'activité du système
- `iftop` ou `nethogs` : utilisation du réseau par un socket ou un processus.
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) ou [`nethogs`](https://github.com/raboof/nethogs) : utilisation du réseau par un socket ou un processus.
- Il system debugging con Java è tutta un'altra cosa. Uno dei trucchi più semplici sulla JVM Oracle (ed anche altre) è che all'esecuzione di `kill -3 <pid>` verrà messo in log un trace full stack (inclusi molti dettagli sulla garbage collection). Anche `jps`, `jstat`, `jstack` e `jmap` del JDK sono molto utili. Ci sono poi i vari [SJK tools](https://github.com/aragozin/jvm-tools), più avanzati.
- Usa `mtr` per rilevare problemi di rete. Molto meglio di traceroute.
- Usa [`mtr`](http://www.bitwizard.nl/mtr/) per rilevare problemi di rete. Molto meglio di traceroute.
- Per capire perché un disco viene visto pieno, `ncdu` ti evita perdite di tempo rispetto al più comune `du -sh *`.
- Per capire perché un disco viene visto pieno, [`ncdu`](https://dev.yorhel.nl/ncdu) ti evita perdite di tempo rispetto al più comune `du -sh *`.
- Per capire quale socket o processo sta usando troppa banda prova `iftop` o `nethogs`.
- Per capire quale socket o processo sta usando troppa banda prova [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) o [`nethogs`](https://github.com/raboof/nethogs).
- `ab` (incluso in Apache) è ottimo per un test di carico veloce di un webserver. Per test di carico più avanzati, prova anche `siege`.
- Per un debug di rete più avanzato, dai uno sguardo a `wireshark`, `tshark` o `ngrep`.
- Per un debug di rete più avanzato, dai uno sguardo a [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html) o [`ngrep`](http://ngrep.sourceforge.net/).
- Impara qualcosa di più su `strace` e `ltrace`. Possono essere molto utili quando un programma crasha, o magari rimane in blocco e tu non capisci perché. Degne di nota le opzioni di profiling (`-c`), e la possibilità di agganciare un processo in esecuzione (`-p`).
- Usa `/proc`. Fantastico quando devi fare un live debug in caso di problemi. Esempi: `/proc/cpuinfo`, `/proc/meminfo`, `/proc/cmdline`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps` (dove `xxx` è il nome del processo o il suo pid).
- Quando vuoi debuggare qualcosa che è andato storto in passato, `sar` può essere molto utile. Permette di controllare uno storico delle statistiche di CPU, memoria, rete e così via.
- Quando vuoi debuggare qualcosa che è andato storto in passato, [`sar`](http://sebastien.godard.pagesperso-orange.fr/) può essere molto utile. Permette di controllare uno storico delle statistiche di CPU, memoria, rete e così via.
- Usa `stap` per un'analisi più approfondita del sistema in termini di performance ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](https://en.wikipedia.org/wiki/Perf_(Linux)), e [`sysdig`](https://github.com/draios/sysdig).
@ -443,15 +443,15 @@ Qualche esempio di combinazione di più comandi comandi:
- `strace`: debug delle chiamate di sistema.
- `mtr`: un traceroute migliore per il debug di rete.
- [`mtr`](http://www.bitwizard.nl/mtr/): un traceroute migliore per il debug di rete.
- `cssh`: shell visuale concorrente.
- `rsync`: sincronizza file e cartelle tramite SSH oppure in locale.
- `wireshark` e `tshark`: packet capturing e debug di rete.
- [`wireshark`](https://wireshark.org/) e [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): packet capturing e debug di rete.
- `ngrep`: come grep... ma per il traffico di rete.
- [`ngrep`](http://ngrep.sourceforge.net/): come grep... ma per il traffico di rete.
- `host` e `dig`: DNS lookup.
@ -475,9 +475,9 @@ Qualche esempio di combinazione di più comandi comandi:
- `id`: user/group identity info.
- `sar`: cronologia di alcune statistiche del sistema.
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/): cronologia di alcune statistiche del sistema.
- `iftop` o `nethogs`: uso della rete da parte di socket e processi.
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) o [`nethogs`](https://github.com/raboof/nethogs): uso della rete da parte di socket e processi.
- Java 시스템의 디버깅은 조금 다른상황입니다. 하지만 Oracle과 그 외의 회사에서 만든 다른 JVM들에서는 `kill -3 <pid>`를 실행하면 전체 stack trace정보와 heap의 정보(시기별로 가비지 콜렉터의 세부적인 내용같은 매우 유용한 정보)를 요약하여 stderr나 로그로 출력해주므로 간단하게 정보를 얻어올 수 있습니다. JDK의 `jps`, `jstat`, `jstack`, `jmap` 명령은 유용합니다. [SJK tools](https://github.com/aragozin/jvm-tools)은 더 고급 정보를 다룰 수 있습니다.
- 네트워크 이슈들을 알아보기 위해서는 traceroute를 사용할수도 있지만 이보다 더 좋은 `mtr`를 사용하세요.
- 네트워크 이슈들을 알아보기 위해서는 traceroute를 사용할수도 있지만 이보다 더 좋은 [`mtr`](http://www.bitwizard.nl/mtr/)를 사용하세요.
- 디스크가 왜 가득찼는지 알아보기 위해서 `ncdu`를 사용해보세요. 일반적으로 사용하는 `du -sh *`와 같은 커멘드를 사용하는 것보다는 시간을 줄일 수 있습니다.
- 디스크가 왜 가득찼는지 알아보기 위해서 [`ncdu`](https://dev.yorhel.nl/ncdu)를 사용해보세요. 일반적으로 사용하는 `du -sh *`와 같은 커멘드를 사용하는 것보다는 시간을 줄일 수 있습니다.
- 어떠한 소켓이나 프로세스가 사용하는 대역폭(bandwidth)를 찾아보려면 `iftop`나 `nethogs`를 사용하세요.
- 어떠한 소켓이나 프로세스가 사용하는 대역폭(bandwidth)를 찾아보려면 [`iftop`](http://www.ex-parrot.com/~pdw/iftop/)나 [`nethogs`](https://github.com/raboof/nethogs)를 사용하세요.
- `ab`라는 툴(Apache에 딸려있는)은 신속하고 간단하게(quick-and-dirty) 웹서버의 성능을 체크하는데 유용합니다. 보다 복잡한 부하 테스트를 할때는 `siege`를 사용해보세요.
- 보다 심각한 경우의 네트워크 디버깅을 위해서는 `wireshark`, `tshark` 또는 `ngrep`를 사용하세요.
- 보다 심각한 경우의 네트워크 디버깅을 위해서는 [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html) 또는 [`ngrep`](http://ngrep.sourceforge.net/)를 사용하세요.
- `strace` 와 `ltrace`에 대해서 알아보세요. 이 커맨드들은 만일 어떤 프로그램에서 failing, hanging 혹은 crashing이 일어나거나 그 외에 여러분이 무슨이유인지 알지 못하는 상황이나 성능에 대한 대략적인 내용을 얻고자 할때 유용할 것입니다. 특히 프로파일링을 위한 옵션(`-c`)과 현재 실행중인 프로세스에 붙이기 위한 옵션(`-p`)을 기억하세요.
@ -255,7 +255,7 @@
- `/proc`를 사용하세요. 이것은 현재 발생하고 있는 문제를 디버깅할때 종종 놀랍도록 큰 도움이 될것입니다. 예시:`/proc/cpuinfo`, `/proc/meminfo`, `/proc/cmdline`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps` (`xxx`는 프로세스 id나 pid입니다).
- 과거에 왜 무엇인가가 잘못되었는지를 디버깅할때에는 `sar`가 매우 유용할 것입니다. 이 커맨드는 CPU, memory, network 등의 통계 내역을 보여줍니다.
- 과거에 왜 무엇인가가 잘못되었는지를 디버깅할때에는 [`sar`](http://sebastien.godard.pagesperso-orange.fr/)가 매우 유용할 것입니다. 이 커맨드는 CPU, memory, network 등의 통계 내역을 보여줍니다.
- 시스템의 보다 깊은곳을 보거나 퍼포먼스를 분석하기 위해서는, `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)),나 [`perf`](http://en.wikipedia.org/wiki/Perf_(Linux)), 그리고 [`sysdig`](https://github.com/draios/sysdig)를 사용해보세요.
@ -394,15 +394,15 @@
- `strace`: 시스템 콜을 디버깅할때 사용합니다
- `mtr`: 네트워크 디버깅시에 traceroute보다 더 낫습니다
- [`mtr`](http://www.bitwizard.nl/mtr/): 네트워크 디버깅시에 traceroute보다 더 낫습니다
- `cssh`: 쉘을 동시에 여러개 사용할때 사용합니다
- `rsync`: SSH를 이용해 원격 파일 시스템이나, 로컬 파일시스템의 파일과 폴더들을 동기화 할때 사용합니다
- `wireshark` and `tshark`: 패킷정보를 가져오며 네트워킹을 디버깅하는데 사용합니다
- [`wireshark`](https://wireshark.org/) and [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): 패킷정보를 가져오며 네트워킹을 디버깅하는데 사용합니다
- `ngrep`: 네트워크 환경에서 grep과 같은 역할을 합니다
- [`ngrep`](http://ngrep.sourceforge.net/): 네트워크 환경에서 grep과 같은 역할을 합니다
- `host` and `dig`: DNS 정보를 보여줍니다
@ -426,9 +426,9 @@
- `id`: 현재 유저나 그룹에 대한 식별 정보를 보여줍니다
- `sar`: 시스템 상태에 대한 정보를 보여줍니다
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/): 시스템 상태에 대한 정보를 보여줍니다
- `iftop` or `nethogs`: 소켓 또는 프로세스를 이용하여 네트워크를 정보를 보여줍니다
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) or [`nethogs`](https://github.com/raboof/nethogs): 소켓 또는 프로세스를 이용하여 네트워크를 정보를 보여줍니다
@ -228,15 +228,15 @@ Use `zsless`, `zmore`, `zcat`, and `zgrep` para manipular arquivos comprimidos.
- Debugar um sistema java é uma outra historia, mas um simples truque nas máquinas virtuais Oracle ou algum outro tipo de JVM é que você pode executar `kill -3 <pid>` e um completo rastreamento da pilha(stack trace) e resumo do heap (incluindo detalhes geracionais do garbage collector, os quais podem ser altamente informativos) serão vazados para stderr/logs.
- Use `mtr` como uma melhor alternativa ao traceroute, para identificar problemas na rede.
- Use [`mtr`](http://www.bitwizard.nl/mtr/) como uma melhor alternativa ao traceroute, para identificar problemas na rede.
- Para verificar o porque de um disco estar cheio, `ncdu` economiza bastante tempo em comparação aos comandos usuais como `du -sh *`.
- Para verificar o porque de um disco estar cheio, [`ncdu`](https://dev.yorhel.nl/ncdu) economiza bastante tempo em comparação aos comandos usuais como `du -sh *`.
- Para procurar qual socket ou processo está utilizando a banda de rede, tente `iftop` ou `nethogs`.
- Para procurar qual socket ou processo está utilizando a banda de rede, tente [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) ou [`nethogs`](https://github.com/raboof/nethogs).
- A ferramenta `ab` (que vem com o Apache) é muito útil para verificação rápida da performance do servidor web. Para mais complexos testes de carga, tente `siege`.
- Para debugs mais sérios da rede, `wireshark`, `tshark`, ou `ngrep`.
- Para debugs mais sérios da rede, [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html), ou [`ngrep`](http://ngrep.sourceforge.net/).
- Aprenda a respeito do `strace`e `ltrace`. Estes podem ser úteis se um programa está falhando, travado, ou quebrando, e você não sabe o por que, ou se você quer obter uma ideia geral da performance. Note que a opção de perfil (`-c`), e a habilidade de se plugar a um processo em execução (`-p`).
@ -246,7 +246,7 @@ Use `zsless`, `zmore`, `zcat`, and `zgrep` para manipular arquivos comprimidos.
- Utilize `/proc`. Este é incrivelmente útil em algumas vezes quando se deseja debugar problemas ao vivo. Exemplos: `/proc/cpuinfo`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps`.
- Quando estiver debugando o porque de algo ter dado errado no passado, `sar` pode ser de muita utilidade. Ele exibe as estatísticas históricas da CPU, memória, rede e etc.
- Quando estiver debugando o porque de algo ter dado errado no passado, [`sar`](http://sebastien.godard.pagesperso-orange.fr/) pode ser de muita utilidade. Ele exibe as estatísticas históricas da CPU, memória, rede e etc.
- Para análises de performance mais profundas do sistema, dê uma olhada em `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](http://en.wikipedia.org/wiki/Perf_(Linux)), e [`sysdig`](https://github.com/draios/sysdig).
@ -386,15 +386,15 @@ Alguns exemplos de como reunir os comandos.
- `strace`: Debug para chamadas de sistema.
- `mtr`: melhor traceroute para debugar a rede.
- [`mtr`](http://www.bitwizard.nl/mtr/): melhor traceroute para debugar a rede.
- `cssh`: Visualização concorrente da shell.
- `rsync`: Sincroniza arquivos e pastas através do SSH.
- `wireshark` e `tshark`: captura de pacotes e debug de rede.
- [`wireshark`](https://wireshark.org/) e [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): captura de pacotes e debug de rede.
- `ngrep`: grep para a camada de rede.
- [`ngrep`](http://ngrep.sourceforge.net/): grep para a camada de rede.
- `host` e `dig`: Consultas DNS.
@ -414,9 +414,9 @@ Alguns exemplos de como reunir os comandos.
- `id`: Informações sobre a identidade do user/group.
- `sar`: histórico dos estados do sistema.
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/): histórico dos estados do sistema.
- `iftop` ou `nethogs`: Utilização da rede por sockets ou processos.
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) ou [`nethogs`](https://github.com/raboof/nethogs): Utilização da rede por sockets ou processos.
- Отладка Java – совсем другая рыбка, но некоторые манипуляции над виртуальной машиной Оракла, или любой другой, позволят вам использовать `kill -3 <pid>` и трассировать сводки стека и хипа (включая детали работы сборщика мусора, которые бывают очень полезными), и их можно сдампить в stderr или логи. `jps`, `jstat`, `jstack`, `jmap` также полезны. [SJK tools](https://github.com/aragozin/jvm-tools) более продвинуты.
- Используйте `mtr` для лучшей трассировки, чтобы находить проблемы сети.
- Используйте [`mtr`](http://www.bitwizard.nl/mtr/) для лучшей трассировки, чтобы находить проблемы сети.
- Для того, чтобы узнать, почему диск полностью забит, используйте `ncdu`, это сохраняет время по сравнению с тем же `du -sh *`.
- Для того, чтобы узнать, почему диск полностью забит, используйте [`ncdu`](https://dev.yorhel.nl/ncdu), это сохраняет время по сравнению с тем же `du -sh *`.
- Для того, чтобы узнать, какой сокет или процесс использует интернет, используйте `iftop` или `nethogs`.
- Для того, чтобы узнать, какой сокет или процесс использует интернет, используйте [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) или [`nethogs`](https://github.com/raboof/nethogs).
- `ab`, которая поставляется вместе с apache, полезна для быстрой и поверхностной проверки производительности веб-сервера. Для более серьезного нагрузочного тестирования используйте `siege`.
- Для более серьёзной отладки сетей используйте `wireshark`, `tshark` и `ngrep`.
- Для более серьёзной отладки сетей используйте [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html) и [`ngrep`](http://ngrep.sourceforge.net/).
- Знайте про `strace` и `ltrace`. Эти команды могут быть полезны, если программа падает или висит, и вы не знаете почему Или если вы хотите протестировать производительность программы. Не забывайте про возможность отладки (`-c`) и возможность прицепиться к процессу по pid (`-p`).
- Используйте `/proc`. Иногда он невероятно полезен для отладки запущенных программ. Примеры: `/proc/cpuinfo`, `/proc/meminfo`, `/proc/cmdline`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps` (где `xxx` это pid).
- Когда отлаживаете что-то, что сломалось в прошлом, используйте `sar`– бывает очень полезно. Показывает историю CPU, памяти, сети и т.д.
- Когда отлаживаете что-то, что сломалось в прошлом, используйте [`sar`](http://sebastien.godard.pagesperso-orange.fr/)– бывает очень полезно. Показывает историю CPU, памяти, сети и т.д.
- Для анализа более сложных систем и производительности посмотрите на `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](http://en.wikipedia.org/wiki/Perf_(Linux)), и [`sysdig`](https://github.com/draios/sysdig).
- [`mtr`](http://www.bitwizard.nl/mtr/): лучшая трассировка для отладки сети
- `cssh`: несколько терминалов в одном UI
- `rsync`: синхронизация файлов и папок через SSH
- `wireshark` и `tshark`: перехват пакетов и отладка сети
- [`wireshark`](https://wireshark.org/) и [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): перехват пакетов и отладка сети
- `ngrep`: grep для слоя сети (network layer). Перехват пакетов по заданной маске.
- [`ngrep`](http://ngrep.sourceforge.net/): grep для слоя сети (network layer). Перехват пакетов по заданной маске.
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/): история системной статистики
- `iftop` или `nethogs`: использование сети конкретным сокетом или процессом
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) или [`nethogs`](https://github.com/raboof/nethogs): использование сети конкретным сокетом или процессом
- Sistemsko razhroščevanje Java je drugačen tip, vendar enostaven trik na JVM-jih Oracle-a in nekaterih ostalih je, da lahko poženete `kill -3 <pid>` in sledite celotnemu stack-u in povzetku kopic (vključno s podrobnostmi zbirke splošnih smeti, ki so lahko zelo informativne), ki bodo oddane v stderr/logs. JDK-jevi `jps`, `jstat`, `jstack`, `jmap` so uporabni. [SJK Tools](https://github.com/aragozin/jvm-tools) so bolj napredni.
- Uporabite `mtr` kot boljši usmerjevalnik sledenja za identifikacijo težav omrežja.
- Uporabite [`mtr`](http://www.bitwizard.nl/mtr/) kot boljši usmerjevalnik sledenja za identifikacijo težav omrežja.
- Za iskanje, zakaj je disk poln, vam `ncdu` prihrani čas preko običajnih ukazov kot je `du -sh *`.
- Za iskanje, zakaj je disk poln, vam [`ncdu`](https://dev.yorhel.nl/ncdu) prihrani čas preko običajnih ukazov kot je `du -sh *`.
- Da najdete katera vtičnica ali proces uporablja pasovno širino, poskusite `iftop` ali `nethogs`.
- Da najdete katera vtičnica ali proces uporablja pasovno širino, poskusite [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) ali [`nethogs`](https://github.com/raboof/nethogs).
- Orodje `ab` (prihaja z Apache-jem) je v pomoč za hitro in nečisto preverjanje uspešnosti spletnega strežnika. Za bolj kompleksno testiranje nalaganja poskusite `siege`.
- Za bolj resno razhroščevanje omrežja, `wireshark`, `tshark` ali `ngrep`.
- Za bolj resno razhroščevanje omrežja, [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html) ali [`ngrep`](http://ngrep.sourceforge.net/).
- Poznajte `strace` in `ltrace`. Ta sta v pomoč, če program ni uspešen, se ustavlja ali poruši in ne veste zakaj, ali če želite dobiti splošno idejo o uspešnosti. Bodite pozorni na opcijo profiliranja (`-c`) in zmožnost dodajanja k procesu, ki se poganja (`-p`).
- Uporabite `/proc`. Včasih je izjemno v pomoč, ko se razhroščuje probleme v živo. Primeri: `/proc/cpuinfo`, `/proc/meminfo`, `/proc/cmdline`, ``/proc/xxx/cwd`,asdf `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps` (kjer je `xxx` id procesa ali pid).
- Ko se razhroščuje, zakaj je šlo nekaj narobe v preteklosti, je lahko zelo uporaben `sar`. Prikazuje statistiko zgodovine na procesorju, spominu, omrežju itd.
- Ko se razhroščuje, zakaj je šlo nekaj narobe v preteklosti, je lahko zelo uporaben [`sar`](http://sebastien.godard.pagesperso-orange.fr/). Prikazuje statistiko zgodovine na procesorju, spominu, omrežju itd.
- Za globlje analize sistema in uspešnosti, poglejte `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](https://en.wikipedia.org/wiki/Perf_(Linux)) in [`sysdig`](https://github.com/draios/sysdig).
@ -467,15 +467,15 @@ Nekaj primerov sestavljanja ukazov skupaj:
- `strace`: razhroščevanje sistemskega klica
- `mtr`: boljše sledenje usmerjanja za razhroščevanje omrežja
- [`mtr`](http://www.bitwizard.nl/mtr/): boljše sledenje usmerjanja za razhroščevanje omrežja
- `cssh`: vizualna sočasna lupina
- `rsync`: sinhronizacija datotek in map preko SSH ali v lokalnem datotečnem sistemu
- `wireshark` in `tshark`: zajem paketov in razhroščevanje omrežja
- [`wireshark`](https://wireshark.org/) in [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): zajem paketov in razhroščevanje omrežja
- `ngrep`: grep za nivo omrežja
- [`ngrep`](http://ngrep.sourceforge.net/): grep za nivo omrežja
- `host` in `dig`: pogled DNS
@ -499,9 +499,9 @@ Nekaj primerov sestavljanja ukazov skupaj:
- `id`: informacije identifikacije uporabnika/skupine
- `sar`: statistika zgodovine sistema
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/): statistika zgodovine sistema
- `iftop` ali `nethogs`: izkoriščenost omrežja po vtičnici ali procesu
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) ali [`nethogs`](https://github.com/raboof/nethogs): izkoriščenost omrežja po vtičnici ali procesu
- Для інформації про мережу використовуйте `netstat`і`ss`.
- Для більш детальної інформації використовуйте [`glances`](https://github.com/nicolargo/glances). Ця програма показує відразу кілька різних статистик в одному вікні терміналу. Корисно, коли стежите за відразу декількома системами.
- Для того, щоб стежити за пам'яттю вокористовуйте `free`і`vmstat`. Зокрема, не забувайте, що значення кешування ("cached" value) - Це пам'ять, яку тримає ядро і ці значення є частиною `free`.
- Використовуйте `mtr` для збору статистики трасування(простежити маршрут до віддаленого сервера), щоб знаходити проблеми мережі.
- Для того, щоб дізнатися, чому диск повністю забитий, використовуйте `ncdu`, це зберігає час у порівнянні з тим же `du -sh *`.
- Для того, щоб дізнатися, який сокет або процес використовує інтернет, використовуйте `iftop`або`nethogs`.
- Використовуйте [`mtr`](http://www.bitwizard.nl/mtr/) для збору статистики трасування(простежити маршрут до віддаленого сервера), щоб знаходити проблеми мережі.
- Для того, щоб дізнатися, чому диск повністю забитий, використовуйте [`ncdu`](https://dev.yorhel.nl/ncdu), це зберігає час у порівнянні з тим же `du -sh *`.
- Для того, щоб дізнатися, який сокет або процес використовує інтернет, використовуйте [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) або [`nethogs`](https://github.com/raboof/nethogs).
- Додаток `ab` який поставляється разом з apache, корисний для швидкої і поверхневої перевірки продуктивності веб-сервера. Для більш серйозного лоад-тестінгу використовуйте `siege`.
- Для більш серйозної відладки мережі використовуйте `wireshark`, `tshark`, і`ngrep`.
- Для більш серйозної відладки мережі використовуйте [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html), і [`ngrep`](http://ngrep.sourceforge.net/).
- Знайте про `strace` та `ltrace`. Ці команди можуть бути корисні, якщо програма падає або висить, і ви не знаєте чому або якщо ви хочете протестувати продуктивність програми. Не забувайте про можливість відладки (`-c`) і можливість причепитися до процесу по pid (` -p`).
- `ldd` для перевірки системних бібліотек.
- Знайте як причепитися до працюючого процесу через `gdb`і отримати трасування стека.
- Використовуйте `/proc`. Іноді він неймовірно корисний для налагодження запущених програм. Приклади: `/proc/cpuinfo`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps` (де `xxx` id or pid процесу).
- Коли дебажите щось, що зламалося в минулому, використовуйте `sar` буває дуже корисно. Показує історію та статистику CPU, пам'яті, мережі і т.д.
- Коли дебажите щось, що зламалося в минулому, використовуйте [`sar`](http://sebastien.godard.pagesperso-orange.fr/) буває дуже корисно. Показує історію та статистику CPU, пам'яті, мережі і т.д.
- Для аналізу більш складних систем і продуктивності використовуйте `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](http://en.wikipedia.org/wiki/ Perf_(Linux)) і [`sysdig`](https://github.com/draios/sysdig).
- Дізнайтеся, яка у вас операційна система, через `uname`або`uname -a` (інформація про ядро) або`lsb_release -a` (інформація про дистрибутив Linux).
- Використовуйте `dmesg`, коли щось відбувається зовсім дивне (це можуть бути проблеми із залізом, драйверами, тощо).
@ -307,11 +307,11 @@
- `nm`: symbols from object files
- `ab`: вбудований в Apache бенчмарк веб-серверів
- `strace`: відладка системних викликів
- `mtr`: трасування для відладки мережі
- [`mtr`](http://www.bitwizard.nl/mtr/): трасування для відладки мережі
- `cssh`: паралельне виконання команд в графічному інтерфейсі
- `rsync`: синхронізація файлів і папок через SSH або на локальній файловій системі
- `wireshark`і`tshark`: перехоплення пакетів і відладка мережі
- `ngrep`: grep мережевого рівня
- [`wireshark`](https://wireshark.org/) і [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): перехоплення пакетів і відладка мережі
- [`ngrep`](http://ngrep.sourceforge.net/): grep мережевого рівня
- `host`і`dig`: пошук в DNS
- `lsof`: інформація про файлові дескриптори та сокети
- `dstat`: корисна статистика ОС
@ -323,8 +323,8 @@
- `last`: історія входів у систему
- `w`: хто є залогіненим
- `id`: інформація про користувача/групу
- `sar`: historic system stats
- `iftop`або`nethogs`: використання мережі конкретним сокетом або процесом
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/): historic system stats
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) або [`nethogs`](https://github.com/raboof/nethogs): використання мережі конкретним сокетом або процесом
- `ss`: статистика сокетів
- `dmesg`: помилки завантаження і помилки системи
- `sysctl`: перегляду і налаштування параметрів ядра Linux коли воно запущене
- Java system debugging is a different kettle of fish, but a simple trick on Oracle's and some other JVMs is that you can run `kill -3 <pid>` and a full stack trace and heap summary (including generational garbage collection details, which can be highly informative) will be dumped to stderr/logs. The JDK's `jps`, `jstat`, `jstack`, `jmap` are useful. [SJK tools](https://github.com/aragozin/jvm-tools) are more advanced.
- Use `mtr` as a better traceroute, to identify network issues.
- Use [`mtr`](http://www.bitwizard.nl/mtr/) as a better traceroute, to identify network issues.
- For looking at why a disk is full, `ncdu` saves time over the usual commands like `du -sh *`.
- For looking at why a disk is full, [`ncdu`](https://dev.yorhel.nl/ncdu) saves time over the usual commands like `du -sh *`.
- To find which socket or process is using bandwidth, try `iftop` or `nethogs`.
- To find which socket or process is using bandwidth, try [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) or [`nethogs`](https://github.com/raboof/nethogs).
- The `ab` tool (comes with Apache) is helpful for quick-and-dirty checking of web server performance. For more complex load testing, try `siege`.
- For more serious network debugging, `wireshark`, `tshark`, or `ngrep`.
- For more serious network debugging, [`wireshark`](https://wireshark.org/), [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html), or [`ngrep`](http://ngrep.sourceforge.net/).
- Know about `strace` and `ltrace`. These can be helpful if a program is failing, hanging, or crashing, and you don't know why, or if you want to get a general idea of performance. Note the profiling option (`-c`), and the ability to attach to a running process (`-p`).
- Use `/proc`. It's amazingly helpful sometimes when debugging live problems. Examples: `/proc/cpuinfo`, `/proc/meminfo`, `/proc/cmdline`, `/proc/xxx/cwd`, `/proc/xxx/exe`, `/proc/xxx/fd/`, `/proc/xxx/smaps` (where `xxx` is the process id or pid).
- When debugging why something went wrong in the past, `sar` can be very helpful. It shows historic statistics on CPU, memory, network, etc.
- When debugging why something went wrong in the past, [`sar`](http://sebastien.godard.pagesperso-orange.fr/) can be very helpful. It shows historic statistics on CPU, memory, network, etc.
- For deeper systems and performance analyses, look at `stap` ([SystemTap](https://sourceware.org/systemtap/wiki)), [`perf`](https://en.wikipedia.org/wiki/Perf_(Linux)), and [`sysdig`](https://github.com/draios/sysdig).
@ -478,15 +478,15 @@ A few examples of piecing together commands:
- `strace`: system call debugging
- `mtr`: better traceroute for network debugging
- [`mtr`](http://www.bitwizard.nl/mtr/): better traceroute for network debugging
- `cssh`: visual concurrent shell
- `rsync`: sync files and folders over SSH or in local file system
- `wireshark` and `tshark`: packet capture and network debugging
- [`wireshark`](https://wireshark.org/) and [`tshark`](https://www.wireshark.org/docs/wsug_html_chunked/AppToolstshark.html): packet capture and network debugging
- `ngrep`: grep for the network layer
- [`ngrep`](http://ngrep.sourceforge.net/): grep for the network layer
- `host` and `dig`: DNS lookups
@ -510,9 +510,9 @@ A few examples of piecing together commands:
- `id`: user/group identity info
- `sar`: historic system stats
- [`sar`](http://sebastien.godard.pagesperso-orange.fr/): historic system stats
- `iftop` or `nethogs`: network utilization by socket or process
- [`iftop`](http://www.ex-parrot.com/~pdw/iftop/) or [`nethogs`](https://github.com/raboof/nethogs): network utilization by socket or process