Вернуть старое меню
Бесплатно, 24/7 8 (800) 775-97-42
Country flag RU
Country flag EN
Country flag DE
₽ RUB
$ USD
€ EUR
Выбрать VPS
Маркетплейс
О нас
Сообщество
Поддержка
Баланс:
Бонусы:
Войти
Выйти
Зарегистрироваться
ГОТОВЫЕ ТАРИФЫ
Ref icon
VPS Старт От 139 рублей/мес
Ref icon
VPS Мощные Мощные серверы по выгодной цене
Ref icon
VPS Windows Удобные конфигурации для работы с ОС Windows
Ref icon
VPS Быстрые NVMe Максимальная скорость с промышленными NVMe дисками
Ref icon
VPS Plesk Настройте сервер под себя в несколько кликов
Ref icon
VPS с 1C для бухгалтеров Оптимизированные под 1C серверы
Ref icon
VPS для трейдинга Установите торговые терминалы за 1 клик
Ref icon
VPS для геймеров Мощное железо для мощных рейдов
Ref icon
VPS для бизнеса Настроить любой параметр сервера
Ref icon
Посмотреть все тарифы
Card icon Своя конфигурация
Удобный конфигуратор позволит вам настроить любой параметр сервера, а мы предложим за него лучшую цену.
Собрать
Card icon Бесплатный тест на 3 дня
Только для новых пользователей. Возьмите на тест любой сервер до 3000 рублей, проверьте приложения и программы, установив их на VPS.
Попробовать
АККАУНТ Мои серверы Домены Заказать Настройки Партнеру
КЛИЕНТАМ
О компании Входим в топ-15 IAAS в России
Дата-центры 17 ЦОД уровня Tier III в 7 странах
Аттестация по ФСТЭК Поможем с гос. лицензированием
Бонусная программа Накопительная система лояльности
Card icon Пинг до дата-центров
Измерьте ping от вас до всех наших дата-центров. Мы подберем тот, который подходит для вас идеально.
Измерить
Card icon Бесплатный тест на 3 дня
Только для новых пользователей. Возьмите на тест любой сервер до 3000 рублей, проверьте приложения и программы, установив их на VPS.
Попробовать
АККАУНТ Мои серверы Домены Заказать Настройки Партнеру
КЛИЕНТАМ
Справочник Пошаговые инструкции, как настроить VPS
FAQ Частые вопросы о настройке VPS и сервисе
Новости и события Новости сервиса, информация о событиях и спецпроектах компании
Card icon Соцсети
Наш блог на Хабре, выступления, новости компании.
Присоединиться
Card icon Бесплатный тест на 3 дня
Только для новых пользователей. Возьмите на тест любой сервер до 3000 рублей, проверьте приложения и программы, установив их на VPS.
Попробовать
АККАУНТ Мои серверы Домены Заказать Настройки Партнеру
Бесплатно, 24/7 8 (800) 775-97-42
Mobile menu button
Выбрать VPS
Mobile card icon
Своя конфигурация Удобный конфигуратор позволит вам настроить любой параметр сервера, а мы предложим за него лучшую цену.
Собрать
Ref icon
VPS Старт От 139 рублей/мес
Ref icon
VPS Мощные Мощные серверы по выгодной цене
Ref icon
VPS Windows Удобные конфигурации для работы с ОС Windows
Ref icon
VPS Быстрые NVMe Максимальная скорость с промышленными NVMe дисками
Ref icon
VPS Plesk Настройте сервер под себя в несколько кликов
Ref icon
VPS с 1C для бухгалтеров Оптимизированные под 1C серверы
Ref icon
VPS для трейдинга Установите торговые терминалы за 1 клик
Ref icon
VPS для геймеров Мощное железо для мощных рейдов
Ref icon
VPS для бизнеса Настроить любой параметр сервера
Ref icon
Посмотреть все тарифы
Ref icon
Бесплатный тест на 3 дня
Маркетплейс
О нас
Mobile card icon
Пинг до дата-центров Измерьте ping от вас до всех наших дата-центров. Мы подберем тот, который подходит для вас идеально.
Измерить
О компании Входим в топ-15 IAAS в России
Дата-центры 17 ЦОД уровня Tier III в 7 странах
Аттестация по ФСТЭК Накопительная система лояльности
Бонусная программа Накопительная система лояльности
Сообщество
Mobile card icon
Соцсети Наш блог на Хабре, выступления, новости компании.
Присоединиться
Справочник Пошаговые инструкции, как настроить VPS
FAQ Частые вопросы о настройке VPS и сервисе
Новости и события Новости сервиса, информация о событиях и спецпроектах компании
Поддержка
Country flag RU
Country flag EN
Country flag DE
₽ RUB
$ USD
€ EUR
Войти
Зарегистрироваться
Личный кабинет
Мои серверы
Домены
Баланс: Бонусы:
Заказать
Настройки
Партнеру
Выйти
Мои серверы
Домены
Заказать
Настройки
Партнеру
  • ВЫБРАТЬ VPS
  • ДАТА-ЦЕНТРЫ
  • СПРАВОЧНИК
  • ПОДДЕРЖКА
  • ВОЙТИ
RuVDS/Справочник/Развертывание ПО на VPS сервере/Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

14119 просмотров 6 2021-06-12 2024-04-11

Часто ли вам приходится пользоваться сайтами-файлообменниками? А хотите иметь свой собственный файлообменник? В этом руководстве мы изучим, как производится установка и настройка сервера Seafile для синхронизации и общего доступа к файлам на Ubuntu 20.04.

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

В качестве основы для установки Seafile мы будем использовать виртуальный сервер с установленной операционной системой Ubuntu 20.04. Сервер должен иметь как минимум 2GB оперативной памяти. Все подключения к серверу мы будем осуществлять под учётной записью, которая не является root-ом, но имеет полномочия sudo. В нашем руководстве это будет пользователь your-user. Также, на сервере должен быть установлен и настроен брандмауэр UFW.

Поскольку, ваш файловый сервер будет работать на сайте, вы должны иметь своё зарегистрированное доменное имя. При этом, А-запись вашего домена должна будет указывать на IP-адрес вашего виртуального сервера. В нашем руководстве мы будем использовать my-domain.host в качестве имени домена.

В качестве СУБД на нашем сервере мы будем использовать MariaDB, а в качестве веб-сервера – Apache. Также, мы настроим доступ к нашему сайту по защищённому протоколу HTTPS.

Установка MariaDB

На нашем сервере в качестве системы управления базами данных мы будем использовать MariaDB. Поэтому сначала необходимо установить на сервер данную СУБД.

Для чего обновите индексы пакетов на сервере:

$ sudo apt update

После этого запустите установку пакета MariaDB:

$ sudo apt install mariadb-server

По окончании установки нужно будет запустить скрипт безопасности:

$ sudo mysql_secure_installation

Скрипт должен попросить вас ввести пароль пользователя root для установленной СУБД. Так как мы пока ещё не настраивали этого пользователя, укажите, что этот пароль отсутствует, нажав Enter. Далее скрипт запросит сменить пароль пользователя root, на что следует ответить “Нет”, нажав n. На остальные вопросы скрипта можно отвечать утвердительно.

Скрипт безопасности MariaDB - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Установка веб-сервера Apache

В качестве веб-сервера в данном руководстве мы будем использовать Apache. Поскольку Apache доступен для установки из официального репозитория Ubuntu, инсталляцию пакета нужно будет произвести при помощи apt:

$ sudo apt install apache2

Когда установка завершится, произведите настройку брандмауэра UFW. Запустите команду для просмотра списка приложений, включённых в брандмауэр в качестве разрешённых:

$ sudo ufw app list
Список приложений UFW - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Позже мы настроим доступ к нашему ресурсу по протоколу HTTPS. А пока разрешите трафик исключительно по порту 80:

$ sudo ufw allow 'Apache'

Чтобы проверить изменения наберите:

$ sudo ufw status
Статус UFW - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Теперь следует запустить проверку статуса службы Apache:

$ sudo systemctl status apache2

Вывод команды должен выглядеть примерно так:

Статус службы Apache - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

И остаётся лишь удостовериться в том, что наш веб-сервер доступен по сети. Для чего в браузере наберите IP-адрес вашего VPS. Вы должны увидеть стартовую страницу Apache:

Начальная страница Apache - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Настройка виртуального хоста

Теперь привяжем имя нашего домена к установленному на наш VPS веб-серверу. Для этого необходимо на Apache произвести настройку виртуального хоста. В нашем руководстве мы будем использовать доменное имя my-domain.host. Настройку виртуального хоста нужно будет выполнить по пунктам:

  • Создайте директорию для настраиваемого домена:
$ sudo mkdir /var/www/my-domain.host
  • Далее, измените владельца директории и права на неё:
$ sudo chown -R $USER:$USER /var/www/my-domain.host
$ sudo chmod -R 755 /var/www/my-domain.host
  • В данной директории создайте файл вашего сайта index.html:
$ cd /var/www/my-domain.host
$ sudo nano index.html
  • В создаваемый файл скопируйте следующие строки:
<html>
   <head>
      <title>My domain on Apache!</title>
   </head>
   <body>
      <h1>MY-DOMAIN.HOST</h1>
      <p>It is my domain.</p>
   </body>
</html>
  • Закройте файл с сохранением внесённых изменений.
  • Создайте конфигурационный файл для виртуального хоста:
$ sudo nano /etc/apache2/sites-available/my-domain.host.conf
  • В него вставьте следующий текст. Не забывайте заменять my-domain.host на имя вашего домена, а в строку ServerAdmin впишите доступный адрес электронной почты:
<VirtualHost *:80>
   ServerAdmin admin@my-domain.host
   ServerName my-domain.host
   ServerAlias www.my-domain.host
   DocumentRoot /var/www/my-domain.host
   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
  • Активируйте созданный хост:
$ sudo a2ensite my-domain.host.conf
  • Отключите дефолтный домен:
$ sudo a2dissite 000-default.conf
  • Проверьте синтаксис конфигурации созданного хоста:
$ sudo apache2ctl configtest
  • Проверка должна выдать результат – Syntax Ok.
  • Перезагрузите службу Apache:
$ sudo systemctl restart apache2

Теперь проверьте доступность домена набрав в браузере его адрес http://my-domain.host:

Подключение к домену

Обеспечение безопасности Apache с помощью Let’s Encrypt

В этом разделе нам будет необходимо обеспечить возможность шифрования трафика на нашем веб-сервере. Мы настроим Apache таким образом, чтобы наш домен был доступен по протоколу HTTPS.

Для начала установите на свой сервер программное обеспечение Certbot. Для чего в командной строке следует набрать:

$ sudo apt install certbot python3-certbot-apache

Теперь перейдём к настройке брандмауэра UFW. Ранее мы разрешили в нашем брандмауэре трафик только по порту 80. Сейчас мы настроим доступ к нашему ресурсу по протоколу HTTPS, а доступ через HTTP, наоборот, закроем. Для этого используйте следующие две команды:

$ sudo ufw allow 'Apache Full'
$ sudo ufw delete allow 'Apache'

Далее, запустите проверку статуса брандмауэра:

$ sudo ufw status
Просмотр статуса UFW

Далее, запустите получение SSL-сертификата при помощи Certbot через плагин Apache:

$ sudo certbot --apache

Данный скрипт попросит вас ответить на несколько вопросов, ответы на которые позволят вам сконфигурировать полученный SSL-сертификат на вашем сервере. Во-первых, введите доступный вам адрес электронной почты. Этот E-mail будет использоваться для уведомлений о продлении сертификата, а также, об изменениях настроек системы безопасности. Во-вторых, подтвердите своё согласие с условиями предоставления услуг Let’s Encrypt нажав A. Далее, вас спросят, хотите ли вы, получать на вашу почту информацию от Electronic Frontier Foundation. Нажмите N, чтобы отказаться от рассылки, либо Y, чтобы согласиться на неё. И, наконец, вы должны будете проинформировать Certbot о том, в отношении какого из доменных имён вы хотели бы активировать доступ по протоколу HTTPS. Если вы хотите сделать это в отношении всех представленных в списке сайтов, оставьте поле пустым и нажмите Enter. Либо, перечислите соответствующие номера строк, разделяя их при помощи запятых или пробелов, и нажмите Enter.

Выбор домена для подключения SSL-сертификата

После этого шага Certbot активирует SSL-сертификат для вашего домена, о чём проинформирует вас при помощи своих сообщений.

Активация SSL-сертификата

Проверить доступность вашего сайта через защищённое соединение вы можете набрав в браузере ваше доменное имя с префиксом https://, например, https://my-domain.host.

Подключение к домену по HTTPS

Создание баз данных для компонентов Seafile

Три компоненты Seafile должны быть установлены в вашей системе для того, чтобы настраиваемый файловый сервер функционировал корректно:

  • Seahub – фронтендовый веб-интерфейс Seafile. Он написан на Python с использованием фреймворка Django. С помощью Seahub вы сможете получать доступ к своим файлам, управлять ими и организовывать общий доступ к ним через браузер.
  • Сервер Seafile – служба для работы с данными, которая управляет выгрузкой файлов, их загрузкой и синхронизацией. Вам не нужно будет взаимодействовать с сервером напрямую, достаточно использовать какое-либо клиентское приложение, либо веб-интерфейс сервера.
  • Сервер Ccnet – RPC-служба, предназначенная для обеспечения внутренних связей между различными сегментами Seafile. При помощи этого сервиса Seahub сможет получать доступ к данным на сервере Seafile.

Все эти сегменты будут хранить свои данные отдельно, каждый в своей базе данных. Именно поэтому, теперь мы должны создать три разных базы данных. Их мы создадим при помощи MariaDB. Также, нужно будет создать для них пользователя.

Итак, подключитесь к MariaDB:

$ sudo mariadb

В командной строке MariaDB введите команду для создания пользователя ваших баз данных:

> CREATE USER 'mdb-user'@'localhost' IDENTIFIED BY 'p@$$word';

Здесь, mdb-user – имя создаваемого пользователя, а p@$$word – пароль для него.

Далее, необходимо создать базы данных для всех трёх компонентов Seafile:

  • seahubdb – для фронтендового веб-интерфейса Seafile;
  • seafiledb – для сервера Seafile;
  • ccnetdb – для сервера Ccnet.

Для создания баз данных наберите в командной строке MariaDB:

> CREATE DATABASE `seahubdb` CHARACTER SET = 'utf8';
> CREATE DATABASE `seafiledb` CHARACTER SET = 'utf8';
> CREATE DATABASE `ccnetdb` CHARACTER SET = 'utf8';

Теперь, нужно дать все полномочия созданному пользователю для работы с новыми базами:

> GRANT ALL PRIVILEGES ON `seahubdb`.* to `mdb-user`@localhost;
> GRANT ALL PRIVILEGES ON `seafiledb`.* to `mdb-user`@localhost;
> GRANT ALL PRIVILEGES ON `ccnetdb`.* to `mdb-user`@localhost;

После этого можно выйти из MariaDB. Для этого используйте команду:

> exit

Установка зависимостей и загрузка Seafile

Определённые элементы Seafile написаны на Python и, следовательно, для работы Seafile необходимо наличие программ и дополнительных модулей Python. На этом шаге мы установим требуемые зависимости прежде, чем скачать и распаковать пакет сервера Seafile.

Итак, во-первых, установите pip – менеджер пакетов Python. Соответствующий пакет для Debian называется python3-pip. Для установки пакета запустите:

$ sudo apt install -y python3-pip

По окончании установки пакета pip запустите инсталляцию дополнительных зависимостей при помощи команды pip3:

$ pip3 install Pillow captcha django-simple-captcha

Для команды pip3 install необязательно использование sudo. Эти пакеты устанавливаются в домашний каталог вашего пользователя, и поэтому их инсталляция не требует привилегий root. Сервер Seafile требует установки пакета Pillow, библиотеки для обработки образов. Также, для работы Seafile требуется установка пакетов captcha и django-simple-captcha, чтобы обеспечить поддержку каптча для аутентификации.

Теперь, когда необходимые зависимости установлены, вы можете загрузить установочный пакет Seafile. Для его инсталляции нам потребуются дополнительные каталоги. Их нужно будет создать в домашнем каталоге вашего пользователя:

$ cd ~
$ mkdir seafile
$ cd seafile

Далее, загрузите последнюю версию Seafile. В нашем руководстве мы будем устанавливать версию 7.1.5:

$ wget https://download.seadrive.org/seafile-server_7.1.5_x86-64.tar.gz

Загруженный дистрибутив Seafile представляет из себя tar-архив, который вам нужно будет распаковать, прежде чем продолжить:

$ tar -zxvf seafile-server_7.1.5_x86-64.tar.gz

После чего перейдите в разархивированную директорию:

$ cd seafile-server-7.1.5

Настройка сервера Seafile

Для своей работы сервер Seafile потребует от вас некоторой информации. Её необходимо предоставить сервису перед первым его запуском. Эта информация включает в себя такие данные как имя домена и настройки базы данных. Чтобы начать наполнение Seafile ответами на требуемые вопросы, вам нужно запустить на исполнение скрипт setup_seafile_mysql.sh, который входит в состав архива, распакованного на предыдущем шаге:

$ bash setup-seafile-mysql.sh
Запуск скрипта setup_seafile_mysql.sh

Для продолжения нажмите Enter.

Далее скрипт задаст вам несколько вопросов. Везде, где вы хотите использовать значения по умолчанию, просто нажимайте клавишу Enter не вводя никакой информации.

В качестве имени сервера здесь мы будем использовать Seafile-Server. Вы, конечно же, можете ввести другое:

Имя сервера Seafile

Далее, введите ваше имя домена:

Имя домена

Введите номер порта, который вы хотите использовать на своём файловом сервере. Для принятия значения по умолчанию нажмите Enter:

Номер порта

Далее, следует выбрать создание новых баз данных для Seafile или использование уже существующих. В нашем примере, выбор – пункт 2:

Базы данных Seafile

Оставшиеся вопросы относятся к СУБД MariaDB. Здесь вам нужно будет ввести имя и пароль пользователя MariaDB, который вы создали ранее. А также, примите значения по умолчанию в назначении хоста и порта для сервера mysql:

Настройки MariaDB для Seafile

Если пароль вашего пользователя принят, скрипт попросит вас набрать имена баз данных Seafile. В нашем руководстве эти базы мы назвали seahubdb, seafiledb и ccnetdb. Скрипт проверит корректность подключения к базам данных и отобразит на экране сводную информацию о начальной конфигурации:

Базы данных Seafile

Для подтверждения нажмите Enter:

Завершение работы скрипта

Поскольку вы будете запускать сервер Seafile, который по факту находится за Apache, то в брандмауэре нет необходимости открывать порты 8000 и 8082. Следовательно, вы можете игнорировать заключительную часть вывода.

Настройка веб-сервера Apache

В этом разделе мы произведём настройку веб-сервера Apache. Эта настройка нужна для того, чтобы Apache умел пересылать все получаемые запросы в Seafile. Применение такой настройки Apache позволит ему использовать только URL-адрес, без номера порта. А также, это поможет включать HTTPS-соединения при обмене данными с Seafile и использовать кэширование в Apache для повышения производительности.

Чтобы начать пересылать запросы нужно в конфигурации Apache включить модуль proxy_http. Этот модуль делает возможным использование проксирования HTTP и HTTPS запросов. Включите модуль следующей командой:

$ sudo a2enmod proxy_http

Для этой настройки также требуется наличие модулей ssl и rewrite. Их мы уже включили, когда настраивали шифрование трафика Apache при помощи Let’s Encrypt.

Далее, нужно будет настроить виртуальный хост my-domain.host. Это необходимо для того, чтобы обеспечить перенаправление запросов на Seafile и Seahub. Чтобы сделать это, откройте для редактирования файл конфигурации. Он располагается в каталоге /etc/apache2/sites-enabled/:

$ cd /etc/apache2/sites-enabled
$ sudo nano my-domain.host-le-ssl.conf

В этом файле строки от ServerAdmin до SSLCertificateKeyFile относятся к настройке шифрования при помощи Let’s Encrypt, которую мы сделали ранее. Добавьте выделенные строки в файл, используя имя вашего пользователя вместо your-user:

<IfModule mod_ssl.c>
<VirtualHost *:443>
   ServerAdmin mail@my-domain.host
   ServerName my-domain.host
   ServerAlias www.my-domain.host
   DocumentRoot /var/www/my-domain.host
   ErrorLog ${APACHE_LOG_DIR}/error.log
   CustomLog ${APACHE_LOG_DIR}/access.log combined

Include /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/my-domain.host/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/my-domain.host/privkey.pem
Alias /media  /home/your-user/seafile/seafile-server-latest/seahub/media
    <Location /media>
        Require all granted
    </Location>

    # seafile fileserver
    ProxyPass /seafhttp http://127.0.0.1:8082
    ProxyPassReverse /seafhttp http://127.0.0.1:8082
    RewriteEngine On
    RewriteRule ^/seafhttp - [QSA,L]

    # seahub web interface
    SetEnvIf Authorization "(.*)" HTTP_AUTHORIZATION=$1
    ProxyPass / http://127.0.0.1:8000/
    ProxyPassReverse / http://127.0.0.1:8000/
</VirtualHost>
</IfModule>

Здесь, используется несколько директив:

  • Alias – сопоставляет путь my-domain.host/media с каталогом в системе, на которой установлен Seafile.
  • Location – в ней указано, что доступ к содержимому этого каталога открыт.
  • ProxyPass и ProxyPassReverse – принуждают Apache работать как обратный прокси-сервер для хоста. То есть, все запросы, попадающие на порты 8000 и 8082, перенаправляются в каталоги файлового сервера и веб-интерфейса Seafile / и /seafhttp соответственно.
  • RewriteRule – передаёт запросы в директорию /seafhttp не изменяя их, а также, прекращает обработку дальнейших правил ([QSA,L]).

По окончании редактирования закройте файл, сохранив внесённые изменения. После чего проверьте корректность синтаксиса Apache:

$ sudo apache2ctl configtest

Если проверка выдала Syntax OK, перезапустите Apache для применения изменений:

$ sudo systemctl restart apache2

Изменение конфигурации Seafile и запуск сервисов

Так как вы используете Apache, чтобы проксировать все запросы к Seafile, вам нужно будет изменить URL-адреса в конфигурационных файлах Seafile. Для этого перейдите в каталог conf и откройте для редактирования файл ccnet.conf:

$ cd ~/seafile/conf
$ sudo nano ccnet.conf

В этом файле отредактируйте значение переменной SERVICE_URL, указав в качестве значения новый URL-адрес без указания номера порта, но с префиксом https:

SERVICE_URL = https://my-domain.host
Настройка Seafile

Сохраните изменения и закройте файл. После чего откройте файл seahub_settings.py:

$ sudo nano seahub_settings.py

Здесь вам необходимо добавить переменную FILE_SERVER_ROOT, определяющую путь, который Seafile будет прослушивать для загрузки и выгрузки файлов:

FILE_SERVER_ROOT = 'https://my_domain.host/seafhttp'
Настройка Seafile

Сохраните изменения, закройте файл. Затем запустите службу Seafile и интерфейс Seahub:

$ cd ~/seafile/seafile-server-7.1.5
$ ./seafile.sh start
$ ./seahub.sh start

Так как вы впервые запускаете сервис Seahub, вам нужно будет создать учетную запись администратора. Здесь введите доступный вам адрес электронной почты и пароль для создаваемого пользователя:

Создание пользователя для доступа к Seafile - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

В случае, если при запуске seahub.sh, у вас появится сообщение:

LC_ALL is not set in ENV, set to en_US.UTF-8

то, вам необходимо будет в файл /etc/default/locale добавить строку:

LC_ALL="en_US.UTF-8"

Теперь откройте в браузере адрес вашего сайта и авторизуйтесь на нём с помощью адреса электронной почты и пароля:

Авторизация на сервере Seafile - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

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

Успешное подключение к Seafile

Активизация старта сервера Seafile при загрузке системы

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

Сначала создайте файл службы для файлового сервера Seafile:

$ cd /etc/systemd/system
$ sudo nano seafile.service

Добавьте в этот файл следующие строки:

[Unit]
Description=Seafile
After=network.target mariadb.service

[Service]
Type=forking
ExecStart=/home/your-user/seafile/seafile-server-latest/seafile.sh start
ExecStop=/home/your-user/seafile/seafile-server-latest/seafile.sh stop
User=your-user
Group=your-user

[Install]
WantedBy=multi-user.target

В строках ExectStart и ExecStop указаны команды запуска и остановки сервиса Seafile. Сервис будет запускаться от имени пользователя и группы your-user. Строка After определяет запуск службы Seafile только после старта сетевого окружения и сервиса MySQL.

Далее, создайте файл сервиса для веб-интерфейса Seahub:

$ cd /etc/systemd/system
$ sudo nano seahub.service

Здесь всё так же, как и в предыдущем файле. Единственное отличие заключается в том, что веб-интерфейс будет стартовать после службы Seafile:

[Unit]
Description=Seafile hub
After=network.target seafile.service

[Service]
Type=forking
ExecStart=/home/your-user/seafile/seafile-server-latest/seahub.sh start
ExecStop=/home/your-user/seafile/seafile-server-latest/seahub.sh stop
User=sammy
Group=sammy

[Install]
WantedBy=multi-user.target

Закройте созданный файл с сохраненим изменений.

И наконец, активируйте автоматический старт обоих сервисов при запуске системы:

$ sudo systemctl enable seafile.service
$ sudo systemctl enable seahub.service

Теперь, если вы перезагрузите свой сервер, Seafile запустится автоматически.

Тестирование функциональности синхронизации файлов и их совместного использования

В этом разделе мы протестируем функционал нашего настроенного сервера, касающийся синхронизации и совместного использования файлов. Чтобы это осуществить, нужно будет установить клиентское приложение Seafile на отдельную рабочую станцию или мобильное устройство.

Перейдите на страницу загрузки Seafile и следуя инструкциям установите последнюю версию клиентской программы. Клиентское программное обеспечение Seafile доступно для различных дистрибутивов Linux, а также, MacOS, и Windows. При этом мобильный клиент также доступен для устройств, работающих на Android и IOS, и его можно загрузить из соответствующих магазинов приложений.

Установив клиента, откройте его и примите дефолтное расположение каталога Seafile, нажмите Next.

В следующем окне нужно будет ввести адрес вашего сервера, имя пользователя и пароль, после чего нажать Login.

Далее, на стартовой странице правой кнопкой мыши нажмите на My Library и затем кликните Sync this library, либо Синхронизировать эту библиотеку. Примите дефолтное расположение библиотеки на вашем компьютере или устройстве.

Синхронизация библиотек

Добавьте какой-нибудь файл, например, документ или фотографию, в каталог My Library. Спустя какое-то время файл загрузится на сервер, и вы сможете увидеть его в папке My Libraries, подключившись в браузере к вашему серверу.

My Libraries

Теперь правой кнопкой мыши нажмите на этот файл в браузере и кликните Share или Общий доступ. Таким образом, вы сможете сгенерировать ссылку на его скачивание.

Общий доступ - Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04

Заключение

В данном руководстве мы создали и настроили приватный файловый сервер Seafile. Теперь, вы можете загружать на него свои файлы, добавлять на нём пользователей и группы пользователей и предоставлять им доступ на файлы не используя при этом никаких сторонних файлообменных сервисов.

Статья полезна?

6 Да  Нет
Похожие статьи
  • Как установить VictoriaMetrics на Ubuntu 24.04
  • Как настроить Angie в качестве обратного прокси-сервера
  • Запуск тестового сервера Django
  • Как установить Anaconda на Ubuntu 24.04
  • Как настроить HTTPS для панели Wazuh
  • Как установить Wazuh на Ubuntu 24.04
5 комментариев о “Настройка Seafile для синхронизации и общего доступа к файлам в Ubuntu 20.04”
  • Серёга says:

    Пипец проделано работы. Спасибо

    2021-12-22 at 12:34
  • Александр says:

    Огромное Вам спасибо за подробное руководство.
    Но у меня есть вопрос: Как добавить диски к дисковому пространству Seafile?
    Я устанавливал систему на ssd диск и теперь, при подключении HDD к настроенной системе не вижу его.

    2022-05-08 at 19:13
    • uxteam says:

      Зависит от того, что именно вы хотите сделать.

      – Если Вы хотите использовать HDD вместо SSD, то нужно будет перенести seafile директорию с данными и изменить настройки в файле seafile.ini

      – Если вы хотите расширить объем текущего хранилища, то, скорее всего, Вам потребуется LVM для создания логического раздела.

      2022-05-11 at 12:44
  • Dmitry says:

    У кого на команду “sudo ufw status” пишет “Status: inactive” используйте команду
    sudo ufw enable

    2022-08-09 at 08:31
  • Dmitry says:

    У кого не запускается seahub.sh (версия 9.0.6), запускаем с параметром start-fastcg и смотрим на чем останавливается.
    Если ошибка “Do you install mysqlclient?”
    Используйте команды:
    $ sudo apt install default-libmysqlclient-dev
    $ pip3 install mysqlclient

    2022-08-17 at 21:38

Комментарии запрещены

Популярные статьи
  • Как подключиться по RDP из-под MacOS
  • Как установить PostgreSQL и pgAdmin4 в Ubuntu 20.04
  • Управление портами в Linux (Ubuntu/Debian/CentOS)
  • Настройка VPN с использованием WireGuard
  • Как извлекать и разархивировать файлы .tar.gz в Linux-системах
Разделы Справочника
  • Настройка VPS Сервера
  • Начало работы
  • Особенности виртуального сервера
  • Партнерам
  • Развертывание ПО на VPS сервере
  • Сетевые настройки сервера
GAME OVERNIGHT
CLOUDRUSSIA
STRATONET
SPACE DC
ARCTIC DC
VPS/VDS серверы:
Тестовый период
Дешевый VPS
VPS Старт
VPS Мощные
VPS Windows
VPS Быстрые NVMe
VPS с 1C
Форекс VPS
Игровые серверы
VPS для бизнеса
Пинг до дата-центров
Услуги:
Маркетплейс
Панель ispmanager
Антивирусная защита
Аренда лицензий
Облачное хранилище
VPS серверы с Plesk Obsidian
Колокация
Looking Glass
DNS
Клиентам:
О компании
Дата-Центры
Новости
Аттестация по ФСТЭК
Бонусная программа
Публичная Оферта
Соглашение об уровне услуг
Политика обработки персональных данных
Сувениры от RuVDS
Партнерам:
Для прессы
Партнерская программа
Отзывы
API
Помощь:
Справочник
FAQ
Созданных
серверов
231504
Huawey
Supermicro
Cisco
Intel
Microsoft
ISP
Kaspersky
RDCA Logo

«Креатив года» Премия ЦОДы.рф 2021, 2025

RDCA Logo

«Хостер года» Премия ЦОДы.рф 2023

RDCA Logo

«Человек года» Премия ЦОДы.рф 2024

RuVDS
support@RUVDS.com
8 (800) 775-97-42
+7 (495) 135-10-99
МЫ В СОЦИАЛЬНЫХ СЕТЯХ
Copyright © 2025 RuVDS. Все права защищены.
ООО "МТ ФИНАНС" | ОГРН 1157746680332
Оставить отзыв

Условия получения бонуса за оставленный отзыв:

  1. Напишите про нас на любом из специализированных сайтах для отзывов.
  2. Пришлите нам текст отзыва и ссылку на ваш отзыв.
  3. После проверки, мы опубликуем ваш отзыв у нас на сайте и также начислим бонус на ваш баланс.
Strong Testimonials form submission spinner.

Обязательное поле

Укажите электронную почту вашего аккаунта RUVDS
Укажите ссылку на ваш отзыв
rating fields
Поставьте оценку серверам RUVDS
Оставить отзыв
Strong Testimonials form submission spinner.

Обязательное поле

Укажите электронную почту вашего аккаунта RUVDS
Укажите ссылку на ваш отзыв
rating fields
Поставьте оценку серверам RUVDS