Допустим, вы только что купили VPS с Ubuntu, чтобы захостить там какого-нибудь бота или даже простой сайт, экспериментов с Linux и автоматизации задач. В этой статье мы пошагово разберём базовые команды и операции, которые нужны каждому новичку, чтобы уверенно работать в терминале, управлять файлами, процессами и устанавливать приложения. Все примеры даны на практике, с пояснениями, чтобы вы сразу могли применять их на своём сервере.

1. Подключение к серверу и навигация по файловой системе

После покупки VPS вы подключаетесь через SSH. Как только вы вошли, нужно понять, где вы находитесь и как ориентироваться в системе.

pwd         # показывает текущую директорию
ls -l       # показывает файлы и папки с подробной информацией
cd /путь    # переход в другую папку
cd ~        # переход в домашнюю папку

2. Работа с файлами и папками

Создание, копирование, перемещение и удаление файлов — базовые операции для управления данными на сервере.

mkdir my_folder             # создаёт папку
touch file.txt              # создаёт пустой файл
cp file.txt backup.txt      # копирует файл
mv file.txt my_folder/      # перемещает файл в папку
rm backup.txt               # удаляет файл
rm -r old_folder/           # удаляет папку и её содержимое

3. Просмотр содержимого файлов

Иногда нужно быстро посмотреть, что внутри файла или следить за изменениями.

cat file.txt       # выводит содержимое файла
less file.txt      # постраничный просмотр
tail -n 20 file.txt # последние 20 строк
tail -f file.txt    # вывод новых строк в реальном времени

4. Поиск файлов и текста

При большом количестве файлов поиск становится важным инструментом.

find /путь -name "*.txt"         # ищет все txt-файлы
grep "ошибка" file.txt             # ищет слово "ошибка" внутри файла
grep -r "ошибка" /путь/           # рекурсивный поиск в папках

5. Управление процессами

Вы можете посмотреть, какие процессы работают, и при необходимости завершить их.

ps aux                   # показывает все процессы
top                       # интерактивное отображение процессов
htop                      # более удобная версия top (если установлено)
kill 1234                 # завершить процесс с PID 1234
kill -9 1234              # принудительно завершить процесс

6. Работа с пакетами и установкой программ

Ubuntu использует apt для установки и управления программами.

apt update               # обновление списка пакетов
apt upgrade -y            # обновление всех пакетов
apt install htop git curl # установка утилит
apt remove nano           # удаление пакета

7. Просмотр системной информации

Полезно знать состояние сервера: место на диске, память, нагрузку.

df -h          # свободное место на дисках
free -h         # память и swap
uptime          # время работы и нагрузка
uname -a        # информация о системе

8. Архивация и сжатие файлов

Архивирование удобно для хранения и передачи данных.

tar czf archive.tar.gz my_folder/  # создать архив сжатый gzip
tar xzf archive.tar.gz              # распаковать архив
zip -r archive.zip my_folder/       # создать zip-архив
unzip archive.zip                   # распаковать zip

9. Простые сетевые проверки

Проверка соединения с другими серверами или интернетом помогает диагностировать проблемы.

ping google.com        # проверка соединения
curl http://example.com # скачивание содержимого сайта
wget http://example.com/file.txt # скачивание файла

10. История команд и автодополнение

Эффективная работа с терминалом невозможна без использования истории и автодополнения.

history          # показывает список команд
!123              # выполняет команду с номером 123 из истории
Tab               # автодополнение имён файлов и команд

11. Установка Node.js и npm

Node.js нужен для запуска современных веб-приложений. NPM позволяет устанавливать библиотеки и пакеты.

apt install -y nodejs npm
node -v          # проверка версии Node.js
npm -v           # проверка версии npm

Пример создания простого приложения:

mkdir myapp
cd myapp
npm init -y
echo "console.log('Привет, VPS!');" > index.js
node index.js

12. Установка Nginx

Nginx — веб-сервер для обслуживания сайтов и проксирования запросов к приложениям.

apt install -y nginx
systemctl start nginx
systemctl enable nginx
systemctl status nginx

Проверка работы: откройте IP сервера в браузере — должна появиться страница «Welcome to nginx».

13. Установка базы данных (MySQL)

Для веб-приложений часто нужна база данных. MySQL — популярный вариант.

apt install -y mysql-server
systemctl start mysql
systemctl enable mysql
mysql -u root -p

Создание базы и пользователя:

CREATE DATABASE mydb;
CREATE USER 'user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON mydb.* TO 'user'@'localhost';
FLUSH PRIVILEGES;

14. Запуск веб-приложения через Nginx

Пример настройки простого проксирования Node.js приложения через Nginx.

nano /etc/nginx/sites-available/myapp

Пример содержимого:

server {
    listen 80;
    server_name ваш_домен_или_IP;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }
}
ln -s /etc/nginx/sites-available/myapp /etc/nginx/sites-enabled/
nginx -t
systemctl reload nginx

Теперь ваше Node.js приложение доступно через браузер по IP или домену сервера.

15. Пример полного рабочего цикла

1. Создаём папку проекта и инициализируем npm.
2. Пишем простой сервер на Node.js.
3. Проверяем локально командой node index.js.
4. Настраиваем Nginx для проксирования на порт приложения.
5. Проверяем работу через браузер.

С такой базой вы уже можете развёртывать простые веб-приложения на своём VPS и уверенно работать в терминале.

Полезные статьи — по почте

Подпишитесь на редакторскую рассылку о фронтенде, новых CSS-штучках и всём, что пригодится разработчику.

Присылаем одно письмо в неделю. Без спама и нейросетей.


«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.

ТелеграмПодкастБесплатные учебники