在 gnome 19.04 下,baloo
创建一个 64GB 索引,占用了我 16GB 内存的一半和 25% 的 CPU。
卸载baloo
后
Ubuntu 18.04 LTS 中的 baloo_file_extractor 占用大量内存
问题就解决了。
我还是想了解:
- 我如何获得
baloo
,可能是通过安装dolphin
? baloo
运行 gnome 时它对我有什么作用?
答案1
我使用 模拟了在 Ubuntu 19.04 上安装 Dolphin apt install -s dolphin
。然后在输出中搜索包含“baloo”的软件包:
dkb: ~/Desktop $ grep -i baloo baloo.txt
输出:
Inst libkf5balooengine5 (5.56.0-0ubuntu1 Ubuntu:19.04/disco [amd64])
Inst libkf5baloo5 (5.56.0-0ubuntu1 Ubuntu:19.04/disco [amd64])
Inst baloo-kf5 (5.56.0-0ubuntu1 Ubuntu:19.04/disco [amd64])
Inst libkf5baloowidgets-data (4:18.12.3-0ubuntu1 Ubuntu:19.04/disco [all])
Inst libkf5baloowidgets5 (4:18.12.3-0ubuntu1 Ubuntu:19.04/disco [amd64])
Inst libkf5baloowidgets-bin (4:18.12.3-0ubuntu1 Ubuntu:19.04/disco [amd64])
在 Ubuntu 19.04 上安装 Dolphin 会引入 100 多个软件包,包括上面列出的软件包。(最后一个软件包不会如果我使用的话,就会被拉进来--no-install-recommends
。)可以相当安全地得出结论,在您的系统上安装 Dolphin 或不建议拉进来 baloo。
为了验证安装 Dolphin 时确实安装了 baloo,我sudo apt install dolphin
在 Ubuntu 19.04 的虚拟机中运行了它。
0 upgraded, 181 newly installed, 0 to remove and 0 not upgraded.
Need to get 41.2 MB of archives.
After this operation, 206 MB of additional disk space will be used.
安装完成后,我继续但没有运行 Dolphin,我跑了pgrep -a baloo
,又得到了提示。换句话说,baloo 没有跑。
我重新启动并pgrep -a baloo
再次运行但没有运行 Dolphin:
dkb: ~ $ pgrep -a baloo
1672 baloo_file
dkb: ~ $
Top 没有显示任何异常活动,可能是因为 baloo 索引的内容不多。这反映在索引文件的大小上:
dkb: ~/.local/share/baloo $ ls -al
total 516
drwxrwxr-x 2 dkb dkb 4096 Jun 28 18:05 .
drwx------ 23 dkb dkb 4096 Jun 28 18:11 ..
-rw-rw-r-- 1 dkb dkb 516096 Jun 28 18:05 index
-rw-rw-r-- 1 dkb dkb 8192 Jun 28 18:06 index-lock
dkb: ~/.local/share/baloo $
然后我启动了 Dolphin(同时保持一个运行 top 的终端窗口)。同样,由于索引的内容很少,top 没有显示任何异常活动,并且pgrep -a baloo
给出的输出与我重启后得到的相同。
我还是想了解
How did I got baloo'd, by installing dolphin maybe? What does baloo do for me when running gnome?
- 在我的 Ubuntu 19.04(GNOME)上安装 Dolphin 后安装了 Baloo。
- Baloo 可以索引文件,也可以索引文件内容。因此,在 Dolphin 中,您可以按文件名称搜索文件,也可以搜索特定文件中的字符串*。在下图中,我搜索了字符串十四行诗出自《无处不在》。
截图有顶部在一旁奔跑。
因此,即使在 GNOME 会话中,您也可以使用 Dolphin-baloo 组合。但是,默认情况下
- baloo 不会索引点文件和点文件夹的内容以及列出的排除文件类型〜/.config/baloofilerc。
- baloo 也不索引外部媒体。
- 如果您有大量可索引的文件,baloo 在第一次运行时(以及每当您一次添加大量可索引的文件时)将消耗大量资源。
- 如果数据库损坏,baloo 可能会对某些文件造成堵塞或卡住。
- 有些用户限制 baloo 只索引文件而不索引其内容。我让 baloo 做这两件事(但我添加了几个额外的排除项,以免 baloo 超负荷)。
*我不知道您在 Ubuntu 上安装 Dolphin 的原因,因此无法进一步评论。如果您有兴趣保留 Dolphin 但不想让 baloo 处于活动状态,请运行
balooctl status
在我的 Kubuntu 上,它显示
04:27 PM ~/Desktop $ balooctl status
Baloo File Indexer is running
Indexer state: Idle
Indexed 2323 / 2323 files
Current size of index is 193.11 MiB
06:53 PM ~/Desktop $
然后,运行
balooctl disable
这样做会禁用文件索引器。禁用状态在 Ubuntu 19.04 (GNOME) 上重启后仍然存在:
dkb: ~ $ balooctl status
Baloo is currently disabled. To enable, please run balooctl enable
dkb: ~ $
相关阅读:禁用 baloo_file_extractor 是否安全?
编辑:这是我~/.config/baloofilerc
在 Kubuntu 中的18.04 ***:
[Basic Settings]
Indexing-Enabled=true
[General]
dbVersion=2
exclude filters=.moc,.pch,*.po,CMakeFiles,*.o,confstat,*.m4,.xsession-errors*,lost+found,.hg,*.part,__pycache__,*.swap,CMakeTmp,*.elc,CVS,libtool,Makefile.am,*.aux,*.lo,cmake_install.cmake,config.status,lzo,moc_*.cpp,ui_*.h,CMakeCache.txt,*.vm*,CMakeTmpQmake,*.rcore,*.pyc,.obj,*.gmo,core-dumps,confdefs.h,autom4te,qrc_*.cpp,conftest,*.rej,.histfile.*,*.class,po,*.tmp,*.la,*.loT,*.orig,.git,*.omf,*~,_darcs,.uic,CTestTestfile.cmake,.svn,.bzr,litmain.sh,*.moc,*.nvram,*.csproj,*.pc,*.jpg,*.png,*.iso.,*.AppImage,*.deb,*.mp4,*.mkv
exclude filters version=2
exclude folders[$e]=$HOME/.cache/,$HOME/.config/,$HOME/.dropbox/,$HOME/.dropbox-dist/,$HOME/.local/,$HOME/.mozilla/,$HOME/.recoll/,$HOME/.themes/,$HOME/.thumbnails/,$HOME/Desktop/,$HOME/Downloads/,$HOME/Dropbox/Screenshots/,$HOME/MyFox/,$HOME/Public/GeanyBackups/
first run=false
folders[$e]=$HOME/
only basic indexing=false
***:我认为baloo
Kubuntu 18.04 中的版本忽略了点文件和点文件夹,因此排除点文件可能是不必要的!
答案2
你的问题:
我如何获得
baloo
,可能是通过安装dolphin
?aptitude why
显示需要安装软件包的原因(sudo apt-get install aptitude
如果没有,请使用以下命令安装)。例如,我遇到了和你一样的问题,我运行了$ dpkg -l | grep baloo ii baloo-kf5 5.68.0-0ubuntu1 amd64 framework for searching and managing metadata ii libkf5baloo5 5.68.0-0ubuntu1 amd64 framework for searching and managing metadata core lib. ii libkf5balooengine5 5.68.0-0ubuntu1 amd64 framework for searching and managing metadata plugins ii libkf5baloowidgets-bin 4:19.12.3-0ubuntu1 amd64 Wigets for use with Baloo - binaries ii libkf5baloowidgets-data 4:19.12.3-0ubuntu1 all Wigets for use with Baloo - data files ii libkf5baloowidgets5:amd64 4:19.12.3-0ubuntu1 amd64 Wigets for use with Baloo
告诉包的名称,然后
$ aptitude why baloo-kf5 i dolphin-plugins Depends dolphin i A dolphin Depends baloo-kf5 $ aptitude why libkf5baloo5 i dolphin-plugins Depends dolphin i A dolphin Depends libkf5baloo5 (>= 5.3.0+git20150512) $ aptitude why libkf5balooengine5 i dolphin-plugins Depends dolphin i A dolphin Depends libkf5baloo5 (>= 5.3.0+git20150512) i A libkf5baloo5 Depends libkf5balooengine5
来告诉依赖链,这些依赖链会导致安装一些
baloo
-相关软件包(仅出于说明目的,第一个命令aptitude
已经显示了dolphin
requiredbaloo
)。最后一个命令的输出中显示的信息应为:“已dolphin-plugins
手动安装。required ,然后自动安装。required ,然后自动安装。required ,然后自动安装。 不需要任何其他软件包即可自动安装。”dolphin-plugins
dolphin
dolphin
libkf5baloo5
libkf5baloo5
libkf5balooengine5
libkf5balooengine5
baloo
运行 gnome 时它对我有什么作用?我将其分为两部分。- ...是做什么的
baloo
?一般来说,baloo
对文件进行索引,以便以后快速搜索。
与其他索引器有何不同mlocate
?mlocate
仅索引文件名。baloo
可以索引文件内容,以便搜索返回“更好”的结果(取决于您配置的方式baloo
)。当然,baloo
可以配置为仅索引文件名(请参阅定位与 baloo并在那里回答),例如为了存储空间,在这种情况下它类似于mlocate
。 - ... 运行 gnome 时对我来说如何?
这可以改写为我该如何使用索引的数据baloo
? 正如预期的那样,dolphin
利用baloo
搜索来搜索文件,无论是名称还是内容(您可以使用右上角的放大镜或侧栏中的“搜索”列表来拉动)。无论您使用 Gnome 还是其他会话管理器,都可以这样做。
此外,侏儒(在这里我专门回答你提到的这个问题)有其活动搜索栏,这是一个更复杂的搜索工具。无需过多介绍,这个 Gnome 搜索由搜索提供商。初始安装时会设置一些此类提供商,但您可以添加其他提供商,以便搜索结果也包括这些提供商。原则上,我猜想
baloo
也可能是搜索提供商。到目前为止,我找不到有关如何执行此操作的信息。- ...是做什么的
答案3
截至 2020 年 2 月 11 日,在从 18.04 升级到 20.04 后,baloo syslog 问题首次出现。文件 /var/log/syslog 的大小激增。
对此要绝对清楚。运行
balooctl disable
并没有阻止问题。我使用
sudo apt-get remove baloo-kf5
然后我使用以下方法裁剪系统日志文件
sudo sh -c 'cat /dev/null > /var/log/syslog'
syslog 已达到约 40GB,syslog.1 为 48GB
这段代码是恶意的。我随后才发现 baloo 在
.local/share/baloo/index
这也是 48GB。迫切需要对 baloo 采取一些措施。阅读论坛上的所有各种帖子,这个问题自 2014 年以来一直是一个反复出现的问题,没有“好的”解决方案。显然,根据我的经验,它今天仍然是一个问题。
答案4
按照上面的答案,我仍然发现巴鲁在奔跑并消耗了大量的资源。总结一下,在这一点上,似乎终于埋葬了这个最邪恶的恶魔:
我禁用了索引器:
balooctl disable
我删除了该包
baloo-kf5
,但仍然发现 baloo 进程正在运行和生成,所以我最终这样做了:sudo apt remove baloo-kf5 libkf5baloo5 libkf5balooengine5
之后,我检查了一下,看看出于某种原因,baloo 是否仍然和 top 在一起......结果是......
- 所以,最后,不要忘记终止之前运行的 baloo 进程,并且如上所述检查
~/.local/shared/baloo
其是否膨胀。
或许sudo apt purge
这是一个更好的主意,但无论如何......
真是胡说八道,我很烦...
如果产生了 baloo 进程,我就会点燃我的盒子......