如何设置htop的默认设置?


46

有时,我需要检查整个数据中心中多台计算机上的资源,以获取合并建议等。我更喜欢htop,主要是因为具有交互式的感觉和显示效果。

有没有一种方法可以将某些设置默认设置为htop?例如,我一直希望显示的一件事是平均CPU负载。

重要说明:在特定的盒子上设置此设置不可行-我正在寻找一种可能在每次ssh放入盒子时动态设置此设置。

这有可能吗?


1
这不是顶部显示的平均负荷数字吗?这个答案解释了它们的含义。
Anko 2014年

Answers:


44

htop有一个设置屏幕,可通过访问该屏幕,该屏幕F2允许您自定义显示的顶部,包括添加或删除“平均负载”字段并设置其样式(文本,栏等)。

这些似乎是自动保存在中的$HOME/.config/htop/htoprc,它警告:

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

即,编辑该内容需您自担风险。但是,您应该能够将其从一个系统转移到另一个系统(版本差异有时可能会引起一些问题)。

您还可以设置配置,退出然后复制文件,以便可以通过交换/符号链接中的任何一个来维护一组不同的配置htoprc


谢谢。我只是一味地从复制的HTOP配置找服务器丑陋寻找服务器。它使看起来难看的服务器看起来很棒!
Thamme Gowda

1
另外,请注意,如果您失去了对htoprc的许可,例如不小心以root / sudo的身份触摸了htoprc,则htop将无法更新此文件,并且将无提示地保存您的更改。
塞林(Cerin)

@Cerin这是重要的一点-如果作者将其添加到他们的答案中,我认为那将是很棒的。
Amr Bekhit,

30

最简单的方法是使用程序中的设置,然后使用F10而不是CTRL+ 保存并退出程序C。下次您可以按自己喜欢的方式关闭程序。


7
TL; DR:使用F10(而不是CTRL-C)退出。
camomileCase

至少在Linux上,以'Q'退出也不会保存您的更改...;(
ljwobker

2
要解除F10的绑定,请在终端窗口中打开Ubuntu中的终端窗口的“文件”菜单:编辑>首选项>常规:取消选中“启用菜单加速键(默认为F10)”
David Oliver,

3

对于任何Mac用户,htop配置文件可能位于以下两个位置之一:

  1. 在home的config子目录下: $HOME/.config/htop/htoprc
  2. 就在主目录:$HOME/.htoprc

htop的联机帮助页和我自己的实验中.config/htop/所述,第一个选项(首选为)。

在2014年的MacBook Pro上,使用了第二个位置,而在2017年的MacBook Pro上,使用了第一个位置,尽管在两种情况下都使用Homebrew进行安装htop,并且两台笔记本电脑(截至10/29/17)均运行macOS 10.12。 .6。(感谢@iconoclast指出了差异)

无论哪种情况,都可以使用相同的配置文件格式,并且在两种情况下,建议您通过htop自己的设置更改任何设置,而不是直接编辑配置文件,因为它是自动生成的。


在我的Mac上为$HOME/.config/htop/htoprc
iconoclast

是的,我自己的较新MBP也是如此。不知道为什么存在差异,但我更新了答案以反映出来。感谢您的来信!
TCAllen07年

1

只是有同样的问题,但是用F10退出htop并不能帮助保存设置。看来该用户~/.config属于root。

要检查此:

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

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

如果它列出了除您以外的任何用户,则应chown使用目录使您的htop能够在其中写入:

sudo chown user:mygroup ~/.config

(用您的用户名和组替换“用户”和“我的组”)

当您只给自己写权限而不更改所有者时,有一种“更软”的方式。但是我无法想象为什么一个人不应该拥有他们的财产~/.config。如果我错了,请告诉我。


也遇到了这个。我知道我已经sudo htop在某个时候运行了,这很可能会使root用户和组保存配置文件。

1

好的,尽管这篇文章可能很旧,但我也遇到了同样的问题。

使用设置htop提供的设置,该设置已由问询者完成,但设置未保存在SSH上,这很可能是因为没有htoprc。创建一个后,htop将使用它来保存和加载设置,而不是默认使用其库存设置。

阅读@goldilocks和@ TCAllen07响应后,我试图检查我是否甚至有一个htoprc。它不存在。因此,即使我从安装拥有配置目录,但如果更改设置,设置也会丢失。为了解决这个问题,我只是使用创建了htoprc文件在其目录中touch .config/htop/htoprc,然后在htop界面中编辑了设置,并cat .config/htop/htoprc查看更改是否已保存。

操作系统:Fedora 25 LK:4.9.9-200.fc25.x86_64


@Fox实际上提供了答案。它也使用了htop提供的设置(已被要求完成),但是设置未保存在SSH上,这很可能是因为没有htoprc。创建一个后,htop将使用它来保存和加载设置,而不是默认使用其库存设置。
Th'Ink-King

1

您还可以使用在所有计算机之间共享的文件夹。假设它/media/shared在所有机器上均等安装。您可以将其设置为$HOMEfor htop,然后它将保存并加载其配置。

HOME=/media/shared htop

这将从htop干净的配置开始。设置并htop使用F10(或q)关闭。您还可以复制当前配置:

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

现在htop在其他计算机上启动:

HOME=/media/shared htop

应该像在以前的计算机上一样配置它。:)


1
不要“聪明”并$HOME通过在shell会话中进行全局设置export HOME=/media/shared。这可能会引起头痛。:-)
hzpc-joostk

1

重置配置文件中的设置

这是Ubuntu 18.04系统上htop的默认设置。替换文件的内容,就$HOME/.config/htop/htoprc可以了。首先进行备份。

# 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 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.