Tweets from pichat
| Two songs from the year I created my first web sites. http://t.co/8eHrOA9K + http://t.co/AuWb2etI #video #retro About 1 day, 1 hour ago from pichat (Mark Seuffert) |
Tweets from 600infos
| I HAVE NYANED FOR 888.4 SECONDS! http://t.co/JQYOZebv via @nyannyancat About 1 week, 5 days ago from 600infos (Wolf) |
Trace: » Kopiert eine Liste von Dateien in einer Batch Datei » Creates a colored Banner Text for Pichat » simple css layout » new_colorscheme_b65 » Overview of Website integrations » Pichat als Service (de)
You are here: Pichat Wiki (en) » Manuals » Pichat als Service (de)
Pichat als Service (de)
english Translation needed to→ Pichat as Service
update this to the actual Pichat-Version!
Aktuallisiere diesen Text auf die aktuelle Pichat-Version
Schritt für Schritt Anleitung um Pichat als Server (unter Windows als Dienst) zu installieren
Getestet unter:
- Windows XP Home SP3
- Windows XP Pro SP3
- Windows Server 2003 Home Edition
- Windows Server 2003
Benötige Dateien
- pichat_win32.exe
- srvany.exe (aus den Windows Resource Kits Tools, rktools.exe)
- instsrv.exe (aus den Windows Resource Kits Tools, rktools.exe)
- ntrights.exe (aus den Windows Resource Kits Tools, rktools.ex
- net.exe (implementiertes Windows Standard Tool, %windir%\system32\net.exe)
- cacls.exe (implementiertes Windows Standard Tool, %windir%\system32\cacls.exe)
Quellen
- pichat: http://www.pichat.net/downloads → pichat_win32.exe - Windows Chatsoftware, i386 kompatible CPU
- Basis ist die Version: Pichat v0.4.2: B53
aktuell ist B57 - Microsoft Windows Server 2003 Resource Kit Tools rktools.exe
Voraussetzung
%ProgramFiles%=C:\PROGRA~1\
Dies sollte für deutsche als auch für die englische Windows-Variante gültig sein.
Hinweis:
Alle Befehle sind in der Commandozeile (Start – ausführen – cmd.exe) auszuführen!
Es sind Administrationsrechte für die Serverinstallation erforderlich.
Grundinstallation
Nur wenn Pichat noch nie gestartet wurde
Zuerst erstellt man ein Verzeichnis für das „normale“ Pichat.
md "C:\Progra~1\pichat"
Nun kopiert man (z.B. mit Explorer) die pichat_win32.exe in das Verzeichnis, wechselt dann in das Verzeichnis
cd /D "C:\Progra~1\pichat"
und startet
pichat_win32.exe extract
Daraufhin werden alle weiteren notwendigen Basis-Dateien extrahiert.
Wurde Pichat gestartet muss Pichat jetzt wieder beendet werden. (Rechtsklick auf das Pichat-Icon und Beenden/Exit)
Der Befehlsparameter extract ist eine inoffizielle Option!
Wenn Pichat bereits einmal gestartet wurde
Um eine saubere Server-Grundinstallation zu erhalten ist das Userverzeichnis temporär umzubennen
move "%appdata%\pichat" "%appdata%\pichat.tmp"
und Pichat muss jetzt noch einmal gestartet und wieder beendet werden.
pichat.exe
Rechtsklick auf das Pichat-Icon und Beenden/Exit
Server-Installation
Vorbereitung der Serverfiles
Man verschiebt alle frisch angelegten Userdateien in das Server-Verzeichnis
move "%appdata%\pichat" "C:\Progra~1\pichat\server"
Falls das Userverzeichnis temporär umbenannt wurde (siehe oben), kann dies nun wieder mit folgendem Befehl wieder hergestellt werden
move "%appdata%\pichat.tmp" "%appdata%\pichat"
Erzeugen sonstige notwendige Verzeichnise welche nicht automatisch angelegt werden:
md "C:\Progra~1\pichat\server" md "C:\Progra~1\pichat\server\log" md "C:\PROGRA~1\pichat\server\webserver\chat“ md "C:\PROGRA~1\pichat\server\webserver\chatmedia“ md "C:\PROGRA~1\pichat\server\webserver\privat“ md "C:\PROGRA~1\pichat\server\webserver\public“
Um den Mutex zu „überlisten“ und den User auch die Verwendung in der Console (Speziell bei XP) zu ermöglichen kopiert man jetzt die pichat.exe und die Sprachdateien um.
copy pichat.exe pichat-server.exe copy pichat_languagesve.dll pichat-server_languagesve.dll copy pichat_languageeng.dll pichat-server_languageeng.dll copy pichat_languagedeu.dll pichat-server_languagedeu.dll
Um die Eindeutigkeit zu waren, benennen wir noch die pichat.ini in pichat-server.ini um.
move server\pichat.ini server\pichat-server.ini
Erzeugen des Pichat-Service-User-Accounts
Hierzu wechseln wir jetzt in das Server-Verzeichnis
cd "C:\Progra~1\pichat\server"
Jetzt kopiert bzw. verschiebt man (am einfachsten mit dem Explorer) die notwendigen Tools (srvany.exe, instsrv.exe und ntrights.exe siehe „Benötigte Dateien“ und „Quellnachweis“) in das Server-Verzeichnis.
Der User wird wie folgt angelegt:
NET USER pichat PASSWORD /ADD /fullname:"SERVICE pichat-server" /ACTIVE:yes /expires:never for /f "delims=#" %a in ("added %date% %time% by %username%") do NET USER pichat /comment:"%a"
Hinweis:
Anstelle von PASSWORD bitte ein eigenes Passwort vergeben!
Damit der User pichat nur als Serviceaccount/Dienst nutzbar ist, werden die Logonrechte entsprechend gesetzt:
rem Anmelden als Stapelverarbeitungsauftrag ntrights.exe -u pichat +r SeBatchLogonRight rem Anmelden als Dienst ntrights.exe -u pichat +r SeServiceLogonRight rem Zugriff vom Netzwerk auf diesen Computer verweigern ntrights.exe -u pichat +r SeDenyNetworkLogonRight rem Lokale Anmeldung verweigern ntrights.exe -u pichat +r SeDenyInteractiveLogonRight
Damit der User pichat nur die Schreib-Rechte auf das Pichat-Verzeichnis hat:
cacls C:\Progra~1\pichat\server /E /G pichat:F
Erzeugen der Service-Installation-Files
Zuerst erzeugt man ein Registryfile registry_service_pichat-server.reg
z.B. mit dem „alten“ copy con Befehl (oder notepad registry_service_pichat-server.reg)
copy con registry_service_pichat-server.reg
Mit folgendem Inhalt:
- | registry_service_pichat-server.reg
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\pichat-server] "Description"="Pichat Server Service" [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\pichat-server\Parameters] "Application"="C:\\PROGRA~1\\pichat\\pichat-server.EXE" "AppDirectory"="C:\\PROGRA~1\\pichat\\server\\" "AppParameters"="-IniFile=C:\\Progra~1\\pichat\\server\\pichat-server.ini -ServerDedicated=1"
Wenn der „copy con“-Befehl verwendet wurde ist mit F6 der Vorgang abzuschließen!
Nun werden auf gleicher Art nachfolgende Files erstellt:
copy con install-service_pichat-server.bat
- | install-service_pichat-server.bat
@echo off echo INSTALL pichat-server as service ... set __service_accountname__=pichat SET /P __service_accountname__=Accountname for Service [%__service_accountname__%]: SET /P __PW__=Password: regedit /s registry_service_pichat-server.reg C:\PROGRA~1\Pichat\server\instsrv.exe pichat-server "C:\PROGRA~1\pichat\server\srvany.exe -a %__service_accountname__% -p %__PW__%" echo. pause
Dieses Script entfernt den Service wieder:
copy con remove-service_pichat-server.bat
- | remove-service_pichat-server.bat
@C:\PROGRA~1\pichat\server\instsrv.exe pichat-server REMOVE @pause
Dieses Script startet den Service:
copy con start-service_pichat-server.bat
- | start-service_pichat-server.bat
@echo starting service pichat-server .. @net start pichat-server @pause
Dieses Script beendet den Service:
copy con stop-service_pichat-server.bat
- | stop-service_pichat-server.bat
@echo stoping service pichat-server ... @net stop pichat-server @pause
Dieses Script startet den Server als Applikation (interactiv):
copy con start-application_pichat-server.bat
- | start-application_pichat-server.bat
@echo off net start | find /i "pichat-server" && net stop pichat-server start /wait "pichat-server applikation" "C:\Progra~1\pichat\pichat-server.exe" -IniFile=C:\Progra~1\pichat\server\pichat-server.ini -ServerDedicated=0 set /p a=Start Pichat-Server Service now? [N] if /I “%a%“==“J“ set a=Y if /I “%a%“==“Y“ @net start pichat-server
Hinweis, wer es braucht:
Manuell das reg-File in die Registry eintragen geht mit folgendem Befehl oder mit Doppelklick im Explorer
regedit /s registry_service_pichat-server.reg
Anpassen der pichat-server.ini
mit einem Editor (z.B. notepad pichat-server.ini )
→ die pichat.ini hat sich in der Version B57 geändert
- | pichat-server.ini
[Pichat] Version=Pichat v0.4.2 b53 Nickname=Server NicknameAlternatives= StartupCommands=/plugin, /STATUS ALL [Pichat Profile] ServerName=Pichat-Server ServerVersion= ServerAddress=localhost # Eindeutige ID Identification=localhost1234567890 Interests=chat, pizza, cola # ServerDedicated wird über Startparameter vergeben! ServerDedicated=0 [Updates] # Updates ausgeschalten! EnableUpdates=0 CheckForUpdates=0 DownloadUpdates=0 # UpdatesDownloadDirectory=~/pichat/updates UpdatesDownloadDirectory=updates UpdatesRepository1=http://www.pichat.net/downloads/pichat_updates.ini [Plugins] EnablePlugins=1 # PluginsIniFile=~/pichat/pichat_plugins.ini PluginsIniFile=C:\Progra~1\pichat\server\pichat_plugins.ini # PluginsIniFile=pichat_plugins.ini [GUI] AnimateSystray=1 AnimateWindowTitle=1 ShowStartupMessage=0 ShowSendButton=0 ShowSideBar=1 #ShowAwayTime=0 ShowAwayTime=1 InputLines=2 SmileysAndGraphicsLevel=6 SideBarLevel=2 ChatroomTopic=1 ChatroomUsers=0 ChatAdminCommands=1 ChatServerUsers=0 PingPrecise=0 AutoAway=1 AutoAwayLevel=1 AutoAwayAfterIdle=900 AutoAwayMessage=Ping if you need me StdAwayMessage=Ping if you need me DndAwayMessage= DomkoTextFilter=0 NachoTimeStamp=0 NachoTimeStampHours=24 NachoTimeStampPrecise=0 NicknameLevel=1 NicknameSeparatorL2=":" Highlight=1 HighlightText=Hi all! HighlightMyNickname=1 HighlightChatroomLevel=6 HighlightMessageLevel=6 HighlightBlinkTime=36000 TabsCloseButton=1 TabsWhenChatWindowNumber=2 InputBuffer=100 OutputBuffer=999 ClearInputAndOutput=1 UserAuthentication=1 # UserAuthenticationFile=pichat_user_authentication.ini UserAuthenticationFile=C:\Progra~1\pichat\server\pichat_user_authentication.ini MainWindowTitle= MainWindowSticky=1 MainWindowEscKeyMinimise=1 MainWindowAnimateMinimise=1 MainWindowShareInput=1 MainWindowStatusView=1 MainWindowOptions=1 MainWindowZoomed=1 MainWindowPos=206,126,831,447 MainWindowSplitterPos=138 [GUI Connect List] ContactGroupAddresses=Default HistoryMax=5 h1=eu.pichat.net [GUI Aliases] a1=/BYE, /logout bye $ a2=/DND, /away DND $ a3=/MEGA, /say $ $ $ $ $ $ $ a4=/SERVER, /connect $ a5=/CHATEU, /connect new eu.pichat.net a6=/CHATUS, /connect new us.pichat.net a7=/P, /plugin $ [GUI Sounds] EnableSoundEffects=0 s1=CHAT_PING, default s2=CHAT_PONG, default [Server] PortChat=9009 # PortHttp=8008 PortHttp=80 # ServerHttpRoot=webserver ServerHttpRoot=C:\Progra~1\pichat\server\webserver ServerHttpLocationChat=/chat ServerHttpLocationMedia=/chatmedia ServerHttpLocationStatus=/chatstatus ServerHttpLocationProtected=/private ServerHttpMimeFile= # ServerChatLogfile=pichat_chatserver.log # ServerHttpLogfile=pichat_webserver.log # folgendes funktioneirt noch nicht, Verzeichnis muss existieren damit Log geschriben werden kann! # ServerChatLogfile=C:\Progra~1\pichat\server\log\%Y\%m\pichat_chatserver_%Y%m%d.log # ServerHttpLogfile=C:\Progra~1\pichat\server\log\%Y\%m\pichat_webserver_%Y%m%d.log ServerChatLogfile=C:\Progra~1\pichat\server\log\pichat_chatserver_%Y%m%d.log ServerHttpLogfile=C:\Progra~1\pichat\server\log\pichat_webserver_%Y%m%d.log ServerAnnounceLocalNetwork=1 ServerDefaultHomepage=1 ServerDirectoryBrowsing=1 ServerHourStatus=0 ServerDebugMode=0 MaxUsers=100 MaxUsersTextchat=100 MaxUsersWebchat=100 MaxUsersPichat=1000 MaxSockets=1000 HandshakeWaitDns=5 HandshakeTimeoutWelcome=5 HandshakeTimeout=30 DisconnectTimeout=20 DataTransferTimeout=10 DataTransferKeepAlive=30 DataTransferPersistentMax=500 DataTransferBufferSize=32768 DataCompressionFileSizeMin=128 DataCompressionFileSizeMax=1048576 DataCompressionFilesExclude=gif,gz,jpeg,jpg,mp3,mpeg,mpg,png,tgz,zip FollowXForwardedFor=127.0.0.1 WebchatBrowserDynamic=Gecko/2,Firefox,MSIE,Opera WebchatBrowserSimple=Lynx,w3m WebchatBrowserUnsupported= WebchatSessionIpNetmask=30 WebchatStreamPaddingSize=1024 WebchatStreamForceIntervall=15 WebchatPageRefreshIntervall=240 # WebchatSmileysAndGraphicsLevel=5 WebchatSmileysAndGraphicsLevel=6 WebchatScreenSizeBrowserSimple=12 WebchatTextBreakLength=40 WebchatLinkBreakLength=40 WebchatEnableSoundEffects=0 WebchatEnableLagDetection=1 WebPageHeader=<a href="/">Home</a> | <a href="/chat">Chat</a> | <a href="/chatstatus">Status</a> | <a href="/public/">Files</a> WebPageFooter=<address>Pichat Server <a href="http://www.pichat.net" target="_blank">http://www.pichat.net</a></address> DnsLookupEntries=64 DnsLookupThreads=5 DnsLookupTimeout=60 AnnounceNetworks=255.255.255.255 AnnounceIntervall=60 PingPongIntervall=120 ChatroomListUpdateIntervall=120 UserNumberUpdateIntervall=30 AwayUpdateIntervall=10 AutoAwayTextchatLevel=1 AutoAwayTextchatAfterIdle=900 AutoQuitTextchatAfterIdle=0 AutoAwayWebchatLevel=1 AutoAwayWebchatAfterIdle=900 AutoQuitWebchatAfterIdle=10800 AwayForceAfterIdle=3600 [Server Permissions] ChatModeDefault=CHAT_OPEN UserTypeDefault=USER_NORMAL VisitorRestrictionLevel=0 VisitorRestrictionChatroom=1 VisitorRestrictionNickname=1 # UserPermissionsFile=pichat_user_permissions.ini UserPermissionsFile=C:\Progra~1\pichat\server\pichat_user_permissions.ini SafeguardLoginFailedMax=10 SafeguardExpireTime=600 ZombieQuitTime=120 VisitorQuitTime=3600 NormalQuitTime=0 ClosedQuitTime=300 ChatBanTime=10800 ChatroomBanTime=120 ChatroomAdminCanCreate=1 ChatroomUserCanCreate=0 ChatroomEnterInAny=1 ChatroomDefault=Entrance ChatroomBanned=Zillout [Server Chatrooms] c1=Entrance c2=Flirt, Have a lot of fun c3=Zillout, Bad boys and bad girls [Server MOTD] [Server Actions] ExternalProgram= [Client] DefaultPort=9009 LagDetection=1 LagDetectionAbove=3 LagDetectionFallBelow=1 WelcomeMotdMax=3 DnsPendingNotifiesMax=3 DnsHostnameFlushAge=7200 ConnectTimeout=25 ConnectHandshakeTimeout=60 ConnectRetryDelay=5,60,300,3600,43200 ConnectRetryLocalNetwork=3 GhostSessionResurrection=1 PongAnswerTimeout=1800 KeepAliveIntervall=150 DisabledCommands= [Client Proxy] UseProxy=0 ProxyAddress=proxy ProxyPort=3128 ProxyResolveDns=0 ProxyBypassLocalNetwork=1 ProxyBypassHosts= [Contacts] # ContactGroup1=Default, pichat_contacts.ini ContactGroup1=Default, C:\Progra~1\pichat\server\pichat_contacts.ini [Color Schemes] ColorSchemeDefault=Night ColorSchemeGuiFont=Arial, 9 [Languages] # LanguageGuiDefault=deu # LanguagesPreferred=de LanguageGuiDefault=eng LanguagesPreferred=en [3D Visualisation] Width=320 Height=200 ColorDepth=16 FullScreen=0 # VisualisationLogfile=pichat_3d.log VisualisationLogfile=C:\Progra~1\pichat\server\log\pichat_3d_%Y%m%d.log VisualisationLogLevel=2
Serviceinstallation
Jetzt ist es soweit… die eigentliche Installation kann durchgeführt werden.
Hier noch einmal, welche Files und Verzeichnisse jetzt vorhanden sein sollten:
C:\PROGRA~1\pichat\pichat-server.exe C:\PROGRA~1\pichat\pichat-server_languagedeu.dll C:\PROGRA~1\pichat\pichat-server_languageeng.dll C:\PROGRA~1\pichat\pichat-server_languagesve.dll C:\PROGRA~1\pichat\pichat.exe C:\PROGRA~1\pichat\pichatcore.dll C:\PROGRA~1\pichat\pichat_chatserver.log C:\PROGRA~1\pichat\pichat_languagedeu.dll C:\PROGRA~1\pichat\pichat_languageeng.dll C:\PROGRA~1\pichat\pichat_languagesve.dll C:\PROGRA~1\pichat\pichat_readme.txt C:\PROGRA~1\pichat\pichat_updater.exe C:\PROGRA~1\pichat\pichat_webserver.log C:\PROGRA~1\pichat\pichat_win32.exe C:\PROGRA~1\pichat\sharkengine.dll C:\PROGRA~1\pichat\sharkvisualisation.dll C:\PROGRA~1\pichat\webserver C:\PROGRA~1\pichat\server C:\PROGRA~1\pichat\server\install-service_pichat-server.bat C:\PROGRA~1\pichat\server\instsrv.exe C:\PROGRA~1\pichat\server\ntrights.exe C:\PROGRA~1\pichat\server\pichat-server.ini C:\PROGRA~1\pichat\server\pichat_chatserver.log C:\PROGRA~1\pichat\server\pichat_contacts.ini C:\PROGRA~1\pichat\server\pichat_webserver.log C:\PROGRA~1\pichat\server\registry_service_pichat-server.reg C:\PROGRA~1\pichat\server\remove-service_pichat-server.bat C:\PROGRA~1\pichat\server\srvany.exe C:\PROGRA~1\pichat\server\start-application_pichat-server.bat C:\PROGRA~1\pichat\server\start-service_pichat-server.bat C:\PROGRA~1\pichat\server\stop-service_pichat-server.bat C:\PROGRA~1\pichat\server\log C:\PROGRA~1\pichat\server\updates C:\PROGRA~1\pichat\server\webserver C:\PROGRA~1\pichat\server\webserver\chatmedia C:\PROGRA~1\pichat\server\webserver\chat C:\PROGRA~1\pichat\server\webserver\privat C:\PROGRA~1\pichat\server\webserver\public
Wurde alles richtig gemacht wird mit
install-service_pichat-server.bat
der Service jetzt installiert.
Und mit
start-service_pichat-server.bat
der Service gestartet.
Zum Stoppen des Servers:
stop-service_pichat-server.bat
Wenn der Pichat-Server für irgendwelche Einstellungen einmal unter dem aktuellem User gestartet werden sollte kann folgendes Batch verwendet werden
start-application_pichat-server.bat
Zum Entfernen des Services
remove-service_pichat-server.bat
verwenden.
Hinweis:
Zum Entfernen des Users ist am besten die Userverwaltung zu verwenden!
Featurerequests
- FR1001 - Pichat as Windows-Service Server → Pichat als Service in der Applikation integriert
- Shutdown Command → Beenden des Services mit
net stop pichat-servererfolgt nicht korrekt