root@kedoyaha:/etc# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
root@kedoyaha:/etc# docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
ca77c48b366e homeassistant/aarch64-hassio-supervisor "/init" 2 seconds ago Created hassio_supervisor
df241d978714 portainer/portainer-ce "/portainer" 52 minutes ago Exited (2) 25 minutes ago 8000/tcp, 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp portainer
When I do docker ps show nothing but if I put docker ps -a it show my container.
Portainer is now cant be called from port 9000 and suppose to be running, before reboot I can access it. So there are something being done by the supervisor scripts that break docker. The system keep on making machine-id directory.
The problem is clear that hassio-supervisor when it first runs creates /etc/machine-id and `/var/lib/dbus/machine-id’ as a directory instead of files. Removing both directories won’t delete it as long hassio-supervisor is up and running.
Temporary solutions (thanks to @Tamsy) for his guide by making these steps.
I doubt that the issue with machine-id you encounter has anything to do with the install-script at @kanga_who’s instructions nor with bugs on the current supervisor-install.
From the Debian-Wiki:
The /etc/machine-id file contains the unique machine ID of the local system that is set during installation or boot. The machine ID is a single newline-terminated, hexadecimal, 32-character, lowercase ID. When decoded from hexadecimal, this corresponds to a 16-byte/128-bit value. This ID may not be all zeros.
What is it used for:
Creation of DHCP host identifier (probably causing multiple machines fighting over the same IP address on the DHCP server)
GNOME stores screen layout configuration keyed by machine ID
The systemd-boot EFI bootloader stores the OS installation’s kernel(s) in a directory named after the machine ID to prevent collisions.
For configuring kernel parameters permanently you have to work with syctl but I am not really advise to do so unless you know exactly what you are doing
I didn’t read bebe’s message carefully enough. My apologize for that.
@BebeMischa: For Debian on x86_64 with GRUB installed as bootloader to add kernel parameters and make them persistent you have to edit:
$ sudo nano /etc/default/grub
Find the line starting with: GRUB_CMDLINE_LINUX_DEFAULT="[whatever-is-already-in-there]"
and add the new parameters: GRUB_CMDLINE_LINUX_DEFAULT="[whatever-is-already-in-there] systemd.unified_cgroup_hierarchy=false systemd.legacy_systemd_cgroup_controller=false"
(all in one line, each command seperated with [space] and inbetween the quotation marks)
Save the file and close the editor.
Now run: $ sudo update-grub
If no error message pops up, on the next reboot the kernel should be started with the new boot parameters.
To verify your changes after reboot execute: $ sudo cat /proc/cmdline
Where should we add systemd.unified_cgroup_hierarchy=false and systemd.legacy_systemd_cgroup_controller=false in a Pi4? I added them in /boot/cmdline.txt, rebooted but it doesn’t seem to make a difference (I still see no RAM usage).
Edit: Indeed the output of cat /proc/cmdline verifies that the above parameters have been set. But I see no difference (eg. RAM usage).