# trecem din freeBSD in emulatia Linux cu linie de comanda:
chroot /compat/ubuntu /bin/bash
# schimbam directorul in /var/lib/icefact (atentie, in emulatie directorul /compat/ubuntu devine director radacina / )
cd /var/lib/icefact
# si acum vedem permisiunile:
ls -l
-rwxr-xr-x 1 icefact-srv icefact-srv 901120 Jan 12 11:40 numefirma.db
#atentie, inca suntem in emulatie, nu iesim
# schimbare proprietar baza date
# numefirma.db apartine utilizatorului "icefact-srv":
chown icefact-srv numefirma.db
# utilizatorii inregistrati in grupul "icefact-srv" au voie sa acceseze baza date:
chgrp icefact-srv numefirma.db
#iesim din emulatie
exit
./MANUAL_icesoft_updater.sh
/usr/local/etc/rc.d/icefactd start
/bin/icefact
password: daca esti user normal, bagi parola de root. daca esti deja root, nu iti cere parola.
# atentie, mai devreme am iesit din emulatie, acum suntem in FreeBSD
# creare director "local"
mkdir /compat/ubuntu/localshare
# creare director "retea"
mkdir /compat/ubuntu/networkshare
# creare director "storage" in directorul-radacina al FreeBSD:
mkdir /storage
# "scurtaturi" / "symbolic link" din Ubuntu catre directorul-radacina al FreeBSD.
# ca sa fie mai comod cand cautam cu mausul
# sintaxa: ln -s <pe cine> <unde>
ln -s /compat/ubuntu/localshare /storage/localshare
ln -s /compat/ubuntu/networkshare /storage/networkshare
# "montam" un folder partajat ("sheruit" in jargonul IT) denumit "conta"
# de pe un sistem windows (IP = 172.16.1.1)
# cu utilizator = gogu si parola = gogu01.
# Atentie, nu vrea fara parola asa ca din windows trebuie setat user si parola.
# Se incearca intre doua windowsuri pana functioneaza, apoi se ruleaza urmatoarea comanda:
mount_smbfs -I 172.16.1.1 -U gogu //gogu@172.16.1.1/conta /compat/ubuntu/networkshare
password: gogu01
mount
/dev/ada0s1 on / (ufs, local, soft-updates, journaled soft-updates) #("/" al lui FreeBSD)
devfs on /dev (devfs) #("device manager")
fdescfs on /compat/linux/dev/fd (fdescfs) #("file descriptor file system" al emulatiei Linux)
devfs on /compat/ubuntu/dev (devfs) #("device manager" al lui Linux)
tmpfs on /compat/ubuntu/dev/shm (tmpfs, local) #("sistem de fisiere temporare")
linprocfs on /compat/ubuntu/proc (linprocfs, local) #("informatii task manager")
linsysfs on /compat/ubuntu/sys (linsysfs, local) #("infomatii sistem fisiere")
/tmp on /compat/ubuntu/tmp (nullfs, local, soft-updates, journaled soft-updates) #("aici stau fisierele temporare")
/home on /compat/ubuntu/home (nullfs, local, soft-updates, journaled soft-updates) # ("/home al lui FreeBSD")
//GOGU@172.16.1.1/CONTA on /compat/ubuntu/networkshare (smbfs) #("aici e deschis folderul partajat din Windows")
/bin/icefact
password: daca esti user normal, bagi parola de root. daca esti deja root, nu iti cere parola.
#atentie, suntem in FreeBSD si NU in emulatie
mkdir /etc/bkupscripts
cd /etc/bkupscripts
#!/bin/sh
echo "asta se ruleaza in fiecare zi la ora 00:01"
echo "copiere baza de date /compat/ubuntu/var/lib/icefact/numefirma.db in /storage/networkshare"
echo "se face prin arhivare (tar + gzip) ca sa se pastreze proprietarul+grupul icefact-srv"
echo "prin simpla copiere se pierde proprietar+grup"
echo "atentie: proprietarul si grupul sunt specifice emulatiei de linux. In FreeBSD ambele sunt 999."
echo "sintaxa: tar -czvf <unde> <pe cine>"
echo "adica: tar -czvf <in_folderul_sheruit/icefactd.tar.gz> <folderul_cu_baza_de_date>"
tar -czvf /compat/ubuntu/networkshare/icefactd.tar.gz /compat/ubuntu/var/lib/icefact
echo "gata".
chmod a+x /etc/bkupscripts/bkup_conta.sh
# backup in fiecare noapte la minutul 1 ora 0 pentru baza de date cu facturile
#minute hour day_of_month month day_of_week who command
1 0 * * * root /etc/bkupscripts/bkup_conta.sh > /var/log/backupscript.log
# trimit semnal "hang-up" catre crond. Adica opreste tot ce face, re-incarca configuratia, reia activitatea
killall -HUP crond