Ошибка Failed to set time automatic time synchronization is enabled Centos 7
Ошибка Failed to set time automatic time synchronization is enabled Centos 7
Ошибка Failed to set time automatic time synchronization is enabled Centos 7
GNOME Automatic Date & Time не использует службу ntp, которую можно установить через sudo apt-get install ntp . Поэтому остановка или удаление службы не помогает ошибка Failed to set time automatic time synchronization is enabled в Centos 7 устраняется с помощью команды
и команда для включения
пример через timedatectl status
Hwclock: настройка аппаратного (системного) времени
Чтобы проверить аппаратное время в Linux используется утилита hwclock:
- hwclock —localtime — проверка аппаратного времени без поправки
- hwclock —utc – проверка времени с условием, что аппаратные часы идут по времени UTC
Чтобы установить аппаратное время равное системному времени, выполните команду:
Чтобы установить конкретное время, выполните:
Ручная настройка времени в CentOS
В Linux за программное время отвечает утилита date или timedatectl. Если вызывать утилиту date без параметров, она покажет текущее время на сервере:
Если вы хотите выставить время вручную, можно воспользоваться утилитой date с дополнительными ключами:
Где MM – месяц, DD — день, hh – час, mm – минуты.
Для получения расширенной информации о дате, времени, поясе, синхронизации, настройках перехода на сезонное (летнее/зимнее) время (DST), используется утилита timedatectl. Она дает более подробную информацию о настройках времени на сервере.
Timedatectl также позволяет изменить время:
Синхронизация времени с помощью chrony, ntpdate
Способов синхронизации времени в centos существует как минимум три:
- ручной с помощью утилиты ntpdate
- автоматический при помощи сервиса ntp или chrony
- автоматический через утилиту из пакета systemd — timesyncd.
Рассмотрим сначала вариант ручной однократной синхронизации при помощи программы ntpdate. Она позволяет разово синхронизировать локальное время с эталонным сервером времени в интернете. Подобных эталонов существует великое множество. Мы для примера воспользуемся одним из них — pool.ntp.org
Запускаем синхронизацию времени:
Если получите ошибку
значит утилита у вас не установлена. Установить ее можно из базового репозитория.
Это актуально только для 7-й версии, в В CentOS 8 ntp и ntpdate убрали из репозиториев. Для синхронизации времени можно использовать только chrony. Ее мы рассмотрим ниже.
Утилита ntpdate провела синхронизацию, в результате которой к моему системному времени было добавлено 0.001664 секунды для приближения к эталонному. Если в результате работы синхронизации вы получаете ошибку: no server suitable for synchronization found то попробуйте в работе утилиты использовать непривилегированный порт. По-умолчанию ntpdate работает по 123 порту. Если он закрыт на фаерволе, то помочь в синхронизации поможет следующий параметр:
Если у вас запуск ntpdate завершается ошибкой — the NTP socket is in use, exiting, значит у вас уже установлена и запущена служба ntpd, которая заняла udp порт, необходимый для работы ntpdate. Установкой и настройкой этой службы мы и займемся далее.
Как я уже сказал, в CentOS 8 служба ntpd и утилита ntpdate стали недоступны в базовых репозиториях. Возможно, их как-то удастся установить из сторонних репозиториев, но большого смысла нет. Можно воспользоваться программой chrony. Ставим ее:
Запускаем и добавляем в автозагрузку.
Программа стартовала и уже выполнила синхронизацию с источниками точного времени в интернете. Каких-то особых настроек для получения точного времени больше не надо. Служба будет постоянно работать и выполнять синхронизацию. Проверим это с помощью timedatectl.
systemd-timesyncd
Отдельно пару слов о службе systemd-timesyncd, которая в системах с systemd выступает в роли простого sntp клиента, в отличие от chrony и ntp, которые в том числе могут работать в качестве сервера времени. В Debian служба systemd-timesyncd присутствует в составе systemd и ей можно пользоваться, что достаточно удобно. Легкий полновесный клиент, который по дефолту есть в составе системы.
Я сначала не мог понять, что с systemd-timesyncd в Centos. Команда вроде есть и работает, но как оказалось, это просто обертка над chrony. Реально команда управляет именно chrony и без него не работает. Без него вы получите ошибку, при попытке активировать компонент timesyncd.
Если вернете chrony в систему, то timedatectl будет запускать именно его. Немного погуглив, я понял в чем тут дело. Red Hat компилирует systemd без компонента systemd-timesyncd, предлагая по дефолту именно chrony.
Добавить Linux CentOS в домен Active Directory с помощью SSSD
Во многих мануалах в Интернете для присоединения Linux к домену Active Directory используется Samba и Winbind. В этой статье мы покажем альтернативный способ добавления в домен с помощью пакета realmd (Realm Discovery) и службы SSSD (System Security Services Daemon). В этой статье мы покажем, как добавить сервер CentOS 8.1 в ваш домен Active Directory (на базе Windows Server 2016).
Realmd позволяет произвести настройку сетевой аутентификации и членства в домене (AD или IPA/FreeIPA) без сложных настроек. Информация о домене обнаруживается автоматически. Realmd использует SSSD для аутентификации и проверки учетных записей.
Для успешного присоединения и членства в домене Active Directory вам нужно выполнить следующие требования:
- Настроить синхронизацию времени с контроллером домена Active Directory. Иначе SSSD не сможет корректно работать, т.к. эта служба поддерживает только Kerberos (не может использовать NTLM для аутентификации в домене). Соответственно разница во времени между DC и Linux клиентом не должна быть больше 5 минут.
- Необходимо изменить настройки DNS на клиенте Linux CentOS. Он должен указывать на DNS сервер на контроллерах домена AD.
Установите в CentOS клиент ntp chrony:
# yum install -y chrony
Затем в конфигурационном файле /etc/chrony.conf укажите адреса NTP серверов для синхронизации времени (это могут быть ваши контроллеры домена AD).
Запустите службу NTP и добавьте ее в автозагрузку
# systemctl start chronyd
# systemctl enable chronyd
Теперь в файл /etc/resolv.conf добавьте адреса DNS-серверов, которые отвечают за разрешение имён в вашем домене Active Directory:
Теперь нужно установить необходимые пакеты из репозитория CentOS:
# yum install adcli krb5-workstation realmd sssd
Проверьте, что утилита rearm может обнаружить ваш домен:
# realm discover vmblog.ru –verbos
Если утилита успешно обнаружит ваш домен AD, появится примерно такой лог:
Теперь в конфигурационном файле /etc/realmd.conf нужно указать значения атрибутов operatingSystem и operatingSystemVersion.
Теперь можно добавить ваш сервер CentOS в Active Directory. Для этого используется команда realm join . В следующей команде мы указали имя пользователя с правами добавления в домен и OU, в который нужно поместить учетную запись вашего компьютера Linux.
CentOS: How to Set Date, Time, TimeZone and NTP Synchronization
In this article, we’ll show you how to set time, date, timezone, synchronize time with an NTP server and fix typical issues in CentOS Linux.
There are two types of clocks on the servers: hardware one (real-time clock) that are working even if a server is off and the operating system software clock. The time on these clocks may differ. After starting the operating system, the software clock is based on a hardware one and may be adjusted by the OS.
Most applications use software clock time in their operation.
Hwclock: Hardware Time Configuration
Hwclock is used to check the hardware time in Linux:
- hwclock —localtime — check hardware time without correction
- hwclock —utc – displays time if the hardware clock shows UTC time
To set hardware time according to the system time, run this command:
# hwclock —systohc
To set the hardware time you want, run the following:
# hwclock —set —date «11 Oct 2020 17:30»
Manual Time Configuration in CentOS
In Linux, date or timedatectl tools are used to check and set software time. If you call date without any parameters, it will show the current time on your server:
If you want to set time manually, you can use date with additional parameters:
To get extended information about the date, time, timezone, synchronization settings, day-light saving time settings (DST), timedatectl is used. It gives more detailed information about time settings on a server.
Timedatectl also allows to change time:
# timedatectl set-time ‘2020-10-11 17:51:00’
How to Set TimeZone in CentOS?
To set the time according to your timezone on a CentOS Linux, you can change it manually. To do it, you can use two tools:
- timedatectl
- tzdata
To change a time zone using timedatectl, run this command:
# timedatectl set-timezone Canada/Pacific
# date
Or you can use tzdata. To use this method, replace the file /etc/localtime with the one you need. The entire list of time zones is located in /usr/share/zoneinfo/ directory. Let’s change a timezone to Canada/Pacific. Back up the current locatime file:
# mv /etc/localtime /etc/localtime.bak
Create a symlink to the timezone you want to set:
# ln -s /usr/share/zoneinfo/Canada/Pacific /etc/localtime
Configure CentOS to Sync Time with NTP Time Servers
You can configure automatic time synchronization on your host with an external NTP (Network Time Protocol) server. To do it, you must install the ntp service. For example, you can install it using yum in CentOS 7:
# yum install ntp -y
After the installation, start the ntpd service and add it to startup:
# systemctl start ntpd.service
# systemctl enable ntpd.service
Make sure that the service is running:
# service ntpd status
Specify the NTP servers to synchronize time with in /etc/ntp.conf:
Time is synchronized in turn. If the first NTP server is not available, the second one is used, etc.
You can synchronize time with the specified NTP server manually using this command:
By default, ntpd enables “11 minute mode”. It means that time will be synchronized every 11 minutes. If you cannot use the ntpd daemon, you can configure time synchronization using cron. Add the following command to cron:
How to Sync Time in CentOS 8 using Chronyd?
In CentOS 8 you will have to use chrony to synchronize time, since ntp and ntpdate have been removed from the official repositories.
The main benefits of chrony are:
- High speed and accuracy of time synchronization;
- Proper operation if you don’t have access to master clock (ntpd requires regular requests);
- By default, time is not modified right after the synchronization to prevent any problems for running programs;
- Uses less resources.
By default, chrony is already installed in CentOS Linux, but if you don’t have it on some reason, install it:
# dnf install chrony
Like any other service, chrony needs to be started and added to startup after installation:
# systemctl start chronyd
# systemctl enable chronyd
Check the chronyd service status:
# systemctl status chronyd
To make sure that the time synchronization is working, run this command:
Chrony configuration file is /etc/chrony.conf. Specify the list of NTP servers you want to use for synchronization. Like ntp, chrony has a command-line interface: chronyc. To view the information about the current time synchronization options, run this command:
To view the information about sync servers:
If you want to set the specific date and time manually, you can use date, but previously disable the chronyd daemon.
Common Time Syn Issues in CentOS
In this section, I will describe typical errors that appear when working with timedatectl, ntp.
During the manual time synchronization you may come across this error:
This means that the ntpd daemon is running and is preventing manual time synchronization. To manually synchronize the time, stop the ntpd daemon:
# service ntpd stop
And run the synchronization again.
The same error may occur when working with timedatectl:
You must disable automatic sync in timedatectl:
# timedatectl set-ntp 0
And run this command to set the time and date you want:
# timedatectl set-time ‘2020-11-12 17:41:00’
When working with time zones, it may occur that they are not installed on your server and you are not able to create a symlink for localtime. To make time zones available on your host, install the tzdata tool:
# yum install tzdata -y
Also, you may face some errors during manual synchronization like the following one:
In this case, check your firewalld/iptables rules and make sure that the UDP Port 123 is open on your server. Also, some NTP hosts may not be available during validation.
Настройка CentOS 7 для сервера 1С 8.3
После установки CentOS 7 приступим к ее настройке.
Для настройки системы воспользуемся подключением по SSH используя клиент PuTTy или другой SSH клиент.
Начальная настройка CentOS 7
Так как CentOS 7 у нас гостевая ОС ESXi 6.5, то нужно установить VMware tools:
Для дальнейшего удобства установим файловый менеджер Midnight Commander:
В CentOS 7 minimal все утилиты, такие как dig, host, nslookup, теперь включены в пакет bind-utils, поэтому установим этот пакет:
меняем значение SELINUX=enforcing на SELINUX=disabled . Сохраняем и выходим.
Для вступления изменений в силу перезагрузим ОС:
Настройка сетевого интерфейса сервера
Сервер 1С:Предприятие будет находится в пределах локальной сети и его вполне можно использовать с отключенным файрволом без большой угрозы безопасности.
Отключаем firewalld:
В файле /etc/hosts не должно быть записей формата localhost.localdomian или относящихся к IPv6, в случае отсутствия DNS-сервера, в нем должно быть прописано четкое соответствие IP-адрес сервера – FQDN имя – короткое имя. Пример правильного файла hosts:
127.0.0.1 localhost
192.168.xxx.yyy SERVER_NAME.DOMAIN.LOCAL SERVER_NAME
Что бы новые параметры вступили в силу нужно перезагрузить сервер.
После перезагрузки имя сервера должно разрешаться в IP-адрес.
Подключение репозиториев
Для инсталляции различных пакетов ПО необходимо подключить репозитории в CentOS. Добавим популярный EPEL:
Настройка и синхронизация времени
Настроим время сервера. Узнать, какое время на сервере можно с помощью команды date:
Чтобы сменить часовой пояс на +3, воспользуемся специальной утилитой, которая входит в комплект CentOS 7:
Установим утилиту для синхронизации времени chrony:
Запускаем chrony и добавляем в автозагрузку:
Установка дополнительных пакетов
Добавим несколько полезных утилит, которые могут пригодиться в процессе эксплуатации сервера.
iftop показывает в режиме реального времени загрузку сетевого интерфейса:
Диспетчер задач htop:
Установим также необходимые пакеты отсутствующие в поставке:
Скачиваем необходимые шрифты и устанавливаем их:
Публикация общей папки
Для удобства установим Samba и добавим в автозагрузку:
Далее создадим папку, к которую дадим общий доступ и настроим Samba:
Настроим Samba внеся в smb.conf следующий текст:
[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = Server1C
security = user
map to guest = bad user
dns proxy = no
guest account = nobody
browseable = yeslog file = /var/log/samba/log.%m
max log size = 50
[public]
comment = FS
path = /home/public
readonly = no
guest ok = yes
public = yes
guest only = yes
writable = yes
Добавляем Samba в автозагрузку:
Если не отключать Firewall, то нужно добавить следующие правила:
Установка веб сервера
Для работы сервисов, имеющих веб интерфейс, установим веб сервер Apache:
Добавляем apache в автозагрузку:
Запускаем apache в CentOS 7:
Проверяем, запустился ли сервер:
Установим популярные модули для php:
Выполним перезапуск apache:
Базовая настройка CentOS 7 закончена
Поделиться ссылкой:
Похожее
Настройка CentOS 7 для сервера 1С 8.3: 13 комментариев
Скажите. Вы когда-нибудь пробовали на такой связке формировать этикетки со штрих кодами. Интересуют управляемые формы. Суть в том, что на сервере нужна компонента, которая «нарисует» штрих код и отправит его клиенту. Такой компоненты там нет, и при попытке распечатать любой ШК клиенту выйдет сообщение об ошибке «Ошибка подключения компоненты».
В случае сервера на винде там все понятно, а вот под центом не могу найти где взять эту компоненту и как ее поставить.
Нет, не пробовал. У меня на данный момент похожая проблема с криптопровайдером. Под линуксом криптопровайдер не цепляется, тоже вываливается ошибка подключения динамической библиотеки. Я не уверен, но в Вашем случае скорее всего проблема подключения COM объектов, которые, как я понял, не поддерживаются в Linux. Возможно надо найти обработчик под CentOS.
День добрый.
Решили проблему с криптопровайдером?
Нет, забил. В итоге из-за ЭДО пришлось сервер 1с выносить отдельно на виртуальную машину с windows 10 с более частотным процессором
А что конкретно не работало? 1С отчетность для сдачи в ФНС ФСС и прочее или что-то свое?
Да, 1С отчетность. Мне нужно было чтобы сервер раздавал эцп, чтобы сотрудники не имели физ доступа к ней, но не сложилось
Добрый день.
Для чего служат пакеты из команды
yum install policycoreutils-python wget bzip2 ntp net-tools unixODBC ImageMagick fontconfig-devel ?
Как определили их необходимость?
policycoreutils-python — инструменты для работы с selinux, но selinux обычно отрубают;
wget — консольный менеджер загрузок, в статье используется для скачивания файла;
bzip2 — консольный архиватор;
ntp — сервер времени, думаю не нужен так как установлен chrony;
net-tools — сетевые утилиты например ifconfig;
unixODBC — компоненты для доступа к данным на основе ODBC, если нужно выгрузить/загрузить данные в сторонние базы не обязательно 1С;
ImageMagick — набор инструментов для работы с изображениями, нужен в тонком клиенте и наверно в web тоже;
fontconfig-devel — для работы со шрифтами, в данном случае с майкрософтовскими.
В целом статья полезна, сам настраиваю таким способом.
Да, 1С отчетность. Мне нужно было чтобы сервер раздавал эцп, чтобы сотрудники не имели физ доступа к ней, но не сложилось
Создаётся впечатление, что все авторы, описывающие установку CentOS в качестве сервера, не владеют ситуацией. Первое, что они предлагают, отключить SELinux и Firewall. А слабо, настроить SELinux? А где открытие портов? Для работы в с ОС Windows, коих подавляющее большинство в сетях, нужна Samba, а для её работы необходимо открыть порты 137, 138, 139, 443 и 445. Для возможности соединения с сервером, через Web интерфейс, необходимо открыть порт 80. Для удалённого управления сервером необходимо настроить SSH, а для исключения возможности несанкционированного доступа к серверу, поменять порт SSH, или на худой коней открыть порт по умолчанию и сформировать надёжный пароль, или доступ по публичному ключу. Где все это. Я даже на домашнем сервере всё это проделал и не отключал SELinux, а настроил её, включил разрешения для работы Samba и SSH, но только те, которые используются в домашней сети.
Спасибо за комментарий. Вы правы, мне этот «блог» нужен для того что бы инфа, которую я собрал в инете была под рукой и эти инструкции делал прежде всего для себя, естественно после успешного внедрения, и если здесь нет инфы о настройке защиты, значит я не нашёл нормальную инструкцию, а сам я ни разу не линуксоид. Да и в моем случае это работает в закрытом контуре сети, поэтому не стал разбираться с защитой. Если дополните будет очень хорошо!
Соглашусь. Если сервер работает только внутри сети и не смотрит наружу, то смысла настраивать все порты и SE не вижу. Больше мороки.
По моему я где-то написал, что не настраивал защиту по причине работы сервера в закрытой сети