Gå til innhold

[Løst] Hjemmeserver med kryptert backup til naboen...


Labbtus

Anbefalte innlegg

Skrevet
Nå ser det ut som neste punkt på agendaen min blir koding av cron. I følge Wiki (link) må min bruker være listet i /etc/cron.allow.
Hukser jeg rett er det bare å opprette filen og legge inn brukernavnet ditt i den.

Høyst sannsynlig så finnes by default /etc/cron.deny, men er tom (evt. inneholder "guest" e.l.) og /etc/cron.allow finnes ikke. Dette gir alle brukere rettigheter til å bruke cron. Med andre ord, du trenger sannsynligvis ikke gjøre noen ting for at din bruker skal kunne bruke cron.

Videoannonse
Annonse
Skrevet (endret)

Etter det store gjennombruddet her om dagen (ssh fungerte) har vi støtt på noen små utfordringer. Dette gjelder spesielt hos naboen :-)

Det har seg slik at han er i-fan, og har bare Mac-produkter i dataparken. Dog mange av sorten... Hovedutfordringen har være plasseringen av bildefiler/bibliotek på NAS. Det er en del linker på hvordan vi får Amahi til å støtte AFP (Apple File Protocol) (link), vi gjorde en jobb på dette i går, og han testinger nå hvordan dette fungerer. Han benytter Aperture for bildebehandling, så her blir det litt mer testing ift Masterfiler osv. Alle innspill ift mottas med takk, men er strengt tatt et annet problem ift denne tråden.

Her skjønner jeg ikke hva du mener. Mac kan bruke delte mapper akkurat som windows, burde være tilstrekkelig å dele de ut.

 

Her er en bruker som omtaler noe av problemet (link).

 

sshfs -p xxx -o nonempty -o idmap=user [email protected]:backup /backup/files

Hvorfor er ikke mappen /backup/files tom før du monterer? Når det gjelder idmap, har du samme brukernavn i begge ender? Isåfall bør det holde med:

sshfs -p nabo.yourhda.com:backup /backup/files

Forresten, fikk du til nøkler for ssh slik at du slipper å skrive inn passord?

Jepp fungerer med kortere kommando :-) Nøklene er montert og fungerer utmerket. :-)

 

..., men du trenger å sende med passord når du skal legge det inn i cron. Legg passordet i en fil som kun du har leserett til. Så kan du prøve med:

cat /sti/til/filmedpassord | encfs -S /backup/files /var/hda/backup

Fungerte utmerket etter at jeg hadde kjørt sshfs :-) (Legges inn i cron forslaget)

 

Nytt forslag backup-fileinstruction:

sshfs -p xxx nabo.yourhda.com:backup /backup/files

cat /sti/til/filmedpassord | encfs -S /backup/files /var/hda/backup

rsync -av --delete /var/hda/files/ /var/hda/backup/

fusermount -u /var/hda/backup/

 

Videre hadde jeg håpt å kunne sende eventulle feilmeldinger fra synkroniseringen på en mail til meg selv. Jeg har Loqal som bredbåndsleverandør, og er litt usikker på om de støtter sending av epost direkte fra script. Er det noen som har forslag til hvordan dette løses i scriptet?
Du kan bruke mail-kommadoen. Kanskje noen andre har forslag til hvordan du kan logge feilmeldinger?

 

Satser på en ny testeøkt i morgen. Takker så mye for alle gode innspill.

Endret av Labbtus
Skrevet

Ny status:

Følgende kommandoer benyttes:

sshfs -p xxx -o idmap=user nabo.yourhda.com:backup /backup/files
cat /home/user/cron/passwd | encfs -S /backup/files /var/hda/backup
rsync -av --delete /var/hda/files/ /var/hda/backup
fusermount -u /var/hda/backup/
fusermount -u /backup/files

 

Alle kommandoene fungerer utmerket når de kjøres i terminalvinduet en og en, og resultatet blir perfekt. Men, når disse linjene legges inn i en fil, og kjøres vha cron, ha får jeg problemer.

 

Cron command:

*/5 * * * * user /home/user/cron/command

Command filen ser dere over.

 

Når denne kjører får jeg feilmld i Fedora (rødt lys oppe i høyre hjørne). Den sier noe sånt som: encfs -S /backup/files /var/hda/backup. Process /urs/bin/encfs was killed by signal 6 (SIGABRT).

Filene har 770 ift tilgang, og passwd inneholder passordet til encfs.

 

Min første tanke var at kommandoene blir kjørt fortløpende, slik at fusermount - kommandoen demonterer før kommandoene over er ferdige. (Spesielt rsync vil ta litt tid her...)

Noen som har noen tanker om hva som kan være feil, og evt hvordan dette løses?

 

PS. Prosjektet har blitt noe forsinktet pga problemer med en harddisk hos naboen. Denne problemstillingen er omtalt her - link.

Skrevet (endret)

Forsøk å kjøre det som skript uten å bruke cron. Fra kommandolinja:

/home/user/cron/command

$ /home/user/cron/command 
sending incremental file list

sent 220 bytes  received 27 bytes  494.00 bytes/sec
total size is 10169745  speedup is 41173.06

Fungerer utmerket... ; ser det ut til.

 

Tilleggsopplysning: Ser ut til at det; når command kjøres via cron; at det blir syncet ukrypterte filen inn i mappen /var/hda/backup. Filene ligger der etter alle mapper er demontert...

Endret av Labbtus
Skrevet

Hm, jeg ser to mulige feilkilder. Begge er greie å fikse. Start med å sikre at bash (Bourne again shell) blir kjørt av skriptet ditt. Det gjøre du ved å legge inn følgende linje som første linje i filen /home/user/cron/command:

#!/bin/bash

Dernest kjører cron med din bruker? Kan høres ut som om command kjøres som root, det forklarer ihvertfall problemet med å montere encfs som eies av en ordinær bruker. Brukte du sudo når du kjørte crontab -e?

Skrevet

Hm, jeg ser to mulige feilkilder. Begge er greie å fikse. Start med å sikre at bash (Bourne again shell) blir kjørt av skriptet ditt. Det gjøre du ved å legge inn følgende linje som første linje i filen /home/user/cron/command:

#!/bin/bash

Dernest kjører cron med din bruker? Kan høres ut som om command kjøres som root, det forklarer ihvertfall problemet med å montere encfs som eies av en ordinær bruker. Brukte du sudo når du kjørte crontab -e?

 

cron kjøres vel egentlig av root; tror jeg. Filen ligger i /etc/crontab...

Men inne i cron ligger brukernavnet på linjen for kommandoen.

Ref:

*/5 * * * * user /home/user/cron/command

Skrevet

På tide vi fikser mail også. Litt usikker på hva som er standard MTA (mail transport agent) i Fedora, jeg tror det er postfix, men kan være sendmail også. Installer pakken mailutils, og se hvilken MTA som blir med.

 

Når den er installert kan du teste å sende en mail fra kommandolinja:

echo "Innnhold i mail"|mail -s "Testmail" [email protected]

Skrevet

Nei, cron-jobb legges inn med kommandoen

crontab -e

Resultatfil havner i /var/spool/cron/crontabs men denne skal ikke redigeres direkte. Dersom du skal legge inn en cron-jobb som trenger å kjøres som rot gjøres det med:

sudo crontab -e

men det skal du ikke i dette tilfellet.

Skrevet

Webmin har ett ganske greit grensesnitt for oppsett/administrering av cron jobber

Ett eksempel fra en av mine oppgaver, lærte det var greit å automatisere backup av databasen da jeg hadde glemt å gjøre det før en omformatering :blush: Heldigvis en base med lite endringer :)

post-70961-0-10554600-1325963822_thumb.png

Skrevet

Webmin er supert hvis du kjører headless (dvs. ingen grafisk desktop installert). Hvis du har KDE, så er det bare å installere kde-config-cron. Super gui til Cron rett i System Settings:

post-22889-0-99023800-1325967098_thumb.png

post-22889-0-82812700-1325967117_thumb.png

Skrevet

På tide vi fikser mail også. Litt usikker på hva som er standard MTA (mail transport agent) i Fedora, jeg tror det er postfix, men kan være sendmail også. Installer pakken mailutils, og se hvilken MTA som blir med.

 

Når den er installert kan du teste å sende en mail fra kommandolinja:

echo "Innnhold i mail"|mail -s "Testmail" [email protected]

 

Finner ikke mailutils i Fedora, men ser den finnes i Ubuntu. Har testet sudo apt-get install mailutils og sudo yum install mailutils

Skrevet

Søk i pakkesystemet etter mailutils. Trodde den het mailutils i Fedora også siden dette er det offisielle navnet til programpakken, kan hende den heter noe lignende. Eventuelt bør jo noen av Fedora-brukerne tipse oss.

Skrevet

Installerte Synaptic; og søkte etter mail fant følgende pakker:

- fetchmail

- mailcap

- mailx

- procmail

- rubygem-actionmailer

- sendmail

Har googlet noe - og fant denne linken (link) - mulig denne metoden kan benyttes?

 

Videre ble det full reinstallasjon hos naboen i dag etter problemene med harddisken. Dermed er videre testing av cron utsatt :-(

 

Og igjen; takk for hjelp og innspill.

Skrevet

Jeg tror det er endret fra sendmail til postfix. Forsøk mail kommandoen, og se om fedora er smart nok til å fortelle deg hvilken pakke som eventuelt mangler.

Skrevet (endret)

Installerte nylig Fedora 16 med KDE på en bærbar, og når jeg sjekket i dag tidlig så var det sendmail som var installert, vil da tro det er det samme på F14. Uansett så er det en smal sak å sjekke hvilke pakker som er installert, med f.eks. yumex.

Endret av Crowly
Skrevet

Hei,

ser ut til at det er sendmail som er installert med Fedora 14. (Ihht pakkene jeg finner med yumex).

Videre får jeg ingen feilmld når jeg tester mailkommandoen din Del. Men heller ingen mail i postkassen :-(

Skrevet

Hva sier /var/log/maillog ?

 

Mange ISPer sperrer deg fra å sende noe ut på port 25, annet enn til ISP sin mailserver. I såfall må du sette opp så serveren din leverer mailen ut via ISPs mailserver.

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...