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

Включение пересылки приведет к уничтожению маршрута по умолчанию. Вы можете добавить его обратно с помощью:

ip -6 route add default via <ipv6 gateway address> dev <interface>

Как только он будет добавлен, подключение IPv6 должно быть прекрасным снова.

В моем случае мне пришлось найти адрес шлюза snooping вокруг моего кабельного модема через http://192.168.100.1.

1
задан 30 March 2014 в 06:56

5 ответов

Лицензия и исходный url (я думаю, вы имеете в виду здесь исходный URL-адрес источника tarball), обычно можно найти в файле с именем copyright. Этот файл должен быть в каждом пакете, но он только недавно был «стандартизирован» для упрощения чтения машины / компьютера (см. DEP5).

Не все пакеты правильно заполнены лицензиями. Кроме того, не все пакеты имеют машиночитаемые файлы авторских прав. Один отдельный файл может иногда потребовать отдельную лицензию и может сделать пакет debian кандидатом для удаления, если лицензия не разрешает перераспределение (или это не бесплатная / открытая версия с лицензией).

1
ответ дан 25 May 2018 в 15:53

Чтобы загрузить файл debian / copyright для каждого пакета, вы можете использовать диспетчер пакетов куба, например:

cupt copyright busybox python > all-copyrights.txt

или получить один файл на пакет:

for i in busybox python; do cupt copyright "$i" >"$i"_copyright.txt; done

В отличие от Fedora, Debian / Ubuntu обычно не дает единой лицензии для пакета, но вместо этого перечисляет все лицензии в источнике; это гораздо точнее в этом смысле, но также сложнее получить обзор. Кроме того, неравномерный формат старых файлов debian / copyright не помогает:)

1
ответ дан 25 May 2018 в 15:53

Создание ответа @ crysman: это работало для многих пакетов на ubuntu 14.04, а часть ${packages:amd64} - для перехода к правильной папке на основе моего процессора.

for package in `dpkg -l | grep ^ii | awk '{print $2}'`; do echo -e $package"\t"`grep License /usr/share/doc/${package%:amd64}/copyright`; done > ~/dpkg.txt
1
ответ дан 25 May 2018 в 15:53

Ближайшая вещь, которую я могу представить, сопоставима с yum info, будет apt-cache show. Я не знаю, когда-нибудь покажет лицензию, но она дает кучу подробностей о пакете. Вы можете предоставить несколько имен пакетов, чтобы получить информацию о нескольких пакетах одновременно.

Например:

matt@eden:~$ apt-cache show python
Package: python
Priority: important
Section: python
Installed-Size: 768
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@lists.ubuntu.com>
Original-Maintainer: Matthias Klose <doko@debian.org>
Architecture: all
Source: python-defaults
Version: 2.7.2-7ubuntu2
Replaces: python-dev (<< 2.6.5-2)
Provides: python-ctypes, python-email, python-importlib, python-profiler, python-wsgiref
Depends: python2.7 (>= 2.7.2-3~), python-minimal (= 2.7.2-7ubuntu2)
Suggests: python-doc (= 2.7.2-7ubuntu2), python-tk (= 2.7.2-7ubuntu2)
Conflicts: python-central (<< 0.5.5)
Breaks: python-bz2 (<< 1.1-8), python-csv (<< 1.0-4), python-email (<< 2.5.5-3), update-manager (<= 0.200.5-1)
Filename: pool/main/p/python-defaults/python_2.7.2-7ubuntu2_all.deb
Size: 165792
MD5sum: a4b881e98e39f213bc8bbcfac566dd21
SHA1: 8a85fd4e62d1bad26a03ceef4313a12521e8a1dc
SHA256: ba95771b54aa4a1211486651fea1ecbac9e2dbbb4f66435e8a4dd0cb3e86bf4b
Description-en: interactive high-level object-oriented language (default version)
 Python, the high-level, interactive object oriented language,
 includes an extensive class library with lots of goodies for
 network programming, system administration, sounds and graphics.
 .
 This package is a dependency package, which depends on Debian's default
 Python version (currently v2.7).
Homepage: http://www.python.org/
Description-md5: d1ea97f755d8153fe116080f2352859b
Bugs: https://bugs.launchpad.net/ubuntu/+filebug
Origin: Ubuntu
Supported: 18m
Task: minimal
0
ответ дан 25 May 2018 в 15:53
  • 1
    Спасибо, Мэтт Лэймен. Проблема в том, что у меня есть 1759 + / _ пакетов. Я готовлю лицензионную страницу, чтобы отправить ее моему адвокату. Где мне нужно указать, какой пакет использует лицензия (например: GPL или LGPL или MPL). Найти один за другим вручную слишком сложно. Но еще раз спасибо. Я все еще смотрю .... – YumYumYum 17 December 2011 в 22:59

Вы можете использовать что-то вроде:

for package in `dpkg -l | grep ^ii | awk '{print $2}'`; do apt-cache policy $package; done | grep -iv "version table" | grep -i -e :$ -e multiverse -e restricted
0
ответ дан 25 May 2018 в 15:53

Другие вопросы по тегам:

Похожие вопросы: