powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Too many open files
87 сообщений из 87, показаны все 4 страниц
Too many open files
    #37991176
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
продолжение темы http://www.sql.ru/forum/actualthread.aspx?tid=974251

не могу заставить debian (2.6.32-5-amd64) увеличить лимит открываемых файлов для пользователя firebird.

в /etc/security/limits.conf прописано:
firebird soft nofile 16384
firebird hard nofile 16384
строчку "session required pam_limits.so" в /etc/pam.d/su расскоментировал
в файле /etc/pam.d/common-session тоже все прописано

все равно при превышении кол-ва открытых файлов 1024 выдает ошибку "Too many open files"
Что нужно сделать?
...
Рейтинг: 0 / 0
Too many open files
    #37991501
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgeny M,

Вроде по-новой пойдет, но хотелось бы резюмировать предыдущую ветку.

Значит, если сделать
su
<ввести пароль рута>
su firebird
<тут уже никакого пароля не надо>
ulimit -n

что выводится? Если 1024 - значит из limits.conf конфигурация не считывается, либо позже чем-то перекрывается. Вариант - обидная ошибка в лишнем пробеле (точке, еще чем-то), случайно оставленном в limits.conf.
...
Рейтинг: 0 / 0
Too many open files
    #37994533
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miwaonline,

выдает 1024. прикрепил limits.conf, может у меня глаз уже замылен
...
Рейтинг: 0 / 0
Too many open files
    #37994537
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgeny Mприкрепил limits.confОбычно в рекомендуется завершать файл одной или более пустой строкой (переводом строки). В Вашем файле такой строки не вижу. Мож как раз тот случай?
...
Рейтинг: 0 / 0
Too many open files
    #37994539
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkle,

тоже заметил, сделал перенос строки. пока ничего не изменилось, попробую перегрузить сервер
...
Рейтинг: 0 / 0
Too many open files
    #37994880
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"/etc/security/limits.conf works only for services that use pam and the pam module pam_limits" - работает только с службами которые используют pam - а может firebird вообще pam не использует и этим все объясняется. как то можно это проверить?
...
Рейтинг: 0 / 0
Too many open files
    #38013119
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
решения до сих пор не нашел.
даже когда делаю:

su firebird
ulimit -n 10000

ошибка не исчезает, хотя ulimit -n показывает 10000, т.е. firebird не подхватывает увеличение лимита.

Что делать? Неужели ни у кого нет работающей крупной БД Firebird на Debian и с такой проблемой никто не сталкивался? и Debian и Firebird - стандартные установки.
...
Рейтинг: 0 / 0
Too many open files
    #38013874
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуйте сделать следующие:

От пользователя "root"

1. Отредактировать файл "/etc/sysctl.conf"
Код: powershell
1.
fs.file-max = 65536


2. Загрузить параметры ядра с файла /etc/sysctl.conf
Код: powershell
1.
sysctl -p


3. Проверить, что настройки применились
Код: powershell
1.
2.
cat /proc/sys/fs/file-max
65536


4. Отредактировать файл "/etc/security/limits.conf"
Код: powershell
1.
2.
firebird     soft    nofile  1024 
firebird     hard    nofile  65536


(Т.е. пользователь firebird может увеличивать или уменьшать значение soft лимит, но не превышать hard лимит)

5. Добавить строчку в файл "/etc/pam.d/login"
Код: powershell
1.
session    required     pam_limits.so


6. Добавить следующие линии в файл ".bash_profile" (Этот файл должен быть в домашней директории пользователя "firebird", например /home/firebird/.bash_profile)
Код: powershell
1.
2.
3.
if [ $USER = "firebird" ]; then
      ulimit -n 65536
fi


7. Перезагрузить сервер.
8. Выполнить вход от пользователя "firebird" и стартовать DB заново.
...
Рейтинг: 0 / 0
Too many open files
    #38014577
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a6. Добавить следующие линии в файл ".bash_profile" (Этот файл должен быть в домашней директории пользователя "firebird", например /home/firebird/.bash_profile)
Код: powershell
1.
2.
3.
if [ $USER = "firebird" ]; then
      ulimit -n 65536
fi


7. Перезагрузить сервер.
8. Выполнить вход от пользователя "firebird" и стартовать DB заново.
дело в том что firebird стартует автоматом при загрузке сервера и в консоли не логинится и домашней папки у него нет
надо видимо все таки другой скрипт выбрать? какой?
...
Рейтинг: 0 / 0
Too many open files
    #38014593
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgeny M,

Да хоть в rc.local прописать sudo -u firebird ulimit -n 65536
Если заработает, тогда можно думать дальше.

Кстати, еще вот подумалось. Возможно уже где-то говорилось, не помню. FB classic или super? Возможно, если используется CS, настройка «слетает» при остановке всех процессов ФБ? Или, например, новые процессы не видят изменения ulimit, только существующие в момент отработки комманды? Что, если в одной консоли сделать su firebird, а в другой изменить ulimit? В первой изменения видны? А если после этого с третьей консоли зайти?

P.S. Идеи, возможно, бредовые; это я пытаюсь нащупать корень проблемы. Возможно какая-то из идей у кого-то правильную ассоциацию вызовет :)
...
Рейтинг: 0 / 0
Too many open files
    #38014643
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miwaonline Что, если в одной консоли сделать su firebird, а в другой изменить ulimit? В первой изменения видны? А если после этого с третьей консоли зайти?
попробовал. ни первая ни третья изменения не видят
...
Рейтинг: 0 / 0
Too many open files
    #38014861
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgeny M,

Заинтересовало.
Для начала, у меня ldd /usr/sbin/fb_inet_server говорит, что FB не использует PAM, так что ulimit надо выставлять вручную - limits.conf тут в пролете. С другой стороны, поскольку FB стартует без шелла, получается облом с использованием стартовых скриптов. Ручные установки ulimit (через su) работают только в пределах текущей сессии и не касаются других сессий и собственно ФБ, что логично, поскольку ulimit - встроенная команда оболочки.

Думаю, есть смысл с этим всем вовращаться в ветку по ФБ. Возможно, dimitr будет не слишком занят на конференции и ответит, как же конфигурируются эти лимиты в линуксовом ФБ.

Да, кстати, а что если глобально поднять все лимиты?
...
Рейтинг: 0 / 0
Too many open files
    #38014923
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miwaonlineВозможно, dimitr будет не слишком занят на конференции и ответит, как же
конфигурируются эти лимиты в линуксовом ФБ.
На это и я могу ответить: никак. Это системная настройка и Firebird туда не суётся.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Too many open files
    #38014938
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miwaonlineДа, кстати, а что если глобально поднять все лимиты?

а как? в limits.conf прописывал "* * nofile 65365" - не помогло
и нашел в инете такое:
Птица берёт текущее значение лимита открытых файлов (getrlimit).
Если макс. возможное больше, то устанавливает лимит в новое значение
(setrlimit).
Как же увеличить текущий лимит? ulimit получается здесь не причем?!
...
Рейтинг: 0 / 0
Too many open files
    #38015239
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgeny MmiwaonlineДа, кстати, а что если глобально поднять все лимиты?

а как? в limits.conf прописывал "* * nofile 65365" - не помогло
и нашел в инете такое:
Птица берёт текущее значение лимита открытых файлов (getrlimit).
Если макс. возможное больше, то устанавливает лимит в новое значение
(setrlimit).
Как же увеличить текущий лимит? ulimit получается здесь не причем?!
Ну а я что два поста перед этим писал о логинах и РАМах?

Я бы еще попробовал включить комманду ulimit -n в скрипт /etc/init.d/firebird2.5-FBARCH. А если не поможет (потому что нефиг обычному пользователю себе лимиты поднимать), то тогда sudo ulimit -n с соответствующей правкой /etc/sudoers
...
Рейтинг: 0 / 0
Too many open files
    #38015388
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Скачал firebird's source code, ради интереса посмотреть процедуру установки в них.

автордело в том что firebird стартует автоматом при загрузке сервера и в консоли не логинится и домашней папки у него нет

Все правильно он и должен выполнять автостарт. При выполнеии скрипта автостарта не нужно выполнять login shell. Домашняя директория у пользователья "firebird" существует, вот кусок кода установки:
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
TryAddUser() {

	AdditionalParameter=$1
	testStr=`grep firebird /etc/passwd`
	
    if [ -z "$testStr" ]
      then
        useradd $AdditionalParameter -d /opt/firebird -s /bin/false \
            -c "Firebird Database Owner" -g firebird firebird 
    fi

}



Домашняя директория у него "/opt/firebird", а вот login shell "/bin/fasle", т.е. у этого пользователья нет shell. Соответственно "/etc/pam.d/login" не выполняется и не вызывет библиотеку "pam_limits.so", от которой напрямую зависит файл "/etc/security/limits.conf"

Можете проверить:
Код: powershell
1.
grep -i 'firebird' /etc/passwd


Читаем:
Код: powershell
1.
2.
3.
4.
man limits.conf

limits.conf - configuration file for the pam_limits module 
 


Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
man 8 pam_limits

FILES
       /etc/security/limits.conf
           Default configuration file

EXAMPLES
       For the services you need resources limits (login for example) put a the following line in /etc/pam.d/login as the last line for that service (usually after the pam_unix session line):

           #%PAM-1.0
           #
           # Resource limits imposed on login sessions via pam_limits
           #
           session  required  pam_limits.so


авторЧто, если в одной консоли сделать su firebird, а в другой изменить ulimit? В первой изменения видны? А если после этого с третьей консоли зайти?
Ни одна из-них работать не будет, проблему я описал выше. Более того "ulimit -n", работает в пределах текущей сессии.
авторldd /usr/sbin/fb_inet_server говорит, что FB не использует PAM
С чего ему использовать PAM (Pluggable Authentication Modules), если PAM необходим для аутентификации и срабатывет на Login action. Например "su" использует PAM.
Код: powershell
1.
2.
3.
4.
5.
6.
7.
8.
ldd /bin/su 
        linux-vdso.so.1 =>  (0x00007fffc61ff000)
        libpam.so.0 => /lib64/libpam.so.0 (0x00007f36bc95c000)
        libpam_misc.so.0 => /lib64/libpam_misc.so.0 (0x00007f36bc758000)
        libc.so.6 => /lib64/libc.so.6 (0x00007f36bc3f9000)
        libaudit.so.0 => /lib64/libaudit.so.0 (0x00007f36bc1df000)
        libdl.so.2 => /lib64/libdl.so.2 (0x00007f36bbfdb000)
        /lib64/ld-linux-x86-64.so.2 (0x00007f36bcd9f000)


автор(потому что нефиг обычному пользователю себе лимиты поднимать)
Глупости говорите. Для этого и используется "limits.conf" файл, чтоб делегировать это непривилегированному пользователю. Ипользование limits.conf необходимо для таких RDBMS как: Sybase ASE, Oracle, DB2 итд.

Вам нужно сделать:
1. Изначально выполнить login от пользователя "root".
2. Сменить shell для пользователя "firebird"
Код: powershell
1.
usermod -s /bin/bash firebird


3. Выполнить шаги которые я описал выше: 1, 2, 3, 4, 5, 6 (7 и 8 выполнять не надо)
4. Выполнить логин от пользоветеля "firebird"
Код: powershell
1.
su - firebird


"-" между su и firebird обязательно. Для того чтобы ипользовать firebird's user environment.
5. Проверить текущий shell:
Код: powershell
1.
echo $0


6. Пороверить текущие настройки:
Код: powershell
1.
ulimit -a | grep 'open files'


Сейчас должны использоваться настройки с файла "limits.conf"

7. Стартовать "firebird" вручную с текущего shell.
Открыть firebird's startup script и проверить секцию start. Там есть строка для старта "firebird".
Что-то вроде:
Код: powershell
1.
2.
3.
4.
5.
6.
7.
start)
	echo -n "Starting $FULLNAME "
	daemon --user=$FBRunUser "export FIREBIRD LD_LIBRARY_PATH; $MANAGER -pidfile $pidfile -start -forever"
	RETVAL=$?
	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$name
	echo
	;;


Из приведенного выше кода вам нужно выполнить:
Код: powershell
1.
/opt/firebird/bin/fbmgr.bin -pidfile /var/run/firebird/defualt.pid -start -forever"


Это только пример у вас наверняка другая строчка для старта firebird, так что ориентируйтесь на неё.
...
Рейтинг: 0 / 0
Too many open files
    #38015495
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jek_a,

Это ж надо столько умных слов написать чтобы выдать столько плохих советов. Восхищаюсь

Первое и самое главное - у ТС ФБ ставился из репозитория debian, так что большинство рассуждений мимо кассы, так как в debian даже близко нет тех скриптов и параметров, котрые вы так любезно проанализировали.

А меньшинство рассуждений сводится к тому, что в скрипт, который запускает ФБ, нужно вручную добавить комманду изменения ulimit, что я написал в предыдущем посте без обильного цитирования отсутствующих конфигов.
...
Рейтинг: 0 / 0
Too many open files
    #38016090
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторЭто ж надо столько умных слов написать чтобы выдать столько плохих советов. Восхищаюсь
Сколько, и что конкретно вы имели ввиду из моих двух постов непонятно? Из ваших слов следует что IBM , Oracle или Firebird дает "плохие советы" используя "/etc/security/limits.conf" файл, для настройки лимитов, который напрямую зависит от PAM.
IBMTo set the maximum number of open file descriptors for processes running under the user, add the following to the file, /etc/security/limits.conf
For more details on how to configure the PAM_limits security module type:
man limits.conf
Не умные они, надо использовать "rc.local" или startup scripts служб для этого, как вы написали.

Для использования файла "/etc/security/limits.conf", пользователю необходим shell, а не /bin/false.
Примером плохого совета, служит проверка динамических значений, которые работают на время жизни текущей сессии из двух других сессий. Или не использвание "/etc/security/limits.conf", только потому что "/usr/sbin/fb_inet_server" не использует PAM, так как он не имеет никаго отношения к аутентификации, соотвественно и к PAM. Я вам это объяснил, и вы видать это восприняли как личную обиду. Не вижу причин веселья по этому поводу. Хотя это ваше мнение и высказли свою точку зрения, спроить я с вами не буду.
авторПервое и самое главное - у ТС ФБ ставился из репозитория debian
Опять не понятно, почему это для вас "первое и самое главное".
Давайте выясним что такое репозиторий.
debian.orgA Debian repository is a set of Debian packages organized in a special directory tree which also contains a few additional files containing indexes and checksums of the packages.
A repository can be both online and offline (for example on a CD-ROM)
Т.е. репозиторий - это не что иное, как набор пакетов доступных для установки. В свою очередь эти пакеты собираются из исходных кодов и помещаются в репозиторий. Тот самый исходный код я и использовал для нахождений причины не работающего "/etc/security/limits.conf" файла. Не важно как вы установите пакет c репозитория или DVD (CD), суть от этого не изменится, если оба они собраны с одинаковами параметрами из одного и того же кода.

авторв debian даже близко нет тех скриптов и параметров
и
отсутствующих конфигов
Могли бы о них написать, вместро того, что бы просто об этом заявить, не уточняя какие именно скрипты, параметры и конфиги вы имесли ввиду исходя из моих постов.

@ miwaonline - Предлогаю закончить дискусию, вместо того чтоб плодить оффтоп.
...
Рейтинг: 0 / 0
Too many open files
    #38026769
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miwaonlineА меньшинство рассуждений сводится к тому, что в скрипт, который запускает ФБ, нужно вручную добавить комманду изменения ulimit, что я написал в предыдущем посте без обильного цитирования отсутствующих конфигов.

Добавление ulimit в скрипт не помогает: скрипт запускается не от имени пользователя firebird, а внутри скрипта идет команда start-stop-daemon в которой указано что службу firebird запускать от пользователя firebird.
Как бы ulimit запустить от имени firebird? от su уже всяко пробовал - не подхватывает
...
Рейтинг: 0 / 0
Too many open files
    #38027127
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgeny Mвнутри скрипта идет команда start-stop-daemon в которой указано что службу firebird запускать от пользователя firebird.

SS? А почему не CS? Вроде как на линуксах «роднее». Или у тебя все совсем плохо с оперативкой и одно ядро на сервере? Ну и есть ненулевые шансы, что лимит на количество открытых файлов будет для каждого соединения 1024, а не один на всю службу.

Кстати, а есть какой-то воспроизводимый пример, чтобы протестировать проблему у себя? Скрипт там, или бинарник.
Evgeny M
Как бы ulimit запустить от имени firebird? от su уже всяко пробовал - не подхватывает
Несколько не совсем идейно правильных соображений по изменению стартап-скрипта
- поменять юзера, от имени которого запускается ФБ, на рута (осторожно, ибо если надо будет вернуть обратно, то не забыть вернуть права на базы данных и рабочие каталоги)
- или вместо start-stop-daemon делать sudo firebird ulimit -n && $FBSERVER $FBOPTS (осторожно, ибо start-stop-daemon тоже не от нефиг делать написали)

Но я бы для начала все-таки попробовал FB CS.
...
Рейтинг: 0 / 0
Too many open files
    #38027940
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miwaonline,
у меня СуперКлассик (англ. SuperClassic Server) — один процесс, но свой поток на каждое соединение. Данная архитектура введена в версии 2.5.
...
Рейтинг: 0 / 0
Too many open files
    #38028082
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgeny M,

И все равно я бы для интереса протестировал на классике. Если нет возможности - дай воспроизводимый пример, погоняю у себя.
...
Рейтинг: 0 / 0
Too many open files
    #38028342
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miwaonline,
переключу сегодня на классик.
а какой пример? стандартная установка Firebird
...
Рейтинг: 0 / 0
Too many open files
    #38028874
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Evgeny M,

Нет, я имею в виду, есть ли какой-то стандартный сценарий для воспроизведения ошибки. Возможно, она возникает при достижении некоторого количества подключений, или при выполнении какого-то запроса, или при подключении какого-то компютера, или еще что-то в том же духе.
Учитывая, что ни в bid=2 ни здесь никто не может сказать ничего конкретного, можно предположить, что с проблемой редко сталкиваются. Лично я, например, за 6 лет работы со связкой ФБ + дебиен на не одном десятке проектов такой ошибки не встречал.
А если еще учесть наличие Таблоида в bid=2 с его привычкой по малейшему поводу делать тесты на сотни подключений и миллионы операций, то можно предположить, что проблема довольно редкая и завязана на какую-то твою специфику. Потому повторюсь - есть ли хоть какой-то сценарий для воспроизведения ошибки?
...
Рейтинг: 0 / 0
Too many open files
    #38028903
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miwaonlineА если еще учесть наличие Таблоида в bid=2 с его привычкой по малейшему
поводу делать тесты на сотни подключений и миллионы операций, то можно предположить, что
проблема довольно редкая и завязана на какую-то твою специфику.
У Таблоида ulimit работает. В отличии от...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Too many open files
    #38028908
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miwaonline,

сценария нет, когда количество подключений переваливает за 200 примерно (ну и кол-во открытых файлов соответственно растет) начинается проблема. при этом баз несколько, но основная одна, программ тоже несколько, но основная опять же одна. Конечно наверное существуют какие то не оптимальные запросы которые приводят к открытию лишних файлов, но зависимости по запросам не выявлено.
P.S. а что такое bid=2?
...
Рейтинг: 0 / 0
Too many open files
    #38028913
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
c bid=2 разобрался
...
Рейтинг: 0 / 0
Too many open files
    #38028918
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov,

Хм. Может действительно мейнтейнеры debian что-то перемудрили со зборкой.

Evgeny M, я бы еще при наличии возможности попробовал aptitude purge firebird2.5-superclassic и установку ФБ из штатного инсталлятора. Тем более, что как раз 2.5.2 вышел.
...
Рейтинг: 0 / 0
Too many open files
    #38040870
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miwaonlineEvgeny M, я бы еще при наличии возможности попробовал aptitude purge firebird2.5-superclassic и установку ФБ из штатного инсталлятора. Тем более, что как раз 2.5.2 вышел.

сделал, проблема не исчезла, стало только хуже: при достижении лимита сервер просто перестает отвечать, приходится рестартить его.
У кого нибудь работает связка Debian + Firebird при большом количестве подключений?
Если менять Linux то какой посоветуете?
И возможно ли теперь откатиться на прошлую версию Firebird?
...
Рейтинг: 0 / 0
Too many open files
    #38041036
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny Mсделал, проблема не исчезла, стало только хуже: при достижении лимита сервер просто перестает отвечать, приходится рестартить его.
Если менять Linux то какой посоветуете?
И возможно ли теперь откатиться на прошлую версию Firebird?
Firebird, вы уже переустановили по "умному" совету... Теперь и до OS добрались. Если у вас изначально не работал ulimit у пользователя firebird, то и нужно было разбираться с этим, а не переустанавливать Firebird. Это проблема данного пользователя OS, а не Firebird. Firebird здесь не причем, он работает из environment что ему определён пользователем OS. Не нужно бросаться из крайности в крайность, а нужно прежде всего искать причину ошибки. И на будущее, перед тем как что-то делать на production environment тестируйте это на staging environment.

Ok.
Напишите вывод:
Код: bash
# finger firebird

Также посмотрите перед пиком количества подключение список открытых файлов OS + их кол-во с помощью ""lsof". "lsof" надо запускать от "root".
Код: bash
1.
# lsof > lsof.out (Вывод будет в lsof.out файле)
# lsof | wc -l

Что у вас ещё работает на сервере помимо firebird?

P.S. Не торопитесь переустанавливать OS. В качестве ответа на вопрос: из коммерческих (RHEL, SLES), те, которые распространяются бесплатно (CentOS, Oracle Linux - оба собраны на основе RHEL, причем второй может качать patchs офциально с Oracle errata, так же бесплатно). Еще один openSUSE.
...
Рейтинг: 0 / 0
Too many open files
    #38041405
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a,

с зависанием решил, причина была в другом.
то что обновление FB вряд ли поможет я догадывался, но нужно было что то делать.

finger firebird выдает:

Login: firebird
Name: Firebird Database Administrator
Directory: /var/lib/firebird
Shell: /bin/bash
Never looged in.
No mail.
No Plan.
...
Рейтинг: 0 / 0
Too many open files
    #38041481
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a,

lsof | ws -l выдает 2980
список фалов большой, много строк fb_monitir и fb_sort и строк подключений к БД
кроме firebird ничего больше не стоит
...
Рейтинг: 0 / 0
Too many open files
    #38041516
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Судя по "lsof" не так уж и много открытых фалов у вас сейчас.
С пользователем "firebird" тоже всё в порядке, есть shell (/bin/bash) и домашняя директория: /var/lib/firebird

Дайте вывод:
Код: bash
1.
2.
# cat /etc/sysctl.conf
# cat /etc/security/limits.conf
# cat /etc/pam.d/login


Ещё один вопрос, у вас не работает ли случайно "SELinux" или "AppArmor"?
...
Рейтинг: 0 / 0
Too many open files
    #38041559
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aСудя по "lsof" не так уж и много открытых фалов у вас сейчас.
ну не самый пик уже, и кроме системы и firebird никто больше и не открывает

Jek_aЕщё один вопрос, у вас не работает ли случайно "SELinux" или "AppArmor"?
думаю нет, не помню что бы ставил
...
Рейтинг: 0 / 0
Too many open files
    #38041561
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Too many open files
    #38041562
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Too many open files
    #38041568
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ещё один вопрос, у вас не работает ли случайно "SELinux"
Дайте ещё содержимое файла загрузчика grub.conf или lilo.conf, в зависимости от того что вы используете.
...
Рейтинг: 0 / 0
Too many open files
    #38041572
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...
Рейтинг: 0 / 0
Too many open files
    #38041580
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aЕщё один вопрос, у вас не работает ли случайно "SELinux"
Дайте ещё содержимое файла загрузчика grub.conf или lilo.conf, в зависимости от того что вы используете.
...
Рейтинг: 0 / 0
Too many open files
    #38041626
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Судя по вашему "/etc/pam.d/login", "SELinux" у вас всё же установлен:
раз# SELinux needs to be the first session rule. This ensures that any
# lingering context has been cleared. Without out this it is possible
# that a module could execute code in the wrong domain.
# When the module is present, "required" would be sufficient (When SELinux
# is disabled, this returns success.)
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close

и два# SELinux needs to intervene at login time to ensure that the process
# starts in the proper default security context. Only sessions which are
# intended to run in the user's context should be run after this.
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
# When the module is present, "required" would be sufficient (When SELinux
# is disabled, this returns success.)
Я бы закоментировал эти строчки. И добавил бы "selinux=0" в grub.conf. Это полностю выключит "SELinux".
Код: bash
1.
linux	/boot/vmlinuz-2.6.32-5-amd64 root=UUID=574c1dd4-3a17-44b0-8995-3d59845c65e8 ro quiet selinux=0
linux	/boot/vmlinuz-2.6.32-5-amd64 root=UUID=574c1dd4-3a17-44b0-8995-3d59845c65e8 ro single selinux=0
...
Рейтинг: 0 / 0
Too many open files
    #38041679
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
С файлами конфигурации у вас всё нормально, поэтому предполагаю что у вас проблема с "SELinux".
Сделайте ещё следующие:
Код: bash
1.
cd /var/lib/firebird
ls -Z


Опция "-Z"
ls -Z-Z, --context
print any SELinux security context of each file
...
Рейтинг: 0 / 0
Too many open files
    #38041694
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_acd /var/lib/firebird
такого каталога нет
...
Рейтинг: 0 / 0
Too many open files
    #38041728
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

А где у вас установлен "Firebird"?
Перейдите в эту директорию и сделайте "ls -Z"

Просто исходя из этого:
fingerfinger firebird выдает:

Login: firebird
Name: Firebird Database Administrator
Directory: /var/lib/firebird
Shell: /bin/bash
Never looged in.
No mail.
No Plan.
Домашняя директория у пользователя "firebird" имеено "/var/lib/firebird". Тоже самое вам скажет:
Код: bash
# grep -i 'firebird' /etc/passwd

Поменяйте домашнею директорию пользователю "firebird", на ту где у вас установлен "Firebird".
...
Рейтинг: 0 / 0
Too many open files
    #38041742
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Поменяйте домашнею директорию пользователю "firebird", на ту где у вас установлен "Firebird".
Изменить её можно в файле /etc/passwd. Соответственно пользователь "firebird", должен иметь права на эту директорию.
...
Рейтинг: 0 / 0
Too many open files
    #38041745
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aДомашняя директория у пользователя "firebird" имеено "/var/lib/firebird"
странно, видимо осталось от предыдущей установки firebird - пользователь не пересоздавался
Jek_aА где у вас установлен "Firebird"?
Перейдите в эту директорию и сделайте "ls -Z"

выдает список файлов и директорий в этой директории ??
...
Рейтинг: 0 / 0
Too many open files
    #38041752
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aПоменяйте домашнею директорию пользователю "firebird", на ту где у вас установлен "Firebird".
Изменить её можно в файле /etc/passwd. Соответственно пользователь "firebird", должен иметь права на эту директорию.
изменил на /opt/firebird. владелец root, у других права на чтение и запуск/поиск. этого достаточно?
...
Рейтинг: 0 / 0
Too many open files
    #38041770
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

?? - это хорошо, значит на эти файлы не влияет "SELinux".

изменил на /opt/firebird. владелец root, у других права на чтение и запуск/поиск. этого достаточно?
Надо сделать:
Код: bash
# chown -R firebird: /opt/firebird
...
Рейтинг: 0 / 0
Too many open files
    #38041780
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aНадо сделать:
Код: bash
# chown -R firebird: /opt/firebird

а сервис стартовать не перестанет?
...
Рейтинг: 0 / 0
Too many open files
    #38041823
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Не должен. Ну на всякий случай, без опции "-R". Т.е. поменять права только на "/opt/firebird", а не "recursively"
Код: bash
# chown firebird: /opt/firebird

Пользователь "firebird" является владельцем "Firebird DB + data files" + сервис стартует от этого пользователя.
...
Рейтинг: 0 / 0
Too many open files
    #38041827
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aЯ бы закоментировал эти строчки. И добавил бы "selinux=0" в grub.conf. Это полностю выключит "SELinux".
Код: bash
1.
linux	/boot/vmlinuz-2.6.32-5-amd64 root=UUID=574c1dd4-3a17-44b0-8995-3d59845c65e8 ro quiet selinux=0
linux	/boot/vmlinuz-2.6.32-5-amd64 root=UUID=574c1dd4-3a17-44b0-8995-3d59845c65e8 ro single selinux=0

у меня нет grub.conf. есть grub.cfg но он не правится, нужно править /etc/default/grub. можно подробнее куда прописывать эти команды?
...
Рейтинг: 0 / 0
Too many open files
    #38041839
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Пока "grub" можно не трогать, так как у вас нет "SELinux security context" на "/opt/firebird"
...
Рейтинг: 0 / 0
Too many open files
    #38041850
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a,

остальные рекомендации я выполнил, перезагружаться нужно?
...
Рейтинг: 0 / 0
Too many open files
    #38041863
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Если поменяли права на "/opt/firebird" директорию, то что вы теперь видете:
Код: bash
1.
2.
3.
# su - firebird
# pwd
# ulimit -n 10000
# ulimit -a | grep open
...
Рейтинг: 0 / 0
Too many open files
    #38041875
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aЕсли поменяли права на "/opt/firebird" директорию, то что вы теперь видете:
Код: bash
1.
2.
3.
# su - firebird
# pwd
# ulimit -n 10000
# ulimit -a | grep open


после
Код: bash
1.
# pwd
/opt/firebird


после
Код: bash
1.
ulimit -a | grep open
open files (-n) 10000


Получилось значит?
...
Рейтинг: 0 / 0
Too many open files
    #38041887
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да. Можете ещё перезагрузиться, для чистоты эксперимента и стартовать "Firebrd" заново.

+ можете ещё раз проверить после перезагрузки:
Код: bash
1.
2.
3.
# su - firebird
# pwd
# ulimit -n 10000
# ulimit -a | grep open
...
Рейтинг: 0 / 0
Too many open files
    #38041904
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a,

неа, не помогло, снова too many open на 1070 открытых файлах. попробую перезагрузиться
...
Рейтинг: 0 / 0
Too many open files
    #38041913
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ulimit -a | grep open
опять выдает 1024, т.е. на запомнилось после отключения. сейчас все же перезагружусь
...
Рейтинг: 0 / 0
Too many open files
    #38041918
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

А вы после сделанных изменений рестартовали сервис "Firebird"?

P.S. Поздно уже у нас... Ушёл спать...
...
Рейтинг: 0 / 0
Too many open files
    #38041924
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторulimit -a | grep open
опять выдает 1024, т.е. на запомнилось после отключения. сейчас все же перезагружусь
Если вы перед этим не делали "ulimit -n 10000", тогда всё правильно, так как начальной значение у вас 1024, которое может расти до 65536.
limits.conffirebird soft nofile 1024
firebird hard nofile 65536

Можете изменить на
limits.conffirebird soft nofile 10000
firebird hard nofile 65536
тогда не нужно делать "ulimit -n 10000", перед "ulimit -a | grep open"
...
Рейтинг: 0 / 0
Too many open files
    #38041957
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
перезагрузка не помогла. ошибка осталась, хотя
Код: bash
1.
# su - firebird
# ulimit -a | grep open

показывает 10000
...
Рейтинг: 0 / 0
Too many open files
    #38041970
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторМожете изменить на
limits.conffirebird soft nofile 10000
firebird hard nofile 65536
тогда не нужно делать "ulimit -n 10000", перед "ulimit -a | grep open"
изменил, но тестировать уже будут пользователи в понедельник
...
Рейтинг: 0 / 0
Too many open files
    #38043940
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a,

подскажешь куда дальше копать?
...
Рейтинг: 0 / 0
Too many open files
    #38046417
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Возможно "Firebird" действительно открывает много файлов, при большом кол-ве подключений.
Увеличьте значение лимитов:
1. Отредактировать файл "/etc/sysctl.conf"
Код: bash
fs.file-max = 2000000

2. Отредактировать файл "/etc/security/limits.conf"
Код: bash
1.
firebird     soft    nofile  150000 
firebird     hard    nofile  400000

3. Перезагрузить сервер.

Далее, постепенно увеличивать кол-во подключений к "Firebird", в это же самое время запускаем сбор статистики в background.
Для того, чтобы определить растёт ли кол-во открытых файлов за 30 минут, у каждого "Firebird" процесса (PID):
Код: bash
1.
2.
# for i in $(pgrep -U firebird); do
     nohup lsof -p $i -r 1800 > lsof$i.out &
done

-r 1800 - это 30 минут (Думаю этого времени будет достаточно, для достижение лимита по подключениям)
Т.е. в background у вас запуститься несколько "lsof" процессов, которые создадут несколько файлов в текущей директории, их можно увидеть через "ps":
Код: bash
# ps -ef | grep lsof

Потом смотрим на статистику:
Код: bash
# wc -l lsof*.out

Сбор статистики можно прервать так, либо она сама завершится через 30 мин:
Код: bash
# kill -9 $(ps -ef | awk '/lsof/ {print $2}')


Так же, бывает иногда, что приложение создаёт утечку файлов "descriptors". Это когда у вас заканчивается кол-во свободных "inode". Вы будете видеть, что у вас достаточно места через "df -k", но при этом невозможно будет создать новый файл (no space left on device) или вы будете видеть "touch: cannot touch `test': Too many open files in system".
Параллельно со сбором статистики lsof, во второй консоли запускам:
Код: bash
# watch -n 1 "tune2fs -l $(df -k /opt/firebird | cut -d" " -f1 | grep -v Filesystem) | grep -i 'inode'"

При условии, что data files у вас находятся в "/opt/firebird"
И наблюдаем интерактивно за "Inode count", "Free inodes".

Так же хотелось бы видеть ваш kernel:
Код: bash
# uname -sri


+ проверить ещё раз, что у вас установлено и что запущенно на сервере. Всё лишнее удалить. У человека была похожая проблема (На сервере работало "Firebird"+"PHP"+"Apache"). Её удалось решить путём обновления "Apache", хотя на первый взгляд он не имеет никакого отношения к "Firebird".

Есть ещё одна мысль, но проверьте сначала это всё.
...
Рейтинг: 0 / 0
Too many open files
    #38046425
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aТак же хотелось бы видеть ваш kernel:
Код: bash
# uname -sri



Код: bash
Linux 2.6.32-5-amd64 unknown
...
Рейтинг: 0 / 0
Too many open files
    #38046441
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,
Evgeny MLinux 2.6.32-5-amd64 unknown
Довольно странно что unknown .
А так:
Код: bash
uname -a

FQDN можете убрать из вывода, оно отношения к топику не имеет.
Оставить только что-то вроде:
Код: bash
Linux 2.6.32-5-amd64 #1 SMP....
...
Рейтинг: 0 / 0
Too many open files
    #38046452
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a,

Linux 2.6.32-5-amd64 #1 SMP Sun Sep 23 10:07:46 UTC 2012 x86_64 CNU/Linux
...
Рейтинг: 0 / 0
Too many open files
    #38046460
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Ok, нужно было вот это x86_64. Просто лучше использовать 64-bit OS, вместо 32-bit. У вас всё нормально с этим. Увеличите лимиты и соберите статистику для начала.
...
Рейтинг: 0 / 0
Too many open files
    #38046461
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a,

data files - это файл БД или каталог где временные файлы создаются?
...
Рейтинг: 0 / 0
Too many open files
    #38046481
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Можно и то и другое, но вам тогда нужно открыть ещё одну консоль и модифицировать путь "/opt/firebird" на директорию с временнвми файлами.
Т.е. 2 директории 2 консоли итд.
...
Рейтинг: 0 / 0
Too many open files
    #38046483
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Суть в том, что нужно мониторить все директории, с которыми работает "Firebird"
...
Рейтинг: 0 / 0
Too many open files
    #38046491
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a
Код: bash
1.
2.
# for i in $(pgrep -U firebird); do
     nohup lsof -p $i -r 1800 > lsof$i.out &
done


в файл выводит:

lsof: illegal process ID: -r
lsof 4.81
...
Рейтинг: 0 / 0
Too many open files
    #38046493
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a
Код: bash
1.
2.
# for i in $(pgrep -U firebird); do
     nohup lsof -p $i -r 1800 > lsof$i.out &
done

я правильно сделал что засунул это в файл?
...
Рейтинг: 0 / 0
Too many open files
    #38046500
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Я написал пример для запуска из консоли.
...
Рейтинг: 0 / 0
Too many open files
    #38046513
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a
Код: bash
# watch -n 1 "tune2fs -l $(df -k /opt/firebird | cut -d" " -f1 | grep -v Filesystem) | grep -i 'inode'"

выдает:

Every 1,0s: tune2fs -l Файловая

tune2fs: Нет такого файла или каталога while trying to open Файловая
Couldn't find valid filesystem superblock.
tune2fs 1.41.12 (17-may-2010)
sh: /dev/sda1: Permission denied


Пробовал и /opt/firebird и /tmp/firebird
...
Рейтинг: 0 / 0
Too many open files
    #38046524
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Вы это запускаете от "root"?
...
Рейтинг: 0 / 0
Too many open files
    #38046526
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a,

да
...
Рейтинг: 0 / 0
Too many open files
    #38046531
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Ok, а так работает?:
[SRC BASH# tune2fs -l /dev/sda1][/SRC]
...
Рейтинг: 0 / 0
Too many open files
    #38046532
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Т.е.
Код: bash
tune2fs -l /dev/sda1
...
Рейтинг: 0 / 0
Too many open files
    #38046533
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a,

работает
...
Рейтинг: 0 / 0
Too many open files
    #38046543
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Значит, обращаем внимание на " и '
Лучше просто скопировать всю строку что я написал, в консоль.
...
Рейтинг: 0 / 0
Too many open files
    #38046546
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Нужен вывод:
Код: sql
1.
2.
df -k /opt/firebird
df -k /tmp/firebird
...
Рейтинг: 0 / 0
Too many open files
    #38046549
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aEvgeny M,

Значит, обращаем внимание на " и '
Лучше просто скопировать всю строку что я написал, в консоль.

скопировал - то же самое
...
Рейтинг: 0 / 0
Too many open files
    #38046560
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Evgeny M,

Пробуйте так:
Код: sql
1.
# watch -n 1 "tune2fs -l /dev/sda1 | grep -i inode"


Где /dev/sda1 - это раздел, который смонтирован в "/opt/firebird", тоже самое для "/tmp/firebird".
...
Рейтинг: 0 / 0
Too many open files
    #38046581
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aEvgeny M,

Нужен вывод:
Код: sql
1.
2.
df -k /opt/firebird
df -k /tmp/firebird



вывод одинаков:
Код: sql
1.
2.
Файловая система    1K-блоков          Исп  Доступно  Исп% смонтирована на
/dev/sda1           471158128    339143940  10808748   76%  /
...
Рейтинг: 0 / 0
Too many open files
    #38046590
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aEvgeny M,

Пробуйте так:
Код: sql
1.
# watch -n 1 "tune2fs -l /dev/sda1 | grep -i inode"


Где /dev/sda1 - это раздел, который смонтирован в "/opt/firebird", тоже самое для "/tmp/firebird".

работает. показывает:

Inode count: 29917184
Free inodes: 29894988
...
Рейтинг: 0 / 0
Too many open files
    #38046931
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_a
-r 1800 - это 30 минут (Думаю этого времени будет достаточно, для достижение лимита по подключениям)
получилось что РАЗ в 30 минут собиралась статитстика. там ничего не обычного: количество файлов не больше 1000
Значение inodes тоже не изменилось
...
Рейтинг: 0 / 0
Too many open files
    #38052760
Evgeny M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Установил на другой сервер Debian с нуля, установил Firebird, больше ничего не ставил - все то же самое.
Тогда сделал
Jek_aВам нужно сделать:
1. Изначально выполнить login от пользователя "root".
2. Сменить shell для пользователя "firebird"
Код: powershell
1.
usermod -s /bin/bash firebird


3. Выполнить шаги которые я описал выше: 1, 2, 3, 4, 5, 6 (7 и 8 выполнять не надо)
4. Выполнить логин от пользоветеля "firebird"
Код: powershell
1.
su - firebird


"-" между su и firebird обязательно. Для того чтобы ипользовать firebird's user environment.
5. Проверить текущий shell:
Код: powershell
1.
echo $0


6. Пороверить текущие настройки:
Код: powershell
1.
ulimit -a | grep 'open files'


Сейчас должны использоваться настройки с файла "limits.conf"

7. Стартовать "firebird" вручную с текущего shell.
Открыть firebird's startup script и проверить секцию start. Там есть строка для старта "firebird".
Что-то вроде:
Код: powershell
1.
2.
3.
4.
5.
6.
7.
start)
	echo -n "Starting $FULLNAME "
	daemon --user=$FBRunUser "export FIREBIRD LD_LIBRARY_PATH; $MANAGER -pidfile $pidfile -start -forever"
	RETVAL=$?
	[ $RETVAL -eq 0 ] && touch /var/lock/subsys/$name
	echo
	;;


Из приведенного выше кода вам нужно выполнить:
Код: powershell
1.
/opt/firebird/bin/fbmgr.bin -pidfile /var/run/firebird/defualt.pid -start -forever"


Это только пример у вас наверняка другая строчка для старта firebird, так что ориентируйтесь на неё.
- заработало.
Но как мне сделать что бы firebird автоматом так стартовал?
...
Рейтинг: 0 / 0
87 сообщений из 87, показаны все 4 страниц
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Too many open files
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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