Почему настройка формата даты и времени в Linux дистрибутивах это ужас, боль и страдание
реклама
Это тот случай когда заголовок говорит сам за себя, дистрибутивы Linux мало пригодны для нормального использования в качестве адекватной операционной системы вместо Microsoft Windows, и сейчас я затрону одну из множества причин.
Начну пожалуй с того факта, что в дистрибутивах Linux не всегда возможно адекватно настроить формат даты и времени, в некоторых особо неадекватных вариантах, например MATE, порой вообще невозможно настроить формат даты и времени:
Но сейчас я даже смотреть не буду в сторону таких "ошибок природы".
Тотальная зависимость от доступа к сети Интернет
реклама
Без этого раздела можно обойтись, но не нужно, ведь последние версии Windows зависимы от доступа к интернету, но еще больше зависимы дистрибутивы Linux, и это очень жирный минус дистрибутивам Linux.
Проще перечислить места, где есть доступ к интернету, чем перечислить места где доступа нет, яростные фанаты Linux могут сколько угодно фантазировать что доступ в интернет есть практически везде, правда такие люди умалчивают про многие нюансы...
Если говорить про мобильный интернет, то он действительно хорошо распространен, но далеко не везде, да и скорость такого интернета может падать до неприемлемых значений в зависимости от места нахождения, про адекватный доступ в сеть через оптоволокно или витую пару я вообще молчу, ибо даже в городах не всегда такое подключение доступно.
Даже с технической точки зрения доступ к интернету есть далеко не везде, но кроме технической части есть и контроль со стороны государств и операторы связи, ведь оборудование и материалы вполне реальные вещи, их невозможно бесконечно копировать и выдавать как цифровые "лицензии" на софт и игры.
реклама
Так что еще один барьер для доступа к сети будет уже финансовая сторона вопроса, тем более не забываем про жадность, мало одной лишь технической стороны вопроса, нужны еще и деньги.
И когда человек имея ПК + ноутбук захочет установить одно и то же приложение на два устройства, он в полной мере осознает отвратительность центров приложений в дистрибутивах Linux, особенно когда нужная ему программа имеет размер для скачивания 1 ГБ или более, и каждый мегабайт трафика ему нужно оплачивать оператору связи.
А потом выясняется что человек в старом здании с железобетонными толстыми стенами, или конкретно его комната в зоне плохого приема, и качать 1 ГБ он будет несколько часов через мобильный интернет, и так на две системы повторить, ведь приложение есть только в центре приложений для него нет автономного установочного пакета...
реклама
Почему это все не проблема для Windows? Почему это проблема именно для систем на основе Linux? Все очень просто, пользователь может комфортно себя чувствовать с Windows даже если вообще нет доступа к сети интернет, ибо необходимый софт можно заранее скачать там где есть интернет, или купить на дисках, или скопировать у других людей, нет проблемы распространения как в Linux.
В системах на основе Linux, как правило, невозможно просто скопировать игру/приложение и запустить где угодно в пару кликов, а ведь в среде Windows это можно было легко сделать даже 20-25 лет назад... Я считаю что это основная причина того, что дистрибутивы Linux аутсайдеры в качестве операционной системы для обычных пользователей, ибо пользователи не могут легко копировать и распространять софт/игры, а без этого в операционной системе делать нечего как правило.
Кто-то вскрикнет, мол, благодаря такому отвратительному подходу в Linux системах якобы нет вирусов, но ключевое слово здесь "якобы", ибо вредоносное ПО есть, но не распространено так же как в среде Windows, кто в здравом уме будет создавать "вымогатель" или "блокировщик" если пользователей использующих Linux считанные доли процентов от всех остальных? Включаем логику и понимаем что Linux системы далеко не так безопасны как их выставляют, они условно безопасны только потому что почти никому не нужны.
Впрочем, можно очень много размышлять по этой теме, но пожалуй закончу этот раздел, ибо уже достаточно для понимания дальнейшей информации.
-
Справка
В Windows была локальная справка, даже в Windows 7 она есть, и что очень важно, в этой справке все написано простым и понятным языком, из этой же справки можно вызвать нужные диалоговые окна.
В последних версиях Windows справку перенесли в интернет, и это очень плохо, хотя сама справка не стала хуже, и обычный человек вполне может решить большинство возможных проблем по ней.
Совсем другое дело дистрибутивы Linux, да, порой есть краткая справка, но она зачастую бесполезна, в итоге нужен доступ к интернету, чтобы получить реально полезную информацию.
Допустим я хочу настроить дату в логичном и понятном формате ISO 8601, в настройках нет опции чтобы формат даты установить по стандарту ISO 8601.
И что же делать? Вырывать глаза и мозги смотря на отвратительную строку в виде "06 сту, 12:55" вместо стандартного и понятного "2023-01-06, 12:55"? Я вообще не понимаю зачем такие извращения по умолчанию задавать в формат даты...
Если дистрибутив относительно адекватный, то формат даты и времени можно вручную настроить, и порой можно не насиловать поисковые системы да форумы, достаточно воспользоваться справкой которая к сожалению доступна только через интернет.
Но тут не все однозначно, справка конечно есть, но она сделана не для обычных людей, обычный человек ногу сломает в поисках нужной информации из такой справки...
Достаточно прописать %F, чтобы задать формат даты по стандарту ISO 8601, но тут есть проблема, это я знаю что нужно вписать, ибо уже выморозил себе мозг изучая эти отвратительные "линуксоидные" справки... Обычный пользователь что впервые видит данное нагромождение скорее всего пойдет насиловать поисковик и форумы в поисках нужной информации, или вернется в Windows, где нет таких проблем.
И что же человек найдет в поисковиках если решит искать таким образом информацию? Да все такой же хаос и нагромождение, особенно меня позабавил форум Ubuntu, где пишут как выбрать регион чтобы формат даты и времени соответствовал региональному, это уже значит что на стандарт ISO 8601 тут положили здоровенный болт, и нужно будет знатно извращаться, чтобы привести формат даты к адекватному виду...
Ну и перезагружать систему чтобы новый формат начал работать это что вообще такое, я в 19 век вернулся? Почему в 19 век? Да потому что Linux дистрибутив пишет что сейчас 20 век, но об этом позже...
А в некоторых случаях просто копируют официальную нагроможденную справку с небольшими правками, но сути это не меняет, основная информация сомнительна для восприятия обычным человеком.
-
--
Windows
А теперь я покажу как легко и просто можно настроить формат даты в среде Windows, я не буду использовать последние версии Windows 10/11, покажу как это работает в Windows 7, где все сделано действительно хорошо.
В Windows 7 сам интерфейс направляет пользователя куда надо, а если пользователь совсем не понимает что происходит, в интерфейсе можно найти наводки на справку в виде вопросов, даже совсем неопытный человек в итоге поймет как все работает.
Windows изначально позволяет выбрать формат даты по стандарту ISO 8601, достаточно просто войти в настройки, путь к которым любезно предоставлен пользователю в виде понятных текстовых ссылок и кнопок.
Но если пользователю нужно больше, то всегда можно настроить вручную формат даты и времени, и тут не нужно даже справку читать, достаточно посмотреть что уже прописано в полях, и переставить значения в нужном порядке, ведь строка написана простым и понятным языком, никаких сложных закорючек, а если что-то неправильно система укажет на это.
А еще есть множество подсказок в самом интерфейсе, все ради пользователя, именно таким должен быть пользовательский интерфейс, простой, информативный и интуитивно понятный, все лучшее и часто используемое должно быть сконцентрировано в интерфейсе пользователя.
А в большинстве случаев конечно же пользователь даже знать не будет про все эти настройки, ведь Windows изначально не извращает формат даты до уровня "Fri Aug 5", "Суб жни 6", "06 сту" и прочих извращений...
И я не говорю что абсолютно все дистрибутивы Linux отвратительны в плане настройки даты и времени, и что Windows самая лучшая на свете, нет, в Linux гораздо больше возможностей по настройке формата даты и времени, а в некоторых дистрибутивах, например Manjaro KDE, формат даты и времени можно нормально настроить не прибегая к извращениям и ручной правке формата.
Достаточно просто выбрать нужный формат из списка, работает даже проще чем в Windows 7, но далеко не каждый дистрибутив позволяет так же адекватно настроить формат даты и времени...
-
--
---
Моя "справка"...
Теперь перейдем к дате и времени в Linux системах когда нужно вручную "колдовать", т.е. интерфейс у системы недоразвит и пользователь не может выбрать в пару кликов нужный формат даты и времени.
Конечно, критикуя отсутствие крайне важного базового функционала в системах на основе Linux я не подорвусь и не начну писать этот функционал, это должны делать люди которые изначально создали неполноценную вещь, это их обязанность, а не пользователя.
Но привести к адекватному виду некоторые вещи могу и я, чтобы другие люди не ломали себе голову пытаясь понять что-либо среди нагромождений.
В основе я буду использовать официальную справку xfce4, потому моя справка будет актуальна для дистрибутивов на основе xfce, в дистрибутивах на основе KDE совсем другие "заклинания" для настройки, а инструкция недоступна у меня так как работа с сетевыми адаптерами в Linux мягко говоря не очень, да и не собирался я рассматривать принципы работы с форматом даты и времени в KDE.
Про танцы в терминале речи нет и не будет, терминальные танцы оставлю любителям подобного.
И так, прежде всего нужно убедится что в настройках есть возможность задать формат даты и времени вручную, интерфейс на английском языке, но сути это не меняет.
А теперь я начинаю работать над своей справкой, про очевидные вещи я не буду писать, вроде выпадающих меню для выбора из списка, такие элементы по методу "научного тыка" отлично можно освоить.
Как же разложить хаос на свои места? Думаю таблица мне поможет в этом деле... Я же не хочу получить очередное нагромождение как в официальной справке, читая которое можно не только к психологу записаться на прием, но и вернутся в Windows.
В процессе я обнаружил неправильно работающий параметр, параметр %C должен показывать текущий век, но он показывает просто первые две цифры текущего года, абсолютно бесполезный параметр ибо разработчики не удосужились добавить единицу к значению чтобы эта запись имела смысл.
А еще обнаружил что дистрибутив Linux принудительно откатывает время после его изменения вручную, даже в режиме конфигурации "Manual", мало того что каждый раз нужен root-пароль для изменения текущей даты и времени, так еще система принудительно "исправляет" время независимо от настроек...
Я отключал доступ к сети, перезагружал вообще систему, но все равно система откатывала время...
Причем важно заметить, Xubuntu хоть и работает сейчас в виртуальной машине, но она точно не копирует время главной операционной системы, так что этим невозможно оправдать столь неадекватное поведение с принудительным замещением настроек пользователя.
По факту я не могу установить желаемое время в системе, она просто шлет подальше меня (пользователя) и принудительно устанавливает текущее настоящее время с учетом часового пояса, это пожалуй одна из самых отвратительных проблем в Linux дистрибутивах, с которой мне довелось иметь дело.
Я специально установил Windows на еще одну виртуальную машину, чтобы перепроверить, вдруг это виновата виртуальная машина, но нет, в Windows все прекрасно можно изменить и ничего не откатывает назад в принудительном порядке.
И самое забавное в том, что Manjaro Linux тоже сбрасывает время установленное пользователем, примерное каждые 5-10 секунд происходит принудительная установка правильного времени вместо заданного пользователем, при этом функция автоматической установки времени явно отключена, хотя сеть я не отключал, Manjaro спустя некоторое время таки смогла настроить сеть без моего вмешательства...
А когда я отключил в настройках виртуальной машины время в UTC формате, Xubuntu вообще не позволила мне вручную изменить время, какое бы время я не пытался вводить, система даже на секунду не хотела применять то что я вводил, нет слов...
Вероятно за пределами виртуальной машины может и не быть проблем с ручным изменением текущей даты и времени, но учитывая факт наличия таких проблем, есть вероятность что такие проблемы могут быть и на реальных ПК, и я очень сомневаюсь что пользователь будет в восторге когда осознает что система без его ведома "исправляет" дату и время.
Уже время позднее, и пора бы в кровать идти на сон, "справку" я не закончил как планировал так как разбирался с новыми всплывшими проблемами, и тут еще одна проблема подкатила, я просто не могу выключить виртуальную машину нажав кнопку выключения в Xubuntu...
Вернул обратно галочку "Часы в системе UTC" в настройках виртуальной машины, чтобы исключить этот фактор, но нет, эта настройка никак не влияет на проблему, Xubuntu невозможно выключить кнопкой выключения в самой операционной системе.
И на сигнал завершения работы дистрибутив Linux не отвечает никак, только жесткое выключение позволяет выключить систему.
Хорошо что я решил проверять работоспособность параметров из официальной справки на виртуальной машине, а не в системе установленной на реальном железе, я уже не вспомню сколько раз разнообразные дистрибутивы Linux ломались без особых на то причин...
А еще операционная система не сохраняет последние настройки формата даты и времени если выключение было "неправильное", и каждый раз загружает мою старую экспериментальную запись, я могу выключить систему только жестко выключив её, ибо кнопка выключения в Xubuntu не работает выбрасывая ошибку, а это значит что подобному влиянию могут быть подвержены и иные настройки в системе, и это очень плохо.
Windows тоже может откатить настройки если невозможно загрузить систему, это называется "Загрузка последней удачной конфигурации Windows", и это действие делает пользователь, именно так подобные вещи должны работать, а не у пользователя отключилось электричество и при следующем запуске ПК ему надо заново всю систему настраивать, просто потому что Linux дистрибутив не сохранил или откатил настройки без ведома пользователя...
Хотя стоит заметить, адекватный доступ к параметрам загрузки был только в Windows 7 и старее, начиная с Windows 8 корпорация Microsoft максимально усложняет доступ к параметрам загрузки, вызвать меню параметров загрузки до запуска системы невозможно в Windows 8, а в Windows 10 усложнили настолько доступ к параметрам запуска, что их можно достичь только при наличии полностью исправной системы спустя несколько перезагрузок, это делает загрузочное меню абсолютно бесполезным и бессмысленным, ведь оно нужно когда с системой есть проблемы, а в таких случаях оно оказывается недоступно.
Главное чтобы в Linux дистрибутивы такие аттракционы с параметрами запуска не позаимствовали от Windows 10... А то я вижу что любят тащить в Linux все самое плохое игнорируя более старое, но действительно хорошо работающее.
-
Конфигурация
Раз у меня всплыли серьезные проблемы с работой Linux дистрибутива, есть смысл расписать конфигурацию оборудования и настроек при которых у меня возникли проблемы.
Виртуальная машина: VirtualBox версии 6.1.34r150636 (Qt5.6.2), Extension Pack такой же версии.
Настройки:
ОЗУ 9216 МБ, 8 ядер, PAE/NX и AMD-V включены, Nested Paging включен, интерфейс виртуализации по умолчанию (KVM), чипсет PIIX3, курсор "USB планшет", I/O APIC включено, часы в системе UTC включены.
Видеопамять 128 МБ, контроллер VMSVGA, включено 3D ускорение.
Используемый дистрибутив Linux:
Xubuntu 22.04.1 (xubuntu-22.04.1-desktop-amd64.iso).
Далее конфигурация ПК.
Процессор AMD Ryzen 7 2700X, 64 ГБ ОЗУ, Gigabyte B450M H, GeForce GTX 1070 8 ГБ, основной накопитель NVMe Samsung 970 PRO 512 ГБ, активная основная ОС Windows 7 SP1 x64.
В общем ничего феноменального, вполне обычный ПК с актуальным объемом ОЗУ.
-
--
---
Заключение
Все что могло пойти не так, пошло не так...
Я планировал рассказать про особенности настройки формата даты и времени, сравнить с Windows, сделать свой вариант справки по настройке часов в Linux дистрибутивах некоторых, но в итоге нашел новые проблемы о которых я даже не подозревал ранее.
Спустя некоторое количество "жестких" выключений дистрибутив Linux вовсе перестал запускаться, и через раз загружался в терминал без рабочего стола, в общем пришло время переустанавливать Linux...
А ведь Windows 7 у меня терпит десятки выключений/перезагрузок в день без последствий когда я занимаюсь экспериментами с разгоном, особенно когда происходит разгон ОЗУ, ошибки памяти вообще частое явление в таких случаях, и ничего, Windows 7 у меня без проблем переживает эти все жесткие условия.
Тем временем, как показывает практика, Linux дистрибутивы могут быть сломаны просто потому что их жестко выключили некоторое количество раз...
В любом случае я сделал еще одну проверку, взял ту же самую виртуальную машину, и загрузил в ней LiveCD той же самой проблемной Xubuntu, сначала я пытался изменить время, и система принудительно возвращала текущее настоящее время синхронизируясь через интернет, хотя конфигурация установлена "Manual".
Отключив доступ к сети я попробовал снова изменить время вручную, и о чудо, система больше не откатывала дату к предыдущим значениям, и на кнопку выключения Live образ нормально реагирует, а это все значит лишь одно, проблемы именно в установленной Xubuntu.
Разве что я не могу проверить сохраняет ли настройки дистрибутив при следующем включении, ибо сейчас работает Live образ установочного диска.
Принудительная синхронизация времени через интернет это очень плохо если человеку нужно указать другое время, дистрибутив просто не позволит это сделать принудительно замещая пользовательские настройки данными из интернета, такой наглости даже в Windows 11 нет...
Конечно же не очень адекватные фанаты Linux дистрибутивов начнут меня обвинять во всех проблемах, мол у меня кривые руки, мозги неправильные, виртуальная машина нехорошая, ПК не тот, фаза луны не та, звезды не сошлись и прочий всевозможный бред.
Я бы и рад если бы во всем виновата была неправильная луна на небе или что-то подобное, но на самом деле дистрибутивы Linux абсолютно нестабильны в реальной работе исходя из моего опыта начиная с ~2015 года, порой даже непонятно от чего они падают как карточный домик.
О каком разнообразии софта/игр в такой нестабильной экосистеме может вообще идти речь? Кто в здравом рассудке станет тратить ресурсы на разработку игры под операционную систему, в которой мало того что невозможно нормально распространять ту самую игру, так еще и падает от любого чиха что систему после этого невозможно использовать.
Службу поддержки игры просто замучают всевозможными проблемами в которых игра даже не виновата.
Я сейчас вот сижу с частично оформленной справкой по настройке формата даты и времени, и уже нет никакого желания заканчивать работу...
Хотя ладно, раз уж взялся то завершу начатое, я не сделал справку максимально простой и понятной как планировал, как минимум этому мешает очень "странный" вкус разработчиков xfce, которые оставили знак "%" (рудимент от strftime) что указывает на начало параметра и не заменили его ничем другим...
Это очень странно, могли бы для приличия взять более простой для восприятия символ "$", или "&", да банально взять символ решетки "#", это уже многократно проще читать, но нет, наверное линуксоидная гордость будет запятнана, если вещь будет сделана просто и практично для пользователя.
Например, #Y.#m.#d - #H:#m или %Y.%m.%d - %H:%m, визуально конечно же проще воспринимается строка с символами решетки "#", решетка легко воспринимается как единый символ, когда для восприятия символа процента "%" нужно концентрировать внимание, ибо символ процента состоит из трех несвязанных между собой деталей, воспринимать точки и дефисы рядом с этим символом проблематично, и это приводит к ошибкам если человек хочет оформить часы по вкусу.
Казалось бы, какая мелочь, но именно такие мелочи в совокупности создают нечто большее, и когда такие мелочи сделаны на "отстань", то и вещь состоящая из таких мелочей будет работать на "отстань", так собственно и работают дистрибутивы Linux, а порой и вовсе перестают работать когда пользователь не отстает пытаясь переделать вещи по-человечески, которые изначально были сделаны по-свински.
В любом случае у меня кое-что получилось, дата в своей колонке, время в своей, вспомогательные элементы тоже на своих местах, теперь информация структурирована и её можно воспринимать, в отличие от официальной справки сделанной на "отстань", а чтобы было проще воспринимать закорючки я применил разные цвета к параметрам из разных групп.
Пожалуй на этом закончу, мне и так пришлось проделать гораздо больше работы чем планировалось по вине всплывших новых проблем в процессе...
Благодарю за внимание, больше интересных статей в блоге Hard-Workshop.
реклама
Лента материалов
Интересные материалы
Возможно вас заинтересует
Соблюдение Правил конференции строго обязательно!
Флуд, флейм и оффтоп преследуются по всей строгости закона!
Комментарии, содержащие оскорбления, нецензурные выражения (в т.ч. замаскированный мат), экстремистские высказывания, рекламу и спам, удаляются независимо от содержимого, а к их авторам могут применяться меры вплоть до запрета написания комментариев и, в случае написания комментария через социальные сети, жалобы в администрацию данной сети.
Комментарии Правила