Как исправить проблемы с зависанием при обновлении Mariadb-Server-10.3 в Ubuntu 20.04
В этой статье мы обсудим распространенную проблему, с которой сталкиваются пользователи при обновлении до mariadb-server-10.3 в Ubuntu 20.04. Эта проблема обычно проявляется в виде зависания или зависания во время настройки пакета. Последующие попытки обновить пакеты могут привести к проблемам с зависимостями.
Определение проблемы
Первым шагом в решении любой проблемы является ее идентификация. Если вы испытываете зависание в процессе apt-обновления, особенно при настройке пакета mariadb-server-10.3, то, скорее всего, вы имеете дело с проблемой, которую мы рассматриваем в этой статье.
Обзор решения
Чтобы устранить эту проблему, мы выполним следующие действия:
- Убейте все зависшие apt-процессы
- Удалить проблемный пакет
- Очистите все оставшиеся зависимости
- Переустановите mariadb-сервер
- Настроить mariadb-сервер
- Исправить профиль AppArmor (при необходимости)
Теперь давайте подробно рассмотрим каждый шаг.
Уничтожение зависших apt-процессов
Если у вас есть какие-либо зависшие apt-процессы, вы можете убить их с помощью команды kill, за которой следует идентификатор процесса (PID). Узнать PID можно с помощью команды ps. Эта команда предоставляет снимок текущих процессов в вашей системе.
пс к | grep-apt
Эта команда выведет список всех процессов, включающих «apt». Как только вы определите зависший процесс, используйте команду kill, чтобы завершить его.
убить -9 [PID]
Заменять [PID] с идентификатором зависшего apt-процесса.
Удаление проблемного пакета
Как только все зависшие процессы будут уничтожены, следующим шагом будет удаление проблемного пакета mariadb-server-10.3. Для этого воспользуемся командой dpkg. dpkg — менеджер пакетов для систем на основе Debian.
sudo dpkg –remove –force-remove-reinstreq mariadb-server-10.3
В этой команде –remove указывает dpkg удалить пакет, а –force-remove-reinstreq принудительно удаляет пакет, даже если он находится в состоянии, требующем переустановки.
Очистка оставшихся зависимостей
После удаления проблемного пакета могут остаться некоторые зависимости. Мы будем использовать команду apt с опцией –fix-broken install, чтобы решить эту проблему.
sudo apt –fix-сломанная установка
Эта команда пытается исправить систему с неработающими зависимостями.
Переустановка mariadb-сервера
Как только все зависимости будут исправлены, вы можете переустановить mariadb-server с помощью следующей команды:
sudo apt установить mariadb-сервер
Эта команда установит последнюю версию mariadb-server, доступную в ваших репозиториях.
Настройка mariadb-сервера
После переустановки вам может понадобиться настроить mariadb-server с помощью команды mysql_secure_installation:
sudo mysql_secure_installation
Эта команда проведет вас через процесс защиты вашей установки MariaDB.
Исправление профиля AppArmor (при необходимости)
Если вы столкнулись с ошибкой, связанной с AppArmor, вы можете исправить ее, создав новый профиль AppArmor для mysqld. AppArmor — это модуль безопасности ядра Linux, который позволяет системному администратору ограничивать возможности программ с помощью профилей для каждой программы.
эхо “/usr/sbin/mysqld { }” | sudo tee /etc/apparmor.d/usr.sbin.mysqld sudo apparmor_parser -v -R /etc/apparmor.d/usr.sbin.mysqld
В первой команде echo используется для печати текста, а команда tee используется для записи в файл. Команда apparmor_parser во второй строке используется для добавления, удаления или перезагрузки профилей apparmor.
Выполнив эти шаги, вы сможете успешно настроить и обновить mariadb-server-10.3 без каких-либо проблем с зависанием или зависимостями. Если у вас возникнут какие-либо другие проблемы, не стесняйтесь обращаться к База знаний MariaDB или Вики справки сообщества Ubuntu.
mariadb-server-10.3 — это пакет, который предоставляет сервер базы данных MariaDB версии 10.3. MariaDB — это популярная система управления реляционными базами данных с открытым исходным кодом, которая может заменить MySQL.
Вы можете проверить версию MariaDB, установленную в вашей системе, выполнив следующую команду: mysql -V. Это отобразит информацию о версии сервера MariaDB.
Уничтожение зависших процессов apt необходимо для обеспечения чистой и бесперебойной установки или удаления пакетов. Зависшие процессы могут вызвать конфликты и помешать успешному выполнению последующих команд.
Параметр –force-remove-reinstreq в команде dpkg позволяет удалить пакет, даже если он находится в состоянии, требующем переустановки. Это полезно при работе с проблемными пакетами, которые нельзя удалить обычными средствами.
Команда установки apt –fix-broken пытается устранить сломанные зависимости в системе. Он анализирует базу данных пакетов и пытается исправить любые отсутствующие или неудовлетворительные зависимости, устанавливая или удаляя пакеты по мере необходимости.
Команда mysql_secure_installation используется для защиты установки MariaDB путем настройки различных параметров безопасности. Он предлагает пользователю установить пароль root, удалить анонимных пользователей, ограничить удаленный доступ и выполнить другие задачи, связанные с безопасностью.
AppArmor — это модуль безопасности ядра Linux, который позволяет администраторам ограничивать возможности программ с помощью профилей для каждой программы. В контексте исправления проблем с зависанием в mariadb-server-10.3 создание нового профиля AppArmor для mysqld помогает устранить любые связанные с AppArmor ошибки, которые могут возникнуть в процессе настройки.