Автор Тема: Проблема с доступом системных приложений к home после обновления до 10.2  (Прочитано 702 раз)

Оффлайн tonipixel

  • Начинающий
  • *
  • Сообщений: 11
Добрый день.
После установки 10.2 KWorkstation nginx перестал видеть проекты в директории home.
Для примера лежит phpmyadmin в директории ~/Projects/phpmyadmin. При доступе к директории в логах пишется:
2023/12/21 06:46:29 [crit] 28182#28182: *1 stat() "/home/user/Projects/phpmyadmin/" failed (13: Permission denied), client: 127.0.0.1, server: phpmyadmin.local, request: "GET / HTTP/1.1", host: "phpmyadmin.local", referrer: "https://www.yandex.ru/clck/jsredir?from=yandex.ru;suggest;browser&text="Даем группе nginx права доступа, та же самая ошибка выходит. Перемещаем в /var/www куда-нибудь и все работает.

Похожая ошибка происходит с PyCharm при создании локального окружения требуется доступ root к папке user. Сам PyCharm в /opt расположен.
Installing packages into 'Python 3.9 (app)' requires administrator privileges.При том при вводе пароля выскакивает ошибка с невозможностью установки в хомяка.

Что изменилось в правах в 10.2?
Может это после замены KDM на LightDM (я на него грешу, думаю в KDE он как белая ворона)?
Короче куда копать, а то работа встала (все проекты из хомяка в /var/www переместить не могу)?

Заранее спасибо.

Оффлайн zerg

  • ненужная строка
  • alt linux team
  • ***
  • Сообщений: 2 495
  • ненужная строка
    • Найдётся всё
Что изменилось в правах в 10.2?
Может это после замены KDM на LightDM (я на него грешу, думаю в KDE он как белая ворона)?
А изменения про права там вас не смущают? ;-)
Убрать этот мусор можно переключателем: Не показывать подписи других пользователей.

Оффлайн tonipixel

  • Начинающий
  • *
  • Сообщений: 11
Что изменилось в правах в 10.2?
Может это после замены KDM на LightDM (я на него грешу, думаю в KDE он как белая ворона)?
А изменения про права там вас не смущают? ;-)
Не увидел, я же поэтому и спросил вроде. Можете тыкнуть носом?

Оффлайн Nicom

  • Завсегдатай
  • *
  • Сообщений: 630
mount | grep '/home 'Нет ли случайно опции noexec?

Оффлайн tonipixel

  • Начинающий
  • *
  • Сообщений: 11
mount | grep '/home 'Нет ли случайно опции noexec?

Так выводит:
[user@afox ~]$ mount | grep '/home '
/dev/sdb1 on /home type ext4 (rw,nosuid,relatime)

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 041
  • ITS
ps aux | grep -i nginx
ls -la  /home/user/Projects | grep -i phpmyadmin
ls -la  /home/user/ | grep -i Projects


сравни права с которыми запущен процесс с правами к каталогам
и chmod, chown тебе в помощь, это первое что нужно проверить, как мне думается

Оффлайн tonipixel

  • Начинающий
  • *
  • Сообщений: 11
ps aux | grep -i nginx
ls -la  /home/user/Projects | grep -i phpmyadmin
ls -la  /home/user/ | grep -i Projects


сравни права с которыми запущен процесс с правами к каталогам
и chmod, chown тебе в помощь, это первое что нужно проверить, как мне думается

Спасибо это первое, что я проверил.
Назначал _nginx:_nginx к директории Projects с помощью chown.  Толку ноль.
При том любопытно, что если мы даем права user:user к /var/www/html nginx все равно нормально отрабатывает с директорией в корне.

Дело точно не в правах, похоже, что с новой версией все системные приложения перестали иметь доступ к /home.
С MySQL та же беда, раньше БД лежала на диске с /home, сейчас мускуль тоже не видит хомяка (ProtectHome=false не работает больше).
Очень странное поведение.

Оффлайн Nicom

  • Завсегдатай
  • *
  • Сообщений: 630
Назначал _nginx:_nginx к директории Projects с помощью chown.  Толку ноль.
А в каталог /home/user разрешили доступ для group и others на всё, если уж на то пошло?
Добавьте пользователя user в группу _nginx и сделайте
chown user:_nginx /home/user && chown -R user:_nginx /home/user/Projects && chmod g+rx /home/user && chmod -RX g+rwx /home/user/Projects

По поводу MySQL попадалось такое https://lleo.livejournal.com/344333.html

Нет ли какого-нибудь SeLinux, или AppArmor?

Оффлайн tonipixel

  • Начинающий
  • *
  • Сообщений: 11
Назначал _nginx:_nginx к директории Projects с помощью chown.  Толку ноль.
А в каталог /home/user разрешили доступ для group и others на всё, если уж на то пошло?
Добавьте пользователя user в группу _nginx и сделайте
chown user:_nginx /home/user && chown -R user:_nginx /home/user/Projects && chmod g+rx /home/user && chmod -RX g+rwx /home/user/Projects

По поводу MySQL попадалось такое https://lleo.livejournal.com/344333.html

Нет ли какого-нибудь SeLinux, или AppArmor?

Попробовал, не помогло.
Я же говорю, даже если мы в произвольной директории в корне, допустим /projects размещаем проект, nginx видит его, какие бы права не были установлены, хоть root ставь.
То же самое с mysql, то же самое с PyCharm и python соответственно.
Как только это перемещается в /home, приложения перестают видеть путь, как будто его нет.

Ни SeLinux, ни AppArmor не установлены.

Оффлайн stranger573

  • Мастер
  • ***
  • Сообщений: 1 451
    • Email
После установки 10.2 KWorkstation nginx перестал видеть проекты в директории home.
Как только это перемещается в /home, приложения перестают видеть путь, как будто его нет.
А GID, UID этого "user" соответствуют тем что были до "После установки 10.2 KWork"? А то имя-то может и такое же...

Оффлайн tonipixel

  • Начинающий
  • *
  • Сообщений: 11
После установки 10.2 KWorkstation nginx перестал видеть проекты в директории home.
Как только это перемещается в /home, приложения перестают видеть путь, как будто его нет.
А GID, UID этого "user" соответствуют тем что были до "После установки 10.2 KWork"? А то имя-то может и такое же...

На рабочей машинке гляну в понедельник, но мне кажется, что вроде те же. На тестовой, где сейчас 10.2:

[user@afox ~]$ id
uid=500(user) gid=500(user) группы=500(user),10(wheel),14(uucp),19(proc),22(cdrom),36(vmusers),71(floppy),80(cdwriter),81(audio),83(radio),100(users),437(_nginx),440(_php_fpm),443(usershares),445(camera),463(vboxusers),465(fuse),477(video),487(vboxsf),488(vboxadd),498(xgrp),499(scanner)

Оффлайн artenaki

  • Давно тут
  • **
  • Сообщений: 184
Сейчас наверное по дефолту 1000, в этом и проблема.

Оффлайн tonipixel

  • Начинающий
  • *
  • Сообщений: 11
Сейчас наверное по дефолту 1000, в этом и проблема.

Проверил, сменил на 1000, не помогло.

uid=1000(user) gid=1000(user) группы=1000(user)

Оффлайн stranger573

  • Мастер
  • ***
  • Сообщений: 1 451
    • Email
Проверил, сменил на 1000, не помогло.
Тут дело совсем не в тысяче, а в том какой UID был у пользователя создавшего файл и какой у пользователя от имени которого попытка доступа. Сталкивался с этим на внешних дисках с EXT4, когда пользователи с одинаковым именем и разным UID не имели доступа к файлам друг друга. К примеру, если создавали файл от имени пользователя asdf (с UID=500), потом этого пользователя в системе удалили, и снова создали пользователя asdf (у которого UID будет 501, если принудительно не поменяете), то у второго asdf доступа к файлам первого asdf не будет. И тут ещё не надо забывать, что в альтах первый созданный пользователь по дефолту является администратором (входит в группу wheel), а последующие (по дефолту) не являются.

Оффлайн tonipixel

  • Начинающий
  • *
  • Сообщений: 11
Проверил, сменил на 1000, не помогло.
Тут дело совсем не в тысяче, а в том какой UID был у пользователя создавшего файл и какой у пользователя от имени которого попытка доступа. Сталкивался с этим на внешних дисках с EXT4, когда пользователи с одинаковым именем и разным UID не имели доступа к файлам друг друга. К примеру, если создавали файл от имени пользователя asdf (с UID=500), потом этого пользователя в системе удалили, и снова создали пользователя asdf (у которого UID будет 501, если принудительно не поменяете), то у второго asdf доступа к файлам первого asdf не будет. И тут ещё не надо забывать, что в альтах первый созданный пользователь по дефолту является администратором (входит в группу wheel), а последующие (по дефолту) не являются.

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