Guide:(K)Ubuntu server howto/Vanlig filserverfunksjonalitet
Fra Diskusjon.no WIKI
Vanlig filserverfunksjonalitet
| Forfatter: | Del |
| Diskusjonsemne: | Emne på diskusjon.no |
| Forum: | Programvare > GNU/Linux |
| Beskrivelse: | En innføring i oppsett og konfigurasjon av servere med Ubuntu og Kubuntu. |
- 1 – Introduksjon til GNU/Linux
- 2 – Vanlig filserverfunksjonalitet
- 3 – Hjemmeserver
- 4 – For entusiasten og bedriften
- 5 – Gode og relevante lenker
Hvis du vil beholde Ubuntu er det ingenting i veien for det, men personlig foretrekker jeg KDE. Derfor vil KDE være noe favorisert på denne siden.
Installer Kubuntu og Samba
sudo aptitude install kubuntu-desktop samba kdenetwork-filesharing
Du kan også gjøre det ved å starte System->Administration->Synaptic Package Manager, og finne samt installere kubuntu-desktop. For Samba og brukergrensesnitt til Samba installerer du pakkene samba og kdenetwork-filesharing i tillegg.Under installasjon av kubuntu-desktop vil bli spurt om hvilket program som skal gi deg log-in skjermen underveis, velg kdm, den er bedre integrert med Kubuntu. Når installasjonen er ferdig, kan du velge ved oppstart om du skal ha Gnome eller KDE, dvs. om du vil ha Ubuntu eller Kubuntu. Re-start maskinen for å logge inn til KDE. Når du er inne i KDE er det spesielt to program du bør gjøre deg kjent med. Det ene er System Settings, det meste på systemet ditt kan styres derfra. Det andre er filutforskeren Dolphin, med den kan du blant mye annet enkelt finne delte mapper på ditt nett.
Det første du bør gjøre er å bestemme deg for om du trenger log-in med brukere og passord. Hvis du ikke trenger det endrer du sikker hetsnivå fra User til Share. Fra fanebladet Shares kan du legge til de mappene du ønsker å dele på nettet ditt. Det er i grunnen alt du trenger.
Hvis du trenger økt sikkerhet med brukernavn og passord, må du i tillegg legge inn brukerne. Dette kan du gjøre under fanebladet Users. Da går du litt lenger ned på siden her.
Selv om du har satt sikkerhetsnivået til Share, så må du sette vanlige rettigheter for filene og mappene som deles dersom du ønsker å kunne skrive til mappene. Hvis du har brukere og log-in til Samba, så må du sørge for at rettighetene i Samba korresponderer med rettighetene som er satt lokalt på mappene og filene. Som standard får alle leserettigheter, så dette problemet oppstår vanligvis når du ønsker å kunne skrive til en delt mappe. Uansett, slik gjør du:Høyreklikk på mappen du skal dele, Properties->Permissions og så lar du Others få relevante rettigheter, og klikker Apply permissions to enclosed files, eventuelt Apply changes to all subfolders and their contents hvis du bruker Kubuntu.
Jeg bruker bare Ubuntu: Da installerer du istedet pakkene samba og system-config-samba. Da finner du konfigureringsprogrammet for Samba under System->Administration->Samba. Så kan du endre sikkerhetsnivå fra User til Share under Preferences. Du finner også alt annet du trenger for å sette opp fildeling der.
Jeg har gjort som over, men jeg ser ikke den delte mappen fra min XP/Vista maskin: Du har kanskje en brannmur, f.eks. i antivirus programmet ditt, som blokkerer port 445 eller 139 som delte foldere bruker i Windows. Åpne portene i brannmuren. Unngå spesialtegn (punktum, komma osv.) og norske bokstaver (æ, ø, å) i navnene til de delte mappene.
Jeg får ikke lov til å opprette mappen jeg vil dele: Du har i utgangspunktet kun skriverettighet inni hjemmemappen med navn /home/dittbrukernavn (hvor dittbrukernavn erstattes med ditt brukernavn), så det er her du bør opprette nye mapper som deles. Dersom du legger til ekstra harddisker i tillegg, trenger du å gi brukeren din fulle rettigheter til denne, det er omhandlet senere i denne guiden.
Jeg ser ikke den delte mappen fra en maskin som er tilkoblet en annen router, som igjen er koblet til routeren hvor filserveren min er tilkoblet: Da blokkerer routeren din porten som delte mapper bruker, les avsnitt om routere, samt avsnitt om åpning av porter lengre ned i denne posten, og sørg for at routeren forwarder port 139 og 445.
Back-up
Det er et utmerket back-up program som heter sbackup. Fra programmenyen finner du Add/Remove Programs, her søker du opp sbackup, og velger at du skal installere den. Du finner nå programmet i menyen som Simple Backup Config og Simple Backup Restore. Start config programmet, og sett opp hvor du vil ha back-up, f.eks til en harddisk nummer to i filserveren. Hvis du skal kjøre programmet mellom to maskiner, så får du tak i foldere på den fjerne maskinen gjennom ftp eller ssh (se lengre ned i guiden for oppsett av ftp og ssh). Du kan også bruke delte foldere, men da kan det hende du trenger å montere den delte folderen på serveren din. Montering av mapper delt med Samba er behandlet senere i howto'en. Skjermbilder og forklaringer til sbackup finner dere her.
Sbackup er en enkel løsning som vil fungere for de fleste. Den holder også høyt teknisk nivå, siden den baserer seg på rsync, ssh og cron. Husk at rsync, ssh og cron også kan redigeres direkte for å dekke behov som brukergrensesnittet i sbackup ikke tillater. Alt ligger lagret i konfigurasjonsfiler som kan redigeres direkte, eller via andre brukergrensesnitt som eksempelvis kcron (gjør direkte oppsett av cron-jobber enkelt). Skulle du likevel ha behov som går utover dette, kan det være verdt investeringen å sette opp eksempelvis Bacula. Eksempelvis kan Bacula ta full back-up av dine XP/Vista harddisker over nett. Du finner en flott gjennomgang av Bacula her. Det finnes et vell av andre løsninger som ligger en plass mellom sbackup og bacula, og dekker varierte behov. Sjekk gjerne innom BackupPC og Clonezilla.
Samba-oppsett med brukernavn og passord
Du ønsker kanskje å styre alt mellom himmel og jord i samba, slik som å opprette brukere, styre brukeres tilgang, legge inn diverse passord, styre lese/skrive aksess. Alt dette i en enkel selvforklarende GUI.System Settings dekker meget godt avansert konfigurering av Samba (og NFS for den saks skyld). Nå er det likevel noen punkter man må huske på, så vi tar en detaljert gjennomgang på å legge til en Samba-bruker med passord og tilgang til relevant mappe:
- Opprett de brukerne du vil ha i Samba som ordinære brukere på systemet, Start System Settings, under User Management legger du brukerne du ønsker til systemet.
- Gå til Samba-oppsettet i System Settings, så legger du til brukerne som Samba-brukere.
- Sett sikkerhetsnivå til User hvis det ikke allerede er det,
- Sett opp rettigheter på de delte mappene. Du er fra punktet over inne i Samba-oppsettet, velg du fanebladet Shares, (du kan nå legge til ekstra delte mapper med Add New Share...),velg aktuell mappe, og Edit Share..., sett opp rettighetene du ønsker til denne (typisk vil du ikke at den skal være Public dersom den skal ha log-in). Under fanebladet Users klikker du Expert og legger inn Sambabrukeren som skal ha adgang som Valid users og enten i Read list eller i Write list (altså skriv inn brukernavn(ene) i feltene). Trykk OK hele veien tilbake.
Endre konfigurasjonfilen til Samba manuelt: Motsatt fra hva mange tror så er redigering av konfigurasjonfiler en meget effektiv måte å gjøre ting på dersom man vet hva man skal gjøre. Sjekk Langbein sin flotte post her, og besøk gjerne siden her i tillegg. Husk da at for å oppdatere konfigurasjonen bruker du nå (fra og med 10.04)
sudo service smbd restart
Montering av mapper delt med Samba
Du kan naturligvis gå rett inn på en delt mappe med Konqueror, Dophin, Nautilus eller andre program som har Samba implementert. Likevel kan det hende du ønsker å montere den lokalt på maskinen din, som om den var en lokal mappe. På den måten kan du f.eks. ha hjemme katalogen din på filserveren og få den montert automatisk når du booter. Dersom du ikke har opprettet brukere og passord for Samba som forklart over, så sørg for at du har senket sikkerhetsnivået til Samba til Share slik som forklart under Fildeling. Det første vi trenger er "smbfs", det er en samlepakke, så den installerer du med ditt favoritt pakkeprogram, eller rett og slett fra en terminal med "sudo aptitude install smbfs". Du kan nå montere din delte mappe med kommandoen mount.cifs, og demontere den med umount.cifs, f.eks. Run Command/Kjør Program og (i en linje)
sudo mount.cifs //sambaserver/deltmappe /home/brukernavn/lokalmappe
Hvor sambaserver er navnet på maskinen med den delte mappen, og deltmappe er navnet på den delte mappen. Sørg for at mappen "lokalmappe" er opprettet og tom på forhånd. Nå kan du åpne "lokalmappe" å få tilgang til mappen på "sambaserver" som om den var en helt vanlig mappe. Du kan også avmontere den igjen med:
sudo umount.cifs /home/brukernavn/lokalmappe
Hvis du ønsker at dette skal gjøres automatisk hver gang du booter, så må du legge inn en linje for hver mappe i filen /etc/fstab. Ta Run Command/Kjør Program, og skriv inn:
sudo kate /etc/fstab
så kan du legge til følgende linje nederst i filen:
//sambaserver/deltmappe /home/brukernavn/lokalmappe cifs uid=brukernavn,gid=brukernavn 0 0
Hvis du har opprettet bruker og passord for den delte mappen, så må du også ha med dette når du monterer, da blir linjen slik:
//sambaserver/deltmappe /home/brukernavn/lokalmappe cifs username=<smb user>,password=<smbuser password>,uid=brukernavn,gid=brukernavn 0 0
hvor du erstatter <smb user> med brukernavn og <smbuser password> med passordet til den delte mappen.
Remote desktop
Flere remote desktop løsninger er støttet ut-av-boksen i Kubuntu, men som standard er de skrudd av akkurat som i XP og Vista. For å aktivere dette i Kubuntu tar du System Settings->Internet & Connectivity->Desktop Sharing. Klikk av de to første og den siste, legg inn et passord og trykk Apply (hvis du bruker en eldre Kubuntu versjon enn 7.10, så må du bruke kcontrol istedet for System Settings). Du kan nå koble deg til fra enhver GNU/Linux maskin i nettverket. Bare ta Meny->Internet->Krdc, så legger du inn navnet eller nettadressen til filserveren etterfulgt av :0, f.eks.:
minfilserver:0
Velg kvalitet på linjen. Hos meg fungerer Medium meget godt over trådløst nett. Hvis du heller vil koble deg til en XP/Vista maskin eksempelvis med navn minxp, så skriver du istedet:
rdp:/minxp
Husk at remote desktop da må være aktivert på XP/Vista maskinen, og at ingen antivirus programmer blokkerer tjenesten. Hvis du vil koble deg til filserveren fra en XP/Vista maskin, så laster du ned (se etter Free Edition som er gratis) Real VNC. Hvis du ikke liker den, så tester du denne i stedet.
Hjelp! Den finner ikke maskinen eller nekter å koble på: Kan hende din router ikke sender navnet til maskinen din over nett. Det kan du enkelt fikse lokalt på maskinen din ved å fortelle den hvilken adresse filserveren din har. Finn først ut hvilken adresse filserveren din har (adresser på nett kalles IP): System Settings->Network Settings, du ser nå dine nettporter i vinduet med IP adressen ved siden av den som brukes, f.eks. kan den være 192.168.1.100. Gå inn på akkurat samme vindu på klienten din, trykk fanebladet Domain Name System, trykk Administrator Mode og så Add. Legg inn IP adressen til filserveren i feltet, så kan du legge inn såkalt alias, dvs. hvilket navn du vil serveren skal ha på nettet. (På win2000/XP/Vista maskiner kan du også legge inn såkalte alias til IP adresser ved å editere konfig filen hosts manuelt, den ligger i katalogen C:\SystemRoot\system32\drivers\etc\hosts på Windows 2000, på XP ligger den i C:\WINDOWS\system32\drivers\etc\hosts, Vista har jeg ikke peiling, hvis du vil finne IP adressen til din XP/Vista maskin, så slenger du opp en DOS terminal og skriver ipconfig). Husk at mange routere skifter IP adresse på maskinen din når du re-starter maskinen. På mange routere kan denne adressen låses, men det får bli i neste seksjon. Som all trafikk over nett kreves at portene som brukes er åpne, VNC bruker port 5900. Åpning av porter gjelder spesielt om du vil ha tilgang fra utenfor hjemmet, og ADSL modemet ditt og/eller routeren har brannmur. Les mer om dette her. Les også avsnitt om temaet på siste del i denne posten.
Anbefaling: Ta en titt her hvor Nomachine er presentert, og bruk Nomachine som remote desktop løsning. Den er overlegen de andre løsningene, og minimalt mer komplisert å sette opp.
Fjern re-boot
Du ønsker kanskje å sette boksen en plass hvor den er ute av syne og ute av sinn, men likevel mulighet for re-boot uten at du trenger fiske den frem. Automatisk log-in gjør du fra System Settings -> Advanced -> Login Manager -> Convenience, huk av "Enable Auto-Login", så "Apply". Du vil nå kunne koble deg til via f.eks. vnc neste gang maskinen booter. Dersom du ikke har tastatur/mus på maskinen, så må du passe på at Bios er stilt inn til å ikke stoppe ved feilmelding.
Undersøk om hovedkort støtter wake-on-lan, isåfall kan du slå på serveren over nett med en wol-pakke, eksempelvis sendt fra routeren din (forutsetter at du har installert OpenWrt på routeren).
Koble til ny harddisk
Det er noe som heter hot-swap, å skifte en harddisk mens maskinen går. For USB disker fungerer dette fint, for noen oppsett med S-ATA disker funker det også, men er du usikker så er det tryggeste å slå av serveren før du kobler til en ny intern disk. Når du har slått på maskinen igjen må du bestemme deg for hvordan du vil bruke disken. Hvis den ikke er partisjonert, gjør du dette greit med qtparted (gparted er et godt Gnome basert alternativ som følger med Ubuntu live-CD). Installer først qtparted, så kan du starte den som administrator. Det vanligste filsystemet for linux er ext3,. For dere som også bruker operativsystem fra Microsoft så finnes driver til ext2 og ext3 (se egen seksjon om kompatibilitet) slik at du kan sikre interoperabilitet. Standard oppsettet er å partisjonere og å montere eller koble til om du vil (å mappe brukes ofte i MS sjargong) din harddisk sine partisjoner. I GNU/Linux er alt tilsynelatende filer og mapper, også harddisker. Harddiskpartisjonene som er montert (eller tilkoblet om du vil) finner du i mappen /media som standard. Unntaket er rotpartisjonen hvor linux er installert, den ligger over alle, altså her /. Når du skal bestemme deg for hvordan den nye harddisken skal oppføre seg, går du inn i "System Settings", velger fanebladet "Advanced", og så "Disk & Filesystems". Aktiver "Administrator Mode", så kan du modifisere hvordan harddiskpartisjonene skal monteres (så fremt de er partisjonert og formatert). Grensesnittet er selvforklarende og enkelt, men selve antallet filsystem som er støttet kan virke skremmende, "Automatic" fungere nok fint (de vanligste filsystemene på GNU/Linux er ext3 og resierfs, begge fungerer utmerket). Alle partisjoner må ha en tom mappe hvor de monteres. Sørg for å opprette nye mapper (f.eks. fra Konqueror) der hvor du ønsker partisjonene skal monteres. Du velger nå den nye mappen som <mount point>. Husk å huke av Enable at start up hvis du ønsker at den skal bli automatisk montert når maskinen booter, huk også av Writeable hvis du ønsker å kunne skrive til disken. Hvis du ønsker at vanlige brukere skal ha tilgang til partisjonene, så kan du endre rettighetene til mappen hvor den er montert (sørg for at partisjonen er montert/enablet først). Bare start Konqueror eller Nautilus som administrator, f.eks. Alt+F2 og så kdesu konqueror, så høyreklikker du på mappen, Properties->Permissions og endrer rettigheter til at Others Can View & Modify Content. Hvis du ønsker å endre rotpartisjonen, så får du ikke demontert denne mens maskinen kjører. Du kan da fyre opp live-CD, og partisjonere fra den.
Hvordan kan jeg få tilbake slettet fil eller partisjon?
For et generelt verktøy kan du teste TestDisk som både gjenoppretter partisjoner og filer, men i skrivende øyeblikk mangler dessverre filoppretting for ext3 og ext4.
Det vanligste filsystemet for GNU/Linux i dag er ext3, og der har det kommet noen fine verktøy. Les om ext3undel her, du finner også relevante linker i artikkelen. Ta gjerne en titt på ext3grep også, les mer og last det ned her. Ext3grep er fortsatt et nytt verktøy, så ikke forvent at den er helt slepen i kantene ennå. Du kan følge og søke hjelp hos andre brukere av verktøyet her.
Med ext2 kan du gjenopprette filer som er slettet så lenge ikke det området på disken er overskrevet etterpå. En samlepakke som inneholdet både gjenoppretting og mye annet er TCT. Pakken installerer du med KPackage, Synaptic eller Aptitude:
sudo aptitude install tct
så tar du en titt på kommandoene unrm og lazarus. Les gjerne også om verktøyene grave-robber, ils og mactime hvis du får ånden over deg. Ta gjerne en titt her også.
Du finner mange flere tips og nyttige gjenopprettingsprogrammer her.
DVD over nett
Du kan naturligvis streame en DVD-film greit over nettet ditt med VLC, men hvis du av en eller annen grunn ønsker å montere DVD-en over nett på en maskin, så finnes det eget filsystem for formålet, nemlig dvdfs. Dessverre er dette prosjektet noe umodent i skrivende stund, så noen ferdig pakke finnes ikke. Derimot er veiledningen og installasjonen grei, og den finner du her. Dessverre finnes det såvidt jeg vet ingenting lignende for Microsoft Windows, så du trenger GNU/Linux i begge ender for denne løsningen.
NFS - montering av mapper
Du kan montere mapper mellom GNU/Linux og Unix maskiner meget enkelt med nfs, og det gir topp ytelse. Hvis du ikke allerede har det, så må du installere nfs, f.eks. med pakken knfs på serveren, men på klienten kan du nøye deg med nfs-client. Mappene deler du med System Settings->File Sharing, klikk på Administrator Mode, så kan du legge til nye eller endre delte mapper til å bli delt med nfs, huk av Writable hvis du skal ha skriveaksess. Husk at nfs må reloade innstillingene før de trer i kraft, re-boot eller rett og slett kjør følgende kommando:
sudo /etc/init.d/nfs-kernel-server reload
Du monterer nå den delte mappen på en annen maskin eksempelvis med
sudo mount filserver:/home/brukernavn/deltmappe /home/brukernavn/mappe
hvor filserver er IP eller navn til filserveren. Du kan også legge den i fstab slik at den monteres ved boot på enklest tenkelige måte med følgende linje:
filserver:/home/brukernavn/deltmappe /home/brukernavn/lokalmappe nfs
Hvis du har lyst på alle detaljene rundt nfs i fstab går du hit. Dette kan være en meget god løsning for å montere din egen hjemmekatalog, slik at du får alle dine innstillinger og filer tilgjengelig uansett hvilken maskin du logger på. Hvis du vil redigere oppsettet til nfs i konfigurasjonsfilen direkte, så finner du den i /etc/exports, med ferdige eksempler.
Jeg får ikke tilgang til filene: Sørg for at mappen du monterer på har de rettighetene du ønsker for din bruker (bare høyreklikk på den og sjekk Egenskaper/Properties og så Permissions), eksempelvis gi alle brukere les, skriv og kjørerettigheter til mappen. Hvis du fortsatt har problemer, så sjekk at filene har rett eier, typisk ditt brukernavn. Hvis filene eies av et nummer, eksempelvis 1001, eller det står bare nouser og nogroup, så har brukeren din forskjellig numerisk verdi på de to systemene. Disse verdiene er lagret i filene /etc/passwd og /etc/group. Du blir i såfall nødt til å endre dem slik at de er like på alle systemene, men sørg da også for å oppdatere eier på alle filer i hjemmemappen din etterpå (også de skjulte filene og mappene som begynner med punktum).
Raid og dynamisk volumhåndtering - oppsett
Med dynamisk volum håndtering menes her muligheten til å sette opp en flere disker som om de er en disk "on the fly". Dersom hovedkortet ditt støtter Raid, kan du forsøke å sette det opp direkte fra Bios. For desktop hovedkort vil jeg vel egentlig fraråde deg det siden de Raid kontrollerne ofte er av dårlig kvalitet. Du kan derimot sette opp Raid og LVM volumhåndtering i software allerede når du installerer Ubuntu som vil gi deg all den fleksibliitet du ønsker, les mer om det i her. Selv om du ikke tenkte på det allerede da, så frykt ikke, du kan endre det på diskene dine i ettertid, men du må da gjerne borti /etc/fstab, filen som bestemmer hvordan dine harddisker skal monteres. Lær mer om fstab gjennom manualsiden:
man fstab
Enkle programmer for oppsett av Raid og dynamisk volumhåndtering er dessverre mangelvare. Hvis du bare vil ha flere disker til å se ut som en, og mulighet til å enkelt legge til flere disker etterhvert, så trenger du bare LVM. Den kan du enkelt sette opp med config-system-lvm, installert med ditt favoritt pakkeprogram. Du finner brukerveiledning til programmet her. Husk å reboote før du starter programmet.




