Когда я раньше устанавливал Debian, то в конце был вопрос о том, какое время установлено на аппаратных часах. И рекомендация: если кроме Linux есть другие системы, то желательно ставить локальное время, а не мировое.
Я сначала не придавал этому значения, но потом заметил, что если поставить мировое время, то время файлов на разделе *FAT сдвигается на величину часового пояса. То есть, например, файл на флешке записан в 19 часов, а система показывает, что он записан в 22 часа.
Поэтому я всегда ставил локальное время.
Но при установке Debian 11 я такого вопроса не видел (пропустил?) И сейчас при копировании файлов с флешек, на которых vfat или exfat время файлов сдвигается вперёд на 3 часа.
Можно ли это как-то исправить?
Как установить локальное время?
Модератор: Bizdelnick
- Bizdelnick
- Модератор
- Сообщения: 20794
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Как установить локальное время?
Часовой пояс аппаратных часов ко времени в метаданных файла не имеет абсолютно никакого отношения. Он важен только если в дуалбуте винда, которая хронически не дружит с UTC (теоретически это могло измениться, но верится в такое уже с большим трудом). А время может «сдвигаться» исключительно оттого, что система его неправильно пишет.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
Re: Как установить локальное время?
Вот лист двух файлов, записанных сегодня на концерте (длился 19-21).
На компьютере с Debian 11
То же самое на компьютере с Debian 10 (поставил систему давно, BullSeye ещё не ставил)
Время различается на 3 часа.
Но вот ещё один эксперимент
После того, как я "убрал" (переименовал) файл /etc/localtime система показала для этих файлов то время, которое записана в каталоге на флешке.
И ещё один эксперимент.
Здесь я восстановил файл /etc/localtime
Впечатление, что система считает, что в каталоге у файла мировое время. Хотя аппараты пишут местное время.
И если при установке системы указать, что в часах компьютера время местное (если ещё есть винда), то Linux для файлов на разделе типа FAT коррекцию времени не делает (с NTFS ещё не разбирался)
P.S. Однажды начальник возмутился: "Как это так? Сейчас 10 часов утра, я только что созданные файлы протокола переписал на флешку, вставил её в своё компьютер, а он показывает, что у файлов 7 часов утра"
На компьютере с Debian 11
Shell
mik13@md5:/media/mik13/0123-4567/DCIM/100_ZOOM$ ls -l *.MOV | tail -2
-rwxr-xr-x 1 mik13 mik13 43263592248 ноя 23 23:10 ZOOM0075.MOV
-rwxr-xr-x 1 mik13 mik13 36193946952 ноя 24 00:27 ZOOM0076.MOV
Shell
mik13@MD410:/media/mik13/0123-4567/DCIM/100_ZOOM$ ls -l *.MOV | tail -2
-rwxrwxrwx 1 mik13 mik13 43263592248 ноя 23 20:10 ZOOM0075.MOV
-rwxrwxrwx 1 mik13 mik13 36193946952 ноя 23 21:27 ZOOM0076.MOV
Да. К метаданным файла часовой пояс отношения не имеет.Bizdelnick писал: ↑24.11.2021 00:38Часовой пояс аппаратных часов ко времени в метаданных файла не имеет абсолютно никакого отношения.
Но вот ещё один эксперимент
Shell
root@md5:/media/mik13/0123-4567/DCIM/100_ZOOM# ls -l *.MOV | tail -2
-rwxr-xr-x 1 mik13 mik13 43263592248 ноя 23 23:10 ZOOM0075.MOV
-rwxr-xr-x 1 mik13 mik13 36193946952 ноя 24 00:27 ZOOM0076.MOV
root@md5:/media/mik13/0123-4567/DCIM/100_ZOOM# ls -l /etc/localtime
lrwxrwxrwx 1 root root 32 ноя 1 01:20 /etc/localtime -> /usr/share/zoneinfo/Europe/Minsk
root@md5:/media/mik13/0123-4567/DCIM/100_ZOOM# mv /etc/localtime /etc/localtime1
root@md5:/media/mik13/0123-4567/DCIM/100_ZOOM# ls -l *.MOV | tail -2
-rwxr-xr-x 1 mik13 mik13 43263592248 ноя 23 20:10 ZOOM0075.MOV
-rwxr-xr-x 1 mik13 mik13 36193946952 ноя 23 21:27 ZOOM0076.MOV
И ещё один эксперимент.
Spoiler
Краткое пояснение. При копировании файлов (фотографий, видео) на диск я даю им имя в формате
YYMMDDhhmmss_камера_NNNN.ext
YYMMDDhhmmss -- время съёмки из EXIF или из информации о файле
камера -- краткое название камеры, которой снимал
NNNN.ext -- номер, данный файлу камерой и расширение файла.
YYMMDDhhmmss_камера_NNNN.ext
YYMMDDhhmmss -- время съёмки из EXIF или из информации о файле
камера -- краткое название камеры, которой снимал
NNNN.ext -- номер, данный файлу камерой и расширение файла.
Shell
mik13@md5:/media/mik13/T4K2/Концерты/!By_Date/2021-04-24_НББ$ lt 210424150528_EPL9_0237.JPG 210424150528_EPL9_0237.ORF 210424150535_EPL9_0238.JPG
-rwxrwxrwx 2 mik13 mik13 3231814 2021-04-24 12:05:28.000000000 +0000 210424150528_EPL9_0237.JPG
-rwxrwxrwx 2 mik13 mik13 15776964 2021-04-24 12:05:28.000000000 +0000 210424150528_EPL9_0237.ORF
-rwxrwxrwx 2 mik13 mik13 3216722 2021-04-24 12:05:34.000000000 +0000 210424150535_EPL9_0238.JPG
Shell
mik13@md5:/media/mik13/T4K2/Концерты/!By_Date/2021-04-24_НББ$ lt 210424150528_EPL9_0237.JPG 210424150528_EPL9_0237.ORF 210424150535_EPL9_0238.JPG
-rwxrwxrwx 2 mik13 mik13 3231814 2021-04-24 15:05:28.000000000 +0300 210424150528_EPL9_0237.JPG
-rwxrwxrwx 2 mik13 mik13 15776964 2021-04-24 15:05:28.000000000 +0300 210424150528_EPL9_0237.ORF
-rwxrwxrwx 2 mik13 mik13 3216722 2021-04-24 15:05:34.000000000 +0300 210424150535_EPL9_0238.JPG
И если при установке системы указать, что в часах компьютера время местное (если ещё есть винда), то Linux для файлов на разделе типа FAT коррекцию времени не делает (с NTFS ещё не разбирался)
P.S. Однажды начальник возмутился: "Как это так? Сейчас 10 часов утра, я только что созданные файлы протокола переписал на флешку, вставил её в своё компьютер, а он показывает, что у файлов 7 часов утра"
- Bizdelnick
- Модератор
- Сообщения: 20794
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Как установить локальное время?
Ещё раз. То, что Вы указали при установке, влияет только на преобразовании времени при чтении из аппаратных часов и сохранении в них. Для всего остального используется системное время, которое не зависит от того, как там что преобразовывалось (при условии, что преобразовалось правильно, конечно).MiK13 писал: ↑24.11.2021 01:56Впечатление, что система считает, что в каталоге у файла мировое время. Хотя аппараты пишут местное время.
И если при установке системы указать, что в часах компьютера время местное (если ещё есть винда), то Linux для файлов на разделе типа FAT коррекцию времени не делает (с NTFS ещё не разбирался)
Угу, только системное время при этом слетело, угадал?
Вы сравниваете две разных версии дистрибутива с разными версиями ядра и разными настройками. Я верю, что в одной из них может быть какой-то косяк в чтении дат, но причину его Вы ищете не там.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
Re: Как установить локальное время?
В те далёкие времена, когда у меня был дуалбут — дружила: https://superuser.com/questions/185773/does-windows-7-support-utc-as-bios-time
Да и сейчас дружит, вроде: https://superuser.com/questions/975717/does-windows-10-support-utc-as-bios-time
- Bizdelnick
- Модератор
- Сообщения: 20794
- Статус: nulla salus bello
- ОС: Debian GNU/Linux
Re: Как установить локальное время?
У меня он был в ещё более далёкие времена, и тогда (в XP) это адски глючило (время в какой-то момент сбивалось несмотря на настройку). Вроде бы, на форуме кто-то писал то же про более новые версии винды. Но сам я не проверял, так что утверждать не берусь.
Пишите правильно:
в консоли вку́пе (с чем-либо) в общем вообще | в течение (часа) новичок нюанс по умолчанию | приемлемо проблема пробовать трафик |
Re: Как установить локальное время?
Держу вин-7 в дуале, за 7 лет настройки времени ни разу не сбивались. При установке бралось системное время из BIOS'а, в линуксе потом доустанавливал пакет для синхронизации с интернетовским.
Re: Как установить локальное время?
У меня вообще сейчас какая-то "мистика"
Смотрю настройки аппарата. Время -- впереди на 6 минут. Мелочи.
Сделал сейчас им два снимка -- на флешке время у этих файлов "правильное". То есть видно, что я снял сейчас.
Но время файлов предыдущих снимков (те, что снимал вчера) -- на компьютере с Buster "правильное". А вот на компьютере с BullSeye -- на три часа больше.
Но это ерунда. На этом же компьютере, но в 10-й винде у "новых" файлов правильное, а у вчерашних -- на 3 часа больше.
Тут, уж, совсем ничего понять не могу.
Правда, увидел одну интересную заметку в man mount
Но смонтировать эту флешку (на ней exfat) с этой опцией мне не удалось.
А вот с флешкой, на которой vfat, это проходит. Причём, эта опция "сдвигает" время файла на три часа вперёд.
Смотрю настройки аппарата. Время -- впереди на 6 минут. Мелочи.
Сделал сейчас им два снимка -- на флешке время у этих файлов "правильное". То есть видно, что я снял сейчас.
Но время файлов предыдущих снимков (те, что снимал вчера) -- на компьютере с Buster "правильное". А вот на компьютере с BullSeye -- на три часа больше.
Но это ерунда. На этом же компьютере, но в 10-й винде у "новых" файлов правильное, а у вчерашних -- на 3 часа больше.
Spoiler
Компьютер 1 (Debian 10 Buster)
Компьютер 2 (Debian 11 BullSeye)
Компьютер 2 (Windows 10)
Вывод команды dir
Shell
mik13@MD410:/media/mik13/E-PL9/DCIM/100OLYMP$ lt
итого 26330624
-rwxrwxrwx 1 mik13 mik13 818658048 2021-11-23 20:46:50.000000000 +0300 EPL91000.MOV
-rwxrwxrwx 1 mik13 mik13 3680307886 2021-11-23 20:53:44.000000000 +0300 EPL91001.MOV
-rwxrwxrwx 1 mik13 mik13 3429223227 2021-11-23 20:58:56.000000000 +0300 EPL91002.MOV
-rwxrwxrwx 1 mik13 mik13 3500025833 2021-11-23 21:07:22.000000000 +0300 EPL91003.MOV
-rwxrwxrwx 1 mik13 mik13 3503149223 2021-11-23 21:12:42.000000000 +0300 EPL91004.MOV
-rwxrwxrwx 1 mik13 mik13 3500142641 2021-11-23 21:18:02.000000000 +0300 EPL91005.MOV
-rwxrwxrwx 1 mik13 mik13 3504490022 2021-11-23 21:23:22.000000000 +0300 EPL91006.MOV
-rwxrwxrwx 1 mik13 mik13 2490575432 2021-11-23 21:27:10.000000000 +0300 EPL91007.MOV
-rwxrwxrwx 1 mik13 mik13 2500437848 2021-11-23 21:31:34.000000000 +0300 EPL91008.MOV
-rwxrwxrwx 1 mik13 mik13 3734305 2021-11-24 22:38:16.000000000 +0300 EPL91009.JPG
-rwxrwxrwx 1 mik13 mik13 13999188 2021-11-24 22:38:16.000000000 +0300 EPL91009.ORF
-rwxrwxrwx 1 mik13 mik13 3283763 2021-11-24 22:39:24.000000000 +0300 EPL91010.JPG
-rwxrwxrwx 1 mik13 mik13 13798678 2021-11-24 22:39:24.000000000 +0300 EPL91010.ORF
Shell
mik13@md5:/media/mik13/E-PL9/DCIM/100OLYMP$ ls -l
итого 26330624
-rwxr-xr-x 1 mik13 mik13 818658048 ноя 23 23:46 EPL91000.MOV
-rwxr-xr-x 1 mik13 mik13 3680307886 ноя 23 23:53 EPL91001.MOV
-rwxr-xr-x 1 mik13 mik13 3429223227 ноя 23 23:58 EPL91002.MOV
-rwxr-xr-x 1 mik13 mik13 3500025833 ноя 24 00:07 EPL91003.MOV
-rwxr-xr-x 1 mik13 mik13 3503149223 ноя 24 00:12 EPL91004.MOV
-rwxr-xr-x 1 mik13 mik13 3500142641 ноя 24 00:18 EPL91005.MOV
-rwxr-xr-x 1 mik13 mik13 3504490022 ноя 24 00:23 EPL91006.MOV
-rwxr-xr-x 1 mik13 mik13 2490575432 ноя 24 00:27 EPL91007.MOV
-rwxr-xr-x 1 mik13 mik13 2500437848 ноя 24 00:31 EPL91008.MOV
-rwxr-xr-x 1 mik13 mik13 3734305 ноя 25 2021 EPL91009.JPG
-rwxr-xr-x 1 mik13 mik13 13999188 ноя 25 2021 EPL91009.ORF
-rwxr-xr-x 1 mik13 mik13 3283763 ноя 25 2021 EPL91010.JPG
-rwxr-xr-x 1 mik13 mik13 13798678 ноя 25 2021 EPL91010.ORF
mik13@md5:/media/mik13/E-PL9/DCIM/100OLYMP$ lt
итого 26330624
-rwxr-xr-x 1 mik13 mik13 818658048 2021-11-23 23:46:50.000000000 +0300 EPL91000.MOV
-rwxr-xr-x 1 mik13 mik13 3680307886 2021-11-23 23:53:44.000000000 +0300 EPL91001.MOV
-rwxr-xr-x 1 mik13 mik13 3429223227 2021-11-23 23:58:56.000000000 +0300 EPL91002.MOV
-rwxr-xr-x 1 mik13 mik13 3500025833 2021-11-24 00:07:22.000000000 +0300 EPL91003.MOV
-rwxr-xr-x 1 mik13 mik13 3503149223 2021-11-24 00:12:42.000000000 +0300 EPL91004.MOV
-rwxr-xr-x 1 mik13 mik13 3500142641 2021-11-24 00:18:02.000000000 +0300 EPL91005.MOV
-rwxr-xr-x 1 mik13 mik13 3504490022 2021-11-24 00:23:22.000000000 +0300 EPL91006.MOV
-rwxr-xr-x 1 mik13 mik13 2490575432 2021-11-24 00:27:10.000000000 +0300 EPL91007.MOV
-rwxr-xr-x 1 mik13 mik13 2500437848 2021-11-24 00:31:34.000000000 +0300 EPL91008.MOV
-rwxr-xr-x 1 mik13 mik13 3734305 2021-11-25 01:38:16.000000000 +0300 EPL91009.JPG
-rwxr-xr-x 1 mik13 mik13 13999188 2021-11-25 01:38:16.000000000 +0300 EPL91009.ORF
-rwxr-xr-x 1 mik13 mik13 3283763 2021-11-25 01:39:24.000000000 +0300 EPL91010.JPG
-rwxr-xr-x 1 mik13 mik13 13798678 2021-11-25 01:39:24.000000000 +0300 EPL91010.ORF
mik13@md5:/media/mik13/E-PL9/DCIM/100OLYMP$ alias lt
alias lt='ls --full-time'
Вывод команды dir
Shell
Том в устройстве I имеет метку E-PL9
Серийный номер тома: 0123-4567
Содержимое папки I:\DCIM\100OLYMP
Ср 24.11.21 22:50 <DIR> .
Ср 24.11.21 22:50 <DIR> ..
Вт 23.11.21 23:46 818 658 048 EPL91000.MOV
Вт 23.11.21 23:53 3 680 307 886 EPL91001.MOV
Вт 23.11.21 23:58 3 429 223 227 EPL91002.MOV
Ср 24.11.21 00:07 3 500 025 833 EPL91003.MOV
Ср 24.11.21 00:12 3 503 149 223 EPL91004.MOV
Ср 24.11.21 00:18 3 500 142 641 EPL91005.MOV
Ср 24.11.21 00:23 3 504 490 022 EPL91006.MOV
Ср 24.11.21 00:27 2 490 575 432 EPL91007.MOV
Ср 24.11.21 00:31 2 500 437 848 EPL91008.MOV
Ср 24.11.21 22:38 13 999 188 EPL91009.ORF
Ср 24.11.21 22:38 3 734 305 EPL91009.JPG
Ср 24.11.21 22:39 13 798 678 EPL91010.ORF
Ср 24.11.21 22:39 3 283 763 EPL91010.JPG
13 файлов 26 961 826 094 байт
2 папок 97 724 137 472 байт свободно
Правда, увидел одну интересную заметку в man mount
Shell
tz=UTC This option disables the conversion of timestamps between local
time (as used by Windows on FAT) and UTC (which Linux uses in‐
ternally). This is particularly useful when mounting devices
(like digital cameras) that are set to UTC in order to avoid the
pitfalls of local time.
Shell
root@md5:/# mount /dev/sdd1 mnt
root@md5:/# umount mnt
root@md5:/# mount -o tz=UTC /dev/sdd1 mnt
mount: /mnt: wrong fs type, bad option, bad superblock on /dev/sdd1, missing codepage or helper program, or other error.
Shell
root@md5:/# mount /dev/sda5 /mnt
root@md5:/# ls --full-time /mnt/tt*
-rwxr-xr-x 1 root root 285 2021-11-24 16:57:52.000000000 +0300 /mnt/tt
-rwxr-xr-x 1 root root 23 2021-11-24 16:57:42.000000000 +0300 /mnt/tt.bat
-rwxr-xr-x 1 root root 3109 2021-11-24 18:29:38.000000000 +0300 /mnt/tt.mnt
root@md5:/# umount /mnt
root@md5:/# mount -o tz=UTC /dev/sda5 /mnt
root@md5:/# ls --full-time /mnt/tt*
-rwxr-xr-x 1 root root 285 2021-11-24 19:57:52.000000000 +0300 /mnt/tt
-rwxr-xr-x 1 root root 23 2021-11-24 19:57:42.000000000 +0300 /mnt/tt.bat
-rwxr-xr-x 1 root root 3109 2021-11-24 21:29:38.000000000 +0300 /mnt/tt.mnt
Re: Как установить локальное время?
Не могу сказать, что разобрался, но "виновника", похоже, нашёл. Это Linux, Debian 11 BullSeye.
А точнее -- mc и cp Они при копировании как-то изменяют время файла.
Сегодня опять сделал ряд снимков. Пришёл домой. Но прежде, чем копировать файлы с флешки на диск, "запретил" на неё запись (на SD картах это "можно").
Скопировал. Загрузил винду и выдал команду dir
Вот её результат (точнее, 4-х файлоа).
После этого я загрузил Linux
ls -l на этих же файлов выглядит так:
Затем при снятой защите записи я скопировал два последних файла на /dev/shm/. Один командой cp -p, а другой в mc через F5
Затем загрузил Windows и dir на эти же 4 файла стал выглядеть так:
У файлов, которые я не трогал, время не изменилось. А время у скопированных файлов увеличилось на 3 часа.
(Почему dir сортирует файлы не так как ls, не знаю)
А точнее -- mc и cp Они при копировании как-то изменяют время файла.
Сегодня опять сделал ряд снимков. Пришёл домой. Но прежде, чем копировать файлы с флешки на диск, "запретил" на неё запись (на SD картах это "можно").
Скопировал. Загрузил винду и выдал команду dir
Вот её результат (точнее, 4-х файлоа).
Код: Выделить всё
Чт 25.11.21 20:15 13 988 798 EPL91039.ORF
Чт 25.11.21 20:15 3 624 546 EPL91039.JPG
Чт 25.11.21 20:15 14 035 978 EPL91040.ORF
Чт 25.11.21 20:15 3 651 772 EPL91040.JPG
ls -l на этих же файлов выглядит так:
Код: Выделить всё
-rwxr-xr-x 1 mik13 mik13 3624546 ноя 25 23:15 EPL91039.JPG
-rwxr-xr-x 1 mik13 mik13 13988798 ноя 25 23:15 EPL91039.ORF
-rwxr-xr-x 1 mik13 mik13 3651772 ноя 25 23:15 EPL91040.JPG
-rwxr-xr-x 1 mik13 mik13 14035978 ноя 25 23:15 EPL91040.ORF
Затем загрузил Windows и dir на эти же 4 файла стал выглядеть так:
Код: Выделить всё
Чт 25.11.21 20:15 13 988 798 EPL91039.ORF
Чт 25.11.21 20:15 3 624 546 EPL91039.JPG
Чт 25.11.21 23:15 14 035 978 EPL91040.ORF
Чт 25.11.21 23:15 3 651 772 EPL91040.JPG
(Почему dir сортирует файлы не так как ls, не знаю)