Изменить дату только для одного пользователя без полномочий root в Linux

Возможно ли изменить дату только для определенного пользователя (не root) в Linux?

Если возможно, как это сделать?

И было бы здорово, если бы кто-то мог указать на это.

РЕДАКТИРОВАТЬ

Поставив мой вопрос другими словами.

Я хочу изменить день и время, начиная с того, что происходит сейчас, в другой день и время в Linux, не имея привилегий root.How я могу достичь этого?

  • Можно ли конвертировать дату в формате YYYYMMDDHHMM с использованием даты?
  • Сценарий BASH AWK добавляет дни до фиксированной даты
  • Получение последних 5 дней от ввода (чтение командной строки)
  • Как распечатать конкатенированную дату и время в секундах
  • Пакетный файл перемещается в структуру каталогов на основе имени файла
  • Как увеличить день в день, который хранится в переменной
  • Создать номер строки / «индекс» в пределах диапазона от начального значения даты
  • Изменение локализации
  • 3 Solutions collect form web for “Изменить дату только для одного пользователя без полномочий root в Linux”

    Дата является общесистемным параметром, который имеет решающее значение для системы (а не для пользователя). Он появляется в метках времени файловой системы, протоколировании, демона, планировании и т. Д. Многие программы ломают или могут даже повредить вашу систему, если дата неточна. Таким образом, в этом смысле время должно постоянно увеличиваться и корректироваться не только локально, но и в случае каких-либо не-www-сетей, также в глобальном масштабе. Даже сертификаты перестают работать, если между клиентом и сервером слишком много разницы во времени.

    Таким образом, в этом смысле системная дата / время – только одна – фактическая дата / время (желательно в формате UTC, в противном случае файловая система вашего ноутбука может сломаться при переключении часовых поясов).

    С другой стороны, настройка часового пояса – это просто уровень перевода с UTC на дату, представленную пользователю. Это можно изменить (см. Комментарий X Тянь). Но я не знаю, хочет ли это то, что вы хотите – он может устанавливать только целые числа (иногда целые числа), количество часов, но не более одного дня. Технически можно построить пользовательский часовой пояс, чтобы вызвать произвольную задержку, но это уродливый взлом.

    Все основные манипуляции временем по-прежнему относятся к времени unix (целое число, которое тикает равномерно с 1/1/1970), поэтому locale (timezone & stuff) обычно используется только для визуального отображения времени или для некоторых очень специфических применений в сценариях которые полагаются на эту функциональность. Например, date вызывает функцию clock_gettime которая извлекает системное время, а затем вызывает localtime для перевода в текущую локаль. Внутреннее представление – это всегда системное время.

    Для этого могут быть специальные модули ядра – или замены библиотек. Вы можете создать поврежденную библиотеку с адаптированной функцией clock_gettime и сделать ее видимой для одного пользователя. Я не знаю, как это повлияет на вашу систему. Манипуляция файловой системой и все такое, что все еще обрабатывается ядром, поэтому основное условие будет работать. Однако планирование, средства резервного копирования и make-файлы могут работать некорректно.

    EDIT: возможно, вам нужна виртуальная машина. Это тогда более изолировано, и если вы хотите изменить время, вы могли бы. Иногда бывает полезно обойти неисправности программного обеспечения, вызванные временем.

    Вы можете установить свою переменную окружения TZ, как в своем профиле, так и в общем профиле специально для этих пользователей.

     $ date Fri Mar 21 10:11:15 GMT 2014 $ export TZ="PST+8" $ date Fri Mar 21 02:11:53 PST 2014 

    Максимальное значение для TZ составляет 24 часа

    Есть только несколько системных вызовов, которые получают дату / время, поэтому вы можете поместить библиотеку предварительной загрузки на место, чтобы изменить значения, возвращаемые этими вызовами, в зависимости от того, что вы хотите сделать (что еще несколько неясно из вопроса) , Это был общий трюк, когда тестирование Y2K было на высоте.

    Похоже, https://github.com/wolfcw/libfaketime может делать то, что вы хотите, но если это не так просто, чтобы сворачивать самостоятельно.

    Interesting Posts

    Как ограничить количество сообщений, отправленных через почтовый сервер?

    В FreeBSD, как найти пакеты в зависимости от конкретного пакета

    Rsync через Rsync через cronjob

    gparted говорит, что дескриптор драйвера и Linux не согласны с размером физического блока ручного привода; диск не автомонтируется; как решить?

    Как проверить, имеет ли glob расширение?

    Мне нужна помощь с помощью cronjob, чтобы следить за безудержными процессами и убивать их

    Почему «chmod 1777» и «chmod 3777» установили липкий бит?

    Как я могу получить мигающий курсор в KDE Konsole?

    Как вывести количество всех файлов с «tty» в имени файла в каталоге Linux, где хранятся файлы на системных устройствах

    Отображение полноэкранного видео с одного монитора в окне на другом мониторе

    Что значит . совпадение?

    Как установить безопасную установку Pidgin?

    Gedit или другой редактор без командной строки с возможностью проверки орфографии на двух языках одновременно

    Контрольный список с использованием whiptail – Почему я не могу запускать несколько команд?

    Не удается загрузить Fedora Linux

    Linux и Unix - лучшая ОС в мире.