Na zdalnym serwerze, ktory np. jest za NAT'em albo nie ma wystawionej danej usługi na świat, wywołujemy polecenie łącząc się z naszym serwerem z publicznie dostępnym SSH:
sshpass -p NASZEHASLO ssh -f -N -R 10002:localhost:22 UZYTKOWNIK@NASZSERWER.PL -p 60022 &
dzięki czemu na naszym serwerze na porcie 10002 mamy usługę z portu 22 ze zdalnego serwera, która normalnie jest nieosiągalna.
I jeszcze pomocny przykład przekierowania:
ssh -f -N -R 13128:localhost:3128 user@zdalny.serwer -p 60022
niedziela, 24 maja 2009
piątek, 22 maja 2009
INET QoS na Slacku 11 - http://iglo.internetdsl.pl/kernel/
TC-Viewer Baroo Patch - http://iglo.internetdsl.pl/baroo-tcviewer-patch/
TC-Viewer Baroo Patch - http://iglo.internetdsl.pl/baroo-tcviewer-patch/
czwartek, 21 maja 2009
INET QoS - przygotowanie systemu dla routera - kompilacja kernela, iptables, iproute
Odnośnie kompilacji jądra, fajny materiał jest pod adresem:
http://www.eioba.pl/a69850/kompilacja_jadra_linux
Dodatkowa pomoc:
http://jarekm3.ovh.org/index.php?menu=Code_maturity_level_options&grupa=0&strona=opis_konfiguracji.php&odw=1
http://www.linuxbox.pl/index.php?go=kernel
Poniższe przerobione z sukcesem na Debianie (wg http://dziennik-it.blogspot.com/2009/05/instalator-debiana-na-pamieci-flash.html)
apt-get update
apt-get upgrade
apt-get install mc
apt-get install ssh
Odtąd już można zdalnie przez ssh:
apt-get install bzip2 gcc g++ build-essential kernel-package libncurses5-dev
apt-get install zlib1g-dev libssl-dev
apt-get install dh-make
apt-get install fakeroot
apt-get install bison
apt-get install flex
apt-get install libdb4.6++-dev
apt-get install pciutils
apt-get install autotools-dev
cd /root
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.7.tar.bz2
wget http://www.inet.one.pl/download/system/system-source-2.6.24.7-1.tar.gz
cp linux-2.6.24.7.tar.bz2 /usr/src
cd /usr/src
tar -jxvf linux-2.6.24.7.tar.bz2
ln -s linux-2.6.24.7 linux
cd /root
cp system-source-2.6.24.7-1.tar.gz /usr/src
cd /usr/src
tar xvf system-source-2.6.24.7-1.tar.gz
cp system-source-2.6.24.7-1/kernel/kernel-2.6.24.7.diff /usr/src/linux
cd /usr/src/linux
patch -p1 < kernel-2.6.24.7.diff
cd /usr/src/
cp system-source-2.6.24.7-1/kernel/.config /usr/src/linux
cd /usr/src/linux
make menuconfig
- - - Load alternative configuration file -> .config
- - - General setup ---> Prompt for development and/or incomplete code/drivers (odznaczone)
- - - Processor type and features -> Core2 / newer XEON
- - - Device Drivers -> Multiple devices driver support (RAID and LVM) -> wszystkie zaznaczone w podgałęziach
- - - Serial ATA (prod) and Parallel ATA (experimental) drivers --->
- - - - - - AHCI SATA support
- - - - - - Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support
- - - Character devices ---> IPMI top-level message handler ---> zaznaczone wszystkie jak leci
- - - Device Drivers -> I2C support -> wszystkie jak leci + chyba że wyraźnie nie dotyczą Intela
- - - Device Drivers -> HID Devices ---> wszystkie jak leci
- - - Device Drivers -> DMA Engine support ---> wszystkie jak leci
- - - General setup ---> Prompt for development and/or incomplete code/drivers (zaznaczone)
- - - Networking -> Networking Options -> Network packet filtering framework (Netfilter) -> wszystkie gałęzie
co się da jako moduł / reszta na *
make
make-kpkg --revision 1.0 --append-to-version -router -initrd --initrd kernel_image
cd ..
dpkg -i linux-image-2.6.24.7-router_1.0_i386.deb
reboot
cd /usr/src/system-source-2.6.24.7-1/iptables/iptables-1.4.0
make clean
make
dh_make -s -f ../iptables-1.4.0.tar.bz2
dpkg-buildpackage -rfakeroot
dpkg -i ../iptables_1.4.0-1_i386.deb
cd /usr/src/system-source-2.6.24.7-1/iproute2/iproute2-2.6.25
make clean
./configure
make
dh_make -s -f ../iproute2-2.6.25.tar.bz2
dpkg-buildpackage -rfakeroot
dpkg -i ../iproute2_2.6.25-1_i386.deb
cd /root
wget http://www.inet.one.pl/download/config/+20090215.tar.gz
tar xvf +20090215.tar.gz
cp /root/+20090215/rc.* /sbin
cd /root
wget http://sunet.dl.sourceforge.net/sourceforge/l7-filter/l7-protocols-2009-05-10.tar.gz
tar xvf l7-protocols-2009-05-10.tar.gz
mkdir /etc/l7-protocols
cp /root/l7-protocols-2009-05-10/protocols/* /etc/l7-protocols/
--- dodatki ---
Testowe sprawdzenie czy nie ma błędów:
/sbin/rc.firewall start > /root/firewall.log && /sbin/rc.firewall stop
Ewentualna deinstalacja po ponownej rekompilacji przed nową instalacją:
dpkg -P linux-image-2.6.24.7-router
--- odnośnie sprzętu ---
lspci -k
00:00.0 Host bridge: Intel Corporation 82X38/X48 Express DRAM Controller
00:01.0 PCI bridge: Intel Corporation 82X38/X48 Express Host-Primary PCI Express Bridge
Kernel driver in use: pcieport-driver
00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 02)
Kernel driver in use: uhci_hcd
00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 02)
Kernel driver in use: uhci_hcd
00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 02)
Kernel driver in use: ehci_hcd
00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 02)
Kernel driver in use: pcieport-driver
00:1c.4 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 5 (rev 02)
Kernel driver in use: pcieport-driver
00:1c.5 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 (rev 02)
Kernel driver in use: pcieport-driver
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 02)
Kernel driver in use: uhci_hcd
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 02)
Kernel driver in use: uhci_hcd
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 02)
Kernel driver in use: uhci_hcd
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 02)
Kernel driver in use: ehci_hcd
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)
00:1f.0 ISA bridge: Intel Corporation 82801IR (ICH9R) LPC Interface Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA AHCI Controller (rev 02)
Kernel driver in use: ahci
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
Kernel driver in use: i801_smbus
01:00.0 Ethernet controller: Intel Corporation 82572EI Gigabit Ethernet Controller (Copper) (rev 06)
Kernel driver in use: e1000
Kernel modules: e1000
02:00.0 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02)
02:00.1 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02)
03:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G200e [Pilot] ServerEngines (SEP1) (rev 02)
lsusb
lsmod na oryginalnym jądrze:
ipv6 235364 16
loop 12748 0
snd_pcm 62596 0
snd_timer 17800 1 snd_pcm
snd 45604 2 snd_pcm,snd_timer
soundcore 6368 1 snd
snd_page_alloc 7816 1 snd_pcm
i2c_i801 7920 0
i2c_core 19828 1 i2c_i801
pcspkr 2432 0
iTCO_wdt 9508 0
button 6096 0
evdev 8000 0
ext3 105512 2
jbd 39444 1 ext3
mbcache 7108 1 ext3
dm_mirror 15104 0
dm_log 8484 1 dm_mirror
dm_snapshot 14340 0
dm_mod 46184 8 dm_mirror,dm_log,dm_snapshot
sd_mod 22200 3
usb_storage 77024 0
usbhid 35904 0
hid 33184 1 usbhid
ff_memless 4392 1 usbhid
ahci 23596 2
libata 140416 1 ahci
scsi_mod 129324 3 sd_mod,usb_storage,libata
dock 8304 1 libata
igb 61476 0
ehci_hcd 28396 0
uhci_hcd 18672 0
usbcore 118224 5 usb_storage,usbhid,ehci_hcd,uhci_hcd
e1000e 84612 0
thermal 15228 0
processor 32544 1 thermal
fan 4164 0
thermal_sys 10856 3 thermal,processor,fan
http://www.eioba.pl/a69850/kompilacja_jadra_linux
Dodatkowa pomoc:
http://jarekm3.ovh.org/index.php?menu=Code_maturity_level_options&grupa=0&strona=opis_konfiguracji.php&odw=1
http://www.linuxbox.pl/index.php?go=kernel
Poniższe przerobione z sukcesem na Debianie (wg http://dziennik-it.blogspot.com/2009/05/instalator-debiana-na-pamieci-flash.html)
apt-get update
apt-get upgrade
apt-get install mc
apt-get install ssh
Odtąd już można zdalnie przez ssh:
apt-get install bzip2 gcc g++ build-essential kernel-package libncurses5-dev
apt-get install zlib1g-dev libssl-dev
apt-get install dh-make
apt-get install fakeroot
apt-get install bison
apt-get install flex
apt-get install libdb4.6++-dev
apt-get install pciutils
apt-get install autotools-dev
cd /root
wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.24.7.tar.bz2
wget http://www.inet.one.pl/download/system/system-source-2.6.24.7-1.tar.gz
cp linux-2.6.24.7.tar.bz2 /usr/src
cd /usr/src
tar -jxvf linux-2.6.24.7.tar.bz2
ln -s linux-2.6.24.7 linux
cd /root
cp system-source-2.6.24.7-1.tar.gz /usr/src
cd /usr/src
tar xvf system-source-2.6.24.7-1.tar.gz
cp system-source-2.6.24.7-1/kernel/kernel-2.6.24.7.diff /usr/src/linux
cd /usr/src/linux
patch -p1 < kernel-2.6.24.7.diff
cd /usr/src/
cp system-source-2.6.24.7-1/kernel/.config /usr/src/linux
cd /usr/src/linux
make menuconfig
- - - Load alternative configuration file -> .config
- - - General setup ---> Prompt for development and/or incomplete code/drivers (odznaczone)
- - - Processor type and features -> Core2 / newer XEON
- - - Device Drivers -> Multiple devices driver support (RAID and LVM) -> wszystkie zaznaczone w podgałęziach
- - - Serial ATA (prod) and Parallel ATA (experimental) drivers --->
- - - - - - AHCI SATA support
- - - - - - Intel ESB, ICH, PIIX3, PIIX4 PATA/SATA support
- - - Character devices ---> IPMI top-level message handler ---> zaznaczone wszystkie jak leci
- - - Device Drivers -> I2C support -> wszystkie jak leci + chyba że wyraźnie nie dotyczą Intela
- - - Device Drivers -> HID Devices ---> wszystkie jak leci
- - - Device Drivers -> DMA Engine support ---> wszystkie jak leci
- - - General setup ---> Prompt for development and/or incomplete code/drivers (zaznaczone)
- - - Networking -> Networking Options -> Network packet filtering framework (Netfilter) -> wszystkie gałęzie
co się da jako moduł / reszta na *
make
make-kpkg --revision 1.0 --append-to-version -router -initrd --initrd kernel_image
cd ..
dpkg -i linux-image-2.6.24.7-router_1.0_i386.deb
reboot
cd /usr/src/system-source-2.6.24.7-1/iptables/iptables-1.4.0
make clean
make
dh_make -s -f ../iptables-1.4.0.tar.bz2
dpkg-buildpackage -rfakeroot
dpkg -i ../iptables_1.4.0-1_i386.deb
cd /usr/src/system-source-2.6.24.7-1/iproute2/iproute2-2.6.25
make clean
./configure
make
dh_make -s -f ../iproute2-2.6.25.tar.bz2
dpkg-buildpackage -rfakeroot
dpkg -i ../iproute2_2.6.25-1_i386.deb
cd /root
wget http://www.inet.one.pl/download/config/+20090215.tar.gz
tar xvf +20090215.tar.gz
cp /root/+20090215/rc.* /sbin
cd /root
wget http://sunet.dl.sourceforge.net/sourceforge/l7-filter/l7-protocols-2009-05-10.tar.gz
tar xvf l7-protocols-2009-05-10.tar.gz
mkdir /etc/l7-protocols
cp /root/l7-protocols-2009-05-10/protocols/* /etc/l7-protocols/
--- dodatki ---
Testowe sprawdzenie czy nie ma błędów:
/sbin/rc.firewall start > /root/firewall.log && /sbin/rc.firewall stop
Ewentualna deinstalacja po ponownej rekompilacji przed nową instalacją:
dpkg -P linux-image-2.6.24.7-router
--- odnośnie sprzętu ---
lspci -k
00:00.0 Host bridge: Intel Corporation 82X38/X48 Express DRAM Controller
00:01.0 PCI bridge: Intel Corporation 82X38/X48 Express Host-Primary PCI Express Bridge
Kernel driver in use: pcieport-driver
00:1a.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #4 (rev 02)
Kernel driver in use: uhci_hcd
00:1a.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #5 (rev 02)
Kernel driver in use: uhci_hcd
00:1a.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #2 (rev 02)
Kernel driver in use: ehci_hcd
00:1c.0 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 1 (rev 02)
Kernel driver in use: pcieport-driver
00:1c.4 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 5 (rev 02)
Kernel driver in use: pcieport-driver
00:1c.5 PCI bridge: Intel Corporation 82801I (ICH9 Family) PCI Express Port 6 (rev 02)
Kernel driver in use: pcieport-driver
00:1d.0 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #1 (rev 02)
Kernel driver in use: uhci_hcd
00:1d.1 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #2 (rev 02)
Kernel driver in use: uhci_hcd
00:1d.2 USB Controller: Intel Corporation 82801I (ICH9 Family) USB UHCI Controller #3 (rev 02)
Kernel driver in use: uhci_hcd
00:1d.7 USB Controller: Intel Corporation 82801I (ICH9 Family) USB2 EHCI Controller #1 (rev 02)
Kernel driver in use: ehci_hcd
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)
00:1f.0 ISA bridge: Intel Corporation 82801IR (ICH9R) LPC Interface Controller (rev 02)
00:1f.2 SATA controller: Intel Corporation 82801IR/IO/IH (ICH9R/DO/DH) 6 port SATA AHCI Controller (rev 02)
Kernel driver in use: ahci
00:1f.3 SMBus: Intel Corporation 82801I (ICH9 Family) SMBus Controller (rev 02)
Kernel driver in use: i801_smbus
01:00.0 Ethernet controller: Intel Corporation 82572EI Gigabit Ethernet Controller (Copper) (rev 06)
Kernel driver in use: e1000
Kernel modules: e1000
02:00.0 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02)
02:00.1 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02)
03:00.0 VGA compatible controller: Matrox Graphics, Inc. MGA G200e [Pilot] ServerEngines (SEP1) (rev 02)
lsusb
lsmod na oryginalnym jądrze:
ipv6 235364 16
loop 12748 0
snd_pcm 62596 0
snd_timer 17800 1 snd_pcm
snd 45604 2 snd_pcm,snd_timer
soundcore 6368 1 snd
snd_page_alloc 7816 1 snd_pcm
i2c_i801 7920 0
i2c_core 19828 1 i2c_i801
pcspkr 2432 0
iTCO_wdt 9508 0
button 6096 0
evdev 8000 0
ext3 105512 2
jbd 39444 1 ext3
mbcache 7108 1 ext3
dm_mirror 15104 0
dm_log 8484 1 dm_mirror
dm_snapshot 14340 0
dm_mod 46184 8 dm_mirror,dm_log,dm_snapshot
sd_mod 22200 3
usb_storage 77024 0
usbhid 35904 0
hid 33184 1 usbhid
ff_memless 4392 1 usbhid
ahci 23596 2
libata 140416 1 ahci
scsi_mod 129324 3 sd_mod,usb_storage,libata
dock 8304 1 libata
igb 61476 0
ehci_hcd 28396 0
uhci_hcd 18672 0
usbcore 118224 5 usb_storage,usbhid,ehci_hcd,uhci_hcd
e1000e 84612 0
thermal 15228 0
processor 32544 1 thermal
fan 4164 0
thermal_sys 10856 3 thermal,processor,fan
środa, 20 maja 2009
Instalator Debiana na pamięci Flash / dysku USB
Pobieramy z sieci program UNetbootin.
Wersja dla Windows to bezinstalacyjny plik uruchomieniowy.
Potrzebujemy pamięć USB.
Zakładamy na niej jedną partycję FAT (raczej nie FAT32)
Z poziomu programu wybieramy Distribution / Debian / Stable_NetInstall
Wybieramy napęd i wciskamy OK.
Pobrany i wgrany na USB zostanie specjalny instalator, za pomocą którego zainstalujemy Debiana.
Uwagi:
- można wybrać własny Diskimage (ISO) aczkolwiek przewidziane (jak przypuszczam) jest to raczej dla dystrybucji typu Live a nie instalatorów.
Pułapki:
- pod koniec instalacji systemu należy zainstalować GRUB'a na dysku twardym, a nie na pamięci USB z której bootujemy instalator.
- instalacja typowo sieciowa, zatem niezbędna jest karta sieciowa obsługiwana przez instalator.
- ponieważ po wyjęciu pendrive'a z instalatorem i bootowaniu z lokalnego dysku twardego zmienia nam się kolejność dysków widzianych przez Debiana konieczna są: odpalenie systemu z GRUBa z edycją polecenia by systemu szukał na (hd0,0) a nie (hd2,0); edycja pliku /etc/fstab by system wiedział że /boot jest na /dev/sda1 a nie /dev/sda3; na koniec edycja /boot/grub/menu.lst by bootmanager wiedział gdzie szukać systemu.
Wersja dla Windows to bezinstalacyjny plik uruchomieniowy.
Potrzebujemy pamięć USB.
Zakładamy na niej jedną partycję FAT (raczej nie FAT32)
Z poziomu programu wybieramy Distribution / Debian / Stable_NetInstall
Wybieramy napęd i wciskamy OK.
Pobrany i wgrany na USB zostanie specjalny instalator, za pomocą którego zainstalujemy Debiana.
Uwagi:
- można wybrać własny Diskimage (ISO) aczkolwiek przewidziane (jak przypuszczam) jest to raczej dla dystrybucji typu Live a nie instalatorów.
Pułapki:
- pod koniec instalacji systemu należy zainstalować GRUB'a na dysku twardym, a nie na pamięci USB z której bootujemy instalator.
- instalacja typowo sieciowa, zatem niezbędna jest karta sieciowa obsługiwana przez instalator.
- ponieważ po wyjęciu pendrive'a z instalatorem i bootowaniu z lokalnego dysku twardego zmienia nam się kolejność dysków widzianych przez Debiana konieczna są: odpalenie systemu z GRUBa z edycją polecenia by systemu szukał na (hd0,0) a nie (hd2,0); edycja pliku /etc/fstab by system wiedział że /boot jest na /dev/sda1 a nie /dev/sda3; na koniec edycja /boot/grub/menu.lst by bootmanager wiedział gdzie szukać systemu.
wtorek, 19 maja 2009
The SQL Server System Configuration Checker cannot be executed due to WMI configuration on the machine
NAZWA_SERWERA Error:2147749896 (0x80041008).
http://go.microsoft.com/fwlink?LinkID=20476&ProdName=Microsoft+SQL+Server&ProdVer=9.00.3042.00&EvtSrc=setup.rll&EvtID=70342
Rozwiązanie tutaj:
http://social.msdn.microsoft.com/Forums/en-US/Vsexpressinstall/thread/632ca405-1c38-405b-9ed3-01785c9f99d1
a konkretnie trzeba uruchomić skrypt:
@echo on
cd /d c:\temp
if not exist %windir%\system32\wbem goto TryInstall
cd /d %windir%\system32\wbem
net stop winmgmt
winmgmt /kill
if exist Rep_bak rd Rep_bak /s /q
rename Repository Rep_bak
for %%i in (*.dll) do RegSvr32 -s %%i
for %%i in (*.exe) do call :FixSrv %%i
for %%i in (*.mof,*.mfl) do Mofcomp %%i
net start winmgmt
goto End
:FixSrv
if /I (%1) == (wbemcntl.exe) goto SkipSrv
if /I (%1) == (wbemtest.exe) goto SkipSrv
if /I (%1) == (mofcomp.exe) goto SkipSrv
%1 /RegServer
:SkipSrv
goto End
:TryInstall
if not exist wmicore.exe goto End
wmicore /s
net start winmgmt
:End
http://go.microsoft.com/fwlink?LinkID=20476&ProdName=Microsoft+SQL+Server&ProdVer=9.00.3042.00&EvtSrc=setup.rll&EvtID=70342
Rozwiązanie tutaj:
http://social.msdn.microsoft.com/Forums/en-US/Vsexpressinstall/thread/632ca405-1c38-405b-9ed3-01785c9f99d1
a konkretnie trzeba uruchomić skrypt:
@echo on
cd /d c:\temp
if not exist %windir%\system32\wbem goto TryInstall
cd /d %windir%\system32\wbem
net stop winmgmt
winmgmt /kill
if exist Rep_bak rd Rep_bak /s /q
rename Repository Rep_bak
for %%i in (*.dll) do RegSvr32 -s %%i
for %%i in (*.exe) do call :FixSrv %%i
for %%i in (*.mof,*.mfl) do Mofcomp %%i
net start winmgmt
goto End
:FixSrv
if /I (%1) == (wbemcntl.exe) goto SkipSrv
if /I (%1) == (wbemtest.exe) goto SkipSrv
if /I (%1) == (mofcomp.exe) goto SkipSrv
%1 /RegServer
:SkipSrv
goto End
:TryInstall
if not exist wmicore.exe goto End
wmicore /s
net start winmgmt
:End
poniedziałek, 18 maja 2009
INSTRUKCJA REKLAMACJI BEZPOŚREDNIEJ W SEAGATE
Znalezione w mail'u:
Wejdź na stronę:
http://www.seagate.com/www/pl-pl/support/warranty_&_returns_assistance/
Po prawej stronie w części Zwrot produktu należy kliknąć na link
Dokonaj zwrotu dysku jako gość
Wybieramy: Wysyłka do kraju - Poland
Należy wpisać numer modelu lub numer katalogowy oraz Numer seryjny (jeśli nie wiesz gdzie znaleźć numer seryjny wejdź na http://support.seagate.com/rightnow/Flash/gtla_locater/Seagate_sn_gtla.html) Jeśli chcesz dodać więcej niż jeden dysk do jednego zgłoszenia kliknij na Dodać kolejny produkt.
Gdy wpiszesz już wszystkie numery seryjne i numery katalogowe lub modelu kliknij na Wyślij.
Pokaże się strona z wymienionymi wszystkimi dyskami oraz z informacją o dacie końca gwarancji - jeśli produkt jest na gwarancji będzie zaznaczone pole Zwrot.
Należy kliknąć Dalej.
Trzeba wypełnić pola na stronie, wpisać swoje dane kontaktowe, adresowe
Zaznaczyć pole: Akceptuję przedstawione postanowienia i warunki.
Opcjonalnie można założyć sobie konto w razie gdybyśmy w przyszłości chcieli zgłaszać dyski nie trzeba będzie znów danych adresowych i kontaktowych uzupełniać. Wtedy należy wypełnić pola: Identyfikator użytkownika, Potwierdź hasło, Tajne pytanie, Odpowiedź na tajne pytanie.
Po wypełnieniu wszystkich wymaganych pól należy kliknąc na Przegląd zamówienia/płatności
WAŻNE
--------------
Jako miejsce, do którego produkt ma zostać wysłany wybrać:
UPS-SCS Warszawa, UPS SCS (Polska) Sp. z o.o., Warszawa, N.A, Poland
--------------
W innym przypadku mogą być później problemy.
Następnie klikamy na Wyślij zamówienie.
Na następnej stronie klikamy na Wydrukuj etykietę wysyłkową na paczkę ze zwracanym produktem. Drukujemy etykietę która nam się pokazała w oddzielnym oknie. Wypełniamy druk poczty. Wysyłka na adres:
UPS SCS (Polska) Sp. z o.o. Segment A4D
ul. Szyszkowa 35/37
Warszawa 02-285
Wejdź na stronę:
http://www.seagate.com/www/pl-pl/support/warranty_&_returns_assistance/
Po prawej stronie w części Zwrot produktu należy kliknąć na link
Dokonaj zwrotu dysku jako gość
Wybieramy: Wysyłka do kraju - Poland
Należy wpisać numer modelu lub numer katalogowy oraz Numer seryjny (jeśli nie wiesz gdzie znaleźć numer seryjny wejdź na http://support.seagate.com/rightnow/Flash/gtla_locater/Seagate_sn_gtla.html) Jeśli chcesz dodać więcej niż jeden dysk do jednego zgłoszenia kliknij na Dodać kolejny produkt.
Gdy wpiszesz już wszystkie numery seryjne i numery katalogowe lub modelu kliknij na Wyślij.
Pokaże się strona z wymienionymi wszystkimi dyskami oraz z informacją o dacie końca gwarancji - jeśli produkt jest na gwarancji będzie zaznaczone pole Zwrot.
Należy kliknąć Dalej.
Trzeba wypełnić pola na stronie, wpisać swoje dane kontaktowe, adresowe
Zaznaczyć pole: Akceptuję przedstawione postanowienia i warunki.
Opcjonalnie można założyć sobie konto w razie gdybyśmy w przyszłości chcieli zgłaszać dyski nie trzeba będzie znów danych adresowych i kontaktowych uzupełniać. Wtedy należy wypełnić pola: Identyfikator użytkownika, Potwierdź hasło, Tajne pytanie, Odpowiedź na tajne pytanie.
Po wypełnieniu wszystkich wymaganych pól należy kliknąc na Przegląd zamówienia/płatności
WAŻNE
--------------
Jako miejsce, do którego produkt ma zostać wysłany wybrać:
UPS-SCS Warszawa, UPS SCS (Polska) Sp. z o.o., Warszawa, N.A, Poland
--------------
W innym przypadku mogą być później problemy.
Następnie klikamy na Wyślij zamówienie.
Na następnej stronie klikamy na Wydrukuj etykietę wysyłkową na paczkę ze zwracanym produktem. Drukujemy etykietę która nam się pokazała w oddzielnym oknie. Wypełniamy druk poczty. Wysyłka na adres:
UPS SCS (Polska) Sp. z o.o. Segment A4D
ul. Szyszkowa 35/37
Warszawa 02-285
sobota, 16 maja 2009
Apache JMeter - testy obciążeniowe serwisów WWW
Budując nowy serwis internetowy, stawiając różne usługi na serwerze warto jest przetestować nowe rozwiązania pod względem wydajności. Przydatna do tego będzie aplikacja Apache JMeter napisana w Javie. Program Apache JMeter jest zaawansowanym systemem do mierzenia wydajności obiektów statycznych oraz dynamicznych (np. plików, servletów, klas Javy, serwerów HTTP i FTP itd.). Umożliwia testowanie wydajności, poprawności, wytrzymałości na duże obciążenie oraz analizę otrzymanych danych.
Ciąg dalszy na stronie:
thecamels.org/2009/05/11/testy-wydajnosciowe-za-pomoca-apache-jmeter/
Źródło: znalezione w mailu :)
http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi
Ewentualnie może być potrzebny: jdk-6u13-javafx-1_1_1-windows-i586.exe
Dodatkowe materiały:
http://www.sjsi.org/webgears/files/sjsi/File/tester/tester_5.pdf
http://students.mimuw.edu.pl/SO/Projekt04-05/temat2-g2/index.html#JMeter
http://jakarta.apache.org/jmeter/
Ciąg dalszy na stronie:
thecamels.org/2009/05/11/testy-wydajnosciowe-za-pomoca-apache-jmeter/
Źródło: znalezione w mailu :)
http://jakarta.apache.org/site/downloads/downloads_jmeter.cgi
Ewentualnie może być potrzebny: jdk-6u13-javafx-1_1_1-windows-i586.exe
Dodatkowe materiały:
http://www.sjsi.org/webgears/files/sjsi/File/tester/tester_5.pdf
http://students.mimuw.edu.pl/SO/Projekt04-05/temat2-g2/index.html#JMeter
http://jakarta.apache.org/jmeter/
środa, 13 maja 2009
Jak znaleźć wszystkie pliki pod Linuxem większe niż ... ?
Dla przykładu większe niż 100MB:
find / -size +100M -ls | sort -nr -k 7 | awk '{ print $7" "$11 }'
find / -size +100M -ls | sort -nr -k 7 | awk '{ print $7" "$11 }'
Problem - Planet ENW-9700 + Debian 5.01
Luźne zapiski odnośnie prób uruchomienia tej karty sieciowej.
Chipset: Marvell 88e8053
http://linux.derkeiler.com/Mailing-Lists/Debian/2004-12/2305.html
Marvell driver for Linux kernels 2.6.4 and above
Version: 10.70.1.3, System: Linux, Datum: 30.08.2006
http://www.syskonnect.com/syskonnect/support/driver/htm/sk9e21_lin.htm
Marvell Yukon/SysKonnect SK-98xx Gigabit Ethernet Adapter driver for LINUX
http://debian.linux.pl/viewtopic.php?t=7426
http://ubuntuforums.org/showthread.php?p=7081765
aptitude install linux-headers-`uname -r` gcc gcc-4.1 gcc-4.1-base gcc-3.4-base libgcc1 g++ g++-4.1 build-essential
[/etc/apt/sources.list]
deb http://ftp.pl.debian.org/debian/ lenny main non-free contrib
deb-src http://ftp.pl.debian.org/debian/ lenny main non-free contrib
deb http://security.debian.org/ lenny/updates main contrib non-free
deb-src http://security.debian.org/ lenny/updates main contrib non-free
apt-get install linux-source-2.6.26
apt-get install bzip2
cd /usr/src
tar -jxvf linux-source-2.6.26
ln -s linux-source-2.6.26 linux
apt-get install libncurses5-dev
cd /usr/src/linux
make clean
make menuconfig
make
apt-get instal kernel-package
sudo apt-get install zlib1g-dev libssl-dev
make-kpkg --revision 1.0 --append-to-version -router -initrd --initrd kernel_image
cd ..
dpkg -i linux-image-2.6.26-router_1.0_i386.deb
By odinstalować:
dpkg -P linux-image-x.x.xx-router
albo trochę kompilowane po staremu ...
make vmlinux
make bzImage
make modules
make modules_install
kopiuje System.map + ln
kopiuje BzImage + ln
mkinitrd ... konfiguracja grub ...
http://debian.linux.pl/viewtopic.php?t=7426
http://debian.linux.pl/viewtopic.php?t=7426
http://linux.derkeiler.com/Mailing-Lists/Debian/2004-12/2305.html
http://ubuntuforums.org/showthread.php?p=7081765
http://ubuntuforums.org/archive/index.php/t-1055931.html
Moduły być może odpowiedzialne:
insmod sky2.ko
insmod skge.ko
Do konfiguracji interfejsów korzystamy z 'ip' (ifconfig jest passe)
ip link
I taka ciekawostka odnośnie poprawiania modułów:
su
modprobe -v sky2
cd /lib/modules/2.6.25.9-0.2-default/kernel/drivers/net
cp -p sky2.ko{,.orig}
perl -pe 's/\0\0\x6c\x43/\0\0\x55\x43/g' sky2.ko.orig > \ sky2.ko
Chipset: Marvell 88e8053
http://linux.derkeiler.com/Mailing-Lists/Debian/2004-12/2305.html
Marvell driver for Linux kernels 2.6.4 and above
Version: 10.70.1.3, System: Linux, Datum: 30.08.2006
http://www.syskonnect.com/syskonnect/support/driver/htm/sk9e21_lin.htm
Marvell Yukon/SysKonnect SK-98xx Gigabit Ethernet Adapter driver for LINUX
http://debian.linux.pl/viewtopic.php?t=7426
http://ubuntuforums.org/showthread.php?p=7081765
aptitude install linux-headers-`uname -r` gcc gcc-4.1 gcc-4.1-base gcc-3.4-base libgcc1 g++ g++-4.1 build-essential
[/etc/apt/sources.list]
deb http://ftp.pl.debian.org/debian/ lenny main non-free contrib
deb-src http://ftp.pl.debian.org/debian/ lenny main non-free contrib
deb http://security.debian.org/ lenny/updates main contrib non-free
deb-src http://security.debian.org/ lenny/updates main contrib non-free
apt-get install linux-source-2.6.26
apt-get install bzip2
cd /usr/src
tar -jxvf linux-source-2.6.26
ln -s linux-source-2.6.26 linux
apt-get install libncurses5-dev
cd /usr/src/linux
make clean
make menuconfig
make
apt-get instal kernel-package
sudo apt-get install zlib1g-dev libssl-dev
make-kpkg --revision 1.0 --append-to-version -router -initrd --initrd kernel_image
cd ..
dpkg -i linux-image-2.6.26-router_1.0_i386.deb
By odinstalować:
dpkg -P linux-image-x.x.xx-router
albo trochę kompilowane po staremu ...
make vmlinux
make bzImage
make modules
make modules_install
kopiuje System.map + ln
kopiuje BzImage + ln
mkinitrd ... konfiguracja grub ...
http://debian.linux.pl/viewtopic.php?t=7426
http://debian.linux.pl/viewtopic.php?t=7426
http://linux.derkeiler.com/Mailing-Lists/Debian/2004-12/2305.html
http://ubuntuforums.org/showthread.php?p=7081765
http://ubuntuforums.org/archive/index.php/t-1055931.html
Moduły być może odpowiedzialne:
insmod sky2.ko
insmod skge.ko
Do konfiguracji interfejsów korzystamy z 'ip' (ifconfig jest passe)
ip link
I taka ciekawostka odnośnie poprawiania modułów:
su
modprobe -v sky2
cd /lib/modules/2.6.25.9-0.2-default/kernel/drivers/net
cp -p sky2.ko{,.orig}
perl -pe 's/\0\0\x6c\x43/\0\0\x55\x43/g' sky2.ko.orig > \ sky2.ko
poniedziałek, 11 maja 2009
sobota, 9 maja 2009
Formy marketingu stosowane przez sklepy internetowe w Polsce
Sprawdzanie dostępności towaru - 96%
Sprawdzanie statusu zamówienia - 89%
Ocena produktów przez klientów - 73%
Indywidualne polecenia produktów w oparciu o listy produktów uzupełniających się - 62%
Możliwośc złożenia rozszerzonego, indywidualnego zamówienia produktu - 58%
Programy lojalnościowe - 53%
Indywidualne polecenia produktów w oparciu o dotychczasowe zakupy klienta - 42%
Indywidualne polecenia w oparciu o typowe zakupy określonej grupy klientów - profil klienta - 33%
Blogi i fora - 24%
Serwis społecznościowy wokół e-sklepu - 16%
Znalezione na webhosting.pl
Sprawdzanie statusu zamówienia - 89%
Ocena produktów przez klientów - 73%
Indywidualne polecenia produktów w oparciu o listy produktów uzupełniających się - 62%
Możliwośc złożenia rozszerzonego, indywidualnego zamówienia produktu - 58%
Programy lojalnościowe - 53%
Indywidualne polecenia produktów w oparciu o dotychczasowe zakupy klienta - 42%
Indywidualne polecenia w oparciu o typowe zakupy określonej grupy klientów - profil klienta - 33%
Blogi i fora - 24%
Serwis społecznościowy wokół e-sklepu - 16%
Znalezione na webhosting.pl
piątek, 8 maja 2009
poniedziałek, 4 maja 2009
czwartek, 30 kwietnia 2009
środa, 29 kwietnia 2009
wtorek, 28 kwietnia 2009
SOAP - informacje o metodach i typach
$result = $client->__getFunctions();
highlight_string(print_r($result,true));
$result = $client-> __getTypes();
highlight_string(print_r($result,true));
highlight_string(print_r($result,true));
$result = $client-> __getTypes();
highlight_string(print_r($result,true));
Propel - taka rzeźba na odpowiednik TRUNCATE TABLE
$crit = new Criteria();
$crit->add(TabelaPeer::ID, "0", Criteria::GREATER_EQUAL);
TabelaPeer::doDelete($crit);
$crit->add(TabelaPeer::ID, "0", Criteria::GREATER_EQUAL);
TabelaPeer::doDelete($crit);
SOAP Client + WSDL + HTTPS
Problem: ... SOAP-ERROR: Parsing WSDL: Couldn't load from 'https://
Wskazówka: WS po HTTP u innych dostawców działa
Rozwiązanie: włączyć extension=php_openssl.dll w php.ini
Wskazówka: WS po HTTP u innych dostawców działa
Rozwiązanie: włączyć extension=php_openssl.dll w php.ini
poniedziałek, 27 kwietnia 2009
Propel i migracja danych / tabeli
Teoretycznie, pewnie w prostych przypadkach, w poniższy sposób można rozszerzać istniejące i wypełnione już tabele:
[JAK W PRZYKŁADZIE PONIŻEJ - GENERUJEMY PO RAZ PIERWSZY]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest
[WPISUJEMY STRUKTURĘ]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest insert-sql
[APLIKACJA ŻYJE]
...
[MUSIMY ROZSZERZYĆ JAKĄŚ TABELĘ O NOWE POLE]
...
[MODYFIKUJEMY SCHEMA.XML]
[ROBIMY DUMP'a]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest datadump
[KONWERTUJEMY DUMP'a do SQL]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest datasql
[GENERUJEMY NOWE KLASY POD NOWĄ STRUKTURĘ]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest
[WCIĄGAMY NOWĄ STRUKTURĘ i STARE DANE]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest insert-sql
http://blog.dywicki.pl/2007/02/11/propel-12-a-istniejaca-baza-danych/
http://www.symfony.pl/forum/viewtopic.php?f=9&t=134&sid=2c4e57af4c74378f3c17892a0f748702
http://propel.phpdb.org/trac/wiki/Users/Documentation/1.2/HowTos/ExistingDatabases
[JAK W PRZYKŁADZIE PONIŻEJ - GENERUJEMY PO RAZ PIERWSZY]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest
[WPISUJEMY STRUKTURĘ]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest insert-sql
[APLIKACJA ŻYJE]
...
[MUSIMY ROZSZERZYĆ JAKĄŚ TABELĘ O NOWE POLE]
...
[MODYFIKUJEMY SCHEMA.XML]
[ROBIMY DUMP'a]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest datadump
[KONWERTUJEMY DUMP'a do SQL]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest datasql
[GENERUJEMY NOWE KLASY POD NOWĄ STRUKTURĘ]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest
[WCIĄGAMY NOWĄ STRUKTURĘ i STARE DANE]
propel-gen c:\php5\pear\data\propel_generator\projects\xtest insert-sql
http://blog.dywicki.pl/2007/02/11/propel-12-a-istniejaca-baza-danych/
http://www.symfony.pl/forum/viewtopic.php?f=9&t=134&sid=2c4e57af4c74378f3c17892a0f748702
http://propel.phpdb.org/trac/wiki/Users/Documentation/1.2/HowTos/ExistingDatabases
Propel + XAMPP na Windowsie
cd D:\xampp\php>
pear channel-discover pear.phpdb.org
pear config-set preferred_state stable
pear install phpdb/propel_generator
pear install phpdb/propel_runtime
Miejsce gdzie się instaluje:
runtime -> D:\Xampp\php\PEAR\propel\
generator -> C:\php5\pear\data\propel_generator\
Sprawdzamy czy działa ogólnie:
D:\xampp\php>propel-gen i jeśli mamy błąd:
"No VERSION.TXT file found; try setting phing.home environment variable."
... należy odinstalować phing'a i zainstalować go ponownie.
Sprawdzamy czy generuje testowe projekty:
D:\xampp\php>propel-gen c:\php5\pear\data\propel_generator\projects\bookstore
D:\xampp\php>propel-gen c:\php5\pear\data\propel_generator\projects\treetest
Przystępujemy do utworzenia naszego projektu XTEST:
1) w katalogu c:\php5\pear\data\propel_generator\projects\ tworzymy podkatalog 'xtest'
2) zakładamy bazę danych xtest:
D:\xampp\mysql\bin\mysql -u root
CREATE DATABASE `xtest` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'xtest'@'localhost' IDENTIFIED BY 'test1234';
GRANT USAGE ON * . * TO 'xtest'@'localhost' IDENTIFIED BY 'test1234' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;
GRANT ALL PRIVILEGES ON `xtest` . * TO 'xtest'@'localhost' WITH GRANT OPTION ;
FLUSH PRIVILEGES;
3) w podkatalogu tworzymy plik build.properties i umieszczamy w nim poniższą zawartość:
propel.project = xtest
propel.database = mysql
propel.database.url = mysql:dbname=xtest
propel.database.user = xtest
propel.database.password = test1234
propel.mysqlTableType = InnoDB
propel.disableIdentifierQuoting=true
propel.targetPackage = xtest
propel.addGenericAccessors = true
propel.addGenericMutators = true
propel.useDateTimeClass = true
3) tworzymy plik schema.xml i umieszczamy w nim poniższą zawartość:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<database name="xtest" defaultIdMethod="native">
<table name="miasto" description="Tabela Miast">
<column name="miasto_id" type="integer" primaryKey="true" autoIncrement="true" required="true" description="Id Miasta"/>
<column name="nazwa" type="varchar" size="255" required="true" description="Nazwa Miasta"/>
<column name="panstwo_id" type="integer" required="true" description="Klucz obcy do tabeli Panstwo"/>
<foreign-key foreignTable="panstwo">
<reference local="panstwo_id" foreign="panstwo_id"/>
</foreign-key>
</table>
<table name="panstwo" description="Tabela Panstw">
<column name="panstwo_id" type="integer" required="true" primaryKey="true" autoIncrement="true" description="Id Panstwa"/>
<column name="nazwa" type="varchar" size="128" required="true" description="Nazwa Panstwa"/>
</table>
</database>
4) tworzymy plik runtime-conf.xml i umieszczamy w nim poniższą zawartość:
<?xml version="1.0" encoding="UTF-8"?>
<config>
<propel>
<datasources default="xtest">
<datasource id="xtest">
<adapter>mysql</adapter>
<connection>
<dsn>mysql:dbname=xtest;host=localhost</dsn>
</connection>
</datasource>
</datasources>
</propel>
</config>
5) Uruchamiamy poniższy kreator:
D:\xampp\php>propel-gen c:\php5\pear\data\propel_generator\projects\xtest
6) Jeśli powyższe zakończyło się sukcesem, wypełniamy strukturą naszą bazę danych:
D:\xampp\php>propel-gen c:\php5\pear\data\propel_generator\projects\xtest insert-sql
7) Tworzymy przykładowy plik index.php dla naszej aplikacji:
error_reporting(E_ALL);
set_include_path("C:\php5\pear\data\propel_generator\projects\xtest\build\classes" . PATH_SEPARATOR . get_include_path());
require_once 'propel/Propel.php';
Propel::init("C:\php5\pear\data\propel_generator\projects\xtest\build\conf\xtest-conf.php");
$panstwo = new Panstwo();
$panstwo->setNazwa("Polska");
$miasto = new Miasto();
$miasto->setNazwa("Warszawa");
$miasto->setPanstwo($panstwo);
$miasto->save();
$c = new Criteria();
$miasta = MiastoPeer::doSelect($c);
var_dump($miasta);
?>
Więcej przykładów manipulowania danymi pod adresem: http://propel.phpdb.org/trac/wiki/Users/Documentation/1.3/BasicCRUD
8) Jeśli powyższy skrypt nie działa, wywalając Apache'a:
należy pobrać : http://windows.php.net/downloads/snaps/php-5.2-win32-VC6-x86-latest.zip
i skopiować z paczki plik: libmysql.dll do katalogów xampp\apache\bin & xampp\php
9) Należy również sprawdzić czy poniższe dyrektywy są odpowiednio ustawione:
ze1_compatibility_mode Off
magic_quotes_gpc Off
magic_quotes_sybase Off
register_globals Off
10) Do poczytania: http://www.internetmaker.pl/artykul/4268,1,propel_-_porady_jak_rozwiazac_podstawowe_problemy.html
pear channel-discover pear.phpdb.org
pear config-set preferred_state stable
pear install phpdb/propel_generator
pear install phpdb/propel_runtime
Miejsce gdzie się instaluje:
runtime -> D:\Xampp\php\PEAR\propel\
generator -> C:\php5\pear\data\propel_generator\
Sprawdzamy czy działa ogólnie:
D:\xampp\php>propel-gen i jeśli mamy błąd:
"No VERSION.TXT file found; try setting phing.home environment variable."
... należy odinstalować phing'a i zainstalować go ponownie.
Sprawdzamy czy generuje testowe projekty:
D:\xampp\php>propel-gen c:\php5\pear\data\propel_generator\projects\bookstore
D:\xampp\php>propel-gen c:\php5\pear\data\propel_generator\projects\treetest
Przystępujemy do utworzenia naszego projektu XTEST:
1) w katalogu c:\php5\pear\data\propel_generator\projects\ tworzymy podkatalog 'xtest'
2) zakładamy bazę danych xtest:
D:\xampp\mysql\bin\mysql -u root
CREATE DATABASE `xtest` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'xtest'@'localhost' IDENTIFIED BY 'test1234';
GRANT USAGE ON * . * TO 'xtest'@'localhost' IDENTIFIED BY 'test1234' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;
GRANT ALL PRIVILEGES ON `xtest` . * TO 'xtest'@'localhost' WITH GRANT OPTION ;
FLUSH PRIVILEGES;
3) w podkatalogu tworzymy plik build.properties i umieszczamy w nim poniższą zawartość:
propel.project = xtest
propel.database = mysql
propel.database.url = mysql:dbname=xtest
propel.database.user = xtest
propel.database.password = test1234
propel.mysqlTableType = InnoDB
propel.disableIdentifierQuoting=true
propel.targetPackage = xtest
propel.addGenericAccessors = true
propel.addGenericMutators = true
propel.useDateTimeClass = true
3) tworzymy plik schema.xml i umieszczamy w nim poniższą zawartość:
<?xml version="1.0" encoding="utf-8" standalone="no"?>
<database name="xtest" defaultIdMethod="native">
<table name="miasto" description="Tabela Miast">
<column name="miasto_id" type="integer" primaryKey="true" autoIncrement="true" required="true" description="Id Miasta"/>
<column name="nazwa" type="varchar" size="255" required="true" description="Nazwa Miasta"/>
<column name="panstwo_id" type="integer" required="true" description="Klucz obcy do tabeli Panstwo"/>
<foreign-key foreignTable="panstwo">
<reference local="panstwo_id" foreign="panstwo_id"/>
</foreign-key>
</table>
<table name="panstwo" description="Tabela Panstw">
<column name="panstwo_id" type="integer" required="true" primaryKey="true" autoIncrement="true" description="Id Panstwa"/>
<column name="nazwa" type="varchar" size="128" required="true" description="Nazwa Panstwa"/>
</table>
</database>
4) tworzymy plik runtime-conf.xml i umieszczamy w nim poniższą zawartość:
<?xml version="1.0" encoding="UTF-8"?>
<config>
<propel>
<datasources default="xtest">
<datasource id="xtest">
<adapter>mysql</adapter>
<connection>
<dsn>mysql:dbname=xtest;host=localhost</dsn>
</connection>
</datasource>
</datasources>
</propel>
</config>
5) Uruchamiamy poniższy kreator:
D:\xampp\php>propel-gen c:\php5\pear\data\propel_generator\projects\xtest
6) Jeśli powyższe zakończyło się sukcesem, wypełniamy strukturą naszą bazę danych:
D:\xampp\php>propel-gen c:\php5\pear\data\propel_generator\projects\xtest insert-sql
7) Tworzymy przykładowy plik index.php dla naszej aplikacji:
error_reporting(E_ALL);
set_include_path("C:\php5\pear\data\propel_generator\projects\xtest\build\classes" . PATH_SEPARATOR . get_include_path());
require_once 'propel/Propel.php';
Propel::init("C:\php5\pear\data\propel_generator\projects\xtest\build\conf\xtest-conf.php");
$panstwo = new Panstwo();
$panstwo->setNazwa("Polska");
$miasto = new Miasto();
$miasto->setNazwa("Warszawa");
$miasto->setPanstwo($panstwo);
$miasto->save();
$c = new Criteria();
$miasta = MiastoPeer::doSelect($c);
var_dump($miasta);
?>
Więcej przykładów manipulowania danymi pod adresem: http://propel.phpdb.org/trac/wiki/Users/Documentation/1.3/BasicCRUD
8) Jeśli powyższy skrypt nie działa, wywalając Apache'a:
należy pobrać : http://windows.php.net/downloads/snaps/php-5.2-win32-VC6-x86-latest.zip
i skopiować z paczki plik: libmysql.dll do katalogów xampp\apache\bin & xampp\php
9) Należy również sprawdzić czy poniższe dyrektywy są odpowiednio ustawione:
ze1_compatibility_mode Off
magic_quotes_gpc Off
magic_quotes_sybase Off
register_globals Off
10) Do poczytania: http://www.internetmaker.pl/artykul/4268,1,propel_-_porady_jak_rozwiazac_podstawowe_problemy.html
Subskrybuj:
Posty (Atom)