Имею Debian 7. Ясное дело старая система, пакеты тоже старые.
Хочу поставить почтовый и веб сервер. Через dpkg, так как apt не доступна.
Так вот как быть с пакетами, которые являются зависимостями?
Обновлять или удалять, а потом устанавливать?
Написать свое приложение, проверяющее зависимости и выполняющие функции apt. Если нужно выполнить какие-то действия, их нужно выполнить, заклинания не помогают.
А в чем проблема ставить приложения через dpkg? dpkg -i имя.deb. Если выдает ошибки, переписать пакеты зависимостей, повторить операцию для них и основного пакета и так до тех пор, пока все не установиться.
Axian Ltd. а если пакет уже есть но его версия старая. А надо новую версию, так как старая не сможет работать с другими пакетами корректно. Да и не которые пакеты вообще могут не установится так как установлена старая версия
Axian Ltd. хорошо по другому спрошу. Нужно установить например пакет веб сервера, но попытка установки веб сервера заканчивается ошибкой - старая версия зависимого пакета. Как сделать правильное обновление завистливого пакета через dpkg
Вы вообще ИМХО не с того конца заходите. Дано - изолированная система с определенной версий ОС. Нужно - установить определенные дополнительные сервисы.
Решение 1. Пойти в репозиторий данной версии ОС, взять нужные пакета, перенести на сервер и установить dpkg.
Решение 2. Использовать любой вариант контейнернов. Подготовить уонтейнер с ныжными сервисами, перенести на сервер, запустить.
Ни в 1, ни в 2 ваши проблемы не возникают.
Axian Ltd. мне надо первое у Вас указанное решение. Но вот как мне быть с зависимыми пакетами которые уже установлены, но со старой версией. Пока я склоняюсь к варианту удалил старый, установил новый. Но мне не совсем будет приятно в таком варианте. Хотелось бы просто обновить пакет. Но я так понимаю при прочтении документации по dpkg, что такого разработчики просто не планировали :(....
Я на это тоже уже ответил - обновлять пакеты до тех пор пока не перестанет ругаться. До тех пор пока вы пользуетесь пакетами для своей версии ОС риск сломать что-то минимален. Вообще это крайне непонятная идея делать все руками как 30 лет назад и не использовать apt.
Похоже, что есть проблемы с материальной базой. Дебиан при установке новой версии пакета либо спросит про замену, редактирование и пр., либо положит новый файл рядом, либо переименует старый файл и поставит новый.
fshpAxian Ltd. я больше с Windows знаком. Задам ещё вопрос по поводу конф. файлов при обновлении пакетов. Я пробовал устанавливать Астериск. Так вот там была такая проблема, что при обновлении версии Астериска возникала проблема с конф. файлами. Как в общем или по раздельности обстоят дела в Linux. Я так понимаю, что с некоторыми пакетами существуют проблемы и простого обновления не хватает для стабильной работы. Получается, что требуется ещё подправлять конфигурацию пакетов вручную.
avp dnepr: если пользователь не менял конфиг, то старый конфиг перезапишется новым.
Если менял, то старый не будет тронут, новый сохранится под другим именем, и нужно будет вручную смержить их.
fshp и как часто такое возникает. Предупреждает ли разработчик о не работоспособности старого конф. файла, если будет происходит не новая установка, а обновление старого ПО
avp dnepr: разработчик не имеет отношения к пакетам. Пакеты создают мантейнеры. Мантейнер и разработчик это может быть один человек, да. Но в производных дебиана это далеко не так.
А теперь по сути - мантейнер не имеет понятия, что вы хотите. Если вы правили конфиги под себя, а пакет перезапишет все ваши наработки, вы будете рады этому? Поэтому пакет не трогает модифицированные конфиги (если пакет создан по гайдлайну дебиана. Левый пакет от дяди Васи может вам всё снести), а если и трогает, то обязательно сохраняет резервную копию.
В Linux 99% конфигов это plain text. Благодаря этому легко сравнить старый конфиг и новый и оставить только то, что вам нужно.
fshp, а где мне брать проверенные пакеты и в какой форме, а также где происходит описание всех изменений... если можно на примере Астериска или Postfix(я про описание изменений в сервисе)
avp dnepr: описание изменений в changelog пакета. Все исходники, представленные в репозитории дебиана, проходят стадию дебианизации. Одним из условий дебианизации является ведение ченжлога.