De acordo com o seu timedatectl status :
- o relógio do hardware (RTC) está definido para a hora UTC (
RTC time), - seu sistema está configurado para avaliar seu relógio de hardware como hora local (
RTC in local TZ).
Como resultado, na inicialização, o relógio do sistema é definido com uma hora de atraso (seu fuso horário sem o horário de verão).
De man hwclock :
POSIX systems, like Linux, are designed to have the System Clock operate in the UTC timescale.
Você pode corrigi-lo facilmente executando:
timedatectl --adjust-system-clock set-local-rtc 0
A raiz de todo o mal é que o RTC não se lembra do TZ que está definido. Observe que RTC time line não possui indicação TZ. Quando você mantém o tempo em uma peça de hardware e o TZ em um arquivo ( /etc/adjtime como @ mr.spuratic anotado), é fácil perder a sincronização entre as duas informações.
Por questão de integridade, IMHO, a única situação na qual manter o relógio do hardware configurado para local é uma máquina de inicialização dupla com Windows .