Como posso definir as configurações padrão para o htop?

46

Ocasionalmente, preciso verificar recursos em várias máquinas em nossos data centers para obter recomendações de consolidação e coisas do gênero. Eu prefiro o htop, principalmente por causa da sensação interativa e da tela.

Existe uma maneira de padronizar algumas configurações na minha configuração do htop? Por exemplo, uma coisa que eu sempre gostaria de mostrar é a carga média da CPU.

nota importante: Definir isso em caixas específicas não é algo viável - estou procurando talvez uma maneira de definir isso dinamicamente toda vez que coloco na caixa.

Isso é possível em tudo?

MrDuk
fonte
1
Não são essas as médias dos números de carga na parte superior? Esta resposta explica o que eles significam.
Anko

Respostas:

44

htoppossui uma tela de configuração, acessada via F2, que permite personalizar a parte superior da tela, incluindo adicionar ou remover um campo "Média de carga" e definir seu estilo (texto, barra, etc.).

Eles parecem ser salvos automaticamente $HOME/.config/htop/htoprc, o que avisa:

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

Ou seja, edite isso por sua conta e risco. No entanto, você deve poder transferi-lo de um sistema para outro (diferenças de versão podem ocasionalmente causar um pouco de problema).

Você também pode definir uma configuração, sair e, em seguida, copiar o arquivo, para manter um conjunto de configurações diferentes trocando / simbolizando a que tiver htoprc.

Cachinhos Dourados
fonte
Obrigado. Apenas copiei cegamente a configuração do htop de um servidor com boa aparência para um servidor com aparência feia . Isso fez o servidor com aparência feia parecer ótimo!
Thamme Gowda
1
Além disso, observe que, se você perder a permissão do seu htoprc, como tocá-lo acidentalmente como root / sudo, o htop não poderá atualizar este arquivo e silenciosamente falhará ao salvar suas alterações.
Cerin
@ Cerin Este é um ponto importante - acho que seria ótimo se o autor o adicionasse à sua resposta.
Amr Bekhit
30

A maneira mais fácil é usar a instalação no programa e salvar e sair do programa com F10, não com CTRL+ C. Da próxima vez, você pode fechar o programa da maneira que desejar.

keiner
fonte
7
TL; DR: saia com F10, não com CTRL-C.
camomileCase
Pelo menos no linux, sair com 'Q' também não salva suas alterações ...; (
ljwobker
2
Para desvincular o F10 de abrir o menu Arquivo da janela do terminal no Ubuntu, em uma janela do terminal: Editar> Preferências> Geral: desmarque 'Ativar a tecla aceleradora de menu (F10 por padrão)'
David Oliver
3

Para qualquer usuário de Mac, o htoparquivo de configuração pode estar localizado em um dos dois locais:

  1. em um subdiretório de configuração em casa: $HOME/.config/htop/htoprc
  2. logo no diretório home: $HOME/.htoprc,

A primeira opção (abaixo .config/htop/é a preferida - como mencionado na página de manual do htop, bem como em meus próprios experimentos.

Em um MacBook Pro de 2014, o segundo local foi usado, enquanto em um MacBook Pro de 2017 o primeiro local foi usado, embora em ambos os casos o Homebrew tenha sido usado para instalar htope os dois laptops estejam (a partir de 29/10/17) executando o macOS 10.12 .6. (obrigado a @iconoclast por apontar a discrepância)

Em ambos os casos, o mesmo formato de arquivo de configuração pode ser usado e, nos dois casos, é recomendável alterar as configurações através htopda própria configuração, em vez de editar diretamente o arquivo de configuração, pois ele é gerado automaticamente.

TCAllen07
fonte
no meu Mac é$HOME/.config/htop/htoprc
iconoclast
Sim, o mesmo se aplica ao meu próprio MBP mais recente. Não sei por que a diferença existe, mas atualizei a resposta para refleti-la. Obrigado pela observação!
TCAllen07
1

Só tive o mesmo problema, mas sair do htop com F10 não ajudou a salvar as configurações. Parecia que este usuário ~/.configpertencia à raiz.

Para verificar isso:

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

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

Se ele listar qualquer usuário que não seja você, você deve chowno diretório para tornar seu htop capaz de escrever nele:

sudo chown user:mygroup ~/.config

(substitua "usuário" e "meu grupo" pelo seu nome de usuário e grupo)

Existe uma maneira "mais suave" quando você apenas se permite escrever, mas não altera o proprietário. Mas não consigo imaginar por que não se deve possuir os seus ~/.config. Por favor me diga se estou errado.

Nick Volynkin
fonte
Também encontrou isso. Eu sei que corri sudo htopem algum momento, o que provavelmente acabou salvando o arquivo de configuração com o usuário e o grupo root.
1

Ok, embora este post possa ser antigo, tive o mesmo problema.

Use a configuração que o htop já havia feito, mas as configurações não estavam sendo salvas no SSH, o que provavelmente ocorre porque não há htoprc. Ao criar um, o htop o utilizará para salvar e carregar configurações, em vez de padronizar sua configuração de estoque.

Depois de ler as respostas @goldilocks e @ TCAllen07, procurei verificar se eu tinha um htoprc para começar. Não estava presente. Portanto, mesmo que eu possuísse meu diretório de configuração da instalação, se eu mudasse a instalação, as configurações seriam perdidas. Para resolvê-lo, simplesmente criei o arquivo htoprc em seu diretório usando touch .config/htop/htoprc, editei as configurações na interface htop e usei cat .config/htop/htoprcpara ver se as alterações foram salvas.

SO: Fedora 25 LK: 4.9.9-200.fc25.x86_64

Rei da Tinta
fonte
@ Fox, a resposta é de fato fornecida. Também é usado o setup que o htop fornece, o que o pedido já havia feito, mas as configurações não estavam sendo salvas no SSH, o que provavelmente ocorre porque não há htoprc. Ao criar um, o htop o utilizará para salvar e carregar configurações, em vez de padronizar sua configuração de estoque.
Th'Ink-King
1

Você também pode usar uma pasta compartilhada entre todas as suas máquinas. Digamos que /media/sharedseja montado igualmente em todas as máquinas. Você pode configurá-lo como $HOMEfor htop, para que ele salve e carregue sua configuração lá.

HOME=/media/shared htop

Isso começará htopcom uma configuração limpa. Configure e feche htopcom F10(ou q). Você também pode copiar sua configuração atual:

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

Agora inicie htopem sua (s) outra (s) máquina (s):

HOME=/media/shared htop

Ele deve ser configurado como você fez na sua máquina anterior. :)

hzpc-joostk
fonte
1
Não seja "inteligente" e defina $HOMEglobalmente sua sessão de shell fazendo isso export HOME=/media/shared. Isso pode causar dores de cabeça. :-)
hzpc-joostk 01/08/19
1

Redefina as configurações no arquivo de configuração

Estas são as configurações padrão para o htop em um sistema Ubuntu 18.04. Substitua o conteúdo do arquivo $HOME/.config/htop/htoprce você deverá ficar bem. Faça um backup primeiro.

# 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
fonte