Comment définir les paramètres par défaut pour htop?

46

De temps en temps, je dois vérifier les ressources de plusieurs machines de nos centres de données pour des recommandations de consolidation, etc. Je préfère htop, principalement à cause de la sensation interactive et de l'affichage.

Existe-t-il un moyen de configurer par défaut certains paramètres de ma configuration pour htop? Par exemple, une chose que j'aimerais toujours montrer est la charge moyenne du processeur.

Remarque importante: Définir ceci sur des cases spécifiques n'est pas faisable - je cherche peut-être un moyen de le définir de manière dynamique chaque fois que je ssh dans la case.

Est-ce possible?

MrDuk
la source
1
N'est-ce pas ce que les nombres pour les moyennes de charge au sommet montrent? Cette réponse explique ce qu'ils veulent dire.
Anko

Réponses:

45

htoppossède un écran de configuration, accessible via F2, qui vous permet de personnaliser la partie supérieure de l’affichage, notamment d’ajouter ou de supprimer un champ "Moyenne de charge" et de définir son style (texte, barre, etc.).

Celles-ci semblent être automatiquement enregistrées $HOME/.config/htop/htoprc, ce qui indique:

# Beware! This file is rewritten by htop when settings are changed in the interface.
# The parser is also very primitive, and not human-friendly.

C'est-à-dire, éditez-le à vos risques et périls. Cependant, vous devriez pouvoir le transférer d'un système à un autre (des différences de version peuvent parfois être à l'origine d'un problème).

Vous pouvez également configurer une configuration, quitter, puis copier le fichier, de manière à pouvoir conserver un ensemble de configurations différentes en échangeant / en créant une liaison symbolique avec l'une des deux htoprc.

boucle d'or
la source
Merci. Je aveuglément recopié config htop d'une bonne recherche serveur laid serveur recherche. Le serveur atypique avait fière allure!
Thamme Gowda
1
Notez également que si vous perdez la permission sur votre htoprc, par exemple en le touchant par inadvertance en tant que root / sudo, htop ne pourra pas mettre à jour ce fichier et ne pourra pas enregistrer vos modifications en mode silencieux.
Cerin
@Cerin C'est un point important - je pense que ce serait formidable si l'auteur ajoutait cela à sa réponse.
Amr Bekhit
30

Le moyen le plus simple consiste à utiliser la configuration dans le programme, puis à enregistrer et à quitter le programme avec F10, pas avec CTRL+ C. La prochaine fois, vous pourrez fermer le programme comme bon vous semble.

Keiner
la source
7
TL; DR: quitte avec F10, pas CTRL-C.
camomileCase
Au moins sur linux, quitter avec 'Q' ne sauvegarde pas non plus vos modifications ...; (
ljwobker
2
Pour dissocier F10 de l’ouverture du menu Fichier de la fenêtre du terminal dans Ubuntu, dans une fenêtre du terminal: Édition> Préférences> Général: décochez la case "Activer la touche de raccourci du menu (F10 par défaut)"
David Oliver
3

Pour tous les utilisateurs Mac, le htopfichier de configuration peut être situé dans l'un des deux emplacements suivants:

  1. sous un sous-répertoire config à la maison: $HOME/.config/htop/htoprc
  2. à droite au répertoire: $HOME/.htoprc,

La première option (sous .config/htop/est préférable - comme indiqué dans la page de manuel de htop ainsi que dans mes propres expériences.

Le second emplacement a été utilisé sur un MacBook Pro 2014, alors que sur un MacBook Pro 2017, le premier emplacement est utilisé, bien que dans les deux cas, Homebrew était utilisé pour l'installation htopet que les deux ordinateurs portables sont (à compter du 10/29/17) sous macOS 10.12 .6. (merci à @iconoclast pour avoir signalé la divergence)

Dans les deux cas, le même format de fichier de configuration peut être utilisé et, dans les deux cas, il est recommandé de modifier les paramètres via sa htoppropre configuration au lieu de modifier directement le fichier de configuration, car il est généré automatiquement.

TCAllen07
la source
sur mon Mac il est à$HOME/.config/htop/htoprc
iconoclast
Oui, la même chose est vraie pour mon nouveau MBP. Je ne sais pas pourquoi la différence existe, mais j'ai mis à jour la réponse pour la refléter. Merci pour la note!
TCAllen07
1

Je viens d'avoir le même problème, mais quitter htop avec F10 n'a pas aidé à enregistrer les paramètres. Il est apparu que cet utilisateur ~/.configappartenait à root.

Pour vérifier ceci:

$user@host:~$ ls -hal ~ |grep config

drwx------  4 root root 4.0K Mar 25  2015 .config

S'il répertorie un utilisateur autre que vous, vous devriez chowncréer un répertoire pour que votre htop puisse y écrire:

sudo chown user:mygroup ~/.config

(remplacez "utilisateur" et "mon groupe" par votre nom d'utilisateur et votre groupe)

Il y a une manière "plus douce" de simplement se donner la permission d'écrire sans changer de propriétaire. Mais je ne peux pas imaginer pourquoi on ne devrait pas posséder leur ~/.config. S'il vous plaît dites-moi si je me trompe.

Nick Volynkin
la source
Aussi rencontré cela. Je sais que j'ai exécuté sudo htopà un moment donné, ce qui a probablement fini par enregistrer le fichier de configuration avec l'utilisateur et le groupe de root.
1

D'accord, bien que ce post puisse être vieux, j'ai eu le même problème.

Utilisez la configuration fournie par htop, ce que le demandeur avait déjà fait, mais les paramètres n’étaient pas sauvegardés sous SSH, ce qui est probablement dû au fait qu’il n’existe pas de htoprc. Lors de la création de celui-ci, htop l’utilisera ensuite pour enregistrer et charger les paramètres, plutôt que de définir sa configuration par défaut.

Après avoir lu les réponses @goldilocks et @ TCAllen07, j'ai cherché à vérifier si j'avais même un htoprc pour commencer. Ce n'était pas présent. Ainsi, même si je possédais mon répertoire de configuration depuis l’installation, si je changeais la configuration, les paramètres seraient perdus. Pour le résoudre, j'ai simplement créé le fichier htoprc dans son répertoire à l'aide de touch .config/htop/htoprc, puis j'ai modifié les paramètres à partir de l'interface htop et utilisé cat .config/htop/htoprcpour voir que les modifications avaient été enregistrées.

Système d'exploitation: Fedora 25 LK: 4.9.9-200.fc25.x86_64

Th'Ink-King
la source
@ Fox la réponse est en fait fournie. Il faut aussi utiliser la configuration fournie par htop, ce que le demandé avait déjà fait, mais les paramètres n’étaient pas sauvegardés sous SSH, ce qui est probablement dû au fait qu’il n’existe pas de code htoprc. Lors de la création de celui-ci, htop l’utilisera ensuite pour enregistrer et charger les paramètres, plutôt que de définir sa configuration par défaut.
Th'Ink-King
1

Vous pouvez également utiliser un dossier partagé entre toutes vos machines. Disons que cela /media/sharedest monté également sur toutes les machines. Vous pouvez définir comme $HOMEpour htop, alors il sauvegarder et charger sa configuration là - bas.

HOME=/media/shared htop

Cela commencera htoppar une configuration propre. Configuration et fermer htopavec F10(ou q). Vous pouvez également copier votre configuration actuelle:

cp ~/.config/htop/htoprc /media/shared/.config/htop/htoprc

Maintenant lancez htopsur votre autre machine (s):

HOME=/media/shared htop

Il devrait être configuré comme vous l'avez fait sur votre machine précédente. :)

hzpc-joostk
la source
1
Ne soyez pas "intelligent" et définissez $HOMEglobalement votre session shell en le faisant export HOME=/media/shared. Cela peut causer des maux de tête. :-)
hzpc-joostk
1

Réinitialiser les paramètres dans le fichier de configuration

Ce sont les paramètres par défaut pour htop sur un système Ubuntu 18.04. Remplacez le contenu du fichier $HOME/.config/htop/htoprcet ça devrait aller. Faites d'abord une sauvegarde.

# Beware! This file is rewritten by htop when settings are changed in the interface.
# # The parser is also very primitive, and not human-friendly.
fields=0 48 17 18 38 39 40 2 46 47 49 1 
sort_key=1
sort_direction=1
hide_threads=0
hide_kernel_threads=1
hide_userland_threads=0
shadow_other_users=0
show_thread_names=0
show_program_path=1
highlight_base_name=0
highlight_megabytes=1
highlight_threads=1
tree_view=0
header_margin=1
detailed_cpu_time=0
cpu_count_from_zero=0
update_process_names=0
account_guest_in_cpu_meter=0
color_scheme=0
delay=15
left_meters=LeftCPUs Memory Swap 
left_meter_modes=1 1 1 
right_meters=RightCPUs Tasks LoadAverage Uptime 
right_meter_modes=1 2 2 2 
Stefan
la source