Trang này được dịch bằng máy. Đọc bản gốc tiếng Anh. English

Thư viện IBSurgeon

Cách sử dụng instreg.exe và instsvc.exe (các công cụ dòng lệnh để cài đặt Firebird trên Windows)

Cách sử dụng instreg.exe và instsvc.exe

Tác giả: Bản gốc: Alex Peshkov (peshkoff at mail.ru), Hiệu đính bởi: Olivier Mascia (om at tipgroup.com)

LƯU Ý :: Để giải quyết mọi vấn đề tiềm ẩn với đường dẫn dài chứa khoảng trắng hoặc ký tự đặc biệt (không phải ascii), các công cụ này không còn nhận RootDirectory làm đối số dòng lệnh. Cả hai tệp thực thi phải được cài đặt (hoặc sao chép) vào thư mục /bin bên dưới thư mục gốc Firebird của bạn.

(Thư mục gốc == thư mục gốc nơi firebird.conf và security2.fdb được cài đặt.)

Ví dụ: nếu chúng nằm trong C:\FB20.in, thư mục gốc sẽ được suy ra là C:\FB20.

INSTREG.EXE

Mục đích của tiện ích này là cài đặt các khóa Registry cho Firebird. Vì nhiệm vụ của nó là suy ra đường dẫn RootDirectory là thư mục nằm ngay phía trên vị trí của chính nó và ghi đường dẫn này vào Registry dưới dạng đường dẫn tuyệt đối, instreg.exe phải được cài đặt trong thư mục con /bin của thư mục gốc Firebird (xem ghi chú ở trên).

Khóa Registry *không* bắt buộc để engine chạy; tuy nhiên, nhiều công cụ của bên thứ ba mong đợi đọc khóa này để hoạt động. Khóa được lưu trữ là

HKLM\SOFTWARE\Firebird Project\Firebird Server\Instances

và chứa một giá trị chuỗi: DefaultInstance.

Giá trị chuỗi ‘DefaultInstance’ này chứa đường dẫn đầy đủ (kết thúc bằng dấu gạch chéo ngược) đến thư mục gốc của bản cài đặt. Thiết lập này được xây dựng để việc quản lý nhiều phiên bản (multi-instances) có tên của máy chủ sẽ khả thi trong phiên bản tiếp theo. Hiện tại, phiên bản duy nhất nhận tên được mã hóa cứng là ‘DefaultInstance’. Không có gì khác được lưu trữ trong registry. Mọi thông tin về phiên bản hoặc cấu hình sẽ được các công cụ bên thứ ba tìm thấy trong tệp firebird.conf tương ứng. Tệp này có thể được định vị nhờ đường dẫn gốc được lưu trữ trong giá trị …\Instances\DefaultInstance.

Cách sử dụng:

Code
instreg i[nstall]
instreg r[emove]

‘-z’ có thể được sử dụng với bất kỳ tùy chọn nào khác, in phiên bản phần mềm Firebird dưới dạng dòng đầu tiên của đầu ra.

Để nhận trợ giúp văn bản ngắn gọn, chỉ cần gọi instreg.exe mà không có đối số.

INSTSVC.EXE

Firebird cung cấp một quy trình chuẩn để quản lý Dịch vụ Firebird trên các nền tảng WinNT/2000/XP - instsvc.exe.

Thông báo bảng điều khiển

Đầu ra của các thông báo lỗi Windows (nếu có) đã được cải thiện để mọi chuyển đổi cần thiết của chuỗi ansi sang bộ ký tự OEM của cửa sổ bảng điều khiển được thực hiện. Điều này có nghĩa là những người sử dụng Windows không phải tiếng Anh sẽ nhận được thông báo lỗi hệ thống Windows bằng ngôn ngữ của họ với các dấu chính xác, v.v.

Các tính năng liên quan đến bảo mật

Tùy chọn ‘-login’ (hoặc -l) được triển khai trước đây đã được sửa đổi và nâng cao rộng rãi. Giờ đây, nó có thể được sử dụng để thiết lập (các) dịch vụ chạy dưới một tài khoản người dùng cụ thể (có lẽ với các đặc quyền hạn chế trên hệ thống) thay vì “LocalSystem” mặc định.

Cách sử dụng:

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 ]

Tiện ích này nên được đặt và chạy từ thư mục ‘bin’ của bản cài đặt Firebird của bạn.

  • ‘*’ biểu thị các giá trị mặc định

  • ‘-z’ có thể được sử dụng với bất kỳ tùy chọn nào khác, in phiên bản

  • ‘username’ theo mặc định đề cập đến một tài khoản cục bộ trên máy này.

  • Sử dụng định dạng ‘domain\username’ hoặc ‘server\username’ nếu phù hợp.

Ví dụ

giả sử Firebird được cài đặt (sao chép đến vị trí cài đặt của nó).

Superserver và tự động khởi động hiện là mặc định.

Code
instsvc i
instsvc install

thiết lập Superserver như một dịch vụ ở chế độ tự động khởi động (khởi động khi máy khởi động) dưới danh tính hệ thống mặc định, có tên “LocalSystem”.

Code
instsvc i -g
instsvc install -guardian

như trên, nhưng khởi động dịch vụ Guardian trước.

Các tùy chọn “-demand” (-d) và “-classic” (-c) cho phép thay đổi các mặc định, do đó máy chủ classic (thay vì superserver) có thể được cấu hình như một dịch vụ và một trong hai dịch vụ có thể được cấu hình để khởi động theo yêu cầu thay vì khởi động khi máy khởi động.

Để gỡ bỏ (các) dịch vụ

Các dịch vụ phải được dừng trước khi gỡ bỏ. Điều này có thể được tự động hóa với 3 dòng mã nhưng tốt hơn là để nguyên như vậy vì lý do an toàn.

Code
instsvc r
instsvc remove

gỡ bỏ định nghĩa dịch vụ. Nếu Guardian được cấu hình, cả hai dịch vụ guardian và server sẽ được gỡ bỏ.

Để khởi động và dừng (các) dịch vụ đã cài đặt

Code
instsvc sta
instsvc start

khởi động máy chủ hoặc Guardian + máy chủ, tùy theo những gì đã được cấu hình bởi lệnh cài đặt.

Code
instsvc stop

dừng máy chủ hoặc Guardian + máy chủ, tùy theo những gì đã được cấu hình bởi lệnh cài đặt.

Để nhận báo cáo tình trạng máy chủ

Đây là một lệnh mới:

Code
instsvc q
instsvc query

In một báo cáo chính xác về *những gì* được cấu hình và *như thế nào*, cũng như liệu các dịch vụ đang chạy hay đã dừng.

Để sử dụng tính năng đăng nhập an toàn

Tùy chọn “-login” yêu cầu tên người dùng và mật khẩu:

Code
instsvc i -g -login user pass

Điều này sẽ cấu hình FB superserver tự động khởi động, với Guardian, chạy dưới danh tính “user” có mật khẩu là pass.

\* Nếu mật khẩu được bao gồm, mật khẩu không được bắt đầu bằng ‘-’.

\* Nếu mật khẩu bị bỏ qua khỏi dòng lệnh, instsvc sẽ nhắc nhập. Trong trường hợp đó, mật khẩu sẽ được che bằng ‘*’ khi gõ.

Trong khi cấu hình các dịch vụ như trên, instsvc tự động cấp đặc quyền hệ điều hành Windows có tên “Log on as a Service” cho người dùng được chỉ định. Điều này là bắt buộc, nếu không dịch vụ sẽ không được phép khởi động. Instsvc im lặng về điều này trừ khi nó thất bại.

Để xử lý khả năng người dùng đăng nhập qua công tắc -login có thể là người dùng thông thường không có đặc quyền quản trị trên máy, instsvc điều chỉnh bộ mô tả bảo mật mặc định của (các) dịch vụ để người dùng này có thể khởi động/dừng/truy vấn chúng.

Điều này cần thiết để cho phép Guardian (cũng chạy dưới tư cách người dùng này) khởi động máy chủ FB. Người dùng sẽ không thể gỡ cài đặt (các) dịch vụ cũng như thay đổi cấu hình của chúng.

LƯU Ý

Instsvc KHÔNG TẠO “người dùng” trên máy Windows. Đó sẽ không phải là một ý tưởng hay. Quản trị viên có thể muốn tạo người dùng như một phần của máy cục bộ hoặc như một phần của miền và instsvc không có nhu cầu cụ thể nào để chiếm đoạt trách nhiệm của quản trị viên trong việc tạo người dùng.

Người dùng cần có quyền đọc/ghi vào tất cả cơ sở dữ liệu và tệp firebird.log. Vì lý do bảo mật, quyền ghi vào firebird.conf và các tệp thực thi Firebird KHÔNG NÊN được cấp.

Trên Windows NT/2K/XP, thông thường bao gồm tiền tố miền hoặc máy chủ cho người dùng được định nghĩa trên miền hoặc cục bộ trên một máy chủ khác. Trong các ví dụ trên, “user” có thể có dạng:

DOMAIN\user hoặc

SERVER\user

Không có tiền tố, người dùng được ngầm hiểu là người dùng cục bộ trên máy hiện tại.