Гид по технологиям

Установка Monica Personal CRM на Rocky Linux 9

• 10 min read • DevOps • Обновлено 16 Nov 2025
Установка Monica CRM на Rocky Linux 9
Установка Monica CRM на Rocky Linux 9

TL;DR

Кратко: установите на сервер Rocky Linux 9 все зависимости (Node.js 18, Yarn, PHP 8.2, Composer, MariaDB, Nginx), клонируйте репозиторий Monica, настройте .env, соберите фронтенд, выполните миграции и создайте SSL через Certbot. В статье представлен пошаговый SOP, чеклисты, отладка и инструкции по резервному копированию и откату.

Important: перед началом убедитесь, что у вас есть FQDN, SMTP-аккаунт и минимум 1.5 ГБ оперативной памяти.


Monica — персональная CRM для управления связями с друзьями и семьёй. В отличие от корпоративных CRM, Monica предназначена для индивидуального использования, хранит информацию о людях, событиях и заметках. Она Open Source и бесплатна.

В этом руководстве подробно описана установка Monica на сервер с Rocky Linux 9: от подготовки окружения до получения работающего HTTPS-сайта и планового обновления.

Основные понятия (одно предложение)

  • Monica: Open Source персональная CRM, написана на Laravel (PHP).
  • LEMP: Linux + Nginx + MariaDB + PHP-FPM — стек, использующийся для Monica.
  • FQDN: Fully Qualified Domain Name — полное доменное имя сайта.

Предварительные требования

  • Сервер с Rocky Linux 9, минимум 1.5 ГБ RAM (Yarn может требовать больше). Если RAM < 1.5 ГБ, возможны ошибки при установке фронтенда.
  • Нерутовый пользователь с sudo-привилегиями.
  • FQDN, например monica.example.com, указывающий на сервер.
  • SMTP-учётная запись (Amazon SES, Mailgun или другой SMTP).
  • Система обновлена:
$ sudo dnf update
  • Установлены базовые утилиты:
$ sudo dnf install wget curl nano unzip yum-utils policycoreutils-python-utils -y

Содержание руководства

  1. Настройка фаервола
  2. Установка Git
  3. Установка Node.js (18.x)
  4. Установка Yarn
  5. Установка Nginx
  6. Установка PHP 8.2 и расширений
  7. Установка Composer
  8. Установка MariaDB 10.11
  9. Конфигурация базы данных для Monica
  10. Загрузка Monica из GitHub
  11. Установка приложения
  12. Установка SSL (Certbot)
  13. Настройка SELinux
  14. Конфигурация PHP-FPM
  15. Конфигурация Nginx
  16. Доступ к Monica
  17. Настройка cron
  18. Обновление и резервное копирование

Далее — развернутые инструкции и дополнительные разделы: чеклисты, отладка, аварийное восстановление и критерии приёмки.


1. Конфигурация фаервола

Rocky Linux использует firewalld. Проверьте его статус:

$ sudo firewall-cmd --state
running

Список сервисов в текущей зоне (по умолчанию — public):

$ sudo firewall-cmd --permanent --list-services

Если видно, например, “cockpit dhcpv6-client ssh”, добавьте HTTP и HTTPS:

$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https

Проверьте и перезагрузите правила:

$ sudo firewall-cmd --permanent --list-services
$ sudo firewall-cmd --reload

2. Установка Git

Git обычно предустановлен. Если нет:

$ sudo dnf install git -y

Проверьте версию:

$ git --version

Настройте имя и email:

$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"

3. Установка Node.js (версия 18.x)

Monica требует Node.js. На момент руководства Node LTS 20.x может конфликтовать с Yarn, поэтому используем 18.x.

Импорт ключа Nodesource:

$ curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /usr/share/keyrings/nodesource.gpg

Установка RPM-репозитория:

$ NODE_MAJOR=18
$ sudo yum install https://rpm.nodesource.com/pub_$NODE_MAJOR.x/nodistro/repo/nodesource-release-nodistro-1.noarch.rpm -y

Установка Node.js:

$ sudo yum install nodejs -y --setopt=nodesource-nodejs.module_hotfixes=1

Проверка:

$ node --version
v18.x.x

Обновите npm:

$ sudo npm install -g npm@latest
$ npm --version

4. Установка Yarn

Yarn требуется для сборки фронтенда.

$ sudo npm install --global yarn
$ yarn --version

Если вы планируете управлять несколькими проектами с разными версиями Yarn, используйте локальные версии через .yarnrc, но для Monica глобальная установка подходит.


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

Чтобы получить актуальную версию Nginx, добавьте официальный репозиторий:

Создайте файл /etc/yum.repos.d/nginx.repo и вставьте:

[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

Сохраните и установите:

$ sudo dnf install nginx -y
$ nginx -v
$ sudo systemctl enable nginx --now
$ sudo systemctl status nginx

Откройте IP-адрес сервера в браузере — должна показать стартовую страницу Nginx.

Страница по умолчанию Nginx

ALT: Стандартная страница Nginx, подтверждающая работу веб-сервера на сервере


6. Установка PHP и расширений (PHP 8.2)

Rocky Linux 9 идёт с PHP 8.1 по умолчанию. Для обновления используйте репозиторий Remi.

Установите EPEL и Remi:

$ sudo dnf install epel-release -y
$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm

Посмотрите доступные стримы PHP и включите remi-8.2:

$ dnf module list php -y
$ sudo dnf module reset php -y
$ sudo dnf module enable php:remi-8.2

Установите PHP и расширения, необходимые для Monica:

$ sudo dnf install php php-bcmath php-cli php-curl php-common \
    php-fpm php-gd php-gmp php-intl php-mbstring \
    php-mysql php-opcache php-redis php-xml php-zip -y

Проверьте версию PHP:

$ php --version

Включите и запустите php-fpm:

$ sudo systemctl enable php-fpm --now
$ sudo systemctl status php-fpm

7. Установка Composer

Composer — менеджер зависимостей PHP (Laravel использует его).

Скачайте и проверьте инсталлятор:

$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
$ php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a450292b6cfd1d64d92e6563bbde02') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Установите Composer и переместите бинарник:

$ php composer-setup.php
$ php -r "unlink('composer-setup.php');"
$ sudo mv composer.phar /usr/local/bin/composer
$ composer --version

8. Установка MariaDB 10.11

По умолчанию Rocky Linux включает MariaDB 10.5. Для актуальной версии подключите официальный репозиторий MariaDB и установите MariaDB 10.11.

Создайте /etc/yum.repos.d/mariadb.repo:

[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.11/rhel9-amd64
module_hotfixes=1
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Установите MariaDB:

$ sudo dnf install MariaDB-server -y
$ mysql --version
$ sudo systemctl enable --now mariadb
$ sudo systemctl status mariadb

Запустите скрипт безопасной конфигурации:

$ sudo mariadb-secure-installation

Ответьте на подсказки: если root пароль не установлен — нажмите Enter, затем в большинстве случаев соглашайтесь (y) с удалением анонимных пользователей, удалением тестовой базы и перезагрузкой привилегий. На Rocky Linux рекомендуется не переключать root на unix_socket, если вы не уверены.

Подключение к shell:

$ sudo mysql

9. Конфигурация MariaDB для Monica

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

MariaDB> CREATE DATABASE monica CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
MariaDB> CREATE USER 'monicauser'@'localhost' IDENTIFIED BY 'yourpassword';
MariaDB> GRANT ALL PRIVILEGES ON monica.* TO 'monicauser'@'localhost';
MariaDB> GRANT ALL ON *.* TO 'admin'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
MariaDB> FLUSH PRIVILEGES;
MariaDB> exit

Замените имена базы, пользователя и пароли на свои. Пароль должен быть сильным.


10. Загрузка Monica

Создайте корень веб-приложения и установите права:

$ sudo mkdir /var/www/html/monica -p
$ sudo chown -R $USER:$USER /var/www/html/monica
$ cd /var/www/html/monica

Клонируйте репозиторий Monica в текущую директорию (заметьте точку в конце):

$ git clone https://github.com/monicahq/monica.git .
$ git fetch

Выберите тег версии. На момент написания в примере использовалась v4.0.0. Проверьте релизы Monica и подставьте нужную версию:

$ git checkout tags/v4.0.0

(Если хотите ветку master, используйте git checkout main или git switch.)


11. Установка Monica

Перейдите в корень проекта, скопируйте .env

$ cd /var/www/html/monica
$ cp .env.example .env

Отредактируйте .env и измените значения: установите APPENV=production, APP_URL=https://вашдомен, DB*, MAIL* по вашим данным. Пример фрагмента .env:

APP_ENV=production
APP_URL=https://monica.example.com
DB_DATABASE=monicadb
DB_USERNAME=monicauser
DB_PASSWORD=YourPassword23!
MAIL_MAILER=smtp
MAIL_HOST=email-smtp.us-west-2.amazonaws.com
MAIL_PORT=587
MAIL_USERNAME=SESID
MAIL_PASSWORD=SESKey
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS=[email protected]
MAIL_FROM_NAME="Monica CRM"

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

Установите зависимости PHP (Composer) и фронтенд (Yarn):

$ composer install --no-interaction --no-dev
$ yarn install
$ yarn run production

Сгенерируйте ключ приложения Laravel:

$ php artisan key:generate

Запустите initial setup: миграции, сиды и создание пользователя. Пример (замените email и пароль):

$ php artisan setup:production [email protected] --password=yourpassword -v

Вы должны увидеть сообщение об успешной установке с URL и логином.


12. Установка SSL (Certbot через Snap)

Установите snapd (EPEL уже должен быть установлен):

$ sudo dnf install -y snapd
$ sudo systemctl enable snapd --now
$ sudo snap install core && sudo snap refresh core
$ sudo ln -s /var/lib/snapd/snap /snap
$ echo 'export PATH=$PATH:/var/lib/snapd/snap/bin' | sudo tee -a /etc/profile.d/snapd.sh
$ sudo snap install --classic certbot
$ sudo ln -s /snap/bin/certbot /usr/bin/certbot
$ certbot --version

Сгенерируйте сертификат для Nginx:

$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d monica.example.com

После успешного запроса сертификат будет в /etc/letsencrypt/live/monica.example.com.

Создайте Diffie-Hellman параметры:

$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096

Проверьте планировщик на предмет автоматического продления:

$ sudo systemctl list-timers
$ sudo certbot renew --dry-run

13. Настройка SELinux

Разрешите Nginx (httpd) записывать файлы Monica:

$ sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/monica(/.*)?"
$ sudo restorecon -Rv /var/www/html/monica/

Разрешите соединения к БД и внешним хостам:

$ sudo setsebool -P httpd_can_network_connect_db 1
$ sudo setsebool -P httpd_can_network_connect 1

Если PHP-FPM не может соединиться с MariaDB (частая проблема с MariaDB 10.11), создайте модуль SELinux:

Создайте файл my-phpfpm.te в домашней директории и вставьте:

module my-phpfpm 1.0;

require {
        type unconfined_service_t;
        type httpd_t;
        type httpd_sys_content_t;
        class dir write;
        class unix_stream_socket connectto;
}

#============= httpd_t ==============

#!!!! This avc is allowed in the current policy
allow httpd_t httpd_sys_content_t:dir write;

#!!!! This avc is allowed in the current policy
allow httpd_t unconfined_service_t:unix_stream_socket connectto;

Затем выполните:

$ sudo checkmodule -M -m -o my-phpfpm.mod my-phpfpm.te
$ sudo semodule_package -o my-phpfpm.pp -m my-phpfpm.mod
$ sudo semodule -i my-phpfpm.pp

14. Конфигурация PHP-FPM

Отредактируйте /etc/php.ini, установите лимиты загрузки файлов и память:

$ sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 10M/' /etc/php.ini
$ sudo sed -i 's/post_max_size = 8M/post_max_size = 10M/' /etc/php.ini
$ sudo sed -i 's/memory_limit = 128M/memory_limit = 256M/' /etc/php.ini

Откройте /etc/php-fpm.d/www.conf и смените пользователя и группу на nginx:

user = nginx
group = nginx

Установите владельца сокета и права:

listen.owner = nginx
listen.group = nginx
listen.mode = 0660

Перезапустите php-fpm и смените группу для сессий:

$ sudo systemctl restart php-fpm
$ sudo chgrp -R nginx /var/lib/php/session

15. Конфигурация Nginx

Дайте собственность nginx на директорию Monica и права на storage:

$ sudo chown -R nginx:nginx /var/www/html/monica
$ sudo chmod -R 775 /var/www/html/monica/storage

Откройте /etc/nginx/nginx.conf и добавьте выше include:

server_names_hash_bucket_size  64;

Создайте файл конфигурации /etc/nginx/conf.d/monica.conf и вставьте пример ниже, заменив monica.example.com на ваш домен:

server {

    listen 443 ssl http2;
    listen [::]:443 ssl http2;

    server_name monica.example.com;
    root /var/www/html/monica/public;

    index index.php;
    client_max_body_size 10M;

    access_log  /var/log/nginx/monica.access.log;
    error_log   /var/log/nginx/monica.error.log;

    ssl_certificate      /etc/letsencrypt/live/monica.example.com/fullchain.pem;
    ssl_certificate_key  /etc/letsencrypt/live/monica.example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/monica.example.com/chain.pem;
    
    ssl_session_timeout  5m;
    ssl_session_cache shared:MozSSL:10m;
    ssl_session_tickets off;
    
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_prefer_server_ciphers on;
    ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
    ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
    ssl_stapling on;
    ssl_stapling_verify on;
    ssl_dhparam /etc/ssl/certs/dhparam.pem;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        fastcgi_index index.php;
        fastcgi_split_path_info ^(.+\.php)(.*)$;
        fastcgi_keep_conn on;
        include fastcgi_params;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
}
# enforce HTTPS
server {
    listen 80;
    listen [::]:80;
    server_name  monica.example.com;
    return 301   https://$host$request_uri;
}

Проверьте конфигурацию и перезапустите nginx:

$ sudo nginx -t
$ sudo systemctl restart nginx

16. Доступ к Monica CRM

Откройте https://monica.example.com

Вы увидите страницу логина и далее приветственный экран.

Страница входа Monica CRM

ALT: Экран входа в Monica CRM с полями логина и пароля

Экран приветствия Monica CRM

ALT: Добро пожаловать в Monica CRM — главный экран после входа

Войдите с данными, которые вы указали при setup:production.


17. Настройка Cron

Monica использует планировщик Laravel для фоновых задач. Настройте cron для выполнения каждую минуту под пользователем nginx:

$ sudo editor=NANO crontab -u nginx -e

Добавьте строку:

* * * * * php /var/www/html/monica/artisan schedule:run >> /dev/null 2>&1

Сохраните изменения. Cron будет запускать расписание задач.


18. Резервное копирование и обновление Monica

Монica умеет экспортировать данные в SQL и JSON через интерфейс: Settings → Export data.

Файлы сохраняются в /var/www/html/monica/storage/app/public/exports

Пример вывода:

$ ls /var/www/html/monica/storage/app/public/exports -al
total 84
drwxr-xr-x 2 nginx nginx  4096 Nov 22 09:47 .
drwxrwxr-x 4 nginx nginx  4096 Nov 22 09:47 ..
-rw-r--r-- 1 nginx nginx 53712 Nov 22 09:47 cvlK5RAl7VVLdYLplnSZ8SFGHHwDZy9cjRhtoOWB.json
-rw-r--r-- 1 nginx nginx 17050 Nov 22 09:47 dgZf5T0SnXeAuZ67HfaFLu2JosyUsByJcp2C8nlv.sql

Процедура обновления (пример):

$ cd /var/www/html/monica
$ sudo chown -R $USER:$USER /var/www/html/monica
$ git fetch
$ git checkout tags/v5.0.0-beta.3
$ composer install --no-interaction --no-dev
$ yarn install
$ yarn run production
$ php artisan monica:update --force
$ sudo chown -R nginx:nginx /var/www/html/monica

Если восстанавливаете SQL на другой инстанс, убедитесь, что он пуст и выполните миграции и импорт:

$ php artisan migrate
$ sudo mysqlimport -u monicauser -p monica /var/www/html/monica/storage/app/public/exports/dgZf5T0SnXeAuZ67HfaFLu2JosyUsByJcp2C8nlv.sql

Типичные проблемы и решения

  • Ошибка при сборке Yarn: увеличьте RAM или используйте swap, потому что процесс сборки фронтенда может требовать больше памяти.
  • PHP-FPM не может подключиться к MariaDB: проверьте SELinux, см. раздел модуля my-phpfpm.
  • 502 Bad Gateway от Nginx: проверьте, что php-fpm слушает сокет /run/php-fpm/www.sock и права на него верны.
  • Проблемы с SSL: убедитесь, что Certbot создал сертификат в /etc/letsencrypt/live/your_domain и nginx использует правильные пути.

Критерии приёмки

Перед сдачей инстанса проверьте:

  • Доступность по HTTPS и корректный сертификат.
  • Успешный вход под созданным администратором.
  • Отправка тестового письма через настроенный SMTP.
  • Возможность загрузки файлов до 10 МБ.
  • Cron выполняет artisan schedule:run каждую минуту.
  • Наличие экспорта данных в /storage/app/public/exports.

Роль-ориентированные чеклисты

Системный администратор:

  • Обновлён OS и установлены базовые утилиты
  • Установлен и настроен firewalld
  • Установлен и запущен Nginx
  • Установлен Certbot и настроено автоматическое продление
  • SELinux настроен для доступа приложения

Разработчик/DevOps:

  • Установлены Node.js 18 и Yarn
  • Установлен Composer и зависимости PHP
  • Собраны frontend-ассеты (yarn run production)
  • Проверены миграции и сиды

Менеджер/Пользователь Monica:

  • Создан администратор и проверен вход
  • Настроены SMTP уведомления
  • Выполнен экспорт данных как резервная копия

Playbook: короткий SOP для установки (суммированный)

  1. Обновить систему и установить утилиты.
  2. Настроить firewalld (http, https).
  3. Установить Git, Node.js 18, npm, Yarn.
  4. Установить Nginx из официального репозитория.
  5. Установить PHP 8.2 и необходимые расширения через Remi.
  6. Установить Composer.
  7. Установить MariaDB 10.11, выполнить mariadb-secure-installation.
  8. Создать БД и пользователя Monica.
  9. Клонировать проект и настроить .env.
  10. composer install && yarn install && yarn run production.
  11. php artisan key:generate && php artisan setup:production.
  12. Установить Certbot, получить сертификат.
  13. Настроить SELinux и права на файлы.
  14. Настроить cron и проверить логи.

Инцидентный план и откат

Сценарий: обновление прервало работу приложения.

Действия отката:

  1. Восстановить права владельца: sudo chown -R nginx:nginx /var/www/html/monica
  2. Откатить Git до стабильного тега: git checkout tags/v4.0.0
  3. composer install && yarn run production
  4. Возвратить базу из резервной копии SQL (если изменялись схемы):
$ sudo mysql -u monicauser -p monica < /path/to/backup.sql
  1. Перезапустить php-fpm и nginx.
  2. Проверить логи /var/log/nginx/ и storage/logs для ошибок.

Тесты и критерии приёмки (мини-набор)

  • Unit/Smoke: страница логина возвращает 200.
  • Интеграция: отправка почты через настроенный SMTP (тестовые письма).
  • E2E: пользователь создаёт контакт, прилагает файл 5 МБ, данные отображаются.
  • Производительность: первые 20 пользовательских запросов обрабатываются без 5xx ошибок на стандартном сервере.

Риски и их смягчение

  • Нехватка памяти при сборке фронтенда -> добавить swap или временно увеличить RAM.
  • SELinux блокирует соединения -> писать проверенный модуль SELinux как в разделе 13.
  • Неправильные права файлов -> использовать chown/chmod и тестировать от nginx.
  • Ошибки при обновлении базы -> всегда делать экспорт SQL перед обновлением.

Краткая методология обновления

  1. Сделать экспорт SQL и полную копию storage.
  2. Переключиться на тестовую ветку и выполнить обновление на staging.
  3. Выполнить миграции и функциональные тесты.
  4. Если всё ок — применить на production в окне низкой нагрузки.
  5. Следить за логами в течение 24 часов.

Глоссарий (1 строка)

  • FQDN: полное доменное имя сервера; LEMP: Linux+Nginx+MariaDB+PHP-FPM; SELinux: механизм контроля доступа в Linux.

Альтернативные подходы

  • Docker: запуск Monica в контейнерах (Docker Compose) упрощает изоляцию и миграции. Подходит для тех, кто предпочитает контейнеризацию.
  • Использование MySQL вместо MariaDB: MariaDB совместима, но если в вашей инфраструктуре уже есть MySQL — можно использовать его.
  • Управляемые базы и SMTP: размещение БД в RDS/Aurora и использование внешнего SMTP уменьшает нагрузку на сервер.

Когда этот процесс не подходит

  • Если сервер с очень ограниченными ресурсами (RAM < 1 ГБ) — лучше использовать Docker на более мощной машине или облачный инстанс.
  • Для массового корпоративного использования Monica не предназначена — есть специализированные CRM с расширенным контролем доступа.

Советы по безопасности

  • Используйте сильные и уникальные пароли для БД и админов.
  • Отключите доступ к MariaDB извне (только localhost), если не требуется.
  • Регулярно обновляйте систему и зависимости Composer/Yarn.
  • Ограничьте доступ к /var/www/html/monica через SELinux и файловые права.

Резюме

Вы прошли весь путь: от настройки серверного окружения до запуска Monica с HTTPS и автоматическим планировщиком задач. Тестируйте SMTP, резервируйте базу данных перед обновлением и поддерживайте SELinux и права на файлы в корректном состоянии.

Если остались вопросы — проверьте логи nginx и Laravel в storage/logs, а также подтвердите настройки SELinux и права на сокет php-fpm.

Спасибо за прочтение — удачной установки Monica!

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро