less-logging.ash
The snippet can be accessed without any authentication.
Authored by
element00 .
Replaces some log files with links to /dev/null
, and covers some directories used for storing logs with a tmpfs
.
To be run from the root directory of prebuilt Plasma Desktop pmOS images.
less-logging.ash 8.02 KiB
#/bin/busybox ash
# TODO: check that we're root, and exit or prompt user to continue
busybox find -group 1000 -o -user 1000 -exec busybox chown -hcv 0:0 {} +
busybox rm -v \
home/user/.local/share/kwalletd/kdewallet.kwl \
home/user/.local/share/kwalletd/kdewallet.salt \
etc/skel/.local/share/kwalletd/kdewallet.kwl \
etc/skel/.local/share/kwalletd/kdewallet.salt;
printf '%s\n%s\n' '127.0.0.1 localhost' '::1 ip6-localhost localhost' | busybox tee etc/hosts;
printf '%s' '[device]
wifi.scan-rand-mac-address=yes
[connection]
wifi.cloned-mac-address=random
ethernet.cloned-mac-address=random
connection.stable-id=${CONNECTION}/${BOOT}
' | busybox tee etc/NetworkManager/conf.d/00-macrandomize.conf;
busybox chmod -cv 0755 tmp var/tmp;
busybox ln -vs /usr/bin/lddtree /usr/local/bin/ldd;
busybox mkdir root/.cache \
home/user/.cache home/user/.tor home/user/.android home/user/.lldb \
home/user/.local/state \
home/user/.local/share/sddm \
home/user/.config/Signal home/user/.config/Signal/logs \
home/user/Downloads home/user/Pictures home/user/Videos \
var/lib/machines
var/lib/portables
var/lib/private
var/lib/sddm/.cache var/lib/sddm/.local var/lib/sddm/.dbus;
for f in \
root/.ash_history root/.bash_history root/.python_history root/.zsh_history \
home/user/.ash_history home/user/.bash_history home/user/.python_history home/user/.zsh_history \
home/user/.lldb/lldb-widehistory \
home/user/.config/Signal home/user/.config/Signal/logs \
home/user/.local/share/recently-used.xbel \
home/user/.local/share/user-places.xbel \
home/user/.local/share/user-places.xbel.bak \
home/user/.local/share/user-places.xbel.tbcache \
home/user/.local/share/sddm/wayland-session.log \
var/lib/sddm/.local/share/sddm.log; do {
busybox ln -vs /dev/null "$f";
}; done;
busybox chown 10000:10000 -hcv home/user \
home/user/.ash_history \
home/user/.bash_history \
home/user/.python_history \
home/user/.zsh_history \
home/user/Downloads home/user/Pictures home/user/Videos \
home/user/.cache home/user/.tor home/user/.android \
home/user/.local/state \
home/user/.local/share/recently-used.xbel home/user/.local/share/user-places.xbel home/user/.local/share/user-places.xbel.bak home/user/.local/share/user-places.xbel.tbcache \
home/user/.local/share/sddm home/user/.local/share/sddm/wayland-session.log;
busybox chattr -V +i . boot dev home lib media mnt proc run srv sys tmp usr var \
usr/local \
root/.cache \
var/cache var/empty var/local var/log var/mail var/tmp \
var/lib/AccountsService var/lib/boltd var/lib/chrony var/lib/dbus var/lib/flatpak var/lib/machines var/lib/misc var/lib/NetworkManager var/lib/nftables var/lib/portables var/lib/private var/lib/systemd var/lib/udhcpd var/lib/udisks2 var/lib/upower var/lib/urfkill var/lib/xkb \
var/lib/sddm/.cache var/lib/sddm/.local var/lib/sddm/.dbus \
home/user/Downloads home/user/Pictures home/user/Videos \
home/user/.cache \
home/user/.local home/user/.local/state;
printf '%s' '
tmpfs /tmp tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/cache tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/local tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/log tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/mail tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/opt tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/tmp tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/boltd tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/chrony tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/dbus tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/machines tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/misc tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/NetworkManager tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/nftables tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/portables tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/private tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/systemd tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/udhcpd tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/udisks2 tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/upower tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/urfkill tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/xkb tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/sddm/.cache tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/sddm/.local tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /var/lib/sddm/.dbus tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G 0 0
tmpfs /root/.cache tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=256M 0 0
tmpfs /home/user/Downloads tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G,uid=10000,gid=10000 0 0
tmpfs /home/user/Pictures tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=128M,uid=10000,gid=10000 0 0
tmpfs /home/user/Videos tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=128M,uid=10000,gid=10000 0 0
tmpfs /home/user/.cache tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=256M,uid=10000,gid=10000 0 0
tmpfs /home/user/.android tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=16M,uid=10000,gid=10000 0 0
tmpfs /home/user/.tor tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=64M,uid=10000,gid=10000 0 0
tmpfs /home/user/.config/pulse tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=96M,uid=10000,gid=10000 0 0
tmpfs /home/user/.config/Signal/logs tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=96M,uid=10000,gid=10000 0 0
tmpfs /home/user/.local/state tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=256M,uid=10000,gid=10000 0 0
tmpfs /home/user/.local/share/kactivitymanagerd/resources tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=96M,uid=10000,gid=10000 0 0
tmpfs /home/user/.local/share/kate tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=96M,uid=10000,gid=10000 0 0
tmpfs /home/user/.local/share/klipper tmpfs inode32,rw,nodev,nosuid,noexec,noatime,nodiratime,async,size=1G,uid=10000,gid=10000 0 0
' | busybox tee -a etc/fstab;
busybox fstrim -v .;
Please register or sign in to comment