Не могу создать базу firebird

Когда-то на убунте создавал - все было норм.
Теперь пришло время создать и на генту, а получаю вот такое:

% sudo fbsql
Password: 
Use CONNECT or CREATE DATABASE to specify a database
SQL> CREATE DATABASE '/home/razr/testbase.fdb' page_size 8192
CON> user 'SYSDBA' password 'masterkey';
Statement failed, SQLSTATE = 08001
I/O error during "open O_CREAT" operation for file "/home/razr/testbase.fdb"
-Error while trying to create file
-Permission denied
SQL> 

Пробовал и

'localhost:/home/razr/testbase.fdb'

Понимаю что прав нету, но где и почему - не ясно. И нагуглить ничего конкретного не удалось.

Путь к базе лучше такой

Путь к базе лучше такой использовать:

/var/db/firebird/testbase.fdb

PS: firebird работает под своим uid/gid

Working on Gentoo Linux for Asus P535 and Qtopia :-)

Такого пути не было. Создал.

Такого пути не было. Создал. Тоже не дало записать.

Посмотри какой домашний

Посмотри какой домашний каталог у пользователя firebird.
или просто посмотри где лежит файл system.fdb

Working on Gentoo Linux for Asus P535 and Qtopia :-)

Подниму тему. % fbsql

Подниму тему.

% fbsql                       
Use CONNECT or CREATE DATABASE to specify a database
SQL> CREATE DATABASE '/home/razr/test.fdb' page_size 8192
CON> user 'SYSDBA' password 'masterkey';
Statement failed, SQLSTATE = 28000
Your user name and password are not defined. Ask your database administrator to set up a Firebird login.
% sudo fbsql                  
Password: 
Use CONNECT or CREATE DATABASE to specify a database
SQL> CREATE DATABASE '/etc/firebird/test.fdb' page_size 8192
CON> user 'SYSDBA' password 'masterkey';
Statement failed, SQLSTATE = 28000
Your user name and password are not defined. Ask your database administrator to set up a Firebird login.

Пробовал и

% fbsql -u sysdba -p masterkey

И в gsec пытался зайти.

Везде одна и та же ошибка с правами.

dev-db/firebird
     Installed versions:  2.5.1.26351.0^u(03:24:20 AM 11/07/2012)(superserver -client -debug -doc -examples -xinetd)

Сервис запущен. К старым базам из kate+sql-plugin конектится нормально.
А вот новую базу никак создать не могу.

/

Дык тебе ж белым по чёрному прямо говорят, что:

RazrFalcon написал(а):
Your user name and password are not defined. Ask your database administrator to set up a Firebird login.

Надо разделять сущности типа "системный пользователь" и "пользователь базы данных".
За особенность реализации в конкретной наличной версии FireBird не скажу, ибо этого зверя не видел, но по виденному в других реализациях:
Ты подключаешься анонимно (не указываешь имени пользователя базы данных). UID системного пользователя, с правами которого ты запускаешь sql-клиента роли не играет. А предоставление Анонимусу правов на создание баз данных... комментировать разумность с точки зрения безопасности, полагаю, не надо.

Так что тебе надо сначала раскурить механизм учётных записей базы данных, создать себе зверька, а лучше двух, дать им права и закрыть использованную норку.

:wq
--
Live free or die

Эммм... ну в общем да, но не

Эммм... ну в общем да, но не сильно помогает проблему.

В общем база создалась, какой-то магией. Спустя 2-а месяца...

sudo emerge -C firebird
sudo emerge firebird
etc-update -5
% sudo fbsql
SQL>  CREATE DATABASE '/etc/firebird/test.fdb' page_size 8192
CON> user 'SYSDBA' password 'masterkey';
SQL> exit;
sudo mv /etc/firebird/test.fdb ~/

Пока работает нормально...

/

RazrFalcon написал(а):
В общем база создалась, какой-то магией. Спустя 2-а месяца...

...
etc-update -5
...

Собственно, в конфигах (diff которых утрачен) магия и пряталась.
Файлы баз небось наследовались с Ubuntu?

http://www.gentoo.ru/content/chto-eto-znachit-solved-resheno ?

ЗЫ: /etc/ --- странный выбор места размещения базы.

:wq
--
Live free or die

Угу, старые файлы с

Угу, старые файлы с убунты.
Конфиги не трогал, вроде.

Только в /etc разрешило создать, потом уже перенес куда захотел.

Та типа не решено, так как после ребута снова не пашет fb.

% sudo /etc/init.d/firebird status
Password: 
 * status: stopped
% sudo /etc/init.d/firebird start 
 * Starting Firebird server ...
Could not open /var/run/firebird/fb_guard for write
 * start-stop-daemon: failed to start `/usr/sbin/fbguard'                                                        [ !! ]
 * ERROR: firebird failed to start

Пересобираю fb - пашет до ребута. Видимо при установке какие-то права папкам выставляются, а после ребута удаляются...

Стартую так:

% sudo rc-update | grep firebird
             firebird |      default

/

RazrFalcon написал(а):
Только в /etc разрешило создать, потом уже перенес куда захотел.

Интересно...

RazrFalcon написал(а):
Та типа не решено, так как после ребута снова не пашет fb.

% sudo /etc/init.d/firebird status
Password: 
 * status: stopped
% sudo /etc/init.d/firebird start 
 * Starting Firebird server ...
Could not open /var/run/firebird/fb_guard for write
 * start-stop-daemon: failed to start `/usr/sbin/fbguard'                                                        [ !! ]
 * ERROR: firebird failed to start

Пересобираю fb - пашет до ребута. Видимо при установке какие-то права папкам выставляются, а после ребута удаляются...

Та тут последовательность единственно возможных ходов:
1. ls -l /var/run/firebird/ (после загрузки, когда демон не взлетает)
2. То же, но после пересборки, при запущенном демоне.
3. В сообщениях portage точно ничего интересного?
4. Ну и в любом случае как минимум пошарится по трекеру.

:wq
--
Live free or die

Anarchist

Anarchist написал(а):
RazrFalcon написал(а):
Только в /etc разрешило создать, потом уже перенес куда захотел.

Интересно...

RazrFalcon написал(а):
Та типа не решено, так как после ребута снова не пашет fb.

% sudo /etc/init.d/firebird status
Password: 
 * status: stopped
% sudo /etc/init.d/firebird start 
 * Starting Firebird server ...
Could not open /var/run/firebird/fb_guard for write
 * start-stop-daemon: failed to start `/usr/sbin/fbguard'                                                        [ !! ]
 * ERROR: firebird failed to start

Пересобираю fb - пашет до ребута. Видимо при установке какие-то права папкам выставляются, а после ребута удаляются...

Та тут последовательность единственно возможных ходов:
1. ls -l /var/run/firebird/ (после загрузки, когда демон не взлетает)
2. То же, но после пересборки, при запущенном демоне.
3. В сообщениях portage точно ничего интересного?
4. Ну и в любом случае как минимум пошарится по трекеру.

Сам столкнулся...
/run и /var/run монтируются как tmpfs и /var/run/firebird надо создавать каждый раз после перезапуска под юзером:группой firebird (или как у вас там).
Пришлось писать скрипт в /etc/local.d для решения этой проблемы с firebird 2.5.1.
Успехов...

хм, вроде бы у меня все так

хм, вроде бы у меня все так же
скриптиком не поделитесь?

.

RazrFalcon написал(а):
скриптиком не поделитесь?

Недостойно гентушника!
Нормально следует проследовать в багзиллу и отрапортоваться (чтобы проблема решалась как и положено на уровне стандартного стартового скрипта).

P.S.

$ mount | grep run
tmpfs on /run type tmpfs (rw,nosuid,nodev,relatime,mode=755)
$ file /var/run
/var/run: symbolic link to `/run'

:wq
--
Live free or die

Эх.., знаю-знаю, но до вчера

Эх.., знаю-знаю, но до вчера я и не знал что не только у меня такая бага, и тем более в чем ее причина, так что вот:
https://bugs.gentoo.org/show_bug.cgi?id=442974

Возможно виртуальный

Возможно виртуальный системный (?) пользователь firebird (uid/gid == 450/450) не имеет права записи в вашу домашнюю папку /home/razr/
Или после инсталляции какие-то настройки (/etc /var) сбились.

Да, 450. А как дать доступ?

Да, 450. А как дать доступ?

НЕБЕЗОПАСНО !!!

НЕБЕЗОПАСНО !!!
Сам им не пользуюсь, но может, добавить пользователя firebird в группу {razr/users}?
(добавить в /etc/group в строку ^razr(^users) ",firebird") - основы прав доступа unix.
ОПАСНО!!!

PS. Можь у него где-то в настройках есть запрет на создание/использование баз в каталоге пользователя?

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".