☁️ LikeVPS × Data Analysis
Установка pandas на VPS:
анализ данных в Jupyter
Подними себе аналитическую среду на сервере и работай с логами и таблицами прямо в браузере.
pandas на VPS превращает сервер в удобный аналитический инструмент: огромный лог или таблицу можно разобрать парой строк кода вместо громоздких shell-цепочек. Представь: на сервере лежит access.log на 2 ГБ, и нужно быстро понять, какие IP делают больше всего запросов, какие страницы открывают чаще и сколько было ошибок. Читать такой файл руками тяжело, а длинные конвейеры из grep, awk и sort быстро становятся нечитаемыми:
grep "GET" access.log | awk '{print $1}' | sort | uniq -c | sort -nr Эта команда находит самые активные IP, но её трудно читать, менять и переиспользовать под другие задачи. Есть вариант лучше — pandas на Python. В этой статье покажем, как установить pandas на VPS и настроить JupyterLab для удобной удалённой работы через браузер.
🐼 Почему данные анализируют через Python и pandas
pandas — библиотека на Python для работы с данными: таблицы, фильтры, группировки, сводные таблицы и статистика доступны за несколько строк кода. JupyterLab — веб-интерфейс, где пишешь код и сразу видишь результат: написал строку, нажал Shift + Enter, получил ответ. Не нужно каждый раз пересохранять файл и перезапускать скрипт.
Вернёмся к примеру. На сервере лежит access.log на несколько гигабайт, где каждая строка — запрос пользователя к сайту:
192.168.1.1 - - [10/Mar/2026:10:00:01] "GET /index.html" 200
192.168.1.2 - - [10/Mar/2026:10:00:03] "GET /login" 200
192.168.1.3 - - [10/Mar/2026:10:00:04] "GET /admin" 403 Загружаем лог в таблицу и задаём ей вопросы. Например:
df["ip"].value_counts()— покажет IP-адреса с наибольшим числом запросов;df[df["status"] == 404]— выведет все строки с ошибкой 404.
Дальше можно сгруппировать запросы по IP, посчитать ошибки по времени, найти популярные страницы и обнаружить подозрительный трафик — при этом код остаётся коротким и понятным. Именно поэтому специалисты используют pandas для анализа логов и других серверных данных.
📋 Что понадобится для работы
- твой обычный ПК или ноутбук;
- VPS-сервер с Ubuntu 20.04 или 22.04 (Debian тоже подойдёт) — pandas не требует мощного железа, хватит базового тарифа;
- IP-адрес сервера, логин и пароль (или SSH-ключ).
Схема простая:
- подключаемся к серверу и создаём пользователя;
- обновляем систему и ставим Python;
- создаём виртуальное окружение и устанавливаем pandas и JupyterLab;
- запускаем Jupyter и пробрасываем SSH-туннель;
- открываем Jupyter в браузере и работаем с данными.
🤝 Не хочешь возиться с настройкой?
Купи VPS, напиши нам — и мы бесплатно поможем поднять Python, pandas и Jupyter.
🛠️ Устанавливаем pandas на VPS: пошаговая инструкция
Дальше — пошаговый разбор. Команды можно просто копировать и вставлять в терминал.
Шаг 1 — Подключаемся к серверу
⚠️ Важно: Jupyter не запускается под root. Если работаешь под обычным пользователем — проблем не будет. Сначала открой командную строку (CMD в Windows) или терминал (Mac/Linux). Дальше два варианта.
Вариант А — обычный пользователь уже есть. Подключайся сразу под ним:
ssh username@IP_сервера Например: ssh pavel@45.12.139.194
Вариант Б — есть только root. Под root Jupyter не запустится, поэтому создадим обычного пользователя. Подключаемся под root:
ssh root@IP_сервера Создаём пользователя (например, jupyter):
adduser jupyter Система попросит пароль и дополнительные данные (адрес, телефон и др.) — заполни или нажимай Enter для пропуска. Даём пользователю права sudo, чтобы он мог устанавливать программы:
usermod -aG sudo jupyter Выходим из root и подключаемся под новым пользователем:
exit
ssh jupyter@IP_сервера Система попросит пароль (символы при вводе не отображаются — это нормально). Все дальнейшие шаги выполняем под этим пользователем.
Шаг 2 — Обновляем систему и ставим Python
Сначала обновим список пакетов и сами пакеты. 💡 Для вставки в окно CMD работает правый клик мышью, а не Ctrl+V.
sudo apt update && sudo apt upgrade -y Теперь установим Python и нужные инструменты:
sudo apt install -y python3 python3-pip python3-venv Проверяем, что всё установилось:
python3 --version
pip3 --version Ты увидишь номера версий — например, Python 3.10.12 и pip 22.0.2.
Шаг 3 — Создаём отдельное окружение
Для каждой задачи стоит заводить отдельное виртуальное окружение, чтобы пакеты не конфликтовали. Создаём папку проекта и заходим в неё:
mkdir ~/data-analysis && cd ~/data-analysis Создаём окружение и активируем его:
python3 -m venv venv
source venv/bin/activate После активации в начале строки появится (venv) — значит, мы внутри окружения.
Шаг 4 — Устанавливаем pandas и JupyterLab
Сначала обновим сам pip:
pip install --upgrade pip Теперь ставим библиотеки:
pip install pandas jupyterlab Если планируешь работать с Excel, сразу добавь поддержку:
pip install "pandas[excel]" Установка обычно занимает 1–2 минуты.
Шаг 5 — Проверяем установку
Запускаем Python:
python Внутри пробуем импортировать pandas:
import pandas as pd
print(pd.__version__) Если видишь версию без ошибок — всё хорошо. Выходим из Python:
exit() Шаг 6 — Запускаем JupyterLab
Запускаем JupyterLab на сервере:
jupyter lab --no-browser --ip=127.0.0.1 --port=8888 Что означают параметры:
--no-browser— не пытаться открыть браузер на сервере (там нет экрана);--ip=127.0.0.1— слушать только локальные подключения (безопасно);--port=8888— работать на порту 8888.
После запуска увидишь примерно такое:
[I 2026-03-11 10:00:00] Server at: http://127.0.0.1:8888/lab?token=abc123def456 ⚠️ Не закрывай это окно: JupyterLab работает, пока процесс активен.
Шаг 7 — Создаём SSH-туннель
Чтобы попасть в Jupyter с домашнего компьютера, пробросим порт. Открой новое окно командной строки (не закрывая то, где запущен Jupyter) и введи:
ssh -L 8888:127.0.0.1:8888 username@IP_сервера Введи пароль пользователя, который задавал сам (не путай с паролем от VPS). Это окно теперь работает как туннель: всё, что приходит на локальный порт 8888, уходит на сервер.
Шаг 8 — Открываем Jupyter в браузере
На домашнем компьютере открой любой браузер и вставь ссылку, которую получил в ответе на шаге 6 (вместе с токеном). Откроется интерфейс JupyterLab.
Шаг 9 — Первый запуск pandas в Jupyter
В панели Notebook нажми Python 3 — создастся новый ноутбук. В первой ячейке напиши:
import pandas as pd
print("pandas загружен") Нажми Shift + Enter (или кнопку Run). Если увидишь «pandas загружен» — всё работает. Для проверки создай простую таблицу:
import pandas as pd
df = pd.DataFrame({
'city': ['Moscow', 'London', 'New York', 'Tokyo'],
'visits': [1500, 2300, 1800, 2100]
})
df Под ячейкой появится аккуратная таблица. Это и есть та самая удобная работа с данными. 🎉
Что дальше
Теперь у тебя есть рабочая среда. Можно загружать CSV, Excel, JSON и SQL, обрабатывать логи, строить графики, считать статистику и экспортировать результаты — и все данные при этом остаются на сервере.
🛑 Как завершить работу
Когда закончишь:
- закрой вкладку браузера с Jupyter;
- в окне с туннелем (второе CMD) нажми Ctrl + C;
- в окне с Jupyter на сервере (первое CMD) нажми Ctrl + C;
- подтверди остановку, если система спросит.
Ты только что превратил сервер в удобный аналитический инструмент: не нужно гонять данные туда-сюда, можно работать с большими файлами, код и результаты хранятся рядом с данными, а доступ есть откуда угодно — через браузер и SSH. pandas используют дата-сайентисты, аналитики и разработчики по всему миру. А теперь и ты.
❓ Частые вопросы
Нужен ли мощный VPS для pandas?
Для большинства задач — нет. Сама библиотека нетребовательна, и для установки pandas и JupyterLab хватит базового VPS на Ubuntu или Debian. Запас по RAM и CPU понадобится, только если регулярно гоняешь очень большие датасеты или тяжёлые вычисления.
Почему Jupyter не запускается под root?
JupyterLab по умолчанию отказывается стартовать от имени root из соображений безопасности. Решение простое: создай обычного пользователя с правами sudo (adduser + usermod -aG sudo) и выполняй все шаги под ним. Так и Jupyter запустится без ошибок, и работать с сервером безопаснее.
Зачем SSH-туннель, почему не открыть порт наружу?
JupyterLab запускается с параметром --ip=127.0.0.1, то есть слушает только локальные подключения и не торчит в интернет. SSH-туннель безопасно прокидывает порт 8888 на твой компьютер, не открывая Jupyter всему миру. Это защищает среду от посторонних, ведь через неё можно выполнять код на сервере.
Как работать с Excel-файлами в pandas?
Установи pandas с дополнительной поддержкой форматов командой pip install "pandas[excel]". После этого сможешь читать .xlsx через pd.read_excel() и выгружать результаты обратно в Excel.
Можно ли закрыть терминал, чтобы Jupyter работал дальше?
Если просто закрыть окно или нажать Ctrl + C, процесс Jupyter остановится. Чтобы он продолжал работать в фоне после отключения по SSH, запускай его внутри tmux или screen — это терминальные мультиплексоры, которые держат сессию живой. Тогда сможешь отключиться от сервера, а Jupyter останется запущенным.
🚀 Готов анализировать данные на своём сервере?
Выбери VPS, подключайся — а если нужна помощь с установкой Python и Jupyter, поддержка LikeVPS на связи в Telegram.