LINUX.ORG.RU
ФорумAdmin

v2ray - ошибка при создании лога

 ,


0

1

Здравствуйте, всем,

Установлен v2ray на Debian 12. Все работает, за исключением того, что не могу заставить его писать лог в отдельный файл, чтобы не в syslog все валил. Но при указании в конфиге путей для логов типа

  "log": {
    "access": "/var/log/v2ray/access.log",
    "error": "/var/log/v2ray/error.log",
    "loglevel": "warning"
  },
...........

пишет ошибку:

v2ray[1993]: main: failed to create server > v2ray.com/core/app/log: failed to initialize access logger > open /var/log/v2ray/access.log: read-only file system

перепробовал практически все, что смог придумать. Назначал права 0777 на эти файлы, предварительно созданные руками, ничего не помогает. Проверял диск, тоже нет никаких проблем, Все логи пишутся, кроме логов v2ray. Гугл тоже не помог. Версия v2ray 4.34.0 установлена из apt. В чем может быть дело?

-Спасибо.

Ответ на: комментарий от kostik87

Я по наивности полагал, что раз это сервис, то он запускается от рута.Я и создавал этот каталог от рута. Но теперь мне пришла в голову светлая мысль запустить htop, и стало видно, что v2ray запускается от имени пользователя 61647. Откуда взялся этот пользователь, не представляю.Его нет в списке пользователей, он даже за пределами UID_MAX. Добавил пользователя и группу. Теперь в htop показывается пользователь, которого я добавил. Но результат тот же. open /var/log/v2ray/access.log: read-only file system Сервис запускается несколько раз, жрет очень хорошо cpu и умирает. Интересно, что systemctl status v2ray при этом пишет running. Главное, непонятно, куда этим китайцам писать. У них там все по-китайски.

DeadlineX
() автор топика
Ответ на: комментарий от vel

Нет ли там в dmesg каких-нибудь интересных сообщений от audit или apparmor?

Да вроде нет. Там буквально несколько строчек. V2Ray не упоминается, а в остальном я не силен, что он там пишет. Типа говорит, успешно стартовал этот самый apparmor, я так понимаю.

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

DeadlineX
() автор топика
Ответ на: комментарий от DeadlineX

посмотри что в файле сервиса. м.б. там этот uid прописан.

удалить все файлы из /var/log/v2ray и сделать «chmod 1777 /var/log/v2ray»

Когда все непонятно, то можно запустить бинарик через strace и посмотреть на чем он падает.

vel ★★★★★
()
Последнее исправление: vel (всего исправлений: 1)
Ответ на: комментарий от vel

По моему, собака порылась где-то здесь:

[Unit]
Description=V2Ray Service
Documentation=https://www.v2ray.com/ https://www.v2fly.org/
After=network-online.target nss-lookup.target

[Service]
Type=simple
CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE
AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE
DynamicUser=true <=========================
NoNewPrivileges=true <=====================
Environment=V2RAY_LOCATION_ASSET=/etc/v2ray
ExecStart=/usr/bin/v2ray -config /etc/v2ray/config.json
Restart=on-failure

[Install]
WantedBy=multi-user.target

Что это такое, вообще не в курсе.

DeadlineX
() автор топика
Ответ на: комментарий от DeadlineX

Ты что-то странное говоришь.

61647 - это, скорее всего, идентификатор (pid) процесса.

Имя пользователя от имени которого запускается сервис видно и в htop, если ты умеешь читать его вывод, и в systemd unit`е.

kostik87 ★★★★★
()
Ответ на: комментарий от DeadlineX

Вот это другое дело.

Наверно можно заглянуть в /etc/v2ray/config.json и посмотреть там про uid?

Я бы тупо запустил из консольки от рута.

V2RAY_LOCATION_ASSET=/etc/v2ray /usr/bin/v2ray -config /etc/v2ray/config.json

vel ★★★★★
()
Ответ на: комментарий от vel

удалить все файлы из /var/log/v2ray и сделать «chmod 1777 /var/log/v2ray»

Это уже делал.

Когда все непонятно, то можно запустить бинарик через strace и посмотреть на чем он падает.

Про это никогда не слышал, но попробую. Хотя, возможно файл сервиса менять перспективнее.

DeadlineX
() автор топика
Ответ на: комментарий от vel

Наверно можно заглянуть в /etc/v2ray/config.json и посмотреть там про uid?

Там таким даже не пахнет. Там только сам VPN. Маршрутизация и т.п. Если б там было про юзера, я б вопросов не задавал.

DeadlineX
() автор топика
Ответ на: комментарий от vel

Попробовал от рута. Запускается ОК, логи пишет. Наверное в сервисе надо либо все это вытереть, либо поставить явно рута в пользователи. Я не в курсе, что ими двигало, когда они такие параметры там задавали. VPN, работающий от root представляет какую-то угрозу?

DeadlineX
() автор топика
Ответ на: комментарий от vel

Дело было вот в этих магических строчках:

CapabilityBoundingSet=CAP_NET_ADMIN CAP_NET_BIND_SERVICE
AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE

Но я остальное назад возвращать не стал. Пусть работает от root.

Всем спасибо, кто принял участие.

DeadlineX
() автор топика