powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / gbak: файлы с пробелами на никсах
12 сообщений из 62, страница 3 из 3
gbak: файлы с пробелами на никсах
    #40064948
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДокНе то слово, Дим. Особенно, когда начинаешь ковыряться в деталях :)
ужасно то, что когда тыкаешь, и не получается, а потом понимаешь почему - выходит что "вот я дебил, всё же просто и понятно".
Был бы ты под виндами, я б тебе посоветовал заюзать procmon, и посмотреть, в чем проблема с правами. А поскольку я линуксы терпеть не могу - и посоветовать тут тоже ничего не могу.
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40064955
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdv
А поскольку я линуксы терпеть не могу - и посоветовать тут тоже ничего не могу.

я подозреваю, что проблем под виндами у меня пока нет, потому что я там под админской учеткой кодю. Вот начну приложение тестировать под гостевой учеткой, наверняка проблемы полезут :)
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40064975
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvБыл бы ты под виндами, я б тебе посоветовал заюзать procmon

Ох, Дим, ну при чём тут винда, если человек путь к бэкапу пишет как
"127.0.0.1:/home/leyba/.config/fb_util_wrapper/backup/ytre.FBK".
Его не в procmon, а букварь по gbak тыкать нужно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40064986
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
человек путь к бэкапу пишет как
"127.0.0.1:/home/leyba/.config/fb_util_wrapper/backup/ytre.FBK".

Дима, ты в своем репертуаре. Мог бы просто пальцем показать.

Хорошо, папки создаются программно. Смотрим права:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
leyba@debian-amd64:~$ ls -lH -R /home/leyba/.config/fb_util_wrapper
/home/leyba/.config/fb_util_wrapper:
итого 16
drwxr-xr-x 2 leyba leyba 4096 апр 23 01:38 backup
drwxr-xr-x 2 leyba leyba 4096 апр 23 01:38 log
drwxr-xr-x 2 leyba leyba 4096 апр 23 01:38 restore
-rw-r--r-- 1 leyba leyba 3746 апр 23 01:39 settings.xml

/home/leyba/.config/fb_util_wrapper/backup:
итого 80
-rw-r--r-- 1 leyba leyba 80384 апр 23 01:38 qqqqqq.FBK

/home/leyba/.config/fb_util_wrapper/log:
итого 4
-rw-r--r-- 1 leyba leyba 746 апр 23 01:38 wwwwwwwr.TXT

/home/leyba/.config/fb_util_wrapper/restore:
итого 0



Проверяем принадлежность к группе и меняем владельца
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
leyba@debian-amd64:~$ grep firebird /etc/group
firebird:x:84:leyba
leyba@debian-amd64:~$ sudo chown firebird:firebird -R /home/leyba/.config/fb_util_wrapper
leyba@debian-amd64:~$ ls -lH -R /home/leyba/.config/fb_util_wrapper
/home/leyba/.config/fb_util_wrapper:
итого 16
drwxr-xr-x 2 firebird firebird 4096 апр 23 01:38 backup
drwxr-xr-x 2 firebird firebird 4096 апр 23 01:38 log
drwxr-xr-x 2 firebird firebird 4096 апр 23 01:38 restore
-rw-r--r-- 1 firebird firebird 3746 апр 23 01:39 settings.xml

/home/leyba/.config/fb_util_wrapper/backup:
итого 80
-rw-r--r-- 1 firebird firebird 80384 апр 23 01:38 qqqqqq.FBK

/home/leyba/.config/fb_util_wrapper/log:
итого 4
-rw-r--r-- 1 firebird firebird 746 апр 23 01:38 wwwwwwwr.TXT

/home/leyba/.config/fb_util_wrapper/restore:
итого 0


Пытаемся ресторить
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
leyba@debian-amd64:~$ /opt/firebird/bin/gbak -rep -z /home/leyba/.config/fb_util_wrapper/backup/qqqqqq.FBK localhost:/home/leyba/.config/fb_util_wrapper/restore/eeee.FDB -v -user sysdba -pass cooladmin
gbak:gbak version LI-V3.0.6.33328 Firebird 3.0
gbak:opened file /home/leyba/.config/fb_util_wrapper/backup/qqqqqq.FBK
gbak:transportable backup -- data in XDR format
gbak:		backup file is compressed
gbak:backup version is 10
gbak: ERROR:I/O error during "open O_CREAT" operation for file "/home/leyba/.config/fb_util_wrapper/restore/eeee.FDB"
gbak: ERROR:    Error while trying to create file
gbak: ERROR:    Permission denied
gbak: ERROR:failed to create database localhost:/home/leyba/.config/fb_util_wrapper/restore/eeee.FDB
gbak:Exiting before completion due to errors



Все, у меня идеи кончились ;(
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40065008
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
 IP-адрес-или-имя[/port]:база-или-псевдоним
 inet://P-адрес-или-имя[:port]/база-или-псевдоним
 inet4://...
 inet6://...
 xnet://... (винда)
вот это вот всё "переадресовывает работу" сервису.
В отличии от винды, где по умолчанию используется "широкоправный" спецпользователь, в хрюниксах сервис работает с правами "хорошо ограниченного" пользователя firebird.

Поэтому:
Код: plaintext
 gbak -b ... адрес:база-или-псевдоним файл-бэкапа
Сервис (со своими правами) читает данные для бэкапа, (медленно и печально) передаёт их приложению (gbak), которое (с правами текущего пользователя) записывает их в файл.

Далее:
Код: plaintext
 gbak -c ... файл-бэкапа база
Приложение (gbak) читает файл бэкапа, (быстро) передаёт данные серверу, загруженному в процесс (embedded) и этот сервер (тоже с правами текущего пользователя) записывает данные в файл базы.

P.S.
Чтобы осознать - настраивайте работу сервиса Firebird под виндой от "серьёзно ограниченного" спецпользователя "Network Service" ("NT Authority\NetworkService"). Сразу станет понятнее, что такое "права доступа" и какие именно права применяются в каждом конкретном случае.
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40065012
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
P.S.
Чтобы осознать - настраивайте работу сервиса Firebird под виндой от "серьёзно ограниченного" спецпользователя "Network Service" ("NT Authority\NetworkService"). Сразу станет понятнее, что такое "права доступа" и какие именно права применяются в каждом конкретном случае.

т.е. мне еще надо себе жизнь и на винде осложнить? :)

Скорее, я хочу понять, почему на никсах рестор не взлетает через сервер. Только на локальном коннекте.
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40065016
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Док
т.е. мне еще надо себе жизнь и на винде осложнить? :)
Упорядочить, подстраховаться от некоторых видов ошибок и получить некоторые (новые) возможности.Скорее, я хочу понять, почему на никсах рестор не взлетает через сервер."Сервер" это процесс, работающий в специальном окружении. С правами вполне конкретного пользователя. Дальше работает система разграничения прав.
С моей кочки зрения это вполне очевидно и даже банально.Только на локальном коннекте.встроенным (embedded) сервером. Это единственный вариант сервера, который гарантированно получает права текущего пользователя.
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40065028
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
встроенным (embedded) сервером. Это единственный вариант сервера, который гарантированно получает права текущего пользователя.

хм, надо же, как неочевидно. Ладно, это на тройке все в одном флаконе, а как же предыдущие версии?

зы. похоже, придется еще один линукс в виртуалке развернуть и поэкспериментировать
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40065032
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Док,

в unix-like всегда так было. Это в винде правила поменялись.
в linux вообще нет ничего кроме embedded и inet
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40065063
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Док
хм, надо же, как неочевидно.
Тухумхау :)
Ладно, это на тройке все в одном флаконе, а как же предыдущие версии?На линуксе - точно также: там встроенный сервер всегда доступен. Для винды встроенный сервер "искаропки" появился только в тройке.
Отличается только авторизация: в линуксе на 2.5 требуется предъявить логин и пароль даже для embedded. В тройке - стало "как ввинде" (только имя).
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40065119
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хочешь как в винде, поставь на папки 777 и на файлы 666.

поставь для теста 777 на папку с рестором и погляди от чьего имени создастся файл
...
Рейтинг: 0 / 0
gbak: файлы с пробелами на никсах
    #40065331
Фотография Док
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov
На линуксе - точно также: там встроенный сервер всегда доступен. Для винды встроенный сервер "искаропки" появился только в тройке.
Отличается только авторизация: в линуксе на 2.5 требуется предъявить логин и пароль даже для embedded. В тройке - стало "как ввинде" (только имя).

Да, Василий, ты абсолютно прав. И в предыдущих постах (например, тут 22312904 ) тоже (cпециально на бубунте развернул FB 2.5). Бекап создается хоть через embedded, хоть через полноценный сервер, а вот рестор - только embedded. И это не зависит от прав на папку

Ivan_Pisarevsky
поставь для теста 777 на папку с рестором и погляди от чьего имени создастся файл

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
созданные программно
leyba@ubunta64:~$ ls -lH /home/leyba/.config/fb_util_wrapper/
итого 16
drwxrwxr-x 2 leyba leyba 4096 апр 23 17:40 backup
drwxrwxr-x 2 leyba leyba 4096 апр 23 17:40 log
drwxrwxr-x 2 leyba leyba 4096 апр 23 17:41 restore
-rw-rw-r-- 1 leyba leyba 3293 апр 23 17:37 settings.xml

меняем права на папки
leyba@ubunta64:~$ sudo chmod -R 777 /home/leyba/.config/fb_util_wrapper/
leyba@ubunta64:~$ ls -lH /home/leyba/.config/fb_util_wrapper/
итого 16
drwxrwxrwx 2 leyba leyba 4096 апр 23 17:40 backup
drwxrwxrwx 2 leyba leyba 4096 апр 23 17:40 log
drwxrwxrwx 2 leyba leyba 4096 апр 23 17:41 restore
-rwxrwxrwx 1 leyba leyba 3293 апр 23 17:37 settings.xml

создаем программно файлы и снова проверяем
leyba@ubunta64:~$ ls -lH -R /home/leyba/.config/fb_util_wrapper/
/home/leyba/.config/fb_util_wrapper/:
итого 16
drwxrwxrwx 2 leyba leyba 4096 апр 23 17:43 backup
drwxrwxrwx 2 leyba leyba 4096 апр 23 17:43 log
drwxrwxrwx 2 leyba leyba 4096 апр 23 17:43 restore
-rwxrwxrwx 1 leyba leyba 3293 апр 23 17:37 settings.xml

/home/leyba/.config/fb_util_wrapper/backup:
итого 76
-rw-rw-r-- 1 leyba leyba 74752 апр 23 17:43 backup_db.FBK

/home/leyba/.config/fb_util_wrapper/log:
итого 72
-rw-rw-r-- 1 leyba leyba 35468 апр 23 17:43 backup_db.TXT
-rw-rw-r-- 1 leyba leyba 33438 апр 23 17:43 restore_db.TXT

/home/leyba/.config/fb_util_wrapper/restore:
итого 1092
-rw-rw---- 1 leyba leyba 1118208 апр 23 17:43 restore_db.FDB



Интересно получается: все бекапы и логи доступны для чтения, а вот рестор - только для владельцев и группы.

А вот к отресторенному файлику просто так через полноценный сервер не подцепишься
Код: sql
1.
2.
3.
4.
5.
6.
7.
/opt/firebird/bin/gbak -b -g -z 127.0.0.1:/home/leyba/.config/fb_util_wrapper/restore/restore_db.FDB /home/leyba/.config/fb_util_wrapper/backup/backup_db2.FBK -v -user sysdba -pass ****

2021.04.23 18:16:01:903 gbak:gbak version LI-V2.5.9.27139 Firebird 2.5
2021.04.23 18:16:01:910 gbak: ERROR:I/O error during "open" operation for file "/home/leyba/.config/fb_util_wrapper/restore/restore_db.FDB"
2021.04.23 18:16:01:911 gbak: ERROR:    Error while trying to open file
2021.04.23 18:16:01:911 gbak: ERROR:    Permission denied
2021.04.23 18:16:01:911 gbak:Exiting before completion due to errors



Меняем права на отресторенный файл
Код: sql
1.
2.
3.
4.
leyba@ubunta64:~$ sudo chmod -R 666 /home/leyba/.config/fb_util_wrapper/restore/restore_db.FDB
[sudo] пароль для leyba: 
leyba@ubunta64:~$ ls -lH /home/leyba/.config/fb_util_wrapper/restore/restore_db.FDB
-rw-rw-rw- 1 leyba leyba 1118208 апр 23 18:18 /home/leyba/.config/fb_util_wrapper/restore/restore_db.FDB



Запускаем бекап и снова получаем ошибку Permission denied. Не получается, как на виндах, Иван.
...
Рейтинг: 0 / 0
12 сообщений из 62, страница 3 из 3
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / gbak: файлы с пробелами на никсах
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]