Closed MonicaisHer closed 4 months ago
irqstat
will be excluded from this document, as it lacks an official manual page, and its repo hasn't been maintained for more than three years.
irqtop
can't run successfully:
$ sudo apt install util-linux
$ irqtop
bash: /usr/bin/irqtop: No such file or directory
$ sudo apt install irqtop
$ irqtop -h
<internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require': /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.0.0/curses.so: undefined symbol: rb_safe_level - /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.0.0/curses.so (LoadError)
from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /usr/lib/ruby/vendor_ruby/curses.rb:18:in `rescue in <top (required)>'
from /usr/lib/ruby/vendor_ruby/curses.rb:14:in `<top (required)>'
from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /usr/bin/irqtop:9:in `<main>'
<internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require': cannot load such file -- 3.0/curses.so (LoadError)
from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /usr/lib/ruby/vendor_ruby/curses.rb:16:in `<top (required)>'
from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require'
from /usr/bin/irqtop:9:in `<main>'
irqtop
can't run successfully:$ sudo apt install util-linux $ irqtop bash: /usr/bin/irqtop: No such file or directory
$ sudo apt install irqtop $ irqtop -h <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require': /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.0.0/curses.so: undefined symbol: rb_safe_level - /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.0.0/curses.so (LoadError) from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require' from /usr/lib/ruby/vendor_ruby/curses.rb:18:in `rescue in <top (required)>' from /usr/lib/ruby/vendor_ruby/curses.rb:14:in `<top (required)>' from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require' from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require' from /usr/bin/irqtop:9:in `<main>' <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require': cannot load such file -- 3.0/curses.so (LoadError) from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require' from /usr/lib/ruby/vendor_ruby/curses.rb:16:in `<top (required)>' from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require' from <internal:/usr/lib/ruby/vendor_ruby/rubygems/core_ext/kernel_require.rb>:85:in `require' from /usr/bin/irqtop:9:in `<main>'
The one from irqtop package works for me:
$ man irqtop
...
irqtop ‐ Observe IRQ and SoftIRQ in a top‐like fashion
@mengyi, It looks like it differs from the manual for the irqtop from util-linux, linked in your comment.
I've tested the irqtop
command on my system running Mantic, and it works, I installed from the package:
sudo apt install -y irqtop
But when I tested it on a virtual machine running a Jammy system, I encountered the same problem that @MonicaisHer did.
The problem seems to be that the symbol rb_safe_level
is removed from ruby 3.0, like described here.
Seems also that the Mantic ships ruby with version 3.1
and Jammy with version 3.0
:
As consequence, the gem library curses
installed in /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.0.0/curses.so
for Jammy, and in /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.1.0/curses.so
for Mantic are quite different, you can tell this by it's size and amount of strings on the shared object:
For Jammy:
vm@loki:~$ du -sh /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.0.0/curses.so
64K /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.0.0/curses.so
vm@loki:~$
vm@loki:~$ strings /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.0.0/curses.so | wc -l
465
vm@loki:~$
For Mantic:
lincoln@fenrir:~$ du -sh /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.1.0/curses.so
88K /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.1.0/curses.so
lincoln@fenrir:~$
lincoln@fenrir:~$ strings /usr/lib/x86_64-linux-gnu/ruby/vendor_ruby/3.1.0/curses.so | wc -l
755
lincoln@fenrir:~$
The irqtop issue is reportedly fixed on newer versions of ruby-curses. But Jammy is still on 1.2.4.
It has been reported here.
Since this documentation targets 22.04, it is best to exclude it and create an issue to have it added for 24.04.
This PR adds tools for measuring real-time metrics including
ps
,perf
,stress-ng
,Cyclictest
,dstat
,watch
. Each tool has a brief description of real-time uses and includes a link to its manual page.PR Preview