Как установить локальный сервер на Linux
Пошагово объясняем, как установить Xampp на Linux и настроить доступ для редактирования сайтов.
Под локальным сервером в веб-разработке обычно понимают набор ПО, которое позволяет запускать сайты на своём компьютере, реже — сам компьютер. Доступ к этим сайтам есть только на одном устройстве (потому-то он и локальный), но этого достаточно, чтобы программист мог всё протестировать.
Из этой статьи вы узнаете, как установить сервер на Linux.
Пишет о программировании, в свободное время создает игры. Мечтает открыть свою студию и выпускать ламповые RPG.
Какой локальный сервер выбрать
На мой взгляд, лучший вариант — Lampp. Название этого локального сервера расшифровывается так:
- X или L — операционная система (X — общее название, L — Linux).
- A — Apache (HTTP-сервер).
- M — MySQL или MariaDB (система управления базами данных).
- P — PHP (скриптовый язык программирования).
- P — Perl (язык программирования).
Серьёзных альтернатив у Lampp нет. Это не критично, потому что у него есть большое сообщество, а обновления выходят регулярно. Из минусов можно отметить разве что отсутствие GUI (хотя для Linux это не недостаток).
Graphical user interface (GUI) — Графический интерфейс пользователя.
Установка Lampp
Команды из этой статьи протестированы на Ubuntu 19.04, но для других дистрибутивов действия будут аналогичными.
Для начала нужно скачать установочный файл с официального сайта.
После завершения загрузки откройте терминал и перейдите в папку со скачанным файлом.
Источник
Домашний linux сервер своими руками
Хочется поделиться с хабросооществом информацией о том как я собирал домашний сервер.
Из софта на домашнем сервере будет «крутиться» следующий набор:
- torrent клиент с web-мордой
- DHCP — раздаем ip адреса и сетевые настройки
- TFTP — для сетевой загрузки
- OpenVPN — для хождения в сеть с нетбука из недоверенных сетей
- FTP/Samba/NFS — сетевые шары для доступа с домашних машин
- Radius — для WPA2 авторизации
- DigiTemp — мониторинг домашней температуры
Аппаратная часть
При выборе аппаратной части, вариантов было несколько:
- старенький комп
- самосбор на базе mini-ITX
- тонкий клиент HP T5000
- тонкий клиент на базе Neoware CA2
Первый вариант был сразу же отброшен из-за шума, пыли и энергопотребления. Второй был заказан, пока шли комплектующие, я успел передумать (захотелось шум и энергопотребление свести до минимума). В итоге, на Ebay были куплены тонкие клиенты HP t5000 и Neoware CA2. Месяц спустя пришли тонкие клиенты и из двух, после долгих размышлений, был выбран Neoware CA2. В него идеально поместился 2.5′ HDD и вторая сетевая карта.
После допиливания, в буквальном смысле, Neoware CA2 я принялся ставить на него Ubuntu 9.10 с офисного TFTP сервера. Установку производил самую минимальную. Если бы не было набора для сетевой установки, ставил бы Debian с USB CD-ROM и netinstall диска. Сам я ярый фанат RHEL/CentOS, но на домашний сервер решил ставить что-то из debian семейства, для расширения кругозора.
Torrent клиент и вебморда
Теперь перейдем к установке torrent клиента и вебморды. Была выбрана связка rtorrent + rutorrent, установка из репозитариев была отметена сразу, т.к. «родной» пакет был собран без xmlrpc-c который расширяет функционал rutorrent. Ниже фактически, скрипт для авто-установки rtorrent+rutorrent+lighttpd+php.
Устанавливаем всё что необходимо для компиляции xmlrpc-c, libtorrent, rtorrent
apt-get install checkinstall subversion build-essential make autoconf autotools-dev automake libtool libcurl4-openssl-dev libsigc++-2.0-dev pkg-config libncurses5-dev
apt-get remove rtorrent libtorrent11 libxmlrpc-c3 libxmlrpc-c3-dev libxmlrpc-core-c3 libxmlrpc-core-c3-dev
Компилируем и «заворачиваем» в .deb пакет xmlrpc-c, libtorrent, rtorrent
svn co xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced xmlrpc-c
cd xmlrpc-c
./configure —prefix=/usr && make && checkinstall -D
cd ..
wget libtorrent.rakshasa.no/downloads/libtorrent-0.12.6.tar.gz
tar zxfv libtorrent-0.12.6.tar.gz
cd libtorrent-0.12.6
rm -f scripts/
./autogen.sh && ./configure —prefix=/usr && make && checkinstall -D
cd ..
wget libtorrent.rakshasa.no/downloads/rtorrent-0.8.6.tar.gz
tar zxfv rtorrent-0.8.6.tar.gz
cd rtorrent-0.8.6
rm -f scripts/
./autogen.sh && ./configure —with-xmlrpc-c —prefix=/usr && make && checkinstall -D
К сожалению, rtorrent не умеет работать в режиме daemon, по этому будем использовать screen
apt-get install screen -y
wget libtorrent.rakshasa.no/raw-attachment/wiki/RTorrentCommonTasks/rtorrentInit.sh —output-document=/etc/init.d/rtorrent
chmod +x /etc/init.d/rtorrent
sed -i ‘s/»user»/»torrents»/’ /etc/init.d/rtorrent
update-rc.d rtorrent defaults
useradd -d /torrents -m torrents
Создаем конфиг и папки для сессий и готовых торрент закачек, после чего стартуем rtorrent.
mkdir /torrents/.rtorrent_session
cat >> /torrents/.rtorrent.rc
Теперь займемся вебмордой rutorrent. Для работы rutorrent необходим вебсервер и интерпретатор php.
apt-get install lighttpd php5-cgi php5-cli php5-curl curl -y
lighty-enable-mod fastcgi
echo ‘server.modules += ( «mod_scgi» )’ >> /etc/lighttpd/lighttpd.conf
cat >> /etc/lighttpd/lighttpd.conf
( «127.0.0.1» =>
(
«host» => «127.0.0.1»,
«port» => 5000,
«check-local» => «disable»
)
)
)
EOF
/etc/init.d/lighttpd force-reload
Вебсервер готов, теперь будем ставить rutorrent и несколько полезных плагинов к нему.
cd /var/www/
svn checkout rutorrent.googlecode.com/svn/trunk/rutorrent
cd /var/www/rutorrent/plugins/
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/tracklabels
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/cookies
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/autotools
svn checkout rutorrent.googlecode.com/svn/trunk/plugins/erasedata
chown -R www-data:www-data /var/www/
Теперь можно заходить по server_ip/rutorrent и начинать пользоваться.
Теперь установим DHCP сервер и создадим для него конфиг таким образом чтобы клиенты получали:
router 192.168.1.1
dns сервер 8.8.8.8
сервер времени time.nist.gov
tftp сервер 192.168.1.1
и для примера фиксированная выдача 192.168.1.100 клиенту с MAC-адресом 00:1B:FC:33:F0:25
aptitude install dhcp3-server
cat >> /etc/dhcp3/dhcpd.conf
строчки с option-150 нужны для моего VoIP телефона Cisco 7940.
TFTP и сетевая установка
aptitude install xinetd atftpd atftp
cat >> /etc/xinetd.d/tftp
Теперь проверим, работает ли tftp сервер
root@dvr:
# echo bla > /tftpboot/123
root@dvr:
# atftp 127.0.0.1
tftp> get 123
tftp>
root@dvr:
# cat 123
bla
Всё нормально, теперь создадим netinstall наборы для нескольких ОС: Ubuntu karmic, Ubuntu lucid, Debian lenny, Debian sid, Debian squeeze, Fedora 13, CentOS 5.5, Mandriva 2010.0, Suse 11.2, Slackware 13.1, Hardware Detection Tool, memtest и MHDD. Для этого предлагаю использовать слегка модифицированный скрипт который я взял с HowtoForge.
apt-get install lftp -y
wget itblog.su/tftpboot_installs.sh
bash tftpboot_installs.sh
Теперь добавим SystemRescueCd в PXE меню
wget «http://downloads.sourceforge.net/project/systemrescuecd/sysresccd-x86/1.6.3/systemrescuecd-x86-1.6.3.iso?use_mirror=citylan»
mount -o loop systemrescuecd-x86-1.6.1.iso /mnt/
cp /mnt/sysrcd.* /var/www/
cp /mnt/isolinux/initram.igz /tftpboot/
cp /mnt/isolinux/rescuecd /tftpboot/
cat >> /tftpboot/pxelinux.cfg/default
Без особого труда в это меню можно добавить продукты Acronis, инсталляцию и запуск Windows XP и прочее.
Вот так будет выглядеть наше меню:
Продолжение в следующей части. А именно:
- OpenVPN сервер для «хождения» в сеть из не доверенных сетей (например из гостиницы)
- FTP/Samba/NFS сетевые шары
- Radius для авторизации wi-fi клиентов
- DigiTemp зачатки умного дома, мониторинг температуры в квартире и за окном
- festival — говорящий будильник
- бакапы с хостинга
и подытожит статью скрипт который всё это установит в «два клика».
С удовольствием выслушаю замечания и дополнения.
Источник
Домашний сервер
Вводная часть
Ребенок подрос и появилась желание собрать дома свой сервер с виртуализацией для экспериментов и повседневного использования. Повысить скилл в Linux, продуктах Citrix, python. Посмотреть внутрянку Elastic Search и других интересных продуктов.
Цены указаны на февраль 2021 г. К концу мая 2021 г. цены выросли существенно.
Выбор оборудования
Кроме желания необходима финансовая составляющая и выбор оборудования.
Б/у оборудование особого желания не было покупать, поэтому необходимо было выбрать максимально бюджетное и производительное.
В первую очередь необходим процессор — выбор пал все таки на б/у Xeon E5 2678 v3 с хорошо известной китайского market place стоимость
7300 р. и ждать недели 3. Но делать нечего — берем.
Пока ехал целевой процессор взял на всеми известной российской барахолке бюджетный Xeon E5 2630L v3. — 2 000 р.
E5-2630L v3
Следующий важный компонент — материнская плата. Покупать китайскую плату без гарантии на той же площадке побоялся. Цена такой материнки с хорошим VRM которую можно брать в районе 8500 р. В нашем интернет-магазине нашел новые материнки под данный сокет и с гарантией. Долго выбирал между ASUS SABERTOOTH X99 и ASUS X99-DELUXE II. Комплектация последней была богаче, цена была плюс-минус одинаковая. В итоге выбор пал на ASUS SABERTOOTH X99 — 5 лет гарантии, дополнительный вентилятор для охлаждения VRM, заглушки под не используемые разъемы, доп охлаждение, защита всей материнской платы и другие плюшки. Итого потрачено с учетом использования подарочных бонусов — 17 654 р. Спустя 3 месяца она стала стоить 27000 р.
Далее выбор правильного питания для сборки — тут выбор огромный и отзывы как всегда противоречивые. Кто-то хвалит одни и ругает другие. Выбор пал на bequiet! System Power 9 700 Вт ATX BN248 — 5490 р. Чего-то особенного не ждал. Тихий блок питания, аккуратные провода в оплетке.
Для охлаждения взял Cooler Master Hyper H412R 120W RR-H412-20PK-R2 за 1600 р. Как показали тесты справляется на ура. Пока менять не планирую.
В качестве планок памяти выбор пал на MICRON (Crucial) DDR4 16Gb 3200MHz pc-25600 ECC, Reg (MTA18ASF2G72PDZ-3G2E1) for server. С учетом подарочных бонусов к праздникам и бонусов за предыдущие покупки вышли пока так — две планки по 5570 р. и одна планка за 5010 р. На китайском маркет плейсе планка на 16 ГБ стоит 3800-4000р. Решено было доплатить около 1700 за каждую планку — в итоге имеем якобы 10 лет гарантии. Эти планки видимо пользуются популярностью и они периодически пропадают из продажи либо стоят
8000 р. Пока будет 3 планки и жду следующих скидок и акций 🙂
Далее корпус, важны были следующие критерии:
цена — не более 4000 р.
нижнее расположение блока питания
кожух для блока питания
место для кабель-менеджмента
возможность установить 3 hdd и хотя бы один ssd
установить несколько 140 мм вентиляторов на вдув и выдув
В итоге выбрал Deepcool MATREXX 55 MESH за 3490 р. Многие скажут, что в него можно установить всего 2 3,5 hdd. Да это так, но отзывы по нему хорошие и цена приятная. Ну а третий hdd будет лежать на кожухе.
К корпусу купил 5 вентиляторов ID-Cooling White (WF-14025) и один ID-Cooling White 120mm 4-Pin 800-1800 RPM (WF-12025) обошлись в 2950 р.
От старого компьютера осталось 3 hdd WD. Два на 500 Гб и один на 1 Тб. Но на них есть данные которые надо оставить. Под систему и VM купил Western Digital Black SN750 M.2 500 Gb PCIe Gen3x4 TLC (WDS500G3X0C) — 6590 р. Выбирал между этим и таким же только с радиатором. Разница в цене была в тысячу. Из-за особенностей материнской платы с радиатором мог не влезть и взял такой.
В планах купить ASUS HYPER M.2 X16 CARD V2 и еще парочку таких же ssd и перенести систему на sata ssd.
Провел тесты nvme накопителя встроенными средствами разным размером и количеством :
Для сервера все комплектующие куплены и можно собирать. Так стоп, а видеокарта где. Вот с ней большая проблема. Во время бума майнинга купить по адекватной цена видеокарту не так просто, а если учесть что она должна поддерживать 4к монитор еще сложнее. Пока будем использовать старую и без поддержки 4к — Radeon HD 4670.
В итоге сервер в первоначальной конфигурации немного вышел из бюджета и составил
Операционная система
Пока решил остановиться на Linux с KVM. В качестве дистрибутива выбрал Fedora далее устанавливать KVM и обвязкой.
Установка ОС
В использовании Linux можно сказать новичок и это вызывает некоторые трудности из-за древней видеокарты. Установка заработала в режиме загрузки UEFI и с упрощенной графикой.
Разбиваем диск на разделы с использованием LVM.
Установка на nvme накопитель прошла достаточно быстро.
После установки система запускает в максимальном разрешении HD 1280×1024.
Исправляем это путем редактирования файла — /etc/default/grub удаляем nomodeset
и обновляем загрузчик
Ребутаемся и получаем интересный эффект — проблема со стартом gdm — видеосигнал не идет на монитор и он уходит в спячку.
Перехожу в консольный режим Alt + Ctrl + F3
Быстрого решения не нашел и в итоге ставлю lightdm и включаю его. Если подскажите решение буду благодарен.
После ребута все работает как часы — появилась графика и разрешение хотя бы FullHD. На 4K мониторе не очень комфортно.
Первым делом установка обновлений и установка минимального набора пакетов ОС
Дальше настало время установи kvm для возможности запуска виртуальным VM. Для этого устанавливаем kvm, необходимых пакетов и утилит для мониторинга системы:
Дальше в планах развернуть схему Citrix Virtual Desktop. В качестве контроллера AD использовать Debian c SAMBA 4.
Источник