Автоматически установите часовой пояс Linux согласно местоположению

На самом деле пространство, которое находится в фактическом употреблении снимком, может быть легко замечено после активации объемов (например, с vgchange -a y) - в процентах общего пространства выделил для снимка:

это, как показывают, в Выделенном создает снимки строку вывода lvdisplay, или snap_percent опция lvs.

(Я просто исследовал объемы, не активируя их - вот почему я не мог видеть эту информацию прямо о.)

Если, например, это - 5%, то можно просто использовать lvreduce -l 5%LV (или немного больше) для освобождения всего неиспользуемого пространства от объема снимка.

19
12.09.2013, 12:20
3 ответа

Я записал программу только что, которая делает это: tzupdate.

Вы видите то, что это установило бы Ваш часовой пояс на (на самом деле не устанавливая его) путем выполнения tzupdate -p:

$ tzupdate -p
Europe/Malta

Можно установить его для реального путем выполнения tzupdate как корень.

$ sudo tzupdate
Europe/Malta
$ date
Thu 12 Sep 05:52:22 CEST 2013

Это работает:

  • Определение геолокации текущего IP
  • Получение часового пояса для того местоположения
  • Обновление символьной ссылки в /etc/localtime указать на zoneinfo файл для того часового пояса
37
27.01.2020, 19:44

Не ясно, что Вы подразумеваете "под обновлением часового пояса".

Unix и Linux сохраняют время как число секунд с 1 января 1970, 0:00 UTC. Системные часы Unix являются поэтому независимым часовым поясом. Часовые пояса не существуют в ядре Linux; это только, когда пространство пользователя отображения приложения время, когда число секунд с 1970 интерпретируется с помощью часового пояса. Обычно, эта интерпретация сделана через библиотечные функции C. Часовой пояс выбран TZ переменная среды. Определения часового пояса (которые состоят из названия часового пояса, сместите от UTC, даты, когда летнее время в действительности, и смещения в течение DST) часть GNU libc и обычно включается в дистрибутивы Linux как "tzdata" пакет. Поэтому обновление определений часового пояса является вопросом выполнения apt-get upgrade, yum update, или некоторая подобная операция.

Обратите внимание, что некоторое программное обеспечение, такое как Java, имеет их собственные файлы определения часового пояса, которые должны быть обновлены отдельно.

NTP отслеживает число секунд с 1 января 1900, UTC. Поэтому NTP, как ядро Unix, не имеет никакого понятия часовых поясов.

-2
27.01.2020, 19:44
  • 1
    , мы видим, что команда "даты" распечатает время и дату согласно/etc/localtime часовому поясу, мы можем изменить часовой пояс вручную путем создания символьной ссылки/usr/share/zoneinfo/america/los_angeles., но это - ручной способ сделать. Я хочу, это должно автоматически обновить часовой пояс страны, где я, вместо того, чтобы делать вручную. –  Embedded Programmer 12.09.2013, 11:47

Este es un hilo antiguo, pero aún relevante para kubuntu 1710 que no cambia la zona horaria automáticamente. Estoy usando la solución de Chris Down para tzupdate, pero también me aseguro de que se active cuando el sistema intente conectarse a una red (wifi u otra ). Esto supone que está utilizando Network Manager.

Abra una terminal primero.

  1. Instalar tzupdate

    sudo apt install python-pip
    pip install -U tzupdate
    

    Luego asegúrese de que sea accesible para todos los usuarios

    sudo cp -R ~/.local/lib/python2.7/site-packages/. /usr/lib/python2.7/.
    sudo cp /home/marta_riba/.local/bin/tzupdate /usr/local/bin/tzupdate
    
  2. Prueba que funciona

    sudo tzupdate
    
  3. Lo que debemos hacer es asegurarnos de que todos los usuarios puedan acceder a esto

    sudo su -
    tzupdate
    

    que lo coloca como root y luego verifica que el comando cambie su zona horaria. Luego, asegúrese de salir para volver como usuario normal

    exit
    
  4. Asegúrese de que tzupdate se pueda ejecutar con sudo sin contraseña. Esto es necesario para un paso posterior cuando activamos esto desde el administrador de red que lo ejecuta en segundo plano. Escriba esto en una terminal para editar el archivo sudoers

    sudo visudo
    

    Agregue esta línea al final del archivo

    ALL ALL=(root) NOPASSWD: /usr/local/bin/tzupdate
    

    Presione CTRL -X y luego presione Y y luego ENTER para guardar los cambios

  5. Luego nos aseguramos de que NetworkManager siempre llame a esto después de activar un cambio de conexión de red (, p. cuando se conecta a un wifi ). Para esto creamos un archivo llamado tzupdate en la carpeta dispatcher.d que simplemente llama a sudo tzupdate. El archivo necesita permisos ejecutables para ejecutarse

    echo 'sudo tzupdate'| sudo tee /etc/NetworkManager/dispatcher.d/99-tzupdate
    sudo chmod +x /etc/NetworkManager/dispatcher.d/99-tzupdate
    

    Tenga en cuenta que NetworkManager ejecutará sudo (, es decir, sudo tzupdate ), que normalmente solicitará una contraseña.

    Podría haber una mejor manera de hacer esto, es decir,.haga que NetworkManager llame a esto solo cuando activa una conexión y no también para desactivar (como lo hará el anterior)-He intentado poner el script en /etc/network/if -up.d pero esto no ha funcionado no funciono para mi

  6. Para probar esto en Kubuntu -Cambie su zona horaria local a otra cosa (Vaya al plasmoide Fecha en su barra de tareas y haga clic con el botón derecho y seleccione 'Ajustar fecha/hora' y luego 'Zona horaria' en la pestaña)

    Apague su wifi y vuelva a encenderlo -verá que una vez que se conecta al wifi, parece esperar alrededor de 30 segundos y luego debería cambiar su zona horaria con éxito.

    Tenga en cuenta que esto no se ha probado con wifi donde se necesita ingresar una contraseña en una página web. Con suerte, el hecho de que esto se ejecute al final de una conexión de red proporcione suficiente tiempo para que un usuario ingrese las credenciales -; de lo contrario, es posible que necesite más ajustes (verifique que exista una conexión, verifique que pueda conectarse a Internet, espere X segundos si no puede conectarse a Internet y luego vuelva a intentarlo Y veces

9
27.01.2020, 19:44

Теги

Похожие вопросы