Ова страница је машински преведена. Прочитајте енглески оригинал. English

IBSurgeon библиотека

Како користити instreg.exe и instsvc.exe (алатке командне линије за инсталацију Firebird-а на Windows-у)

Како користити instreg.exe и instsvc.exe

Аутори: Оригинал: Alex Peshkov (peshkoff at mail.ru), Ревидирао: Olivier Mascia (om at tipgroup.com)

НАПОМЕНА :: Да бисте решили потенцијалне проблеме са дугим путањама које садрже размаке или специјалне (не-ASCII) знакове, ови алати више не примају RootDirectory као аргумент командне линије. Оба бинарна фајла морају бити инсталирана (или копирана) у /bin директоријум унутар вашег Firebird кореног директоријума.

(Корени директоријум == директоријум где су инсталирани firebird.conf и security2.fdb.)

На пример, ако се налазе у C:\FB20.in, корени директоријум ће бити изведен као C:\FB20.

INSTREG.EXE

Сврха овог алата је да инсталира Registry кључеве за Firebird. Пошто је његов задатак да изведе RootDirectory путању као директоријум непосредно изнад његове сопствене локације и да је запише у Registry као апсолутну путању, instreg.exe мора бити инсталиран у /bin поддиректоријуму Firebird кореног директоријума (видети напомену изнад).

Registry кључ *није* потребан за покретање мотора; међутим, многи алати трећих страна очекују да га прочитају како би радили. Кључ који се чува је

HKLM\SOFTWARE\Firebird Project\Firebird Server\Instances

и садржи једну вредност низа: DefaultInstance.

Ова вредност низа ‘DefaultInstance’ садржи пуну путању (завршену обрнутом косом цртом) до кореног директоријума инсталације. Ово подешавање је направљено тако да ће управљање именованим вишеструким инстанцама сервера бити могуће у следећој верзији. Тренутно, једина инстанца добија хард-кодирано име ‘DefaultInstance’. Ништа друго се не чува у регистру. Било какве информације о верзији или конфигурацији алати трећих страна могу пронаћи у одговарајућем firebird.conf фајлу. Овај фајл се може лоцирати захваљујући кореној путањи сачуваној у …\Instances\DefaultInstance вредности.

Употреба:

Code
instreg i[nstall]
instreg r[emove]

‘-z’ се може користити са било којом другом опцијом, штампа Firebird софтверску верзију као први ред излаза.

За кратак текстуални опис, једноставно покрените instreg.exe без аргумената.

INSTSVC.EXE

Firebird пружа стандардну процедуру за управљање Firebird сервисом на WinNT/2000/XP платформама - instsvc.exe.

Конзолне поруке

Излаз Windows грешака (ако их има) је побољшан тако да се врши потребна транслитерација ansi низова у OEM карактерни сет конзолног прозора. То значи да ће људи који користе не-енглески Windows добити Windows системске поруке о грешкама на свом језику са исправним акцентима и тако даље.

Сигурносне функције

Опција ‘-login’ (или -l) која је раније постојала је детаљно ревидирана и побољшана. Сада се може користити за подешавање сервиса да раде под одређеним корисничким налогом (вероватно са ограниченим привилегијама на систему) уместо подразумеваног “LocalSystem”.

Употреба:

Code
instsvc i[nstall] [ -s[uperserver]* | -c[lassic] | -m[ultithreaded] ]
         [ -a[uto]* | -d[emand] ]
         [ -g[uardian] ]
         [ -l[ogin] username [password] ]
         [ -n[ame] instance ]
         [ -i[nteractive] ]
instsvc sta[rt] [ -b[oostpriority] ] [ -n[ame] instance ]
instsvc sto[p] [ -n[ame] instance ]
instsvc q[uery]
instsvc r[emove] [ -n[ame] instance ]

Овај алат треба да се налази и покреће из ‘bin’ директоријума ваше Firebird инсталације.

  • ‘*’ означава подразумеване вредности

  • ‘-z’ се може користити са било којом другом опцијом, штампа верзију

  • ‘username’ се подразумевано односи на локални налог на овој машини.

  • Користите формат ‘domain\username’ или ‘server\username’ ако је прикладно.

Примери

под претпоставком да је Firebird инсталиран (копиран на своју инсталациону локацију).

Superserver и аутоматско покретање су сада подразумевани.

Code
instsvc i
instsvc install

подешава Superserver као сервис у режиму аутоматског покретања (покреће се при подизању система) под подразумеваним системским идентитетом, названим “LocalSystem”.

Code
instsvc i -g
instsvc install -guardian

као горе, али прво покреће Guardian сервис.

Опције “-demand” (-d) и “-classic” (-c) омогућавају промену подразумеваних вредности, тако да се класични сервер (уместо superserver-а) може конфигурисати као сервис и било који сервис се може конфигурисати да се покреће на захтев уместо при подизању система.

За уклањање сервиса

Сервиси морају бити заустављени пре уклањања. Ово би могло бити аутоматизовано са 3 линије кода, али је боље оставити како јесте ради сигурности.

Code
instsvc r
instsvc remove

уклања дефиницију сервиса. Ако је Guardian био конфигурисан, и guardian и сервер сервиси ће бити уклоњени.

За покретање и заустављање инсталираних сервиса

Code
instsvc sta
instsvc start

покреће сервер или Guardian + сервер, у складу са оним што је конфигурисано командом install.

Code
instsvc stop

зауставља сервер или Guardian + сервер, у складу са оним што је конфигурисано командом install.

За добијање извештаја о стању сервера

Ово је нова команда:

Code
instsvc q
instsvc query

Штампа извештај о тачно *шта* је конфигурисано и *како*, као и да ли сервиси раде или су заустављени.

За коришћење функције сигурне пријаве

Опција “-login” захтева корисничко име и лозинку:

Code
instsvc i -g -login user pass

Ово би конфигурисало FB superserver као аутоматско покретање, са Guardian-ом, да ради под идентитетом “user” чија је лозинка pass.

\* Ако је лозинка укључена, лозинка не сме да почиње са ‘-’.

\* Ако је лозинка изостављена из командне линије, instsvc ће тражити да је унесете. У том случају, лозинка ће бити маскирана са ‘*’ док се куца.

Приликом конфигурисања сервиса као горе, instsvc аутоматски додељује Windows оперативном систему привилегију названу “Log on as a Service” наведеном кориснику. Ово је потребно, иначе сервису не би било дозвољено да се покрене. Instsvc ћути о томе осим ако не успе.

Да би се узела у обзир могућност да корисник који се пријављује преко -login прекидача може бити обичан корисник без администраторских привилегија на машини, instsvc прилагођава подразумевани сигурносни дескриптор сервиса тако да овај корисник може да их покрене/заустави/прегледа.

Ово је неопходно да би се омогућило Guardian-у (који такође ради као овај корисник) да покрене FB сервер. Корисник неће моћи да деинсталира сервисе нити да мења њихову конфигурацију.

НАПОМЕНА

Instsvc НЕ КРЕИРА “корисника” на Windows машини. То не би била добра идеја. Администратор можда жели да креира корисника као део локалне машине или као део домена и instsvc нема посебну потребу да узурпира администраторову одговорност за креирање корисника.

Корисник треба да има право читања/писања на свим базама података и firebird.log фајлу. Из сигурносних разлога, право писања на firebird.conf и Firebird извршне фајлове НЕ СМЕ бити дато.

На Windows NT/2K/XP је уобичајено укључити домен или сервер префикс за корисника дефинисаног на домену или локално на другом серверу. У горњим примерима, “user” може имати облик:

DOMAIN\user или

SERVER\user

Без префикса, корисник је имплицитно локални корисник на тренутној машини.