The next release of pgrep will be able to filter on control group or cgroup names. With the newer libproc-2 library it was an easy fix to add.

For some reason, UEFI decided I should boot into windows first. Oh, and also make the Bluetooth disappear off the laptop.

The Bluetooth after a few reboots reappeared but for the boot sequence try efibootmgr

I'm not sure if this makes the answer any easier, but it gives more points of view.

Show thread

I've been trying to work out what pgpgin and pgpgout values in /proc/vmstat are measured in. Is it in blocks or KiB?

Unfortunately, most references are either vague or point back to vmstat.8 which is not helpful.

Anyone got any idea of what they are and more importantly a decent reference?

Ever wanted to go back to the future? Wondered what old timely system administrators saw back the dark ages?

Digging around the ps code last night I had to trace some of the old personality and sort code.

Try this for some old school ps:


There are other flags too but you get the idea. I'm not sure how old that is but the update to make ps emulate old ps is 2002 so before then.

For many years, I've known that when you write signal handlers you have to be careful about what functions are found there.

However, there is a list of known-good functions in the signal safety man page

Of particular note, your usual stdio print functions are *not* on that list.

version 3.3.17 was
released today. This version has some minor fixes and improvements and now
includes some translated manpages. Other enhancements include:
* New command pwait - waits for a given process to finish
* Top handles more CPUs more gracefully
* sysctl now follows the systemd version better, especially around
directory order

procps-ng v3.3.17 is at gitlab at or a tarball on
sourceforge at

version 23.4 was released today, both as an upstream source package and package 23.4-1

This release has some minor fixes and updates; if you liked the -Z flag in ps, then pstree has this for you.

Maybe fuser will be less confused about device IDs, but I'm pretty sure someone out there is crafting up an even stranger storage device setup.

Tarballs located at or get it from git at

Two new fixes for tonight.

The first is fuser failed to match mount devices due to the new code checking for duplicate mounts. So it knows the difference between /mnt/a and /mnt/b but ignored /dev/sda1. Now it only checks the pathname if it is not a block device.

pstree had a problem with output alignment when using the colourise option.

The watch program from the package has a new trick. Someone asked if there was a way to truncate the output instead of line-wrapping.

Watch already detects the width of the screen because it uses ncurses to output the lines so it needs to know where on the screen the next character will go. It was just a matter of hooking into the "run out of width" part of the code and eat the input until we hit an end of line.

So soon if you want to chomp those lines, you can!

Are you one of those people with some mad system with lots of CPUs? Having a hard time trying to see them all? Well top is coming out with two new features.

The first is two CPUs per row for wide (about over 160 columns) screens.

The second is to be able to group cpus into, um groups, so you can see pairs of cpu stats aggregated or 4 aggregated etc.

The solution I eventually used was an evil kludge. It just matches the path of the mount point and the real path of the target file (so followed symlinks etc).

Evil, but lsof does this same thing so at least I will have company.

Show thread

Got a real puzzle around how handles NFS mounts. From the same server they have the same device ID. This means things like fuser don't work.

Files that are opened by a process are found in /proc/PID/fd and fuser stat()s them to find the device ID, then it scans the mounts to match so you can do things like "who has files open under /mydir"?

For NFS this just does not work because all mounts from the same server will state they have files open.

The project is planning on holding a mini DebConf online.

This will be "4 days of Debianites working together to improve Debian" and will be totally online like all the cool kids are doing.

It will be 28-31st May 2020, more details at

The venerable kill and signal action is used to send signals across processes, but you can also send small amounts of data across in the signal.

I just found out someone still maintains one of the first free software programs I wrote so many years ago. Checked the changelog and it was 25 July 1995! A 24 -year old program still in use.

There has been a bit of a clean up and all my comment out debug code removed (good!) but its basically the same.

Fortunately the Linux kernel driver I wrote has long gone 😱

psmisc is almost ready for release. I have sent a pre-release version over to the translation project for the updated translated files. Give them a few days and then it will be ready.

I added a new feature to pstree last night. It will now can show the age of processes in colour. The colours and ages of processes (minute, hour, other) are fixed for now but there is room for expansion later. That should be the last thing before the next release.

which finds processes based on your selection criteria and part of now lets you select processes based on state.

Now if you want to go zombie hunting on your server, you can!

For many years a process command name has been 15 characters. There has been a recent change to make it now 32 characters so programs like needed to be updated.

The issue is, people are used to programs truncating to 15 characters, so things stopped matching.

I just uploaded a fix so if the process name is exactly 15 characters long and the given option is longer, it will match at 15 characters too

Show older
Mastodon on Dropbear

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!