Серверы · 5 min read · Oct 25, 2025

Создайте свой собственный (chrooted) сервер LAMP на Debian, работая на идеальном рабочем столе Ubuntu

Создайте свой собственный (chrooted) сервер LAMP на Debian, работая на идеальном рабочем столе Ubuntu

Это краткое описание шагов, которые необходимо предпринять для настройки веб-сервера на базе Debian (Debian Sarge, также известный как Debian 3.1), который будет работать в chroot под управлением Ubuntu 7.04.

Я следовал отличному руководству Фалько по настройке идеального рабочего стола Ubuntu 7.04:

https://www.howtoforge.com/the_perfect_desktop_ubuntu7.04

Однако, чтобы сделать рабочий стол идеальным для меня, мне нужно добавить одну или две вещи. Во-первых, я добавлю AVG, так как я могу переносить файлы и данные на другие ПК, и я хочу убедиться, что не передаю вирусы. Для этого я следую еще одному из отличных руководств Фалько:

https://www.howtoforge.com/avg_antivirus_ubuntu_feisty

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

Я хочу, чтобы мои веб-страницы получили полную выгоду от пропускной способности, доступной для T1-соединения моего интернет-провайдера, поэтому я держу свои веб-страницы размещенными удаленно.

Это не значит, что я не могу тщательно протестировать все перед тем, как это произойдет, и поэтому мне нужен мой LAMP-сервер, который будет включать:

  • Apache 1.3.33 (Debian GNU/Linux)
  • PHP/4.3.10-19
  • mysql 4.0.24.
  • phpmyadmin

Эти более старые версии Apache, PHP и mysql больше не доступны для установки под управлением Ubuntu и могут быть установлены только на Debian Sarge, поэтому вместо того, чтобы использовать это в качестве базовой платформы, я установлю его как минимальную систему поверх моего рабочего стола Ubuntu и запущу программы Debian через chroot.

Если вы делаете это тоже и уже установили apache или mysql, то вам нужно убедиться, что они не работают, пока вы устанавливаете или запускаете свой sarge apache/mysql. Это связано с тем, что sarge apache и mysql не смогут привязаться к своим соответствующим портам прослушивания, если версии Ubuntu уже прослушивают их.

Сначала нам нужно установить debootstrap, так как мы будем использовать его для создания минимальной системы. Затем мы можем загрузить и установить Debian Sarge.

Откройте окно терминала:

sudo bash  
apt-get install debootstrap  
mkdir sarge-dir

Теперь вам нужно найти ближайший зеркальный сайт Debian и использовать его для загрузки и установки системы Debian. Перейдите на http://www.debian.org/mirror/list/ и найдите соответствующий адрес зеркала, затем:

debootstrap sarge sarge-dir http://ftp.uk.debian.org/debian

Я использую зеркало Великобритании, но вы можете изменить часть uk на то, что вам нужно. Через несколько минут загрузка и установка должны завершиться, вам нужно:

mount -o bind /proc sarge-dir/proc

Это сделает файловую систему proc доступной в chroot. Псевдо-файловая система Proc — это файловая система реального времени, которая отслеживает процессы, работающие на вашем компьютере, и состояние вашей системы.

И с этого момента использование новой системы так же просто, как ввести:

chroot sarge-dir

Эта команда помещает вас в chroot, и вы можете изменять файлы внутри вновь установленной системы sarge.

На этом этапе, если вы хотите, вы можете следовать еще одному из отличных руководств Фалько:

https://www.howtoforge.com/perfect_setup_debian_sarge

Просто начните учебник после раздела о сетевом подключении. Хотя потребуется немного дополнительной работы, чтобы правильно установить почтовый сервер, так как в этом учебнике он устанавливается во время запуска, но это для кого-то другого, чтобы предоставить детали.

Я не собираюсь это делать, так как мне нужна другая версия apache, и мне не нужно настраивать все остальные вещи. Поэтому я собираюсь отредактировать sources.list и обновить файловую систему.

echo deb http://ftp.uk.debian.org/debian/ sarge main > /etc/apt/sources.list  
echo deb http://security.debian.org/ sarge/updates main >> /etc/apt/sources.list  
apt-get update  
apt-get upgrade

Теперь пришло время установить необходимые мне программы:

apt-get install apache php4 mysql-server phpmyadmin

Включить suExec? <– Да
MySQL будет установлен только в том случае, если у вас есть НЕНАЧИСЛЕННОЕ имя хоста … <– Хорошо
Какой веб-сервер вы хотите автоматически перенастроить? <— apache
Хотите, чтобы я сейчас перезапустил apache? <– Да

Вы можете увидеть некоторые сообщения об ошибках, касающихся неконфигурированных локалей:

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LANG = “en_GB.UTF-8

are supported and installed on your system.
perl: warning: Falling back to the standard locale (“C”).
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory

Это может быть связано с тем, что метод установки debootstrap мог не установить локали.

apt-get install locales localeconf

Выберите локали для генерации.
[] en_GB ISO-8859-1
[
] en_GB.ISO-8859-15 ISO-8859-15
[*] en_GB.UTF-8 UTF-8
<– Хорошо

Какую локаль следует установить по умолчанию в системной среде? <– en_GB
Управлять файлами конфигурации локалей с помощью debconf? <– Да
Если вы не хотите использовать локаль системы по умолчанию… <– Хорошо
Настройки окружения, которые должны переопределить локаль по умолчанию: <– Пусто
Заменить существующие файлы конфигурации локалей? <– Да
Если вы не уверены … всегда поддерживается. <– Хорошо
Локаль системы по умолчанию: <– en_GB.UTF-8 UTF-8

Теперь я создам пользователя sarge, который будет таким же, как мой текущий пользователь ubuntu. Это означает, что у меня не должно быть проблем с правами доступа, когда я редактирую свои веб-страницы в Ubuntu.

adduser user_name_in_ubuntu

Файл конфигурации Apache по-прежнему находится по адресу: /etc/apache/httpd.conf, но он ссылается на sarge-dir, и то же самое относится к вашей веб-папке /var/www. При редактировании веб-страниц с рабочего стола Ubuntu сначала перейдите в sarge-dir, затем найдите /var/www/. При редактировании веб-страниц в Ubuntu сначала перейдите в sarge-dir, затем найдите /var/www/

Теперь я проверю установки.

Установки apache и php можно выполнить вместе, создав файл phpinfo в вашей папке /var/www с командой phpinfo() в нем. Все еще находясь в chroot на данный момент.

nano /var/www/phpinfo.php

В этом файле вы должны ввести:

Укажите вашему браузеру адрес http://localhost/phpinfo.php, и это должно показать всю конфигурацию apache и настройки по умолчанию.

Файл конфигурации для mysql находится по адресу: /etc/mysql/my.cnf, снова ссылаясь на sarge-dir. На этом этапе также стоит установить пароль Root, так что, все еще находясь в chroot:

mysql -u root

Чтобы попасть в командную строку mysql, затем:

mysql> USE mysql;  
mysql> UPDATE user SET Password=PASSWORD('your-password') WHERE user='root';  
mysql> FLUSH PRIVILEGES;

Файл конфигурации phpmyadmin находится по адресу: /etc/phpmyadmin/config.inc.php.

Возможно, вам захочется добавить ваш пароль mysql в него, чтобы не входить в консоль phpmyadmin каждый раз, когда вам нужно его использовать.

Если вам когда-либо нужно будет перезапустить Apache или если apache не запускается при старте, то вам нужно будет сначала chroot в sarge, а затем перезапустить apache.

sudo bash  
chroot sarge-dir  
/etc/init.d/httpd restart
Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.