Outils pour utilisateurs

Outils du site


issue185:c_c

So we were discussing a problem on one of the pods at work, when my coworker made a comment I actually wholeheartedly agreed with. Why can’t Linux ship with htop by default? My reason? With modern multicore systems, I prefer seeing my logical CPUs separately when I open up htop. It seems that people who create containers have other ideas, so in that spirit, I would like to go over the basics of top for those of you that don’t know. Also as a refresher for me, as top does not ‘top’ my list, so-to-speak. On my daily driver I use the GUI version, and my server has htop, so I don’t use top other than at work. All that aside, top is one of those things you HAVE to know, be it for work or that lovely LPI exam you are going to write. Sorry to hear you failed that LPI Mr “I have been using Linux for 20 years” – you know who you are. Know that you can run top without elevated privileges, but to get the most out of it, rather use elevated privileges; it just ensures that you have access to everything. Here is a quick factoid, it is called top as it sorts the most CPU intensive PID to the top. The main place top and htop differ is in the header. This is the other place you can find the load average, other than uptime (a favourite LPI question). That load average can be good or bad, depending on the amount of CPUs you have in your system. For you to see the CPUs in top, you need to press “1”. This goes for other tools too, like glances, I want to see ‘at a glance’ what my CPUs (plural) are doing, I don’t want to remember key bindings.

Nous étions en train de discuter d'un problème sur l'un des pods (groupe de conteneurs) au travail, lorsque mon collègue a fait un commentaire avec lequel j'étais entièrement d'accord. Pourquoi Linux n'est-il pas livré avec htop par défaut ? Ma raison ? Avec les systèmes multicœurs modernes, je préfère voir mes processeurs logiques séparément lorsque j'ouvre htop. Il semble que les personnes qui créent les conteneurs ont d'autres idées, donc dans cet esprit, je voudrais passer en revue les bases de htop pour ceux d'entre vous qui ne les connaissent pas. C'est aussi une mise à jour pour moi, car top n'est pas le « top » de ma liste, pour ainsi dire.

Dans mon activité quotidienne, j'utilise la version graphique, et mon serveur a htop, donc je n'utilise pas top en dehors du travail.

Tout cela mis à part, top est l'une de ces choses que vous DEVEZ connaître, que ce soit pour le travail ou pour ce bel examen du LPI que vous allez passer. Désolé d'apprendre que vous avez échoué à ce LPI, Monsieur « J'utilise Linux depuis 20 ans » - vous vous reconnaîtrez.

Sachez que vous pouvez exécuter top sans privilèges élevés, mais, pour en tirer le meilleur parti, utilisez plutôt les privilèges élevés ; cela vous assure simplement d'avoir accès à tout. Voici une brève anecdote : on l'appelle top car il trie en plaçant le PID le plus gourmand en ressources CPU en haut. La principale différence entre top et htop se trouve dans l'en-tête. C'est l'autre endroit où vous pouvez trouver la moyenne de charge, en dehors de la période de démarrage (une question favorite du LPI). Cette moyenne de charge peut être bonne ou mauvaise, en fonction du nombre de CPU que vous avez dans votre système. Pour voir les CPU en haut de l'écran, vous devez appuyer sur « 1 ». Cela s'applique également à d'autres outils, comme les aperçus ; je veux voir « d'un coup d'œil » ce que font mes CPU (au pluriel), sans avoir à me souvenir des raccourcis clavier.

That second line gets important when you have a laptop, where you do not want processes burning battery, otherwise more running tasks are not a problem. The abbreviations are usually a sticking point for newbies. I will run through them here quickly, there are screenshots if you don’t want to open top on your system. (I’ll probably steal it off the Internet as it is a lot of typing). • us: user cpu time (or) % CPU time spent in user space • sy: system cpu time (or) % CPU time spent in kernel space • ni: user nice cpu time (or) % CPU time spent on low priority processes • id: idle cpu time (or) % CPU time spent idle • wa: io wait cpu time (or) % CPU time spent in wait (on disk) • hi: hardware irq (or) % CPU time spent servicing/handling hardware interrupts • si: software irq (or) % CPU time spent servicing/handling software interrupts • st: steal time - - % CPU time in involuntary wait by virtual cpu while hypervisor is servicing another processor (or) % CPU time stolen from a virtual machine True story, I installed Ubuntu Budgie on my cousin’s PC as it was slow as molasses with Windows, and I noticed a value in ‘wa’. Now this can happen if your system is low on memory, when it constantly writes to the drive, but in his case it was that his BIOS was incorrectly configured and the SATA channel was in “compatible” / “legacy” mode and not AHCI.

La deuxième ligne devient importante lorsque vous avez un ordinateur portable, où vous ne voulez pas que les processus grillent la batterie ; sinon, plus de tâches en cours ne sont pas un problème. Les abréviations sont généralement un point difficile pour les débutants. Je vais les parcourir ici rapidement ; il y a des captures d'écran si vous ne voulez pas ouvrir top sur votre système. (Je vais probablement le voler sur Internet car il faut beaucoup taper.)

••us : user cpu time (ou) % de temps CPU passé dans l'espace utilisateur ••sy : system cpu time (ou) % de temps CPU passé dans l'espace noyau ••ni : user nice cpu time (ou) % de temps CPU passé sur des processus de basse priorité ••id : idle cpu time (ou) % du temps CPU passé en inactivité ••wa : io wait cpu time (ou) % de temps CPU passé en attente (sur le disque) ••hi : hardware irq (ou) % du temps CPU passé à gérer les interruptions matérielles ••si : software irq (ou) % du temps CPU consacré à gérer des interruptions logicielles ••st : steal time - - % de temps CPU en attente involontaire par le processeur virtuel pendant que l'hyperviseur s'occupe d'un autre processeur (ou) % de temps CPU volé à une machine virtuelle.

Histoire vraie : j'ai installé Ubuntu Budgie sur le PC de mon cousin car il était très lent avec Windows, et j'ai remarqué une valeur dans « wa ». Cela peut arriver si votre système est faible en mémoire, quand il écrit constamment sur le disque, mais dans son cas, c'est que son BIOS était mal configuré et le canal SATA était en mode « compatible »/« legacy » et non AHCI.

The MIB mem and the MIB swap line, is the same as the free command (hello, LPI questions). As you can see from my screenshot, I have 4GB memory in my laptop, with 400MB free and about 1.6GB in use and cache. I recently opened my music player; it usually takes a second or two to open, but the second time around it is greased lightning as it is in that buff/cache. If you noticed, you would see my swap is starting to be used, which will slow my system down soon. :/ I say soon as usually it is inactive memory pages that get inserted first (my old man gripe about the new programming paradigm where “unused memory is wasted memory” comes into play here). Anyway, time to make top work for us. Open top and press “f” to see the options. You should see this busy output – that can scare newbies. Sorry newbies, you just have to shoulder through it. The selector is your space bar (“Space toggles display”, this meant pudding to me when I first saw it). You can select what you want (and do not want) with it. This becomes important when you need to see more in your limited display window. If you un-select what you don’t need, what is left will have more space to display information (so don’t select everything, OK?). Just hit the escape key when you are done and your new layout will await you. This is all controllable via a .rc file if you want persistence. Keep in mind that if you ran top with sudo and you run it again without, it will be default. As for the color difference between top and htop, you can use the “z” key to inject some color, but it is red and pink, not something I care about. As you can see, I/O granularity is sorely lacking at a glance, you don’t know what program is grinding your disk. Something Linux really needs in top, and yes I know about iotop, but again, not available in a vanilla container.

Les lignes MIB mem et MIB Éch sont les mêmes qu'avec la commande free (bonjour, les questions LPI). Comme vous pouvez le voir sur ma capture d'écran, j'ai 4 Go de mémoire dans mon ordinateur portable, avec 400 Mo libres et environ 1,6 Go en utilisation et en cache. J'ai récemment ouvert mon lecteur de musique ; il met habituellement une ou deux secondes à s'ouvrir, mais la deuxième fois, il l'a fait en un éclair car il se trouvait dans ce tampon/cache. Si vous l'aviez remarqué, vous auriez vu que mon swap commence à être utilisé, ce qui va bientôt ralentir mon système. Je dis « bientôt » car ce sont généralement les pages de mémoire inactives qui sont insérées en premier (mon vieux grief sur le nouveau paradigme de programmation où « la mémoire inutilisée est de la mémoire gaspillée » entre en jeu ici).

Bref, il est temps de faire travailler top pour nous. Ouvrez top et appuyez sur « f » pour voir les options. Vous devriez voir cette sortie se charger - elle peut effrayer les nouveaux venus.

Désolé les nouveaux, vous devez juste vous y faire. Le sélecteur est votre barre d'espace (« Space toggles display » [la barre d'espace change l'affichage], cela n'avait aucun sens pour moi quand je l'ai vu pour la première fois). Vous pouvez sélectionner ce que vous voulez (et ce que vous ne voulez pas) avec elle. Cela devient important lorsque vous avez besoin de voir plus dans votre fenêtre d'affichage limitée. Si vous désélectionnez ce dont vous n'avez pas besoin, ce qui reste aura plus d'espace pour afficher les informations (donc ne sélectionnez pas tout, OK ?). Il vous suffit d'appuyer sur la touche Echap lorsque vous avez terminé et votre nouvelle mise en page vous attend. Tout cela est contrôlable via un fichier .rc si vous voulez de la persistance. Gardez à l'esprit que si vous avez lancé top avec sudo et que vous le relancez sans, il le sera par défaut. Pour ce qui est de la différence de couleur entre top et htop, vous pouvez utiliser la touche « z » pour injecter un peu de couleur, mais c'est du rouge et du rose, pas quelque chose qui m'intéresse. Comme vous pouvez le voir, la granularité des E/S fait cruellement défaut au premier coup d'oeil ; vous ne savez pas quel programme est en train de broyer votre disque. C'est quelque chose dont Linux a vraiment besoin dans top, et oui je connais iotop, mais, encore une fois, ce n'est pas disponible dans un conteneur standard.

The last thing is the mouse support for those key shortcuts at the bottom of top. Sometimes, when F10 press does not work, or you have a keyboard without F-keys, you can click on the F10 for it to exit. This is actually handier than you think and has saved me many times before. This is sorely missing on top. (That sounds weird; it’s not inside, it’s on top!). I have never needed to make top persistently look some way, the default is fine, but it is those extra steps that get to me. Why use three steps, when five will do? Did I make a mistake? Something unclear? misc@fullcirclemagazine.org

La dernière chose est le support de la souris pour ces raccourcis clavier en bas de htop. Parfois, lorsque la touche F10 ne fonctionne pas, ou que vous avez un clavier sans touches F, vous pouvez cliquer sur la zone « F10 » pour sortir. C'est en fait plus pratique que vous ne le pensez et cela m'a déjà sauvé de nombreuses fois. Cela manque cruellement à top (cela semble bizarre ; ce n'est pas à l'intérieur, c'est sur le dessus).

Je n'ai jamais eu besoin de faire en sorte que top ait un aspect persistant, la valeur par défaut est très bien, mais ce sont ces étapes supplémentaires qui me dérangent. Pourquoi utiliser trois étapes, là où cinq suffisent ?

Ai-je fait une erreur ? Quelque chose de pas clair ? misc@fullcirclemagazine.org

issue185/c_c.txt · Dernière modification : 2022/10/04 17:24 de andre_domenech