Tasksel ubuntu что это
LAMP - это популярный набор программного обеспечения для работы с веб-сервером. LAMP назван по первым буквам входящих в его состав компонентов: Linux - операционная система, Apache - веб-сервер, MySQL — СУБД, PHP — язык программирования, используемый для создания веб-приложений.
В этой статье мы рассмотрим, как установить LAMP Ubuntu 20.04 несколькими способами: с помощью утилиты tasksel и вручную с помощью пакетного менеджера.
Установка LAMP в Ubuntu 20.04
1. Установка пакетов LAMP с помощью утилиты tasksel
Утилита tasksel позволяет устанавливать наборы пакетов различных программ буквально в одну команду. Она разработана для Debian, но может использоваться и в Ubuntu. Для её установки выполните в терминале команду:
sudo apt -y install tasksel
Далее, чтобы установить Lamp на Ubuntu, достаточно выполнить команду:
sudo tasksel install lamp-server
Установка займёт определенное время, так как утилите необходимо скачать все необходимые пакеты. После завершения установки вы получите полностью работающий стек LAMP.
Если вы не хотите использовать tasksel, вы можете установить все пакеты по отдельности из стандартных репозиториев и настроить их для совместной работы.
Для начала необходимо установить веб-сервер Apache2:
sudo apt -y install apache2
На момент написания статьи актуальной версией PHP в официальных репозиториях Ubuntu считалась версия 7.4. Самая же последняя официальная версия PHP от разработчиков 8.0.9 по состоянию на 29 июля 2021 года.
Также необходимо установить дополнительные расширения для языка PHP, которые понадобятся для создания будущих проектов и их дальнейшей публикации на хостинг:
sudo apt -y install php-curl php-json php-cgi php-gd php-zip php-mbstring php-xml php-xmlrpc
3. Настройка брандмауэра
По умолчанию брандмауэр закрывает все неразрешённые входящие подключения. Поэтому, чтобы к вашему веб-серверу можно было получить доступ извне, необходимо добавить его порт в исключения:
sudo ufw allow in 80/tcp
Для начала необходимо убедиться, что веб-сервер Apache и СУБД MySQL успешно запустились и при необходимости запустить их. Смотрим статус apache, выполнив команду в терминале:
sudo systemctl status apache2
В разделе Active должно быть active (running). Те же самые действия необходимо сделать для проверки MySQL:
sudo systemctl status mysql
Если в статусах вместо active будет inactive (dead), то сервисы необходимо запустить вручную:
sudo systemctl start apache2
sudo systemctl status mysql
Для проверки наберите в адресной строке браузера IP-адрес сервера, куда вы устанавливали LAMP, в качестве примера выбран localhost:
Если при открытии вы увидели страницу, которая изображена на скриншоте выше, это означает что веб-север apache успешно запущен и работает. Теперь необходимо проверить правильно ли работает PHP. Создайте файл в директории /var/www/html при помощи следующей команды:
sudo vi /var/www/html/phpinfo.php
Вместо vi можно использовать любой другой текстовый редактор на ваш выбор (nano, emacs, gedit и др.).
В файл phpinfo.php впишите следующую команду:
Далее откройте адрес localhost/phpinfo.php в браузере. Если всё работает, вы должны увидеть страничку, которая изображена ниже на скриншоте:
Также можно проверить, работает ли интеграция с СУБД MySQL. Если расширение PHP для MySQL установлено, то на странице с phpinfo будет размещен блок с информацией:
На данном этапе процесс проверки пройден успешно. Далее мы перейдем к настройке стека LAMP на Ubuntu 20.04.
5. Настройка Apache
Для обработки запросов будет использоваться модуль mpm_prefork. Данный модуль запускает по отдельному процессу на каждый запрос. Иначе говоря, каждый процесс одновременно обрабатывает только 1 поток на одно соединение. Для начала необходимо выключить mpm_event и mpm_worker и только потом включить модуль mpm_prefork:
sudo a2dismod mpm_event
sudo a2dismod mpm_worker
sudo a2enmod mpm_prefork
sudo a2enmod rewrite
sudo vi /etc/apache2/apache2.conf
Найдите следующий блок:
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
И замените AllowOverride None на AllowOverride All, затем сохраните изменения и закройте файл. Перезапустите apache:
sudo systemctl restart apache2
6. Настройка PHP
По умолчанию короткие теги, обрамляющие скрипты PHP, отключены. Это может привести к тому, что некоторые скрипты, использующие эти теги, могут не выполнятся. Для включения этой возможности откройте файл php.ini при помощи любого текстового редактора:
sudo vi /etc/php/7.4/apache2/php.ini
Найдите short_open_tag = Off и замените на:
После внесения всех изменений необходимо перезапустить Apache:
sudo systemctl restart apache2
7. Настройка MySQL
По умолчанию MySQL не очень хорошо настроена в плане безопасности. Необходимо задать пароль суперпользователя и удалить гостевой доступ. Для выполнения всех этих задач запустите в терминале следующую команду:
Во всех следующих вопросах нужно отвечать утвердительно путем ввода y/Y или Yes:
- Запретить удалённый вход для пользователя root;
- Запретить гостевой вход;
- Удалить временные таблицы;
- Обновить привилегии пользователей.
Введите пароль пользователя root, который вы задали на этапе запуска mysql_secure_installation.
Не перепутайте пароль от пользователя root который присутствует в операционной системе Ubuntu и пользователя root в MySQL. Это разные пользователи, соответственно вы должны вводить пароль именно к учетной записи root, которая присутствует в MySQL.
Чтобы полностью удалить LAMP из системы, достаточно удалить все пакеты, которые вы установили ранее:
sudo apt -y purge apache2 mysql-server php7.4 libapache2-mod-php7.4 php7.4-mysql php-curl php-json php-cgi php-gd php-zip php-mbstring php-xml php-xmlrpc
Команда purge позволяет удалить не только пакеты, но и их конфигурационные файлы. Если вы хотите оставить конфигурационные файлы, используйте команду remove.
Выводы
Нет похожих записей
Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
LAMP - это самый популярный стек программного обеспечения для работы веб-сервера. Сюда входят такие программы, как Apache, PHP, MySQL, и работает всё это в Linux, отсюда и такое название. Apache - это самый популярный веб-сервер, может, он не такой производительный, как Nginx, зато очень прост в настройке. PHP - самый популярный язык программирования для веб, а без базы данных вообще сейчас мало что работает.
В этой статье мы рассмотрим, как выполняется Установка LAMP Ubuntu 18.04 несколькими способами: с помощью утилиты tasksel или вручную с помощью установщика программ.
Установка LAMP в Ubuntu
1. Установка пакетов с помощью tasksel
Tasksel - это утилита, которая позволяет устанавливать пакеты различных программ буквально в одну команду. Она разработана для Debian, но может использоваться и в Ubuntu. Для её установки выполните в терминале:
sudo apt install tasksel
Затем, чтобы установить Lamp на Ubuntu, достаточно выполнить такую команду:
sudo tasksel install lamp-server
Установка займёт кое-какое время, потому что утилите придётся скачать и настроить все пакеты, но потом вы получите полностью работающий стек LAMP.
Обратите внимание , что десктопной версии Ubuntu tasksel использовать не желательно. LAMP установится нормально, но при попытке его удаления командой tasksel remove из-за бага утилита может снести вам всю систему. Пользователи сообщают о проблемах с этой утилитой в версии Ubuntu для рабочего стола.
2. Как установить Lamp в Ubuntu вручную
Если вы не хотите использовать tasksel, вы можете установить все пакеты по отдельности и настроить их для совместной работы. Сначала установим все необходимые пакеты. Установка последней версии Apache2 из репозиториев:
sudo apt install apache2
Установка базы данных MariaDB из репозиториев:
sudo apt install mariadb-server
Или вы можете установить MySQL:
sudo apt install mysql-server
Установка интерпретатора языка программирования PHP 7.2 и расширений, необходимых для его работы с Apache и MySQL:
sudo apt install php7.2 libapache2-mod-php7.2 php-mysql
Установка дополнительных расширений для PHP, которые вам понадобятся в будущем для хостинга большинства популярных проектов:
sudo apt install php-curl php-json php-cgi php-gd php-zip php-mbstring php-xml php-xmlrpc
3. Настройка брандмауэра
По умолчанию брандмауэр закрывает все неразрешённые входящие подключения. Поэтому, чтобы к вашему веб-серверу можно было получить доступ извне, необходимо добавить его порт в исключения:
sudo ufw allow in 80/tcp
4. Проверка работы LAMP
Для проверки наберите в адресной строке браузера IP-адрес сервера, куда вы устанавливали LAMP, у меня это localhost:
Работает, теперь давайте проверим, правильно ли работает PHP. Создайте файл в директории /var/www/html со следующим содержимым:
sudo vi /var/www/html/phpinfo.php
Затем откройте адрес localhost/phpinfo.php. Если всё работает, вы должны увидеть такую страничку:
Также можно проверить, работает ли MySQL: если расширение PHP для MySQL загрузилось, то на странице phpinfo будет размещена такая информация:
Готово, дальше идёт в основном настройка LAMP в Ubuntu 18.04.
5. Настройка Apache
Для обработки запросов будет использоваться модуль mpm_prefork, так как он совместим с большинством систем. Поэтому его нужно активировать, а mpm_event и mpm_worker отключить:
sudo a2dismod mpm_event
sudo a2dismod mpm_worker
sudo a2enmod mpm_prefork
Включаем mod_rewrite, который сейчас используется практически везде:
sudo a2enmod rewrite
Если вы хотите использовать файлы httaccess для настроек, то необходимо в файле /etc/apache2/apache2.conf изменить значение AllowOverride с None на All для нужных местоположений, например, для /var/www:
sudo vi /etc/apache2/apache2.conf
<Directory /var/www/>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
Далее необходимо перезапустить Apache:
sudo systemctl restart apache2
Подробнее про настройку веб-сервера читайте в отдельной статье установка и настройка Apache.
6. Настройка PHP
По умолчанию короткие теги, обрамляющие скрипты PHP, отключены. Это может привести к тому, что некоторые скрипты, использующие эти теги, могут не выполнятся. Для включения этой возможности откройте файл:
sudo vi /etc/php/7.2/apache2/php.ini
Найдите short_open_tag = Off и замените на:
Вывод ошибок в PHP по умолчанию тоже отключён. Если вы хотите разрабатывать программы на этом сервере, то вам необходимо включить ошибки, иначе вместо ошибок вы будете видеть пустой экран. Для этого найдите эти строки и приведите их к такому виду:
error_reporting = E_ALL
display_errors = On
Или для записи ошибок в файл вы можете добавить такую строку:
После внесения всех изменений необходимо перезапустить Apache:
sudo systemctl restart apache2
Подробнее про настройку файла php.ini смотрите здесь.
7. Настройка MySQL
По умолчанию MySQL не очень хорошо настроена в плане безопасности. Нам нужно задать пароль суперпользователя и удалить гостевой доступ. Для выполнения всех этих задач запустите в терминале:
На первом этапе утилита попросит вас ввести пароль суперпользователя, так как он ещё не задан, просто нажмите Enter:
Далее введите новый пароль:
Во всех следующих вопросах нужно отвечать утвердительно:
- Запретить удалённый вход для root;
- Запретить гостевой вход;
- Удалить временные таблицы;
- Обновить таблицы привилегий.
Готово, теперь ваша база данных защищена и готова к работе.
8. Удаление LAMP в Ubuntu
Чтобы полностью удалить LAMP из системы, достаточно удалить все пакеты, которые вы установили ранее:
sudo apt purge apache2 mariadb-server php7.2 libapache2-mod-php7.2 php-mysql php-curl php-json php-cgi php-gd php-zip php-mbstring php-xml php-xmlrpc
Команда purge позволяет удалить не только пакеты, но и их конфигурационные файлы. Если вы хотите оставить конфигурационные файлы, используйте команду remove.
Если установка LAMP на Ubuntu выполнялась с помощью tasksel, то для удаления необходимо выполнить:
sudo tasksel uninstall lamp-server
Выводы
Сегодня обнаружил проблему - tasksel убивает Ubuntu! Причем, эта проблема известна уже давно. Использовал tasksel очень часто, начиная с Ubuntu 9, классная и удобная утилита, но после такого. не знаю что и делать.
Поражают ответы комьюнити, одни винят пользователя в ошибке (опечатке), вторые говорят, что tasksel классная и проверенная утилита и такого не может быть, а третьи спрашивают зачем вообще использовать tasksel. Но, никто не предлагает альтернативу, кроме как делать все вручную.
Ниже подборка материалов, я пошел плакать.
tasksel убивает Ubuntu
Удобно устанавливать LAMP командой tasksel lamp-server , но в Ubuntu 18.04 у меня это не получилось. При установке MySQL у меня не попросил задать пароль для root, после установки LAMP я попытался сбросить пароль для root (ну, вы знаете mysqld_safe --skip-grant-tables &), но мне выдавались какие-то невнятные ошибки о socket. Я подумал, что сделал что-то не так, и решил переустановить lamp-server при помощи tasksel.
Набрал команду tasksel remove lamp-server и начал ждать окончания быстрого удаления связки LAMP, но с панели начали пропадать закрепленные программы, одна за другой, у меня округлились глаза, он СНОСИЛ ВСЕ.
В итоге, были удалены: PlayOnLinux, VirtualBox, LibreOffice, FireFox, и целая куча, да, куча софта. Перестала работать сеть, даже net-tools не стало. После перезагрузки я увидел приглашение от GRUB выбрать режим восстановления (grub rescue mode).
Ubuntu восстанавливать не стал, поплакал и поставил Ubuntu 16.04, все команды там уже отработали отлично, tasksel сделал все как нужно. Вывод: грешу на сыроватую Ubuntu 18.04.
Warning: Don't use 'tasksel' on a Ubuntu desktop
Я хотел добавить dns-сервер к Ubuntu Karmic, работающему с Mint 8. Команда «tasksel» выглядела очень удобной для этого, поэтому я сделал «sudo tasksel», а затем установил флажок на «DNS-сервер» и нажал единственный вариант - кнопка «ОК». Без предупреждения или подсказки или чего-либо, он уничтожил большую часть операционной системы, включая gnome, все компоненты настройки рабочего стола и сети! Он удаляет все пакеты ubuntu-desktop! Псих! Еще хуже, если вы выйдете из него, он закончил удаление пакетов в фоновом режиме! Это похоже на определение вируса для меня, безусловно, вредоносного ПО.
Поэтому будьте осторожны, не используйте «tasksel»! Это опасная команда!
sudo tasksel remove lamp-server
Какую команду я запустил? После нее у меня не осталось Ubuntu .
tasksel removes all Ubuntu-desktop dependencies
Здравствуй, Я. Раджеш. Я использовал Ubuntu Desktop 9.10 (Karmic). Я установил сервер LAMP с помощью tasksel.
Но когда я удалял его с помощью команды: sudo tasksel remove lamp-server , он удалял зависимости рабочего стола без предупреждения, и это влияет на мой рабочий стол, когда я перезагрузился - компьютер перестал работать.
Может ли кто-нибудь предложить более безопасный метод удаления. Заранее спасибо, Раджеш
ПОМОГИТЕ!! «tasksel» удалил мой рабочий стол и множество приложений!
Я использовал «tasksel», намеревающийся установить локальный LAMP-сервер на моем компьютере (после установки Mint 12 с xubuntu-desktop)
Этот инструмент, «tasksel» просто идет вперед и удаляет много, много приложений и МОЙ РАБОЧИЙ СТОЛ без запроса или информирования пользователя. Я могу переустановить xubuntu-desktop (надеюсь, что моя конфигурация не пропала, но это, вероятно), но как насчет всех тех приложений, установленных по умолчанию Mint 12, что «tasksel» удаляет?
Я удивлен, что нет предупреждений о «tasksel» .
Ubuntu 14.04 + tasksel + lamp = Переустановка ОС
Хотел поставить lamp. Гугл в половине случаев находил такой способ установки:
sudo tasksel install lamp-server
Однако tasksel'а не нашлось, сделал немного по-другому:
sudo apt-get install tasksel
sudo tasksel
Дальше выбрал lamp-сервер. Помню, что там две или три галочки были сразу установлены, так я их снял, оставив только lamp.
Затем минут 5 наблюдал, как установщик сносит пакет за пакетом, с панели запуска постепенно исчезают иконки, а значки на панели управления приобретают стиль начала 2000-х.
После завершения "установки" рука рефлекторно потянулась к кнопке перезагрузки, однако с ГУИ этого сделать не удалось, комп завис. Вырубил с кнопки питания. Больше ось не запустилась. Где я накосячил?
PS: Я так чувствую, что зря я те галочки снял :-\
LAMP-Stack сервер: ещё одна инструкция по настройке Linux + Apache + MySQL + PHP + phpMyAdmin на Ubuntu 18. Установка с помощью Tasksel.
22 октября 2018 ВК Tw Fb
Установка Apache 2.4
Перед началом всех нашим манипуляций обновим список пакетов
- Обновляем систему
- Устанавливаем Apache 2
- Проверяем, работает он или нет:
- И на всякий случай перейдём по адресу сервера в браузере. Если у Вас есть GUI, в любом браузере перейдите по адресу:
Установка MySQL 5.7
- Сразу к делу:
- После проверим, работает он или нет
Установка PHP 7.2
- Устанавливаем требуемые пакеты:
- Дождавшись окончания, перейдём по пути:
- Удалим файл index.html
- Добавим файл index.php
Установка phpMyAdmin
Tasksel
- Если пакет Tasksel не установлен в Вашей системе, установим его!
- Вводим команду
Эти статьи будут Вам интересны
1С:Бухгалтерия базовая 3.0: Справочник. Организации. МодульМенеджера(1556); Ошибка при вызове метода контекста
Kaspersky Internet Security: Невозможно гарантировать подлинность домена, с которым устанавливается соединение
27 сентября 2018 ВК Tw Fb
Удалённый рабочий стол Windows CE через RemoteDSP (CERHost CERDisp)
Окунувшись с головой в разработку на Compact Framework для Windows CE, стали проявляться некоторые неудобства при работе с портативными девайсами. Одним из таких неудобств оказалась необходимость постоянно держать устройство в руках. Во время отладки приложения, придётся всё время запускать Ваше ПО на устройстве, брать его, нажимать на кнопки или тачскрин. Всё это значительно замедлит Вашу работу. А если устройство и вовсе не рядом с Вами, а, например, у Вашего клиента? TeamViewer, конечно же, поставить на Windows CE нельзя. Но можно воспользоваться другой замечательной программой, которая позволит Вам удалённо управлять устройством на Windows CE, если Ваш ПК и устройство в одной локальной сети.
База знаний "Try 2 Fix" Beta
Все материалы свободны
к распространению с обязательным
указанием источника
Читайте также: