Гид по технологиям

Установка Trac на Ubuntu 18.04 LTS

• 4 min read • DevOps • Обновлено 19 Nov 2025
Установка Trac на Ubuntu 18.04
Установка Trac на Ubuntu 18.04

TL;DR

Trac — лёгкая веб-система отслеживания задач и багов с поддержкой интеграции с Git и Subversion. В этой инструкции показана пошаговая установка и настройка Trac на Ubuntu 18.04 с Apache, создание проекта, пользователей и базовых правил безопасности.

Определение: Trac — система управления проектами и багтрекер, которая использует wiki-разметку и интегрируется с системами управления версиями (VCS).

Требования

  • Сервер с Ubuntu 18.04 LTS (Bionic Beaver).
  • Непользователь root с правами sudo.
  • Базовые навыки работы с терминалом и редактором (nano/vi).

Установка Apache

Сначала установите веб-сервер Apache:

sudo apt-get install apache2 -y

Запустите сервис и включите автозапуск:

sudo systemctl start apache2  
sudo systemctl enable apache2

Установка и настройка Trac

По умолчанию Trac доступен в репозитории Ubuntu. Установите Trac и модуль WSGI:

sudo apt-get install trac libapache2-mod-wsgi -y

Включите модуль аутентификации auth_digest:

sudo a2enmod auth_digest

Создайте корневую директорию для Trac и веб-директорию, а затем отдайте права Apache:

sudo mkdir /var/lib/trac  
sudo mkdir -p /var/www/html/trac  
sudo chown www-data:www-data /var/www/html/trac

Создайте проект Trac и инициализируйте среду проекта (в примере имя проекта — test):

sudo trac-admin /var/lib/trac/test initenv test sqlite:db/trac.db

Ожидаемый вывод:

Project environment for 'test' created.

You may now configure the environment by editing the file:

  /var/lib/trac/test/conf/trac.ini

If you'd like to take this new project environment for a test drive,
try running the Trac standalone web server `tracd`:

  tracd --port 8000 /var/lib/trac/test

Then point your browser to http://localhost:8000/test.
There you can also browse the documentation for your installed
version of Trac, including information on further setup (such as
deploying Trac to a real web server).

The latest documentation can also always be found on the project
website:

  http://trac.edgewall.org/

Congratulations!

Разверните проект в директорию веб‑сервера и выставьте права:

sudo trac-admin /var/lib/trac/test deploy /var/www/html/trac/test  
sudo chown -R www-data:www-data /var/lib/trac/test  
sudo chown -R www-data:www-data /var/www/html/trac/test

Создайте пользователей (админ и обычный) для доступа через Digest-аутентификацию:

sudo htdigest -c /var/lib/trac/test/.htdigest "test" admin  
sudo htdigest /var/lib/trac/test/.htdigest "test" hiroom2

Настройка Apache для Trac

Создайте виртуальный хост для Trac:

sudo nano /etc/apache2/sites-available/trac.conf

Добавьте в файл следующие строки. Обратите внимание на путь к trac.wsgi и файл .htdigest:

WSGIScriptAlias /trac/test /var/www/html/trac/test/cgi-bin/trac.wsgi

  AuthType Digest
  AuthName "test"
  AuthUserFile /var/lib/trac/test/.htdigest
  Require valid-user

Сохраните файл, затем включите сайт и перезапустите Apache:

sudo a2ensite trac.conf  
sudo systemctl restart apache2

Доступ к веб‑интерфейсу Trac

Откройте браузер и перейдите по адресу: http://your-domain-name/trac/test. Введите учётные данные admin.

Страница входа Trac

После успешного входа вы увидите панель проекта Trac:

Веб-интерфейс Trac — панель проекта

Частые проблемы и их решения

  • Ошибка 403 после деплоя: проверьте права для www-data и ограничения SELinux/AppArmor.
  • Неправильная аутентификация: проверьте файл .htdigest и совпадение AuthName.
  • Ошибки WSGI: убедитесь, что libapache2-mod-wsgi установлен и путь к trac.wsgi корректен.
  • 500 Internal Server Error: смотрите логи Apache (/var/log/apache2/error.log) и логи Trac в /var/lib/trac//log.

Если Trac не запускается локально, попробуйте запустить tracd для отладки:

tracd --port 8000 /var/lib/trac/test

Безопасность и рекомендации

  • Храните .htdigest вне общедоступных директорий и выставляйте права 640.
  • Для продакшна используйте HTTPS (например, Let’s Encrypt) — никогда не передавайте пароли по HTTP.
  • Регулярно обновляйте систему: sudo apt-get update && sudo apt-get upgrade -y.
  • Бэкапьте /var/lib/trac и базу данных. Для SQLite достаточно копии файла базы; для PostgreSQL/MySQL используйте дампы.
  • Рассмотрите перенос на PostgreSQL или MySQL при росте проекта.

Альтернативные подходы

  • Использовать встроенный сервер tracd для локальной разработки и отладки.
  • Развернуть Trac в контейнере Docker для изоляции и удобной миграции.
  • Поставить обратный прокси nginx + uWSGI или FastCGI при высоких нагрузках.

Короткая методология установки

  1. Обновить систему: sudo apt-get update && sudo apt-get upgrade -y
  2. Установить Apache и Trac.
  3. Инициализировать проект: trac-admin initenv.
  4. Развернуть в /var/www/html и настроить права (www-data).
  5. Создать .htdigest и настроить виртуальный хост Apache.
  6. Включить сайт и перезапустить Apache.
  7. Протестировать доступ по браузеру и подключить HTTPS.

Роль‑ориентированные чеклисты

Администратор:

  • Проверил версии ОС и пакетов.
  • Настроил права и владельца (www-data).
  • Настроил резервное копирование и план восстановления.

Разработчик:

  • Подключил репозиторий (Git/Subversion) к Trac через trac.ini.
  • Протестировал wiki-разметку в сообщениях коммитов.
  • Убедился, что ссылки между changesets, файлами и тикетами работают.

Оператор:

  • Настроил мониторинг Apache и доступность 80/443.
  • Настроил ротацию логов и мониторинг свободного места.
  • Проверил автоматические обновления безопасности.

Ментальная модель

Думайте о Trac как о тонкой прослойке, которая связывает репозиторий, тикеты и вики. Trac не заменяет CI/CD, но упрощает связь кода и задач.

Совместимость и миграция

  • По умолчанию Trac использует SQLite. Для больших команд и данных переключайтесь на PostgreSQL или MySQL.
  • Перед миграцией сделайте полный бэкап каталога проекта и базы.
  • При переносе репозитория проверьте настройки путей в trac.ini и права доступа.

Критерии приёмки

  • Trac доступен по указанному URL и показывает страницу входа.
  • Аутентификация успешна с учётной записью admin.
  • Проект отображает изменения из подключённого VCS и страницы wiki доступны.

Итоги

Trac установлен и доступен через Apache. Для продакшна рекомендуем настроить HTTPS, использовать СУБД уровня сервера (PostgreSQL/MySQL) и организовать регулярное резервное копирование и обновления.

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро