Instalacja na serwerze Linux Slackware 13.x

Transkrypt

Instalacja na serwerze Linux Slackware 13.x
Oprogramowanie firmy Sygnity
System POMOST Std
(jboss + serwer bazy danych)
oraz
Oprogramowanie Świadczenia
SR, FA, DM (serwer bazy danych)
Instalacja na serwerze
Linux Slackware 13.x
w architekturze 64 bitowej
- wersja dla zaawansowanych (v.2)
Opracował: Karol Marciniak
email: [email protected]
kwiecień 2012
1
Wstęp
System Linux Slackware jest najstarszą i wciąż rozwijaną dystrybucją linuxa. Uchodzi może za trudną w
konfiguracji, jednak wcale tak nie jest. Postaram się dokładnie opisać wszystkie kroki jakie należy wykonać by
zainstalować i uruchomić podstawowy serwer dla OPSu. Opis będzie skierowany dla osób znających system linux
- umiejących poruszać się po strukturze katalogów, znających podstawowe polecenia, itp.
Opis ten przyda się każdemu kto chce zainstalować oprogramowanie firmy Sygnity na serwerze linuxowym
zarówno w przypadkach gdy ma już inny serwer (np. na systemie Windows) – opisany jest bowiem proces
przejścia na linuxa, a także np. osobom które np. migrują z OU Pomost na Pomost Std i chcą nowy serwer mieć
właśnie na linuxie.
Opis instalacji serwera Linux Slackware, oprogramowania firmy Sygnity – Pomost Std (jboss+baza), oraz bazy
danych dla programów SR i DM będzie pokazany z poziomu terminala. Środowisko graficzne nie będzie
uruchamiane (nie ma konieczności).
Opis dotyczy głównie instalacji oprogramowania. Nie poruszam w nim kwestii zabezpieczenia serwera.
Serwer oparty o dystrybucję Slackware używam do bazy danych dla Oprogramowania Świadczenia (SR, FA, DM) i
Dodatki Mieszkaniowe od ponad 3 lat, a dla Systemu POMOST Std od pół roku. System jest więc sprawdzony jest stabilny i nie ma z nim żadnych problemów.
2
Instalacja systemu linux Slackware 13.x
Płytę instalacyjną ściągamy ze strony http://ftp.slackware.no/slackware/slackware64-13.37-iso/
wybierając plik – slackware64-13.37-install-dvd.iso i wypalamy na płytkę DVD.
Lub można też pobrać aktualniejszą wersję z adresu http://ftp.slackware.no/slackware/slackware-current-iso/
wybierając plik – slackware64-current-DATA_WERSJI-DVD.iso i wypalamy na płytkę DVD.
Do instalacji systemu Linux trzeba podchodzić nieraz indywidualnie pod względem posiadanego
komputera/serwera. Może się bowiem zdarzyć że w niektórych przypadkach wersja instalacyjna nie poradzi sobie
ze sprzętem. Zakładam jednak, że nie będzie takich problemów i system będzie poprawnie widział naszą płytę
główną, procesor, kontrolery, dyski, karty sieciowe, itp.
Jeśli chodzi o wymogi to wymagany jest procesor z obsługą 64 bitową, pamięci operacyjnej zalecam minimum 8
GB (czym więcej tym lepiej), dysk twardy minimum 80 GB (zalecany oczywiście jak najszybszy)
Zakładam też że komputer/serwer na jakim instalujemy Linux Slackware jest podłączony do sieci komputerowej w
ośrodku.
Uruchamiamy komputer z płyty instalacyjnej DVD, pojawi się:
#boot:
to wybór kernela (jądra systemu) – nic nie wpisujemy i wciskamy Enter
#Enter 1 to select a keyboard map:
wybór mapy klawiatury – nic nie wybieramy – wciskamy Enter
#slackware login:
wpisujemy root i wciskamy Enter
#root@slackware:/#
jesteśmy zalogowani - należy przygotować dysk twardy do instalacji – wpisujemy cfdisk.bin (jak nie
zadziała to proszę wpisać cfdisk) i wciskamy Enter – pojawi się ekran:
Jeżeli dysk miał jakieś partycje już ustawione to należy je najpierw wykasować opcją Delete.
Jak już będzie pusty przystępujemy do tworzenia partycji dla systemu.
Ustawiamy się na Free Space i wybieramy NEW potem PRIMARY, ustawiamy Size na wielkość równą ilości
pamięci RAM (przykładowo dla 8GB RAM wpisujemy 8000) potem Beginning następnie wybieramy Type i
wybieramy Enter filesystem type: 82 (Swap) i wciskamy Enter
(Zalecam ustawianie partycji Swap, która jest odpowiednikiem windowsowego pliku wymiany – mimo dużych
3
wielkości pamięci RAM czasem się jednak przydaje)
Ustawiamy się znów na Free Space i wybieramy NEW potem PRIMARY, ustawiamy Size na 30000 (30 GB na
system wystarczy – można dać oczywiście więcej jak jest potrzeba i wolne miejsce na dysku) potem Beginning
następnie wciskamy jeszcze Bootable.
Ustawiamy się znów na Free Space i wybieramy NEW potem PRIMARY, ustawiamy Size na pozostałą wielkość i
wciskamy Enter.
Po tych czynnościach powinno wyglądać mniej więcej tak:
Wybieramy Write wpisujemy yes i wciskamy Enter potem Quit i wrócimy do
#root@slackware:/#
wpisujemy setup i wciskamy Enter
4
Wybieramy ADDSWAP potem OK dalej dla okna CHECK SWAP PARTITION FOR BAD BLOCK wybieramy NO
(chyba że ktoś chce sprawdzić dysk to YES), potem OK.
W oknie Select Linux installation partition - wybieramy pierwsza od góry i wciskamy Select, dajemy Format,
wybieramy ext3 i OK
wróci do okna Select Linux installation partition – wybieramy drugą partycję i wciskamy Select, potem Format i
wybieramy znów ext3 i OK. W oknie SELECT MOUNT POINT FOR... wpisujemy nazwę dla partycji /OPS i
wciskamy OK i potem znów OK
Pojawi się okno SOURCE MEDIA SELECTION – wybieramy 1. Install from a Slackware CD or DVD, dalej auto i
pojawi się okno wyboru pakietów:
Można nic tu nie zmieniać i wybrać OK jednak polecam wywalić niepotrzebne rzeczy. Najlepiej zostawić
zaznaczone gwiazdką tylko następujące pakiety: A, AP, D, K, L, N, X. (oraz KDE dla chętnych co będą chcieli
korzystać ze środowiska graficznego KDE)
Wybieramy OK
W oknie SELECT PROMPTING MODE wybieramy full i OK
Nastąpi instalacja pakietów która potrwa kilkanaście minut...
Dalej w oknie MAKE USB FLASH BOOT wybieramy Skip i OK
W oknie INSTALL LILO wybieramy simple i OK
W oknie CONFIGURE LILO TO USE FRAME BUFFER CONSOLE wybieramy 800x600x32k lub standard jeśli
mamy monitor co nie obsłuży np. w/w rozdzielczości i OK
W oknie OPTIONAL LILO append=”<kernel parametrs>” LINE nic nie wpisujemy i OK
W oknie USE UTF-8 TEXT CONSOLE wybieramy No
W oknie SELECT LILO DESTINATION wybieramy MBR i OK
W oknie MOUSE CONFIGURATION wybieramy imps2 i OK
W oknie GPM CONFIGURATION wybieramy Yes
Konfiguracja sieci.
W oknie CONFIGURE NETWORK? wybieramy Yes
W oknie ENTER HOSTNAME wpisujemy słowo - serwer i OK
W oknie ENTER DOMAIN FOR... wpisujemy słowo - ops i OK
W oknie SETUP IP ADDRESS FOR... wybieramy static IP i OK
W oknie ENTER IP ADDRESS FOR... kasujemy wpisany adres i wpisujemy nowy adres IP serwera (zależnie od
tego jak mamy skonfigurowaną sieć komputerową w ośrodku) przykładowo 192.168.0.1 i OK (dalszy opis będzie
bazował na tym przykładowym adresie serwera 192.168.0.1, jeżeli przyjmiemy inny to należ w każdym poleceniu z
opisu gdzie występuje zmieniać na ten przyjęty przez nas adres)
W oknie ENTER NETMASK FOR LOCAL NETWORK zostawiamy 255.255.255.0 i OK
W oknie ENTER GATEWAY ADDRESS wpisujemy adres bramki internetowej jeśli mamy lub zostawiamy puste i
OK
5
W oknie USE A NAMESERVER? jeśli chcemy by serwer miał dostęp do Internetu wybieramy Yes i w oknie
SELECT NAMESERVER wpisujemy adres serwera DNS np. 194.204.152.34 (dla TP S.A) i OK
Pojawi się okno podsumowujące wprowadzone dane konfiguracji sieci. Można przeglądnąć i ewentualnie poprawić
jeszcze przyciskiem Edit. Potem wybieramy Accept
W oknie CONFIRM STARTUP SERVICES TO RUN wybieramy usługi jakie chcemy by się uruchamiały przy starcie
systemu. Wybieramy gwiazdką:
[*] rc.fuse
[*] rc.hald
[*] rc.inetd
[*] rc.ip_forward (jeśli będziemy chcieli by serwer był w przyszłości bramką internetową)
[*] rc.messagebus
[*] rc.ntpd
[*] rc.samba (jeśli będziemy chcieli by serwer miał możliwość udostępniania zasobów w sieci – bardzo
przydatne)
[*] rc.syslog
[*] rc.sshd
i wybieramy OK
W oknie CONSOLE FONT CONFIGURATION wybieramy No
W oknie HARDWARE CLOCK SET TO UTC wybieramy No i OK
W oknie TIMEZONE CONFIGURATION wybieramy Europe/Warsaw i OK
W oknie SELECT DEFAULT WINDOW MANAGER FOR X wybieramy domyślny menadżer jaki ewentualnie
będziemy chcieli używać (jest to informacja mało istotna gdyż zakładam nie korzystać z interfejsu graficznego)
W oknie WARNING: NO ROOT PASSWORD DETECTED wybieramy Yes i wpisujemy własne hasło dla roota Administratora systemu (dwa razy)
dalej Enter i OK w oknie SETUP COMPLETE
Wybieramy Exit i OK, pojawi się znak zachęty:
#root@slackware:/#
wpisujemy reboot i wciskamy Enter – system się zrestartuje.
Po ponownym uruchomieniu system zapyta nas o login.
#serwer login:
wpisujemy root wciskamy Enter i wpisujemy nasze hasło jakie wcześnie ustawiliśmy i Enter
#root@serwer:~#
Tak wygląda znak zachęty inaczej linia poleceń w terminalu systemu linux
Jesteśmy zalogowani w systemie jako Administrator - root
Podstawowa wymagana konfiguracja systemu Linux Slackware x64
Dalszą konfigurację serwera możemy wykonywać bezpośrednio na nim lub z dowolnego komputera z Windowsem
w sieci używają programu putty.exe – klienta usługi SSH który pozwoli połączyć nam się ze serwerem zdalnie.
Tutaj można go pobrać: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe
W systemie linux istnieje bardzo wygody menadżer plików Midnight Commander pod nazwą mc jaką należy wydać
w linii poleceń.
Zachęcam do korzystania z niego przy wszelakich operacjach na plikach i katalogach (tworzenie, kasowanie,
edytowanie, itp.). Wygląda podobnie jak windowsowski Total Commander. Podstawowe klawisze funkcyjne
najczęściej używane w nim to:
TAB – przechodzenie między oknami
F3 – podgląd zawartości pliku
F4 – włączenie edycji pliku tekstowego
F5 – kopiowanie pliku/katalogu między oknami
F6 – zmiana nazwy lub przeniesienie pliku/katalogu
F7 – tworzenie katalogu
F8 – kasowanie pliku/katalogu
F10 – wyjście z programu
6
1.
Dodanie użytkownika w systemie
adduser nazwa_uzytkownika
Konto użytkownika będzie dość często używane w procesie instalacji i administracji serwera.
Wszędzie gdzie w opisie pojawi się słowo – nazwa_uzytkownika – należy podstawić własną użytą przy
tworzeniu tego konta
2. Dodatkowa struktura katalogów jaka potrzebna będzie do przechowywania skryptów, plików
instalacyjnych, baz danych i kopii zapasowych dla oprogramowania firmy Sygnity
mkdir /OPS/skrypty /OPS/instalki /OPS/SYG_SR /OPS/SYG_DM /OPS/KOPIE
3. Modyfikacja Bootloadera
Podczas uruchamiania się systemu pierwszy ekran z bootloaderem odlicza od 2 minut w dół czekając na
reakcję użytkownika. Aby skrócić ten czas do minimum należy zmienić wartość parametru w pliku
/etc/lilo.conf
Odnajdujemy w nim parametr „timeout =” i zmieniamy jego wartośc z 1200 na 50.
Należy odświeżyć wartość parametru dla bootloadera – w linii poleceń wpisujemy lilo
4. Uruchomienie serwera FTP
Aby usługa FTP serwer działała na naszym serwerze należy wykonać parę czynności.
Edytujemy plik /etc/proftpd.conf
Należy dopisać dodatkowy parametr „DefaultRoot ~” np. pod parametrem Umask 022.
Edytujemy plik /etc/inetd.conf
Należy odheszować linię (wykasować znak # z początku linii):
#ftp
stream tcp
nowait root
/usr/sbin/tcpd proftpd
Odświeżamy ustawienia wydając polecenie killall -HUP inetd
Od tej pory jest możliwość łączenia się ze serwerem po protokole FTP.
5. Podstawowe zabezpieczenie serwera
Skrypt ten skupia się bardziej na samym opisie instalacji - pomija kwestie bezpieczeństwa zabezpieczenia serwera - zwłaszcza jak ma wpięcie bezpośrednie w internet
Opisze tylko podstawowy sposób zabezpieczenia serwera przed połączeniami z zewnątrz.
W linii poleceń piszemy:
echo "ALL:ALL" >> /etc/hosts.deny
echo "ALL:adres_IP_komputera_administratora" >> /etc/hosts.allow
gdzie - adres_IP_komputera_administratora - to adres IP komputera z którego będziemy
administrować/łączyć się ze serwerem po SSH i FTP.
Zebranie niezbędnych pakietów potrzebnych do instalacji oprogramowania i
bazy danych
Zakładam że serwer mamy wpięty do sieci komputerowej co ułatwi nam wgranie na niego potrzebnych pakietów
pobranych z Internetu.
Najlepiej z jakiegoś komputera w sieci gdzie mamy przeglądarkę internetową i dostęp do Internetu ściągać
poszczególne pakiety. Później przeniesiemy je na nasz serwer poprzez FTP.
Wszystkie potrzebne pakiety dostępne też są na stronie http://linux.mgopsgostyn.pl
Potrzebne będą:
serwer baz danych Firebird
http://sourceforge.net/projects/firebird/files/firebird-linux-amd64/2.1.4-Release/FirebirdSS-2.1.4.183930.amd64.tar.gz
Java JDK
http://linorg.usp.br/slackware64-current/extra/jdk-6/jdk-6u22-x86_64-1.txz
7
Dos2Unix
http://www.slackers.it/repository/dos2unix/pkg64/dos2unix-5.3.3-x86_64-1cf.txz
Ze serwera FTP Sygnity
plik - security2.fdb
IP: 195.205.49.17
login: pomsr.pliki
hasło: #aktual125
program PomostStd 1-5.0 (wersja instalki zmodyfikowanej pod Linux Slackware. Modyfikacja dotyczy tylko
tworzenia użytkownika i grupy pomost, przyspieszenia szukania firebirda, instalacji czcionek TTF)
http://linux.mgopsgostyn.pl/Pomost_v1.5-0_slackware.tar.gz
plik konfiguracyjny do fontów TTF dla Javy oraz pakiet skryptów
http://linux.mgopsgostyn.pl/skrypty.tar.gz
Ściągnięte wszystkie pliki przerzucamy na nasz serwer do katalogu /OPS/instalki
Instalacja serwera baz danych Firebird 2.1.4 x64
Rozpakowujemy paczkę.
cd /OPS/instalki
tar vfxz FirebirdSS-2.1.4.18393-0.amd64.tar.gz
cd FirebirdSS-2.1.4.18393-0.amd64
./install.sh
W tym momencie pojawi się Press Enter to start installation or ^C to abort – wciskamy Enter
Nastąpi instalacja która pokaże dwa błędy [FAILED] i zatrzyma się na Please enter new password for SYSDBA
user:
W tym momencie musimy przerwać instalację i wcisnąć CTRL+C
Podmieniamy skrypt który jest winny za błędy które wystąpiły
cp /opt/firebird/misc/firebird.init.d.slackware /etc/rc.d/init.d/firebird
chmod 554 /etc/rc.d/init.d/firebird
Podmieniamy plik security2.fdb
cp /OPS/instalki/security2.fdb /opt/firebird/
chmod 600 /opt/firebird/security2.fdb
chown firebird:firebird /opt/firebird/security2.fdb
Dodajemy polecenie uruchamiania serwera Firebird przy starcie systemu
echo "/etc/rc.d/init.d/firebird start" >> /etc/rc.d/rc.local
Uruchamiamy Firebirda
/etc/rc.d/init.d/firebird start
Pojawi się komunikat: Starting Firebird server [default]: server has been successfully started
Oznacza to że serwer Firebird działa poprawnie.
Instalacja środowiska Java JDK i pakietu dos2unix
Standardowo mamy zainstalowaną Javę w wersji wyższej niż 1.6.0_22
Można to podglądnąć poleceniem java -version (pewnie będzie wersja 1.6.0_25)
Jako że Sygnity zaleca wersje max 1.6.0_22 musimy ja zainstalować.
Najpierw trzeba odinstalować wersje która już jest w systemie w tym celu uruchamiamy program pkgtool
W oknie programu wybieramy Remove wyszukujemy pakiet jre-6u25-x86_64-1 zaznaczamy go i wybieramy OK
Pakiet zostanie odinstalowany.
8
Wychodzimy z programu pkgtool
Teraz można zainstalować wymaganą wersję Javy
installpkg /OPS/instalki/jdk-6u22-x86_64-1.txz
Po instalacji wydanie polecenia java –version powinno nam dać:
java version "1.6.0_22"
Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) 64-Bit Server VM (build 17.1-b03, mixed mode)
Linkujemy jeszcze Javę do ścieżki potrzebnej dla serwera Pomosta Std
ln -s /usr/lib64/java/bin/java /usr/bin/java
Instalujemy teraz niezbędny do instalacji Pomosta pakiet dos2unix
installpkg /OPS/instalki/dos2unix-5.3.3-x86_64-1cf.txz
Instalacja serwera PomostStd 1-5.0 i podniesienie go do wersji posiadanej
bazy danych
Skrypt instalacyjny w wersji instalacyjnej PomostStd 1-5.0_slackware jest zmodyfikowany pod kątem poprawnego
utworzenia użytkownika i grupy pomost w systemie Slackware, poprawnej instalacji czcionek TTF oraz szybszego
wyszukania serwera Firebird podczas instalacji.
Instalacja PomostStd
Wpisujemy w linii poleceń kolejno:
cd /OPS/instalki
tar vfxz Pomost_v1-5.0_slackware.tar.gz
cd Pomost_v1-5.0_slackware
sh Instaluj.bash
Rozpocznie się instalacja. Zostanie wyświetlona informacja o odnalezieniu Javy, a następnie informacja o ścieżce
dostępu do Firebirda - /opt/firebird z pytaniem „Jeśli ta ścieżka jest błędna podaj poprawną jeśli nie naciśnij
ENTER”. Na końcu tego pytania mogą wystąpić jakieś znaczki – należy je wykasować nacisnąć Enter
Pojawi się informacja że rekomendowaną wersją Firebird jest 2.1.3 a w systemie jest zainstalowana 2.1.4 – należy
to zignorować i wpisać literkę „t” oraz Enter by kontynuować instalację.
Następna informacja jest o czcionkach wymaganych – chcemy je zainstalować więc wybieramy „t” i naciskamy
Enter
Teraz należy podać ścieżkę instalacyjną dla PomostStd – kasujemy znaczki na końcu linii i wpisujemy nową
ścieżkę - /OPS/PomostStd i wciskamy Enter
Nastąpi kopiowanie plików instalacyjnych, bazy i aplikacji dla PomostStd.
Następne pytanie o hasło administratora bazy firebird – nie zmieniamy więc potwierdzamy tylko Enterem
Teraz pytanie czy serwer Jboss systemu POMOST Std ma być uruchamiany jako usługa – wybieramy „t” i Enter
Instalacja zakończy się.
Odświeżamy jeszcze dla pewności listę potrzebnych czcionek
cd /usr/share/fonts/TTF
rm fonts.dir
9
rm fonts.scale
mkfontdir
mkfontscale
fc-cache -f
Konfiguracja skryptu uruchamiającego serwer Jboss
Odnajdujemy plik /OPS/PomostStd/jboss/bin/run.sh
Odnajdujemy linię z ustawieniem parametru JAVA_OPTS= (jest na początku pliku)
Musimy tu dopisać dwa nowe parametry: -Duser.language=pl oraz -Duser.country=PL najlepiej na początku
zaraz za znakiem cudzysłowia (między kolejnymi parametrami dajemy spacje).
Należy też zmienić wartość parametrów -Xms512M i -Xmx512M oraz -XX:MaxPermSize=
Określają one wielkość pamięci jaką zajmie Java – dobrze jest ustawić tą wartość na minimum 4096M ale nie
więcej niż 70% całej dostępnej pamięci RAM w serwerze. Generalnie im więcej pamięci dostanie Java tym lepiej
będzie serwer PomostStd działał. Dużo zależy od ilości użytkowników którzy będą łączyć się z serwerem
PomostStd – tak że im więcej pamięci tym lepiej.
Przyjmijmy że mamy np. 8GB RAMu w serwerze – ustawmy więc te parametry na 4096M
Parametrowi -XX:MaxPermSize= można dać 512M lub 1024M
Podsumowując - nasz parametr w pliku run.sh będzie miał postać:
JAVA_OPTS="-Duser.language=pl -Duser.country=PL -Dfile.encoding=Cp1250
-Djboss.server.blockingshutdown=true -Xms4096M -Xmx4096M -XX:MaxPermSize=512M -server
-Djava.awt.headless=true -Dsun.awt.toolkit=sun.awt.X11.XToolkit -ea -Dsun.rmi.dgc.client.gcInterval=3600000
-Dsun.rmi.dgc.server.gcInterval=3600000"
To jest już koniec instalacji serwera PomostStd w wersji 1-5.0. Można go uruchomić wpisując
/etc/init.d/pomost start
Uruchomienie usługi trwa małą chwilę. Nie jest pokazywany postęp uruchamiania więc zanim będziemy się chcieli
połączyć należy odczekać minimum 30 sekund.
Pierwsze uruchomienie serwera PomostStd
Nikt nie zaczyna pracy z programem na pustej bazie jaka jest zaraz po instalacji serwera PomostStd. Baza danych
jaką posiadamy dla niego (pliki POMOST.GDB i MIGRACJA.GDB) jest przygotowana lub wcześniej używana z
konkretną wersją PomostStd.
Zanim przeniesiemy naszą bazę do nowego serwera należy zaktualizować serwer PomostStd do wersji zgodnej z
tą jaką mieliśmy na poprzednim serwerze (np. windowsowym) lub jeśli dopiero migrujemy do PomostStd to do
wersji w jakiej dostaniemy pliki bazy (informacja o wersji jest podawana przez Sygnity przy migracji).
Jednak jako pierwsze musimy połączyć się z zainstalowaną wersją i wprowadzić kod KESO, kod aktywacyjny i
dane użytkownika. Jest to potrzebne by móc dalej zaktualizować PomostStd do wersji posiadanej bazy.
Z dowolnego komputera w sieci łączymy się więc z PomostStd. (zakładam że serwer jest podłączony do sieci
komputerowej).
W przeglądarce internetowej wpisujemy adres:
http://adres_IP_serwera:8080/pomost/
i klikamy na ikonkę - Uruchomienie systemu POMOST STD
10
Pojawi się okno:
Należy wypełnić wszystkie pola wymagane. (Kod aktywacyjny zakładam że każdy ma – może być ten co
dostaliśmy przed lub po migracji)
Po wypełnieniu zatwierdzamy okienko „fajeczką” i potwierdzamy pytanie „Czy chcesz wyjść zapisując
wprowadzone dane” wybierając przycisk TAK
Pojawi się okno logowania – nie logujemy się jednak, i zamykamy program (krzyżykiem w górnym prawym
narożniku i potwierdzamy zamknięcie)
UWAGA!
Jeżeli wersja posiadanej bazy zgadza nam się z wersją instalacyjną PomostStd wtedy możemy przejść od razu do
akapitu o przeniesieniu bazy danych.
Teraz możemy przystąpić do aktualizacji PomostStd. Załóżmy że mamy wersje bazy - 1-5.0 DPP006
Z dowolnego komputera w sieci łączymy się z serwerem FTP Sygnity gdzie znajdują się pliki aktualizacyjne.
Dane serwera FTP Sygnity
IP: 195.205.169.44
login: migracja
W katalogu /paczki znajdują się podkatalogi dla poszczególnych wersji
hasło: !paprotka!
Paczki dostępne są także na stronie http://linux.mgopsgostyn.pl
Nas interesują wersje wyższe niż 1-5.0
a więc ściągamy plik z katalogu - /paczki/SPomost150DPP006/ o nazwie – SPomost_1_5_0DPP006-update.zip
W przyszłości będą się ukazywać paczki z aktualizacjami zawierającymi Dedykowane Pakiety Poprawek (DPP) jak
i następnymi numerycznie wersjami PomostStd.
Zasada jest taka, że jeżeli wersje instalacyjną PomostStd mamy załóżmy np. 1-5.0, a wersję bazy 1-6.0_DPP005 i
na serwerze FTP będą dostępne wersje 1-6.0_update, 1-6.0_DPPxxx_update – to ściągamy zawsze tylko kolejne
wersje pełne numerem oraz ostatnią z ewentualnymi poprawkami DPP (zgodną oczywiście z wersją w jakiej mamy
bazę danych), czyli w tym wypadku do wersji 1-5.0 ściągnęlibyśmy tylko 1-6.0_update i ostatnia wersje z DPP005
dla 1-6.0.
Nie trzeba instalować wszystkich występujących wcześniej wersji z DPP
Wracając do ściągniętego pliku SPomost_1_5_0DPP006-update.zip – należy go rozpakować – będziemy mieli
plik SPomost_1_5_0DPP006-update.jar
Należy je przerzucić na serwer do katalogu /OPS/PomostStd/jboss/update
Można jeszcze zmienić właściciela przeniesionych plików
chown -R pomost:pomost /OPS/PomostStd/jboss/update
11
Aktualizacja serwera PomostStd do wersji aktualnej naszej bazy danych
W linii poleceń piszemy:
cd /OPS/PomostStd/jboss/bin
./jtc-updatetool.sh -txt
Pojawi się pytanie o Imię i Nazwisko (jest to informacja o osobie która dokonuje aktualizacji)– wpisujemy
oczywiście i Enter
Jeżeli w katalogu update znajduje się tylko jedna aktualizacja to nastąpi od razu jej instalacja. W przeciwnym
wypadku pojawi się lista aktualizacji do wyboru z oznaczeniem pod jaką cyfrą jak się znajduje - należy wpisać
numer aktualizacji jaka chcemy zainstalować i wcisnąć Enter– należy pamiętać o odpowiedniej kolejności
instalowania kolejnych aktualizacji.
Nastąpi instalacja wskazanej aktualizacji po jej pomyślnym zakończeniu jeżeli mielibyśmy do zainstalowania
kolejną aktualizację to należy ponownie uruchomić: ./jtc-updatetool.sh -txt - wpisać Imię i Nazwisko i wybrać
kolejną aktualizację do instalacji.
I tak samo aż do ostatniej aktualizacji jaką chcemy zainstalować.
UWAGA! Jeżeli podczas aktualizacji danej poprawki wystąpi błąd to system zawsze wróci do wersji poprzedniej.
UWAGA! Jeżeli podczas aktualizacji danej poprawki system zgłosił że nie może wystartować Pomosta i spyta o
uruchomienie ręczne – dobrze jest je potwierdzić ale po zakończeniu instalacji aktualizacji wykonać restart systemu
linux wpisując polecenie reboot i po uruchomieniu ponownie zalogować się jako root do systemu
W przyszłości gdy będą się ukazywać nowe wersje aktualizacyjne po ich ściągnięciu (jak będziemy już pracować
na Systemie POMOST Std będzie można aktualizacje ściągać przez program bezpośrednio – bez konieczności
ściągania ich z FTP Sygnity) należy je jednak zawsze instalować w/w poleceniem z poziomu serwera. Pamiętać
należy tylko aby przed każdą nową aktualizacją zatrzymać serwer PomostStd (/etc/init.d/pomost stop) i zrobić
kopie bezpieczeństwa katalogu baza oraz najlepiej całego katalogu jboss z lokalizacji /OPS/PomostStd/ i ponownie
uruchomić PomostStd już do procesu aktualizacji (/etc/init.d/pomost start).
Jeżeli mamy już zainstalowane wszystkie aktualizacje i wersja PomostStd zgadza nam się już z wersją posiadanej
bazy danych możemy przystąpić do podmiany bazy.
Przeniesienie bazy danych dla systemu POMOST Std
Na początku należy zatrzymać serwer PomostStd
/etc/init.d/pomost stop
Posiadane pliki bazy – POMOST.GDB i MIGRACJA.GDB należy przekopiować na serwer do katalogu
/OPS/PomostStd/baza
Należy zwrócić uwagę na wielkości liter w nazwach plików tych baz, jeżeli są one pisane małymi literami to należy
zmienić je na DUŻE
Trzeba jeszcze zmienić właściciela przeniesionej bazy i prawa do plików
chown -R firebird:firebird /OPS/PomostStd/baza
chmod -R 660 /OPS/PomostStd/baza/*.GDB
Uruchamiamy serwer PomostStd
/etc/init.d/pomost start
Uruchomienie usługi trwa małą chwilę. Nie jest jest pokazywany postęp uruchamiania więc zanim będziemy się
chcieli połączyć należy odczekać minimum 30 sekund.
Klient programu PomostStd
Z dowolnego komputera z Windowsem w sieci możemy połączyć się z PomostStd. Musimy mieć jednak
zainstalowaną na nim Javę JDK w wersji 6u22
Można zainstalować pakiet KlientSTD.exe dostępny na FTP Sygnity który doda nam na pulpicie ikonkę do
12
uruchomienia programu lub w przeglądarce internetowej wpisać adres:
http://adres_IP_serwera:8080/pomost/
i kliknąć na ikonkę - Uruchomienie systemu POMOST STD
Zostanie uruchomiony klient programu PomostStd i będziemy mogli się zalogować w systemie i korzystać z naszej
podstawionej bazy danych.
Przeniesienie bazy danych dla Oprogramowania Świadczenia i/lub Dodatki
Mieszkaniowe
Dzięki podmianie pliku security2.fdb podczas instalacji Firebirda na ten pobrany z FTP Sygnity mamy praktycznie
gotowy serwer do obsługi bazy danych Oprogramowania Świadczenia (SR, FA, DM) i/lub Dodatki Mieszkaniowe.
Wystarczy tylko przenieść na serwer nasze bazy danych – pliki SR.GDB, SR_ARCH.GDB, SR_MG.GDB i
SR_PUB.GDB oraz jeśli ktoś używa osobnego programu do Dodatków Mieszkaniowych – plik DM.GDB
Pliki baz dla Oprogramowania Świadczenia umieszczamy w /OPS/SYG_SR, a jeżeli używamy programu Dodatki
Mieszkaniowe to jego plik bazy przenosimy do katalogu /OPS/SYG_DM
Należy zwrócić uwagę na wielkości liter w nazwach plików tych baz i zapamiętać gdyż będzie to ważne przy
wpisywaniu ich w pliku konfiguracyjny Oprogramowania Świadczenia i Dodatki Mieszkaniowe na stacjach
roboczych.
Trzeba jeszcze ustawić właścicieli i prawa do plików
chown -R firebird:firebird /OPS/SYG_SR
chown -R firebird:firebird /OPS/SYG_DM
chmod -R 660 /OPS/SYG_SR/*
chmod -R 660 /OPS/SYG_DM/*
Modyfikacja ustawień klienta Oprogramowania Świadczenia i Dodatki Mieszkaniowe
Na wszystkich stacjach roboczych gdzie mamy zainstalowane Oprogramowanie Świadczenia (SR, FA, DM) i/lub
Dodatków Mieszkaniowych – w katalogu gdzie jest zainstalowany program (np. C:\SYG_DodatkiMieszkaniowe\ i
C:\SYG_SwiadczeniaRodzinne\) odnajdujemy plik dbconnections.ini i w nim odnajdujemy linie zaczynające się
od słowa Database (dla SR będą 4 takie linie, dla DM jedna).
Zmieniamy je odpowiednio na:
Database=numer_IP_serwera:/OPS/SYG_SR/SR.GDB
Database=numer_IP_serwera:/OPS/SYG_SR/SR_MG.GDB
Database=numer_IP_serwera:/OPS/SYG_SR/SR_PUB.GDB
Database=numer_IP_serwera:/OPS/SYG_SR/SR_ARCH.GDB
Database=numer_IP_serwera:/OPS/SYG_DM/DM.GDB
Pamiętajmy o wielkości liter w nazwach plików baz danych i dajmy takie jak mamy
Instalacja i aktualizacja Oprogramowania Świadczenia i Dodatki Mieszkaniowe na
stacjach roboczych.
Warto takie zmodyfikowane pliki dbconnections.ini pod nasz serwer trzymać gdzieś z plikami instalacyjnymi
programów do SR, FA i DM. Przydają się one w momentach gdy np formatujemy/przeinstalowujemy jakąś stację
roboczą i musimy na niej ponownie zainstalować oprogramowanie do SR lub DM. Wtedy po zainstalowaniu
pierwszej wersji instalacyjnej od razu podmieniamy plik dbconnections.ini na ten nasz i możemy dalej aktualizować
program do wersji wymaganej pod bazę danych co mamy na serwerze. Nie będziemy musieli wtedy za każdym
razem ręcznie poprawiać wpisy w tym pliku dotyczące położenia baz danych.
Pamiętać również należy że przy instalacji lub aktualizacji Oprogramowania Świadczenia i/lub DM w momencie gdy
13
komputer pyta nas o nazwę serwera – zamiast słowa SERWER wpisać należy adres IP naszego serwera. Inaczej
może nie zostać zlokalizowany serwer i aktualizacja bądź instalacja nie powiedzie się.
Archiwizacja baz danych
Zaczynamy od instalacji paczki skryptów ściągniętych wcześniej – w linii poleceń wpisujemy:
tar vfxz /OPS/instalki/skrypty.tar.gz -C /OPS/skrypty
cd /OPS/skrypty
./instaluj
W pakiecie znajdują się następujące skrypty:
• cache_clean – do czyszczenia cache pliku stronicowania - pozwoli uniknąć problemów z zapełnianiem się
pamięci RAM. - instaluje się do automatycznego wykonywania codziennie w nocy.
• synchro_czas – do synchronizacji daty i czasu w systemie
• kopia_baz_CP – skrypt do tworzenia kopii baz danych (metodą kopiowania)
• kopia_jboss_CP – skrypt do tworzenia kopii katalogu jboss Systemu POMOST Std
Generalnie istnieją dwie szkoły tworzenia kopii bezpieczeństwa baz danych – jedna polega na zwykłym kopiowaniu
plików baz a druga (może bardziej zalecana) na używaniu narzędzi serwera baz danych do tworzenia kopii
(backupów) – w tym przypadku polecenia gbak
Skrypty które przygotowałem wykorzystują tą pierwszą metodę niemniej jednak w dalszej części opisze w jaki
sposób można także korzystać z narzędzia gbak.
W katalogu /OPS/skrypty znajdują się dwa proste skrypty do tworzenia kopii baz danych dla systemu POMOST
Std, Oprogramowania Świadczenia i Dodatki Mieszkaniowe
Skrypty te wykonywać się będą same automatycznie – codziennie o godzinie 23.00 tworząc nam w ten sposób
codzienną kopię baz danych.
Pierwszy skrypt kopia_baz_CP – tworzy jak nazwa wskazuje kopię wszystkich baz PomostStd, SR i DM
UWAGA! Jeżeli chcemy by się ten skrypt wykonywał to piszemy w linii poleceń:
chmod 755 /OPS/skrypty/kopia_baz_CP
Drugi skrypt kopia_jboss_CP – tworzy kopię katalogu jboss serwera PomostStd
UWAGA! Jeżeli chcemy by się ten skrypt wykonywał to piszemy w linii poleceń:
chmod 755 /OPS/skrypty/kopia_jboss_CP
Pliki z kopiami baz warto zgrywać gdzieś na osobny nośnik/komputer np. protokołem FTP.
Pamiętać też należy by co jakiś czas np. oo miesiąc kasować starsze kopie baz by nam się dysk nie zapchał.
Tworzenie kopii baz danych narzędziem - gbak
Drugi sposób tworzenia kopii baz wykorzystuje polecenie gbak z pakietu Firebirda. O ile pierwsza metoda
tworzenia kopii przez kopiowanie wymaga zatrzymania serwera Firebird i PomostStd – o tyle ta nie – a nawet musi
mieć uruchomiony serwer Firebird.
Przykładowo dla Oprogramowania Świadczenia istnieją 4 pliki bazy SR.GDB, SR_MG.GDB, SR_PUB.GDB i
SR_ARCH.GDB
Dla każdej z nich należy osobno utworzyć kopię poleceniem (przykład dla SR.GDB): /opt/firebird/bin/gbak -b -v
-g -ig -user SYSDBA -password masterkey localhost:/OPS/SYG_SR/SR.GDB /OPS/KOPIE/SR.BAK
Analogicznie dla wszystkich plików baz zmieniając ich nazwy i ścieżki w wywołaniu.
Dodatkowo takie utworzone pliki można na końcu spakować i przenieść np. na inny komputer można użyć
polecenia:
tar -czf kopia_baz_DATA_DZISIEJSZA.tar.gz /OPS/KOPIE/*.BAK
14
Odzyskiwanie bazy z kopii
Odzyskiwanie kopii baz z pierwszej metody (kopiowanie) polega na zatrzymaniu serwera PomostStd i Firebird –
polecenie /etc/init.d/pomost stop oraz /etc/init.d/firebird stop, a następnie przekopiowaniu plików baz z katalogu
/OPS/KOPIE do katalogów baz.
Potem należy już tylko ponownie uruchomić serwer Firebird i PomostStd poleceniami /etc/init.d/firebird start i
/etc/init.d/pomost start.
Przy drugim sposobie archiwizacji – narzędziem gbak nie należy zatrzymywać serwera firebird (tylko PomostStd
trzeba zatrzymać).
Do odtworzenia kopii bazy służy do tego polecenie (na przykładzie bazy SR.GDB): /opt/firebird/bin/gbak -r o -v
-user SYSDBA -password masterkey /OPS/KOPIE/SR.BAK localhost:/OPS/SYG_SR/SR.GDB
Oczywiście wcześniej należy w katalogu OPS/KOPIE/ umieścić nasze kopie plików baz danych (pliki *.BAK)
wykonane wcześniej.
Aktualizacja serwera baz danych Firebird do 2.5.x [TYLKO DO TESTÓW]
UWAGA! Opis TYLKO do celów związanych z testowaniem nowej wersji Firebird 2.5.x!!!
Na dzień dzisiejszy system POMOST Std jak i Oprogramowanie Świadczenia i DM z powodzeniem działają na
wersji Firebirda 2.1.x dlatego można śmiało na niej pracować dalej.
W przyszłości możliwe że zajdzie konieczność lub zalecenie przejścia na wersję wyższą tj. 2.5.x
Opiszę więc sposób migracji serwera Firebird do wersji 2.5.x.
Zacytuję tu jeszcze odpowiedź HelpDesku Sygnity na zapytanie o możliwość używania Firebirda w wersji 2.5.1
„Zezwalamy już teraz na pracę na Firebirdzie 2.5.1, pracując na tej wersji nie powinny wystąpić żadne
problemy związane z wykonywaniem jakichkolwiek zapytań czy procedur aktualizacyjnych w żadnym z
programów PomostSTD/SR/DM, pomału już także szykujemy się do globalnej przesiadki na tą wersję
silnika bazy danych, choć na tą chwilę jeszcze nie zapadła ostateczna decyzja, która wersja programów
będzie dokonywać reinstalacji Firebirda i przeładowania baz danych....”
Najważniejszą rzeczą przed przystąpieniem do aktualizacji jest bezwzględne wykonanie kopii wszystkich
baz danych jakie działają na naszym serwerze!!! Opis jak to zrobić znajdziemy wcześniej.
Zalecam także wykonanie kopii katalogu jboss systemu POMOST Std!!!
Na początek dodamy domyślną ścieżkę poleceń Firebirda do zmiennej systemowej PATH by polecenia były
widoczne z każdej ścieżki dostępu – piszemy:
export PATH=$PATH:/opt/firebird/bin
Dobrze jest również wcześniej, zanim zrobimy kopie, zweryfikować posiadane pliki baz danych
Służy do tego polecenie gfix – w linii poleceń piszemy:
./gfix -validate -full -ignore -user SYSDBA -password masterkey /sciezka_do_bazy/baza.gdb
gdzie w /sciezka_do_bazy/baza.gdb należy kolejno użyć wszystkie ścieżki dostępu do naszych plików baz
Jeżeli to polecenie nie zwróci nam żadnych informacji będzie to oznaczać że pliki baz nie są uszkodzone w żaden
sposób i można przystąpić do aktualizacji serwera Firebird.
W przeciwnym wypadku należy spróbować naprawić taką bazę.
Polecam zapoznać się z opisem na stronie - http://gskoczylas.rekord.pl/Firebird/RatowanieBazy.html
lub zgłosić problem do Sygnity na HD
Jeżeli mamy już wykonane kopie baz oraz bazy nie są uszkodzone - można przystąpić do aktualizacji.
15
Zaczynamy od ściągnięcia instalki Firebird 2.5.x
http://sourceforge.net/projects/firebird/files/firebird-linux-amd64/2.5.1-Release/FirebirdSS-2.5.1.263510.amd64.tar.gz/download
Przerzucamy na nasze konto na serwerze klientem FTP i dalej do katalogu /OPS/instalki.
Należy teraz zrobić kopie dwóch plików które przeniesiemy do nowej wersji Firebird – w linii poleceń piszemy:
cd /opt/firebird/
cp security2.fdb /OPS/KOPIE/
cp aliases.conf /OPS/KOPIE/
mkdir /OPS/tmp
Zatrzymujemy też serwer PomostStd i Firebird
/etc/init.d/pomost stop
/etc/init.d/firebird stop
dalej
cd /OPS/instalki
tar vfxz FirebirdSS-2.5.1.26351-0.amd64.tar.gz
cd FirebirdSS-2.5.1.26351-0.amd64\
./install.sh
W tym momencie pojawi się Press Enter to start installation or ^C to abort – wciskamy Enter
Pojawi się informacja że istnieje już katalog z firebirdem i że nastąpi archiwizacja tego katalogu – wciskamy Enter
Nastąpi instalacja która na końcu pokaże dwa błędy [FAILED] i zatrzyma się na Please enter new password for
SYSDBA user:
W tym momencie musimy przerwać instalację i wcisnąć CTRL+C
Podmieniamy skrypt który jest winny za błędy które wystąpiły – wpisujemy w linii poleceń:
cp /opt/firebird/misc/firebird.init.d.slackware /etc/rc.d/init.d/firebird
chmod 755 /etc/rc.d/init.d/firebird
Przywracamy pliki z poprzedniej wersji – w linii poleceń wpisujemy:
cp /OPS/KOPIE/security2.fdb /opt/firebird/
cp /OPS/KOPIE/aliases.conf /opt/firebird/
Uruchamiamy Firebirda
/etc/rc.d/init.d/firebird start
Pojawi się komunikat: Starting Firebird server [default]:
Oznacza to że serwer Firebird działa poprawnie.
Numer struktury bazy - ODS (on-disk structure)
Każda baza danych Firebird ma swój numer struktury ODS, a każda wersja Firebirda pozwala na uruchomienie
takiej bazy w odpowiedniej wersji. Przykładowo Firebird 2.1.x obsługuje bazy w wersji do 11.1, a Firebird 2.5.x w
wersji ODS do 11.2.
Każdy nowy Firebird potrafi obsłużyć bazę z wersji poprzedniej dlatego na dobrą sprawę nie trzeba by było
zmieniać wersji bazy. Jednak całkiem możliwe że aktualizacje oprogramowania firmy Sygnity będą wymagały
wersji bazy zgodnej z wersją Firebirda zainstalowanego na serwerze. Dlatego przedstawię teraz proces konwersji
baz danych z ODS w wersji 11.1 do 11.2 czyli zgodnej z Firebirdem 2.5.x
Poniższy proces należy wykonać dla wszystkich plików baz w lokalizacjach (oczywiście jeżeli posiadamy takie na
serwerze):
/OPS/SYG_SR/SR.GDB
/OPS/SYG_SR/SR_MG.GDB
/OPS/SYG_SR/SR_PUB.GDB
/OPS/SYG_SR/SR_ARCH.GDB
16
/OPS/SYG_DM/DM.GDB
/OPS/PomostStd/baza/POMOST.GDB
/OPS/PomostStd/baza/MIGRACJA.GDB
Jeżeli mamy ustawionego właściciela dla baz systemu POMOST Std innego niż firebird to przed konwersją należy
to zmienić i nadać jako właściciela - firebird – poleceniem:
chown -R firebird:firebird /OPS/PomostStd/baza/
Dla wszystkich posiadanych plików baz wykonujemy polecenia (przykład dla pliku SR.GDB):
./gbak -b -v -g -ig -user SYSDBA -password masterkey localhost:/OPS/SYG_SR/SR.GDB /OPS/tmp/SR.tmp
będzie ono trwało dość długo zależnie od wielkości pliku, następnie wykonujemy polecenie drugie:
./gbak -rep -FIX_FSS_M WIN1250 -v -g -ig -user SYSDBA -password masterkey /OPS/tmp/SR.tmp
localhost:/OPS/SYG_SR/SR.GDB
to też potrwa dłuższą chwilę...
Jak już dokonamy konwersji można sprawdzić czy wersja ODS bazy się zmieniła poleceniem:
gstat /OPS/SYG_SR/SR.GDB
W linii „ODS version” powinno być - 11.2.
Zacytuję jeszcze odpowiedź HelpDesk Sygnity nt. przeładowania bazy w celu podniesienia ODS.
„Pragniemy zwrócić uwagę na użytego w skryptach przeładowujących bazę usera SYSDBA, otóż
PomostSTD korzysta z innego użytkownika POMADMIN i dla właściwego działania systemu wymaga aby
właścicielem bazy był również ten użytkownik, natomiast po wykonaniu odbudowy pliku bazy przy użyciu
użytkownika SYSDBA to on stanie się właścicielem bazy. Tym bardziej zatem, po takim przeładowaniu bazy
zasadne jest wywołanie polecenia /opt/pomost/jboss/narzedzia/FBconfig/fbconfig.sh w celu dodania do
pliku security2.fdb usera POMADMIN i zmiany właściciela bazy na tegoż użytkownika.”
A zatem wykonujemy jeszcze:
/OPS/PomostStd/jboss/narzedzia/FBConfig/fbconfig.sh
To już koniec procesu konwersji bazy. Można ponownie uruchomić serwer PomostStd poleceniem:
/etc/init.d/pomost start
UWAGA!!!
Plik security2.fdb tu używany został przeniesiony z poprzedniej wersji Firebird i ma numer wersji ODS 11.1.
Aby mieć ten plik w wersji ODS 11.2 najlepiej zwrócić się do Sygnity.
Kompilacja kernela 3.x
Aby nasz system zoptymalizować pod sprzęt jaki posiadamy warto jeszcze skompilować jądro systemu – kernel.
Najlepiej zainstalować najnowszą wersję kernela 3.x
Nie będę niestety opisywać konfiguracji jądra gdyż jest to temat dość obszerny – w Internecie można znaleźć wiele
opisów.
Napiszę aby skróconą instrukcję instalacji i kompilacji kernela na przykładzie wersji 3.2.13
Ze strony kernel.org ściągamy najnowszą stabilną wersję kernela – plik FULL SOURCE (na dzień pisania opisu jest
to wersja 3.2.13 - http://www.kernel.org/pub/linux/kernel/v3.0/linux-3.2.13.tar.bz2) i wrzucamy do katalogu
/OPS/instalki
Rozpakowujemy plik do katalogu /usr/src/
17
cd /OPS/instalki
bzip2 -d linux-3.2.13.tar.bz2
tar vfx linux-3.2.13.tar -C /usr/src/
aktualizujemy link do lokalizacji /usr/src/linux
cd /usr/src
rm linux
ln -s linux-3.2.13 linux
Konfigurujemy ustawienia
cd /usr/src/linux
make menuconfig
TU NALEŻY SKONFIGUROWAĆ USTAWIENIA KERNELA!!!
make
make install
Nie trzeba konfigurować pliku lilo.conf – wszystko będzie ustawione już.
Wystarczy teraz tylko:
lilo
reboot
I system wstanie na nowym kernelu.
18