Не могу создать базу firebird
RazrFalcon 10 сентября, 2012 - 19:32
Когда-то на убунте создавал - все было норм.
Теперь пришло время создать и на генту, а получаю вот такое:
% 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
Подниму тему.
Пробовал и
И в gsec пытался зайти.
Везде одна и та же ошибка с правами.
Сервис запущен. К старым базам из kate+sql-plugin конектится нормально.
А вот новую базу никак создать не могу.
/
Дык тебе ж белым по чёрному прямо говорят, что:
Надо разделять сущности типа "системный пользователь" и "пользователь базы данных".
За особенность реализации в конкретной наличной версии FireBird не скажу, ибо этого зверя не видел, но по виденному в других реализациях:
Ты подключаешься анонимно (не указываешь имени пользователя базы данных). UID системного пользователя, с правами которого ты запускаешь sql-клиента роли не играет. А предоставление Анонимусу правов на создание баз данных... комментировать разумность с точки зрения безопасности, полагаю, не надо.
Так что тебе надо сначала раскурить механизм учётных записей базы данных, создать себе зверька, а лучше двух, дать им права и закрыть использованную норку.
:wq
--
Live free or die
Эммм... ну в общем да, но не
Эммм... ну в общем да, но не сильно помогает проблему.
В общем база создалась, какой-то магией. Спустя 2-а месяца...
Пока работает нормально...
/
Собственно, в конфигах (diff которых утрачен) магия и пряталась.
Файлы баз небось наследовались с Ubuntu?
http://www.gentoo.ru/content/chto-eto-znachit-solved-resheno ?
ЗЫ:
/etc/
--- странный выбор места размещения базы.:wq
--
Live free or die
Угу, старые файлы с
Угу, старые файлы с убунты.
Конфиги не трогал, вроде.
Только в /etc разрешило создать, потом уже перенес куда захотел.
Та типа не решено, так как после ребута снова не пашет fb.
Пересобираю fb - пашет до ребута. Видимо при установке какие-то права папкам выставляются, а после ребута удаляются...
Стартую так:
/
Интересно...
Та тут последовательность единственно возможных ходов:
1.
ls -l /var/run/firebird/
(после загрузки, когда демон не взлетает)2. То же, но после пересборки, при запущенном демоне.
3. В сообщениях portage точно ничего интересного?
4. Ну и в любом случае как минимум пошарится по трекеру.
:wq
--
Live free or die
Anarchist
Сам столкнулся...
/run и /var/run монтируются как tmpfs и /var/run/firebird надо создавать каждый раз после перезапуска под юзером:группой firebird (или как у вас там).
Пришлось писать скрипт в /etc/local.d для решения этой проблемы с firebird 2.5.1.
Успехов...
хм, вроде бы у меня все так
хм, вроде бы у меня все так же
скриптиком не поделитесь?
.
Недостойно гентушника!
Нормально следует проследовать в багзиллу и отрапортоваться (чтобы проблема решалась как и положено на уровне стандартного стартового скрипта).
P.S.
: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. Можь у него где-то в настройках есть запрет на создание/использование баз в каталоге пользователя?