У меня есть один USB-накопитель 8 ТБ (exfat) на сервере Ubuntu 20.04. Файлы, по-видимому, остались в час позади. Это дает различные rsync и RCLONE задания вполне тренировки! Любые идеи от сообщества, как это произошло, и как это исправить, действительно будет оценено.
Я признаю, что не зная, как появляются изменения в часовых поясах в справках каталога. Существуют ли файлы Timestamps в UTC и переведите по мере необходимости?
Большинство файловых систем записывают метки времени как UTC, а инструменты преобразовывают их в часовой пояс, активный в текущем процессе (поэтому вы можете просто использовать TZ=UTC ls -l
и получить список с метками времени UTC).
Файловые системы на основе FAT являются исключением: они используют локальное время и при чтении конвертируют его в UTC, после чего метка времени преобразуется обратно в локальное время для отображения.
Преобразование на уровне файловой системы является простым смещением, в то время как преобразование для отображения использует историческую информацию о часовом поясе, поэтому файл, измененный на прошлой неделе, будет иметь смещение DST на уровне файловой системы (потому что он активен сейчас), и никакое смещение DST не будет применяться на уровне отображения (потому что он не был активен в то время).
Можно монтировать файловые системы на основе FAT с помощью tz=UTC
, чтобы отключить смещение на уровне файловой системы, или time_offset=
, чтобы задать количество минут для настройки, но уровень файловой системы в ядре не имеет тех сложных функций преобразования, которые существуют для приложений.