Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Сборка deb пакета, с установкой mysql-server  (Прочитано 925 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Kapushon

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Доброй ночи, необходима помощь экспертов   :-\
Необходимо собрать deb пакет с установкой mysql,
с автоматическим заданием пароля рута..
Зависимости которые в файл config прописываются как я понял автоматически разрешаются, при установке пакета из репозитория, а мне надо, чтобы они разрешались, когда пакет устанавливается вручную  :(
для этого решил в postinst прописать банальную установку mysql-servera из репозитория
sudo apt-get install mysql-server
соответственно он начинает ругаться:
E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)
E: Unable to lock the administration directory (/var/lib/dpkg/) is another process using it?
Погуглив, везде пишут, что необходимо просто удалять файлы занимаемые процессом
sudo rm /var/lib/dpkg/lock
sudo dpkg --configure -a

Как я понимаю это не верно т.к. процесс который занимаем мой deb пакет не завершен...
а попробовав с этими строками, скрипт уходит в какой-то вечный цикл

Подскажите пожалуйста, как мне устанавливать mysql-server при установке своего deb пакета

Оффлайн JmAbuDabi

  • Старожил
  • *
  • Сообщений: 2468
  • 나는 빅터 해요. 나는 프로그래머입니다
    • Просмотр профиля
Re: Сборка deb пакета, с установкой mysql-server
« Ответ #1 : 23 Март 2014, 15:21:22 »
Перезагрузись.

Ругается он потому, что установка твоего пакета заблокировала файл, который безуспешно ты убиваешь.

Лучше пропиши пакет который ты так ставишьа это mysql-server, в зависимости. Тогда они скачаются и поставятся сами.

Когда ставишь вручную, то помогает это:

sudo dpkg -i ручной_пакет
sudo apt-get install -f
Вторая строка разрешает зависимости и устанавливает недостающее, если не может просит убрать плохой(по её мнению) пакет.
Покой – это не место, где тихо и мирно, где нет шума и беспокойства.
Покой – это когда при всем этом, вы сохраняете мир и спокойствие в своем сердце.

Оффлайн Kapushon

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: Сборка deb пакета, с установкой mysql-server
« Ответ #2 : 23 Март 2014, 16:40:55 »
К сожалению у меня только возможен ручной вариант установки,
прописал в Depends: mysql-server
При запуске sudo dpkg -i ручной_пакет
он ругается на отсутствие установленного mysql-server

Я так понимаю это "sudo apt-get install -f" нужно после установки пакета ввести или в скрипте прописать?

Оффлайн JmAbuDabi

  • Старожил
  • *
  • Сообщений: 2468
  • 나는 빅터 해요. 나는 프로그래머입니다
    • Просмотр профиля
Re: Сборка deb пакета, с установкой mysql-server
« Ответ #3 : 23 Март 2014, 16:45:45 »
После установки пакета. Введи.
Покой – это не место, где тихо и мирно, где нет шума и беспокойства.
Покой – это когда при всем этом, вы сохраняете мир и спокойствие в своем сердце.

Оффлайн Kapushon

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: Сборка deb пакета, с установкой mysql-server
« Ответ #4 : 23 Март 2014, 22:10:52 »
Так установка заканчивается из-за того что mysql-server не установлен  :-\

Оффлайн JmAbuDabi

  • Старожил
  • *
  • Сообщений: 2468
  • 나는 빅터 해요. 나는 프로그래머입니다
    • Просмотр профиля
Re: Сборка deb пакета, с установкой mysql-server
« Ответ #5 : 23 Март 2014, 22:38:13 »
А вывод покажешь?

sudo apt-get install -f
Покой – это не место, где тихо и мирно, где нет шума и беспокойства.
Покой – это когда при всем этом, вы сохраняете мир и спокойствие в своем сердце.

Оффлайн Kapushon

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: Сборка deb пакета, с установкой mysql-server
« Ответ #6 : 27 Март 2014, 17:54:36 »
JmAbuDabi  Спасибо, вопрос решён))))
Я указывал не верно команду   sudo dpkg -i ручной_пакет | sudo apt-get install -f
А нужно было: sudo dpkg -i ручной_пакет || sudo apt-get install -f

Но всё-таки мне необходимо было ещё сделать так, чтобы mysql устанавливался без вопросов к пользователя т.е. как-то в скрипте задать пароль для него.

Решено так:

echo "mysql-server-5.5 mysql-server/root_password_again password ПАРОЛЬ" | debconf-set-selections
echo "mysql-server-5.5 mysql-server/root_password password ПАРОЛЬ" | debconf-set-selections
sudo apt-get install mysql-server -y



Подробно почитать про это тут: http://serverfault.com/questions/407317/passing-default-answers-to-apt-get-package-install-questions

 

Страница сгенерирована за 0.19 секунд. Запросов: 24.