Föregående
|
Startsidan
|
Arkivet
|
Epost
|
Följande
tisdag 13 september, 2005 12.56: Installation av Subversion server på en Mac OS X Server v 10.3
Installerade idag en Subversion server för att användas lokalt på tryckeriet. Maskinen, vår filhanterare, kör Mac OS X Server 10.3.
Installation
Först laddade jag ned den senaste versionen av Subversion från
Martin Otts färdigbyggda paket,
Subversion-1.2.3.pkg.zip, och installerade detta på servern.
För att kontrollera att Subversion är korrekt installerad kan du köra kommandot
/usr/local/bin/svnserve --version, du bör då få ett resultat liknande:
svnserve, version 1.2.3 (r15833)
compiled Aug 29 2005, 10:50:03
Copyright (C) 2000-2005 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).
The following repository back-end (FS) modules are available:
* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.Inställning av kommandomiljön
Martins installationspaket placerar Subversion i mappen
/usr/local/bin. För att enkelt kunna använda mig av Subversions olika kommandon när jag är inloggad på servern via SSH eller kör lokalt från terminalen direkt på maskinen, måste man lägga till denna mapp i sökvägen. Då jag använder mig av BASH som kommandoskal i Terminalen (det är standardskalet i Max OS X) så lägger jag till följande i filen
.bashrc, som finns i admins hemmamapp:
PATH=$PATH':/usr/local/bin'
export PATHKontrollera genom att logga in med ett nytt terminalfönster och skriva
set - bland allt skräp som listas skall man hitta en rad som börjar med PATH, den bör då se ut ungefär som
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin, skillnader kan förekomma beroende på vad som installerats tidigare på maskinen.
Om
/usr/local/bin inte verkar vara med i PATH, kan det bero på att
.bashrc inte körs vid inloggningen, något som i sin tur kan bero på att
.bash_profile inte är korrekt inställd. Kontrollera att följande rad finns med i din
.bash_profile:
source ~/.bashrcInställning av svnserve
Eftersom det bara är jag ensam som kommer att använda Subversion, i det lokala nätverket, beslutade jag mig för att använda mig av Subversions egen server;
svnserve istället för den mer populära WebDAV/Apache-modulen.
Först skapar jag mappen
svn-repositories i administratörskontots hemmapp (
/Users/admin/svn-repositories). Denna mapp kommer att innehålla alla de olika repositories som vi kan tänkas ha behov av.
Sedan skapar jag ett test-repository med kommandot
svnadmin create /Users/admin/svn-repositories/testreposSedan måste repositoryt ställas in så att det går att komma åt över nätverket. Byt till repositoryts konfigurationsmapp, , och redigera filen
svnserve.conf. Den bör se ut på följande sätt:
[general]
anon-access = read
auth-access = write
password-db = passwdDetta innebär att man måste logga in för att kunna ändra i repositoryt, login- och lösenordslista återfinns i filen passwd, som det nu är dags att ändra i:
[users]
pihlan = testpassProvkörning av svnserve
Nu är det dags att start svnserve med kommandot
svnserve --daemon --root /Users/admin/svn-repositories/. Alternativet --root talar om för svnserve var den kan börja söka efter repositories.
Dags att förflytta sig till min vanliga arbetsmaskin.
Först kontrollerar jag att svnserve överhuvudtaget finns där:
telnet filserver.local 3690, får resultatet:
Connected to filserver.local.
Escape character is '^]'.
( success ( 1 2 ( ANONYMOUS ) ( edit-pipeline ) ) )Dags att importera lite testdata:
svn import . svn://filserver.local/testrepos -m "Initial import"Kontrollera att allt fungerar som vanligt...
Automatisk start av svnserve
Nu skall vi se till att svnserve startar automatiskt om vi någon gång behöver starta om filservern. Efter att ha skummat Apples utvecklardokumentation angående startprocesser och daemoner så valde jag att implementera ett Startup Item (servern kör ju version 10.3 och jag kan därför inte använda mig av den nya, fina
launchd).
System Startup Programming Topics: Creating a Startup ItemJag börjar med att skapa mappen
Subversion i
/System/Library/StartupItems/ (på servern naturligtvis!). I denna mapp skapar jag sedan ett script med samma namn (
Subversion):
#!/bin/sh
. /etc/rc.common
# Subversion version control
StartService()
{
echo "Starting Subversion server"
/usr/local/bin/svnserve --daemon --root /Users/admin/svn-repositories/
}
StopService()
{
echo "Stopping Subversion server"
killall svnserve
}
RestartService()
{
StopService
StartService
}
RunService "$1"Denna fil flaggar jag som körbar med
chmod +x Subversion.
Därefter skapar jag filen
StartupParameters.plist:
{
Description = "Subversion server";
Provides = ("Subversion server");
Requires = ();
Messages =
{
start = "Starting Subversion server";
stop = "Stopping Subversion server";
};
}Därmed skall det hela vara klart! För säkerhets skull kan den nya Startup Item provköras:
/sbin/SystemStarter restart "Subversion server"Welcome to Macintosh.
Stopping Subversion server
Starting Subversion server
Startup complete.
Föregående
|
Startsidan
|
Arkivet
|
Epost
|
Följande
Inga kommentarer inlagda
Lägg till kommentar
Tyvärr kan du inte lägga till kommentarer till notiser som är äldre än 4 veckor.