Oh no! I misread your last suggestion and fixed it:
sudo mousepad /etc/apparmor.d/tunables/init-systemd
## Copyright (C) 2012 - 2021 ENCRYPTED SUPPORT LP <adrelanos@whonix.org>
## See the file COPYING for copying conditions.
#include <tunables/global>
@{sys_pci_numbers}=[0-9,a-z][0-9,a-z][0-9,a-z][0-9,a-z]:[0-9,a-z][0-9,a-z]
@{sys_pci}=@{sys}/devices/pci@{sys_pci_numbers}/@{sys_pci_numbers}:*.*/{,@{sys_pci_numbers}:*.*/}
@{dev_ttys}=/dev/tty{,S}[0-9]{,[0-9]}
I had to add the [a-z] as I noticed some pci entries had letters in them.
On reboot, apparmor throws an error:
● apparmor.service - Load AppArmor profiles
Loaded: loaded (/lib/systemd/system/apparmor.service; enabled; vendor preset: enabled)
Drop-In: /usr/lib/systemd/system/apparmor.service.d
└─30_live_mode.conf
Active: failed (Result: exit-code) since Tue 2021-06-08 10:43:52 UTC; 3min 21s ago
Docs: man:apparmor(7)
https://gitlab.com/apparmor/apparmor/wikis/home/
Process: 665 ExecStart=/lib/apparmor/apparmor.systemd reload (code=exited, status=1/FAILURE)
Main PID: 665 (code=exited, status=1/FAILURE)
Jun 08 10:43:52 grid apparmor.systemd[665]: 'HOME' is already defined
Jun 08 10:43:52 grid apparmor.systemd[665]: AppArmor parser error for /etc/apparmor.d/bin.lsblk in /etc/apparmor.d/tunables/home at line 21: variable @{HOME} was previously declared
Jun 08 10:43:52 grid apparmor.systemd[665]: 'HOME' is already defined
Jun 08 10:43:52 grid apparmor.systemd[665]: AppArmor parser error for /etc/apparmor.d/init-systemd in /etc/apparmor.d/tunables/home at line 21: variable @{HOME} was previously declared
Jun 08 10:43:52 grid apparmor.systemd[665]: 'HOME' is already defined
Jun 08 10:43:52 grid apparmor.systemd[665]: AppArmor parser error for /etc/apparmor.d/usr.lib.xorg.Xorg in /etc/apparmor.d/tunables/home at line 21: variable @{HOME} was previously declared
Jun 08 10:43:52 grid apparmor.systemd[665]: Error: At least one profile failed to load
Jun 08 10:43:52 grid systemd[1]: apparmor.service: Main process exited, code=exited, status=1/FAILURE
Jun 08 10:43:52 grid systemd[1]: apparmor.service: Failed with result 'exit-code'.
Jun 08 10:43:52 grid systemd[1]: Failed to start Load AppArmor profiles.
~
However I am able to boot into the windows manager.
I tried sudo -u sdwdate sdwdate in terminal:
sudo -u sdwdate sdwdate
2021-06-08 10:57:20 - sdwdate - INFO - sdwdate started. PID: 2120
2021-06-08 10:57:20 - sdwdate - INFO - Tor socks host: 127.0.0.1 Tor socks port: 9050
2021-06-08 10:57:20 - sdwdate - INFO - Running sdwdate main loop. iteration: 1 / 10000
2021-06-08 10:57:20 - sdwdate - INFO - PREPARATION:
2021-06-08 10:57:20 - sdwdate - INFO - /usr/lib/helper-scripts/onion-time-pre-script: Start.
Static Time Sanity Check: Within minimum time 'Sun Jan 17 00:00:00 UTC 2021' and expiration timestamp 'Tue May 17 10:00:00 UTC 2033', ok.
Tor reports: NOTICE BOOTSTRAP PROGRESS=100 TAG=done SUMMARY="Done"
Tor circuit: established.
Tor Consensus Time Sanity Check: Clock within consensus parameters consensus/valid-after 2021-06-08 09:00:00 and consensus/valid-until 2021-06-08 12:00:00.
Tor already reports circuit established.
/usr/lib/helper-scripts/onion-time-pre-script: END: Exiting with exit_code '0' indicating 'success'.
2021-06-08 10:57:20 - sdwdate - INFO - PREPARATION RESULT: SUCCESS.
2021-06-08 10:57:20 - sdwdate - INFO -
2021-06-08 10:57:20 - sdwdate - INFO - Initial time fetching in progress...
2021-06-08 10:57:20 - sdwdate - INFO - Running sdwdate fetch loop. iteration: 1
2021-06-08 10:57:20 - sdwdate - INFO - pool 0: pool_size: 15 url_index: 2 already_picked_number: 1 already_picked_index: [2]
2021-06-08 10:57:20 - sdwdate - INFO - pool 1: pool_size: 15 url_index: 14 already_picked_number: 1 already_picked_index: [14]
2021-06-08 10:57:20 - sdwdate - INFO - pool 2: pool_size: 15 url_index: 4 already_picked_number: 1 already_picked_index: [4]
2021-06-08 10:57:20 - sdwdate - INFO - requested urls ['http://33y6fjyhs3phzfjj.onion', 'https://www.dwnewsvdyyiamwnp.onion', 'http://rvy6qmlqfstv6rlz.onion']
remote_times.py: url_to_unixtime_command (s):
url_to_unixtime 127.0.0.1 9050 http://33y6fjyhs3phzfjj.onion 80 true
url_to_unixtime 127.0.0.1 9050 https://www.dwnewsvdyyiamwnp.onion 80 true
url_to_unixtime 127.0.0.1 9050 http://rvy6qmlqfstv6rlz.onion 80 true
remote_times.py: i: 0 | done
remote_times.py: i: 2 | done
remote_times.py: i: 1 | done
remote 0: http://33y6fjyhs3phzfjj.onion
* comment: The Guardian https://www.theguardian.com/securedrop https://web.archive.org/web/20201231075421/https://www.theguardian.com/securedrop
* took_time : 2.03 second(s)
* half_took_time: 1.01 second(s)
* replay_protection_unixtime: 1623053612
* remote_unixtime : 1623149680
* consensus/valid-after : 2021-06-08 09:00:00
* replay_protection_time : 2021-06-07 08:15:12
* remote_time : 2021-06-08 10:54:40
* consensus/valid-until : 2021-06-08 12:00:00
* time_diff_raw : -162 second(s)
* time_diff_lag_cleaned: -163.01 second(s)
* Time Replay Protection : sane
* Tor Consensus Time Sanity Check: sane
* remote_status: True
remote 1: https://www.dwnewsvdyyiamwnp.onion
* comment: https://www.dw.com https://web.archive.org/web/20210126144517/https://securityheaders.com/?q=dw.com&followRedirects=on
* took_time : 15.92 second(s)
* half_took_time: 7.96 second(s)
* replay_protection_unixtime: 1623053612
* remote_unixtime : 1623149694
* consensus/valid-after : 2021-06-08 09:00:00
* replay_protection_time : 2021-06-07 08:15:12
* remote_time : 2021-06-08 10:54:54
* consensus/valid-until : 2021-06-08 12:00:00
* time_diff_raw : -162 second(s)
* time_diff_lag_cleaned: -169.96 second(s)
* Time Replay Protection : sane
* Tor Consensus Time Sanity Check: sane
* remote_status: True
remote 2: http://rvy6qmlqfstv6rlz.onion
* comment: https://www.c3d2.de/news/20160106-c3d2-as-onionservice.html https://web.archive.org/web/20160807015616/https://www.c3d2.de/news/20160106-c3d2-as-onionservice.html
* took_time : 14.51 second(s)
* half_took_time: 7.25 second(s)
* replay_protection_unixtime: 1623053612
* remote_unixtime : 1623149692
* consensus/valid-after : 2021-06-08 09:00:00
* replay_protection_time : 2021-06-07 08:15:12
* remote_time : 2021-06-08 10:54:52
* consensus/valid-until : 2021-06-08 12:00:00
* time_diff_raw : -163 second(s)
* time_diff_lag_cleaned: -170.25 second(s)
* Time Replay Protection : sane
* Tor Consensus Time Sanity Check: sane
* remote_status: True
remote_times.py: urls_list:
['http://33y6fjyhs3phzfjj.onion', 'https://www.dwnewsvdyyiamwnp.onion', 'http://rvy6qmlqfstv6rlz.onion']
remote_times.py: status_list:
['ok', 'ok', 'ok']
remote_times.py: took_time_list:
[2.03, 15.92, 14.51]
remote_times.py: half_took_time_list:
[1.01, 7.96, 7.25]
remote_times.py: remote_unixtime_list:
[1623149680, 1623149694, 1623149692]
remote_times.py: time_diff_raw_int_list:
[-162, -162, -163]
remote_times.py: time_diff_lag_cleaned_float_list:
[-163.01, -169.96, -170.25]
2021-06-08 10:57:36 - sdwdate - INFO - returned urls "['http://33y6fjyhs3phzfjj.onion', 'https://www.dwnewsvdyyiamwnp.onion', 'http://rvy6qmlqfstv6rlz.onion']"
2021-06-08 10:57:36 - sdwdate - INFO -
2021-06-08 10:57:36 - sdwdate - INFO - failed_urls: 0 allowed_failures: 5
2021-06-08 10:57:36 - sdwdate - INFO - pool 0: http://33y6fjyhs3phzfjj.onion, web_time: 2021-06-08 10:54:40, took_time: 2.03 seconds, time_diff_raw: -162 seconds, time_diff_lag_cleaned: -163 seconds
2021-06-08 10:57:36 - sdwdate - INFO - pool 1: https://www.dwnewsvdyyiamwnp.onion, web_time: 2021-06-08 10:54:54, took_time: 15.92 seconds, time_diff_raw: -162 seconds, time_diff_lag_cleaned: -170 seconds
2021-06-08 10:57:36 - sdwdate - INFO - pool 2: http://rvy6qmlqfstv6rlz.onion, web_time: 2021-06-08 10:54:52, took_time: 14.51 seconds, time_diff_raw: -163 seconds, time_diff_lag_cleaned: -170 seconds
2021-06-08 10:57:36 - sdwdate - INFO - End fetching remote times.
2021-06-08 10:57:36 - sdwdate - INFO -
2021-06-08 10:57:36 - sdwdate - INFO - Success.
2021-06-08 10:57:36 - sdwdate - INFO - request_took_times, sorted: [2.03, 14.51, 15.92]
2021-06-08 10:57:36 - sdwdate - INFO - request_half_took_times, sorted: [1.01, 7.25, 7.96]
2021-06-08 10:57:36 - sdwdate - INFO - time_diff_raw, sorted: [-163, -162, -162]
2021-06-08 10:57:36 - sdwdate - INFO - diffs_lag_cleaned, sorted: [-170, -170, -163]
2021-06-08 10:57:36 - sdwdate - INFO - median request_took_times: +14.51
2021-06-08 10:57:36 - sdwdate - INFO - median half_request_took_times: +7.25
2021-06-08 10:57:36 - sdwdate - INFO - median raw time difference: -162.00
2021-06-08 10:57:36 - sdwdate - INFO - median lag_cleaned time difference: -170.00
2021-06-08 10:57:36 - sdwdate - INFO - Not randomizing nanoseconds.
2021-06-08 10:57:36 - sdwdate - INFO - new time difference : -162.000000000
2021-06-08 10:57:36 - sdwdate - INFO - replay_protection_unixtime: 1623053612
2021-06-08 10:57:36 - sdwdate - INFO - old_unixtime : 1623149856.979118586
2021-06-08 10:57:36 - sdwdate - INFO - new_unixtime : 1623149694.979118586
2021-06-08 10:57:36 - sdwdate - INFO - replay_protection_time : 2021-06-07 08:15:12
2021-06-08 10:57:36 - sdwdate - INFO - old_unixtime_human_readable : 2021-06-08 10:57:37
2021-06-08 10:57:36 - sdwdate - INFO - new_unixtime_human_readable : 2021-06-08 10:54:55
2021-06-08 10:57:37 - sdwdate - INFO - Instantly setting the time by using command: /bin/date --utc "+%Y-%m-%d %H:%M:%S" --set "@1623149694.979118586"
2021-06-08 10:57:37 - sdwdate - INFO - /bin/date output: 2021-06-08 10:54:54
/bin/date: cannot set date: Operation not permitted
2021-06-08 10:57:37 - sdwdate - ERROR - /bin/date returncode: 1
2021-06-08 10:57:37 - sdwdate - INFO - Exiting with exit_code '1' because or reason 'bin_date_status non-zero exit code'.
2021-06-08 10:57:37 - sdwdate - INFO - sdwdate stopped by user or system.
2021-06-08 10:57:37 - sdwdate - INFO - sclockadj process not running, ok.
2021-06-08 10:57:37 - sdwdate - INFO - sleep process not running, ok.
2021-06-08 10:57:37 - sdwdate - INFO - End.
The sdwdate-gui shows a lock with an X icon. /bin/date within the apparmor sdwdate profile is defined as /{,usr/}bin/date mrix, - Shouldn’t that allow /bin/date to work?
Running dmesg now:
[ 72.990211] audit: type=1400 audit(1623149031.430:6): apparmor="STATUS" operation="profile_load" profile="unconfined" name="apt.systemd.daily" pid=682 comm="apparmor_parser"
[ 72.992791] audit: type=1400 audit(1623149031.434:7): apparmor="STATUS" operation="profile_load" profile="unconfined" name="spice-vdagent" pid=675 comm="apparmor_parser"
[ 72.992803] audit: type=1400 audit(1623149031.434:8): apparmor="STATUS" operation="profile_load" profile="unconfined" name="spice-vdagentd" pid=675 comm="apparmor_parser"
[ 72.992858] audit: type=1400 audit(1623149031.434:9): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/tor-circuit-established-check" pid=679 comm="apparmor_parser"
[ 72.993954] audit: type=1400 audit(1623149031.434:10): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/bin/timesanitycheck" pid=678 comm="apparmor_parser"
[ 72.996106] audit: type=1400 audit(1623149031.438:11): apparmor="STATUS" operation="profile_load" profile="unconfined" name="/usr/sbin/libvirtd" pid=680 comm="apparmor_parser"
We’re getting closer!
Also, I don’t see sdwdate as a service:
sudo service --status-all
[sudo] password for user:
[ - ] apparmor
[ - ] console-setup.sh
[ + ] cron
[ - ] cryptdisks
[ - ] cryptdisks-early
[ + ] dbus
[ + ] dnsmasq
[ - ] gdomap
[ + ] haveged
[ - ] hwclock.sh
[ + ] jitterentropy-rngd
[ - ] keyboard-setup.sh
[ + ] kmod
[ + ] libvirt-guests
[ + ] libvirtd
[ + ] lightdm
[ - ] lvm2
[ - ] lvm2-lvmpolld
[ + ] networking
[ + ] openvpn
[ + ] procps
[ + ] rsyslog
[ - ] sudo
[ + ] sysfsutils
[ + ] tor
[ + ] udev
[ - ] virtlogd
[ - ] x11-common
When I go to the /etc/systemd/system/multi-user.target.wants/ folder, I realized that sdwdate.service is a broken link.
Kind: broken link
Link Target: /lib/systemd/system/sdwdate.service
Location: /etc/systemd/system/multi-user.target.wants
I wonder if this is the issue?
I tried to reinstall sdwdate:
sudo rapt reinstall sdwdate
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0 B/114 kB of archives.
After this operation, 0 B of additional disk space will be used.
debconf: delaying package configuration, since apt-utils is not installed
(Reading database ... 111637 files and directories currently installed.)
Preparing to unpack .../sdwdate_3%3a14.7-1_all.deb ...
Unpacking sdwdate (3:14.7-1) over (3:14.7-1) ...
Setting up sdwdate (3:14.7-1) ...
usermod: no changes
The user `sdwdate' is already a member of `debian-tor'.
The user `sdwdate' is already a member of `systemd-journal'.
/usr/bin/deb-systemd-helper: error: unable to read sdwdate.service
Failed to get unit file state for sdwdate.service: No such file or directory
sdwdate.service is a disabled or a static unit not running, not starting it.
Processing triggers for man-db (2.8.5-2) ...
Processing triggers for rsyslog (8.1901.0-1) ...
+ shopt -s nullglob
+ for config_file in /etc/default/grub /etc/default/grub.d/*.cfg
+ test -f /etc/default/grub
+ source /etc/default/grub
++ GRUB_DEFAULT=0
++ GRUB_TIMEOUT=5
+++ lsb_release -i -s
++ GRUB_DISTRIBUTOR=Debian
++ GRUB_CMDLINE_LINUX_DEFAULT=quiet
++ GRUB_CMDLINE_LINUX=
+ for config_file in /etc/default/grub /etc/default/grub.d/*.cfg
+ test -f /etc/default/grub.d/30_kicksecure.cfg
+ source /etc/default/grub.d/30_kicksecure.cfg
++ GRUB_DISTRIBUTOR=Kicksecure
+ for config_file in /etc/default/grub /etc/default/grub.d/*.cfg
+ test -f /etc/default/grub.d/30_screen_resolution.cfg
+ source /etc/default/grub.d/30_screen_resolution.cfg
++ command -v qubesdb-read
++ GRUB_GFXPAYLOAD_LINUX=1024x768
+ for config_file in /etc/default/grub /etc/default/grub.d/*.cfg
+ test -f /etc/default/grub.d/40_cpu_mitigations.cfg
+ source /etc/default/grub.d/40_cpu_mitigations.cfg
++ GRUB_CMDLINE_LINUX=' spectre_v2=on'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force'
+ for config_file in /etc/default/grub /etc/default/grub.d/*.cfg
+ test -f /etc/default/grub.d/40_distrust_cpu.cfg
+ source /etc/default/grub.d/40_distrust_cpu.cfg
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off'
+ for config_file in /etc/default/grub /etc/default/grub.d/*.cfg
+ test -f /etc/default/grub.d/40_enable_iommu.cfg
+ source /etc/default/grub.d/40_enable_iommu.cfg
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma'
+ for config_file in /etc/default/grub /etc/default/grub.d/*.cfg
+ test -f /etc/default/grub.d/40_kernel_hardening.cfg
+ source /etc/default/grub.d/40_kernel_hardening.cfg
+++ dpkg --print-architecture
++ kpkg=linux-image-amd64
+++ dpkg-query --show '--showformat=${Version}' linux-image-amd64
dpkg-query: no packages found matching linux-image-amd64
++ kver=
++ true
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma slab_nomerge'
++ dpkg --compare-versions '' ge 5.3
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma slab_nomerge slub_debug=FZP'
++ command -v qubesdb-read
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma slab_nomerge slub_debug=FZP page_poison=1'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma slab_nomerge slub_debug=FZP page_poison=1 mce=0'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma slab_nomerge slub_debug=FZP page_poison=1 mce=0 pti=on'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma slab_nomerge slub_debug=FZP page_poison=1 mce=0 pti=on vsyscall=none'
++ dpkg --compare-versions '' ge 5.2
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma slab_nomerge slub_debug=FZP page_poison=1 mce=0 pti=on vsyscall=none extra_latent_entropy'
+++ echo quiet
+++ str_replace quiet ''
++ GRUB_CMDLINE_LINUX_DEFAULT=
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma slab_nomerge slub_debug=FZP page_poison=1 mce=0 pti=on vsyscall=none extra_latent_entropy quiet loglevel=0'
++ GRUB_CMDLINE_LINUX=' spectre_v2=on spec_store_bypass_disable=on tsx=off tsx_async_abort=full,nosmt mds=full,nosmt l1tf=full,force nosmt=force kvm.nx_huge_pages=force random.trust_cpu=off intel_iommu=on amd_iommu=on efi=disable_early_pci_dma slab_nomerge slub_debug=FZP page_poison=1 mce=0 pti=on vsyscall=none extra_latent_entropy quiet loglevel=0 debugfs=off'
+ for config_file in /etc/default/grub /etc/default/grub.d/*.cfg
+ test -f /etc/default/grub.d/init-select.cfg
+ source /etc/default/grub.d/init-select.cfg
+ for file_name in /boot/vmlinuz-*
+ base_name=vmlinuz-4.19.122
+ search=vmlinuz-
+ replace=
++ echo vmlinuz-4.19.122
++ str_replace vmlinuz- ''
+ version=4.19.122
+ unset search
+ unset replace
+ break
+ '[' 4.19.122 = '' ']'
+ real_grub_cfg=/boot/grub/grub.cfg
+ file_replace=/boot/grub/grub.cfg.temp
+ test -w /boot/grub/grub.cfg
+ cp /boot/grub/grub.cfg /boot/grub/grub.cfg.temp
+ test -w /boot/grub/grub.cfg.temp
+ search=' GNU/Linux'
+ replace=
+ str_replace ' GNU/Linux' '' /boot/grub/grub.cfg.temp
+ search=', with Linux 4.19.122'
+ replace=
+ str_replace ', with Linux 4.19.122' '' /boot/grub/grub.cfg.temp
+ search='menuentry '\''Kicksecure'\'''
+ replace='menuentry '\''PERSISTENT mode USER (For daily activities.)'\'''
+ str_replace 'menuentry '\''Kicksecure'\''' 'menuentry '\''PERSISTENT mode USER (For daily activities.)'\''' /boot/grub/grub.cfg.temp
+ search='menuentry '\''Kicksecure (recovery mode)'\'''
+ replace='menuentry '\''Recovery PERSISTENT mode SUPERADMIN (Be very cautious!)'\'''
+ str_replace 'menuentry '\''Kicksecure (recovery mode)'\''' 'menuentry '\''Recovery PERSISTENT mode SUPERADMIN (Be very cautious!)'\''' /boot/grub/grub.cfg.temp
+ test -x /usr/bin/grub-script-check
+ /usr/bin/grub-script-check /boot/grub/grub.cfg.temp
+ cp /boot/grub/grub.cfg.temp /boot/grub/grub.cfg
+ exit 0
I noticed this error:
/usr/bin/deb-systemd-helper: error: unable to read sdwdate.service
Failed to get unit file state for sdwdate.service: No such file or directory
sdwdate.service is a disabled or a static unit not running, not starting it.
I tried to reinstall the service using sudo rapt reinstall --no-install-recommends kicksecure-xfce and it doesn’t reinstall it as I removed the broken file and attempted to restore it.
I tried copied and pasted the sdwdate.service from the github and chown it to root:root with a chmod 775 and attempted to reinstall swdate again:
sudo rapt reinstall sdwdate
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 1 reinstalled, 0 to remove and 0 not upgraded.
Need to get 0 B/114 kB of archives.
After this operation, 0 B of additional disk space will be used.
debconf: delaying package configuration, since apt-utils is not installed
(Reading database ... 111637 files and directories currently installed.)
Preparing to unpack .../sdwdate_3%3a14.7-1_all.deb ...
Unpacking sdwdate (3:14.7-1) over (3:14.7-1) ...
Setting up sdwdate (3:14.7-1) ...
usermod: no changes
The user `sdwdate' is already a member of `debian-tor'.
The user `sdwdate' is already a member of `systemd-journal'.
/usr/bin/deb-systemd-helper: error: unable to read sdwdate.service
Failed to get unit file state for sdwdate.service: No such file or directory
sdwdate.service is a disabled or a static unit not running, not starting it.
I wonder if an apparmor is hindering it from working?
user@grid:~$ sudo systemctl stop sdwdate
Failed to stop sdwdate.service: Unit sdwdate.service not loaded.
user@grid:~$ sudo systemctl start sdwdate
Failed to start sdwdate.service: Unit sdwdate.service not found.