Помогите установить justniffer [Решено]

Мне нужно установить justniffer на Kubuntu. Justniffer - это программа, которая позволяет просматривать http-трафик и сохранять его в файл. Программа Wireshark очень сложна и её проблематично использовать лишь только для того, чтобы увидеть http-трафик между браузерами и серверами.

Я скачал с http://sourceforge.net/projects/justniffer/files/justniffer/justniffer%200.5.11/ файл justniffer_0.5.11_i386.deb и запустил его с помощью gdebi:
sudo gdebi justniffer_0.5.11_i386.deb
В результате я получаю такой вывод:

sudo gdebi justniffer_0.5.11_i386.deb
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Building data structures... Done
Building data structures... Done
Этот пакет невозможно установить
Dependency is not satisfiable: libboost-program-options1.42.0 (>= 1.42.0-1)

Ищу в репах похожую программу с помощью apt-get search и нахожу libboost-program-options1.46.1. Пытаюсь её установить, но результат получается такой:

sudo apt-get install libboost-program-options1.46.1
Чтение списков пакетов… Готово
Построение дерева зависимостей      
Чтение информации о состоянии… Готово
Уже установлена самая новая версия libboost-program-options1.46.1.
обновлено 0, установлено 0 новых пакетов, для удаления отмечено 0 пакетов, и 189 пакетов не обновлено.

Вот не знаю как поступить надо.

0
DarkneSS - 5 Октябрь, 2013 - 18:47
Изображение пользователя DarkneSS.

Ему нужен именно буст 1.42, можете попробовать стянуть и поставить соответствующий пакет из более старого дистра.

0
yarmol76 - 6 Октябрь, 2013 - 06:54

И как безопасно поставить более старую версию этого пакета? Это вообще правильно удалять новую версию пакета и ставить старую?

0
DarkneSS - 6 Октябрь, 2013 - 10:49
Изображение пользователя DarkneSS.

Как можно заметить, у буста разных версий различаются не только версии пакета, но и имена. Так что можно смело пытаться ставить старый буст, если дело не упрётся уже в его зависимости.

0
mft - 5 Октябрь, 2013 - 20:22

как вариант скачать там же исходники и собрать пакет, через debuild.

0
yarmol76 - 6 Октябрь, 2013 - 06:55

Никогда не пробовал собирать из исходников. Это сложноватый путь.

0
kubuntuuser - 5 Октябрь, 2013 - 21:03
Изображение пользователя kubuntuuser.

Вот вам пакет который установится: justniffer_0.5.11-1_i386.deb. Если в дальнейшем возникают подобные проблемы, то нужно пробовать собирать из исходного кода, тот пакет просто был собран давно и зависимости которые в нём указаны просто устарели.

0
yarmol76 - 6 Октябрь, 2013 - 07:01

В том то и вопрос. Уже не первый раз в такую ситуацию попадаю. Скачиваю deb-файл с пакетом, которого нет в репах, а ему нужна некая версия пакета, в основном устаревшая. Как я должен поступать в таких случаях? Если я нужный пакет удалю и поставлю его старую (иную) версию, то возникают вопросы:
а) не полетят ли все зависимости в системе,
б) смогут ли другие программы работать, которые также используют этот пакет
И интересует правильный алгоритм замены версии пакета на другую версию.

0
mft - 6 Октябрь, 2013 - 08:36

Как я должен поступать в таких случаях?
Найти репозиторий в котором есть этот пакет для нужной версии дистра, либо собрать самому. Если не можешь сам, попросить кого-то кто может. Не советую ставить пакеты которые не проходят по зависимостям, тем более заменять пакеты из репозитория старыми версиями. И вообще, надо стараться ставить все пакеты из репозиториев, держать систему в порядке.

0
yarmol76 - 6 Октябрь, 2013 - 09:11

Тут ситуация такая, что программу justniffer обязательно ставить надо. Не думаю, что эта программа, если она не из репозиториев, то она сделает что-то некорректное в системе. Мне нужен практический совет, что я должен точно сделать чтобы пакет стоял в системе и работал, и вся система также работала исправно?

+1
mft - 6 Октябрь, 2013 - 12:03

Не думаю, что эта программа, если она не из репозиториев, то она сделает что-то некорректное в системе.
Я что-то написал о программе? Я вроде ясно и понятно написал, если есть пакет и он не подходит для этой системы, его нельзя ставить, о чем вам и скажет пакетный менеджер. Зависимости, конфликты и прочее в пакете именно для этого и сделаны, чтобы при установке были подтянуты все необходимые для корректной работы программы компоненты.

Если сильно нужна программа и ее нет в основном репозитории.
1 вариант. Поискать сторонние репозитории.
2 вариант. Поискать собранный кем-то деб пакет.
3 вариант. Самому собрать деб пакет.
4 вариант. Собрать и установить из исходников без пакетирования.

В данном случае, для этой программы есть сторонний ppa репозиторий, в котором есть нужная версия (precise).

0
yarmol76 - 6 Октябрь, 2013 - 13:02

Спасибо за совет. Скачал нужный deb-файл прямо отсюда: http://ppa.launchpad.net/oreste-notelli/ppa/ubuntu/pool/main/j/justniffer/
Установка была несколько отличной от того, что было раньше:
sudo gdebi justniffer_0.5.11.precise_i386.deb
[sudo] password for user:
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Building data structures... Done
Building data structures... Done

Требует установки следующих пакетов:
libboost-regex1.46.1
justniffer is a tcp packet sniffer. It can log network traffic in
a 'standard' (web server like) or in a customized way. It can also log response
times, useful for tracking network services performances (e.g. web server,
application server, etc.).
Вы хотите установить этот пакет? [д/Н]д
Get:1 http://ru.archive.ubuntu.com/ubuntu/ precise/main libboost-regex1.46.1 i386 1.46.1-7ubuntu3 [399 kB]
Fetched 399 kB in 0s (0 B/s)                                            
Выбор ранее не выбранного пакета libboost-regex1.46.1.
(Чтение базы данных ... на данный момент установлено 161770 файла и каталога.)
Распаковывается пакет libboost-regex1.46.1 (из файла .../libboost-regex1.46.1_1.46.1-7ubuntu3_i386.deb)...
Настраивается пакет libboost-regex1.46.1 (1.46.1-7ubuntu3) ...
Обрабатываются триггеры для libc-bin ...
ldconfig deferred processing now taking place
Выбор ранее не выбранного пакета justniffer.
(Чтение базы данных ... на данный момент установлено 161770 файлов и каталогов.)
Распаковывается пакет justniffer (из файла justniffer_0.5.11.precise_i386.deb)...
Настраивается пакет justniffer (0.5.11.precise) ...
Обрабатываются триггеры для man-db ...

Можно тогда уж мне популярно пояснить, почему первый deb-пакет не сработал, а другой сработал? Получается, что каждый deb-пакет делается под свою систему? А если я что-то дополнительно сделаю так, что некоторые пакеты в системе (тот же libboost-program-options1.42.0) стали новее, возникнут ли конфликты, если я буду устанавливать justniffer_0.5.11.precise_i386.deb? И ещё. Во второй раз gdebi сам взял и скачал из репозиториев нужный пакет, почему это не было сделано в первый раз?

0
mft - 6 Октябрь, 2013 - 13:13

почему первый deb-пакет не сработал, а другой сработал?
В первом случае пакетный менеджер не смог найти среди доступных пакетов из репозиториев libboost-program-options1.42.0.
Второй пакет зависит от libboost-program-options1.46.1, который есть среди доступных.

Получается, что каждый deb-пакет делается под свою систему?
да

И ещё, неправильный подход к использованию ppa репозиториев.
Не надо скачивать пакет и ставить его вручную. Надо добавить этот ppa и установить через muon|apt-get|aptitude или чем-нибудь ещё по вкусу.
В терминале это делается так:
sudo apt-add-repository ppa:oreste-notelli/ppa
sudo apt-get update
sudo apt-get install justniffer

0
yarmol76 - 6 Октябрь, 2013 - 17:41

Теперь ясно, что за deb-файлами лучше сюда ходить.
Ещё один вопрос небольшой есть. Как я должен был узнать, что deb-файл отсюда не для моей системы предназначен? По каким признакам?

0
dyug - 6 Октябрь, 2013 - 17:51

Еще раз, повторяю: НЕ НУЖНО туда ходить, нужно подключать репозиторий оттуда.
для поиска нужного репа можно использовать https://launchpad.net/ubuntu/+ppas

0
Cyr - 11 Январь, 2014 - 19:00

А у меня убунта 14.04. подключил репозитарий. но после apt-get update пишет:
Не удалось получить http://ppa.launchpad.net/oreste-notelli//ubuntu/dists/trusty/main/binary-i386/Packages 404 Not found
Не удалось получить http://ppa.launchpad.net/oreste-notelli/ppa/ubuntu/dists/trusty/main/binary-i386/Packages 404 Not found
что делать?

0
MacLeod - 12 Январь, 2014 - 03:49
Изображение пользователя MacLeod.


Там нет пакета для Trusty...

Для любой системы, для которой нет пакета, собираем пакет сами, это не сложно, поскольку в архиве с исходниками есть правила для сборки deb.
Тянем архив с исходниками отсюда. Нам нужен justniffer_0.5.11.tar.gz. Кладем его в отдельную папку, например в ~/justniffer.
Распаковываем, переходим в распакованный каталог:
tar -xf justniffer_0.5.11.tar.gz
cd justniffer_0.5.11

Ставим утилиты для сборки:
sudo apt-get install dpkg-dev

Пробуем собрать:
dpkg-buildpackage -rfakeroot

Ругнется на неудовлетворенные зависимости, берем их список, удаляем уточнение версий в скобках и ставим через apt, на 13.10 это:

sudo apt-get install debhelper autotools-dev libboost-iostreams-dev libboost-program-options-dev libboost-regex-dev libpcap0.8-dev

Пробуем собрать:
dpkg-buildpackage -rfakeroot

Если во время конфигурации ругнется, что не может прилинковать либы (configure: error: Could not link against !), то редактируем файл:
nano debian/rules

Находим строчку:
./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs"

И дописываем, чтобы получилось:
./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info CFLAGS="$(CFLAGS)" LDFLAGS="-Wl,-z,defs" --with-boost-libdir=/usr/lib/x86_64-linux-gnu/

И теперь уже собираем:
dpkg-buildpackage -rfakeroot

Переходим в каталог выше (с архивом, именно туда упадут готовые файлы):
cd ../

Ставим собранный пакет:
sudo dpkg -i justniffer_0.5.11_amd64.deb

Читаем ман, как пользоваться утилитой:
man justniffer

0
dyug - 12 Январь, 2014 - 11:27

я рад, что Вы обладаете машиной времени, и живете в будущем.
Как минимум после апреля 2014 года.
Посему, есть предложение - или подождать, что совсем не гарантирует результат, или как написано ниже/выше - собирать самому,что в общем несложно для человека, проводящего тестирование будущего дистрибутива.

0
Phazon - 21 Сентябрь, 2014 - 20:25

Собрал версию по 14.04

Яндекс.Диск
Как обновлюсь до 14.10 буду собирать новую...

Отправить комментарий

CAPTCHA на основе изображений
Введите цифры