Popularity-contest/FAQ
Перевод часто задаваемых вопросов о пакете popularity-contest (рейтинг популярности).
cvs -d :pserver:anonymous@cvs.alioth.debian.org:/cvsroot/popcon co popularity-contest
Использована ревизия 1.18. Произведена адаптация для ALT Linux.
Часто задаваемые вопросы
- Вопрос
- Какую информацию сообщает popularity-contest?
- Ответ
- popularity-contest сообщает архитектуру вашей системы, свою версию и список установленных пакетов. В каждом из пакетов popularity-contest ищет недавно использовавшиеся файлы (по атрибуту atime — время доступа) и сообщает их названия, время последнего обращения (atime) и создания (ctime). Однако, некоторые файлы опускаются, поскольку имеют недостоверный atime.
- Вопрос
- Что считается голосом за пакет?
- Ответ
- Компьютер голосует за пакет, если согласно полученному отчёту программа из пакета или зависящая от пакета была использована менее тридцати дней назад. Подсчёт производится на сервере popcon.
- Вопрос
- Какие шаги предпринимаются для обеспечения приватности?
- Ответ
- Каждый компьютер, участвующий в опросе, обозначается случайным 128-битным идентификатором (MY_HOSTID в /etc/popularity-contest.conf). С его помощью отслеживаются отчёты с одного компьютера. Следует держать его в секрете. Отчёты отправляются на сервер popcon электронной почтой или по HTTP. Сервер извлекает отчёт из письма или HTTP-запроса и хранит в базе данных, пока не придёт новый отчёт, но не дольше 20 дней. База данных и электронные письма доступны только администраторам сервера. Сервер ежедневно подсчитывает итог и публикует на странице all-popcon-results.txt. В этой сводке суммируются все полученные отчёты и не показаны идентификаторы.
- Слабые места системы:
- Ваш отчёт может быть подсмотрен. Мы оцениваем возможность использования шифрования с помощью публичных ключей для защиты отчёта при передаче.
- Кто-то, осведомлённый, что только вы используете определённый пакет (например, если вы - мейнтейнер), может догадаться, что вас нет дома, если отчётов об использовании пакета больше не поступает. Однако, это произойдёт лишь при вашем отсутствии более двух недель, и если компьютер выключен 23 дня.
- Неофициальные и самодельные пакеты также учитываются, так что см. предыдущий пункт. Наиболее характерный пример - самосборные ядра. Мы изучаем решения этой проблемы.
- Вопрос
- А если раздел /usr смонтирован с параметром noatime?
- Ответ
- popularity-contest полагается на атрибут atime, вычисляя использовавшиеся за последний месяц пакеты. В данном случае отчёт будет сообщать об установленных пакетах без информации об использовании.
- Вопрос
- Когда запускается popularity-contest?
- Ответ
- popularity-contest запускается ежедневно скриптом /etc/cron.daily/popularity-contest, но продолжает работу лишь один раз в неделю. Чтобы распределить нагрузку на сервер, день выбран случайным образом и указан в файле настройки.
- При стандартной настройке cron запуск происходит в 4:20 утра. Время можно изменить в /etc/crontab, но если ваш компьютер включён не постоянно, лучше установите пакет anacron.
- Вопрос
- Не хочу, чтобы письма popcon отправлял root! Как заменить обратный адрес?
- Ответ
- Чтобы отправлять письма с адреса myuser, исправьте функцию do_sendmail в скрипте /etc/cron.daily/popularity-contest следующим образом:
do_sendmail() { su myuser -s /bin/sh -c "/usr/sbin/sendmail -oi \"$MAILTO\"" }
- Вопрос
- Мой компьютер не имеет возможности отправлять почту в Интернет. Как я могу поучаствовать?
- Ответ
- Начиная с версии 1.30, стало возможно использовать протокол HTTP. Сейчас он используется по умолчанию, но при обновлении с предыдущих версий требуется включить его вручную.
- Вопрос
- Как мне указать прокси-сервер для использования HTTP?
- Ответ
- popularity-contest учитывает переменную окружения http_proxy, которую вы можете задать в /etc/environment. Либо вы можете указать прокси-сервер персонально для popularity-contest, добавив строку
HTTP_PROXY="http://<proxy hostname>:<port>"
в файл /etc/popularity-contest.conf.
- Вопрос
- Как преобразовать время из отчёта popcon в человеческий формат?
- Ответ
- В отчётах указывается количество секунд с начала компьютерной эры, а именно с 1970-01-01 00:00:00 UTC. Вы можете превратить, например, 1139229934 в обычную дату командой
date -d '1970-01-01 UTC 1139229934 seconds'
или короче
date -d '@1139229934'