MacMusic.org  |  PcMusic.org  |  440Software  |  440Forums.com  |  440Tv  |  Zicos.com  |  AudioLexic.org
Loading... visitors connected
Welcome Guest
3 Pages V  < 1 2 3 >  
Reply to this topicStart new topic
> Backup, Time Machine, Rex, prise de tete
saturax
post Mon 3 Mar 2008, 14:51
Post #11


pouet-pouet
********

Group: Members
Posts: 4,577
Joined: 09-Jan 03
From: Ciré D Aunis - FR
Member No.: 10,621




edit:
Bon c'est pas si simple...
je teste le script generator en donnant uniquement source / destination option incremencielle et quand je lance le script il me cha,te un truc du genre

CODE
Rsync error: syntax or usage error (code 1) at  /sourceCache/rsync/rsync-30/rsync/main.c(1099)


Je sais pas bien ce que ça veut dire...

Sinon je cree un script pour tester le scheduler et je ne peux plus l'enlever, ni le modifier.. bref.

Je vais continuer de fouiller.

This post has been edited by saturax: Mon 3 Mar 2008, 14:53


--------------------
---SaturaX---
Go to the top of the page
 
+Quote Post
Francois Déchery
post Mon 3 Mar 2008, 18:30
Post #12


Webmaster
Group Icon

Group: Admin
Posts: 3,204
Joined: 29-Oct 00
From: Sommieres - FR
Member No.: 11




QUOTE (saturax @ lun 3 mar 2008, 14:20) *
OK bon je viens de tester RsyncX ça a l'air plutot simple, j'ai lancé une syncro entre A et C (B étant pour l'instant le disque time machine ) il y avait une difference d'une 10aine de mega, mais il a tout re copié, et je pense que c'est dut au fait que j'ai coché l'option "archive" au lieu de update bref.


t'es sur que t'a bien comparé la taille reelle en Octets (en faisant pomme I) et pas la taille arrondie des fenetre de finder...

QUOTE
En revanche je ne trouve pas comment lui donner deux destinations..
Peut etre faut il que je fasse deux scripts different: 1 de A vers B et un second de A vers C et de l'alterner dans le scheduler?


precisement 2 ligne de commande dans un seul script.

QUOTE
Jusqu'a maintenant, j'ai pas encore vu ou j'allais devoir me taper du terminal, tout à l'air d'etre faisable depuis la GUI.. cool.gif


En fait, tu t'en sert sans t'en apercevoir.
Dans Rsync (a ce que j'ai lu rapidement de la doc), tu as un mode ou au lieu de faire l'action immediatement, tu créé un fichier qui s'appelle xxx.command

Puis quand tu double click sur ce fichier, ca lance la commande rsync que tu avais etabli depuis la GUI de rsyncX.
Ce fichier est en fait un script tres simple de 2 lignes:

Pour l'editer, il te suffit d'ouvrir ce fichier dans TextEdit.
Tu y verra sans doute 2 lignes:
CODE
#!/bin/bash

rsync aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa


- la premiere ligne indique que ce fichier est un script bash (t'as pas a comprendre ca, juste tu le laisse)
- la deuxieme ligne est la commande rsync proprement dite (celle que tu as défini depuis la GUI de rsyncX)

Donc par exemple pour faire ce que tu voulais, a savoir copier vers tes 2 disques A et B, il faudra simplement generer 2 fichiers (Copie_A.command et CopieB.command) a partir de la GUI de rsync, puis Recreer a la main un nouveau script qui combine les 2 scripts.
Notion requise : Ouvrir/Copier/coller/sauver biggrin.gif

Tu ouvre dans TextEdit copie_A.command et tu rajoute a la fin la ligne rsynbc qui est dans CopieB.command
ce qui donnera un truc du genre:

CODE
#!/bin/bash

rsync aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
rsync bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb


Tu sauve ca en par exemple copie_A_et_B.command, et te voila avec un nouveau script qui te faira tes 2 copies l'une apres l'autre...

Tu peut meme améliorer la chose en faisant:

CODE
#!/bin/bash

echo "Je vais copier dans le disque A, tu peux aller te coucher..."
rsync aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
echo "J'ai fini A, je m'occupe de B..."
rsync bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
echo "J'ai fini!"


Et hop tu viens de faire ton premier script, il ne restera plus qu'a le "Scheduler" (programmer son lancement periodique)... je te montrerais ca, des que tu aura finalisé ton script de backup.


QUOTE (saturax @ lun 3 mar 2008, 14:51) *
edit:
Bon c'est pas si simple...
je teste le script generator en donnant uniquement source / destination option incremencielle et quand je lance le script il me cha,te un truc du genre

CODE
Rsync error: syntax or usage error (code 1) at  /sourceCache/rsync/rsync-30/rsync/main.c(1099)

Je sais pas bien ce que ça veut dire...

Qu'il y a un erreur de syntaxe dans la commande rsync qui a été généré par la GUI.
Il fut bien comprendre (c'est la limite des GUI pour une commande terminal) que la GUI que tu utilise ne vas pas corriger tes erreurs, et va transformer ca tel quel en ligne de commande (celle que tu vois dans le script généré). Si tu te plante, ne serais ce que d'un espace la ou il ne faut pas en mettre, ca peut faire un resultat tres different ou meme provoquer une erreur.

Je te conseille donc de faire des essais avec des choses tres simple (genre tu met deux dossiers avec quelques fichiers tres petit) et tu fait plein de test en rajoutant un parametre a la fois a chaque fois... tu verra bien d'ou viens l'erreur.

Une erreur frequente c'est d'avoir un espace dans un nom de dossier ou de fichier.
exemple: mettons la commande cp (qui fait une copie)

cp dossier_a dossier_b
pas de probleme, ca copie bien le dossier_a dans le dossier_b

si par contre tu fait
cp dossier a dossier b
ca fait pas ce que tu attend : ca fait copie du dossier "dossier" dans le dossier "a" et en meme temps ca te fait une erreur pasque t'a ecris "dossier b" a un endroit ou il devrait deja plus rien y avoir...
Capito?

La parade dans ce ca precis serai de faire:
CODE
[i]cp dossier\ a dossier\ b

parce que le "\ " indique que l'espace qui suit n'est pas un espace qui separe la source de la destination, mais bel et bien le caractere espace dans le nom du dossier...

C'est pour ca que je t'invite a faire tout tes essais depuis un exemple simple, avec des dossier au premier niveau des disque, avec des nom de dossiers et de fichiers sans espace et sans accents...

De la une fois que t'a ton script qui est comme tu veux, tu essaye de changer les source et destination par ceux qui 'interresse au final et si ca marche pas, tu me poste le tout ici.

QUOTE
Sinon je cree un script pour tester le scheduler et je ne peux plus l'enlever, ni le modifier.. bref.

RTFM ? tongue.gif

Des que tu l'aura désactivé, et que ton script faira exactement et parfaitement ce que tu veux, je te donnerai la commande pour le "scheduler"....


--------------------
Soif, MacMusic Webmaster

440Software, our new audio software directory
_____________________________________

440Software, notre nouveau site sur les logiciels audio pour Mac, PC et iPhone/iPad
Go to the top of the page
 
+Quote Post
saturax
post Tue 4 Mar 2008, 10:39
Post #13


pouet-pouet
********

Group: Members
Posts: 4,577
Joined: 09-Jan 03
From: Ciré D Aunis - FR
Member No.: 10,621




Bon merci pour toutes ces explication, pour la doc, j'arrive pas a la trouver a part quelque tips qu'ils donnent en ligne.. Ou as tu trouvé la doc?.. ya rien dans le read me fourni avec.

Le coup du script avec un dossier test je l'avait deja fait voila ce que le script generé raconte:

CODE
time sudo rsync -a -e ssh "/Volumes/BackupStudio/ESSAI" "/Volumes/BackupA0708/ESSAI" --eahfs --showtogo --update


Et ce, sans toucher a grand chose de la fenetre d'edit de script: source, destination, option incrementation.

De ce que j'ai lu ici http://archive.macosxlabs.org/rsyncx/details.html , je ne dois pas toucher a grand chose d'autre dans mon cas.

Quand je lance la commande j'ai ça:

QUOTE
Last login: Tue Mar 4 09:52:03 on ttys001
/Users/ServeurStudio/Essai.command ; exit;
Serveur-Studio:~ ServeurStudio$ /Users/ServeurStudio/Essai.command ; exit;
Password:
rsync: --eahfs: unknown option
rsync error: syntax or usage error (code 1) at /SourceCache/rsync/rsync-30/rsync/main.c(1099)

real 0m4.700s
user 0m0.007s
sys 0m0.009s
logout

[Opération terminée]


Bon. alors en suivant tes indications, j'ai essayé en modifiant le script comme ça:

CODE
#!/bin/bash

rsync -a -e "/Volumes/BackupStudio/ESSAI" /Volumes/BackupA0708/ESSAI --update

(J'ai enlvé les option qu'il n'avait pas l'air de connaitre et les truc qui differaient de ton exemple, juste pour le sport.. wink.gif

Je lance la commande, et v'la qu'il me racconte la vie de Rsync, mais il veut rien savoir... (désolé c'est un peu long):

QUOTE
Last login: Tue Mar 4 10:30:16 on ttys000
Serveur-Studio:~ ServeurStudio$ /Volumes/BackupStudio/Essai.command ; exit;
rsync version 2.6.3 protocol version 28
Copyright © 1996-2004 by Andrew Tridgell and others
<http://rsync.samba.org/>
Capabilities: 64-bit files, socketpairs, hard links, symlinks, batchfiles,
inplace, IPv6, 32-bit system inums, 64-bit internal inums

rsync comes with ABSOLUTELY NO WARRANTY. This is free software, and you
are welcome to redistribute it under certain conditions. See the GNU
General Public Licence for details.

rsync is a file transfer program capable of efficient remote update
via a fast differencing algorithm.

Usage: rsync [OPTION]... SRC [SRC]... [USER@]HOST:DEST
or rsync [OPTION]... [USER@]HOST:SRC DEST
or rsync [OPTION]... SRC [SRC]... DEST
or rsync [OPTION]... [USER@]HOST::SRC [DEST]
or rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST
or rsync [OPTION]... rsync://[USER@]HOST[:PORT]/SRC [DEST]
or rsync [OPTION]... SRC [SRC]... rsync://[USER@]HOST[:PORT]/DEST
SRC on single-colon remote HOST will be expanded by remote shell
SRC on server remote HOST may contain shell wildcards or multiple
sources separated by space as long as they have same top-level

Options
-v, --verbose increase verbosity
-q, --quiet decrease verbosity
-c, --checksum always checksum
-a, --archive archive mode, equivalent to -rlptgoD
-r, --recursive recurse into directories
-R, --relative use relative path names
--no-relative turn off --relative
--no-implied-dirs don't send implied dirs with -R
-b, --backup make backups (see --suffix & --backup-dir)
--backup-dir make backups into this directory
--suffix=SUFFIX backup suffix (default ~ w/o --backup-dir)
-u, --update update only (don't overwrite newer files)
--inplace update destination files inplace (SEE MAN PAGE)
-K, --keep-dirlinks treat symlinked dir on receiver as dir
-l, --links copy symlinks as symlinks
-L, --copy-links copy the referent of all symlinks
--copy-unsafe-links copy the referent of "unsafe" symlinks
--safe-links ignore "unsafe" symlinks
-H, --hard-links preserve hard links
-p, --perms preserve permissions
-o, --owner preserve owner (root only)
-g, --group preserve group
-D, --devices preserve devices (root only)
-t, --times preserve times
-S, --sparse handle sparse files efficiently
-n, --dry-run show what would have been transferred
-W, --whole-file copy whole files, no incremental checks
--no-whole-file turn off --whole-file
-x, --one-file-system don't cross filesystem boundaries
-B, --block-size=SIZE force a fixed checksum block-size
-e, --rsh=COMMAND specify the remote shell
--rsync-path=PATH specify path to rsync on the remote machine
--existing only update files that already exist
--ignore-existing ignore files that already exist on receiving side
--delete delete files that don't exist on the sending side
--delete-excluded also delete excluded files on the receiving side
--delete-after receiver deletes after transferring, not before
--ignore-errors delete even if there are I/O errors
--max-delete=NUM don't delete more than NUM files
--partial keep partially transferred files
--partial-dir=DIR put a partially transferred file into DIR
--force force deletion of directories even if not empty
--numeric-ids don't map uid/gid values by user/group name
--timeout=TIME set I/O timeout in seconds
-I, --ignore-times turn off mod time & file size quick check
--size-only ignore mod time for quick check (use size)
--modify-window=NUM compare mod times with reduced accuracy
-T, --temp-dir=DIR create temporary files in directory DIR
--compare-dest=DIR also compare destination files relative to DIR
--link-dest=DIR create hardlinks to DIR for unchanged files
-P equivalent to --partial --progress
-z, --compress compress file data
-C, --cvs-exclude auto ignore files in the same way CVS does
--exclude=PATTERN exclude files matching PATTERN
--exclude-from=FILE exclude patterns listed in FILE
--include=PATTERN don't exclude files matching PATTERN
--include-from=FILE don't exclude patterns listed in FILE
--files-from=FILE read FILE for list of source-file names
-0, --from0 all *-from file lists are delimited by nulls
--version print version number
--daemon run as an rsync daemon
--no-detach do not detach from the parent
--address=ADDRESS bind to the specified address
--config=FILE specify alternate rsyncd.conf file
--port=PORT specify alternate rsyncd port number
--blocking-io use blocking I/O for the remote shell
--no-blocking-io turn off --blocking-io
--stats give some file transfer stats
--progress show progress during transfer
--log-format=FORMAT log file transfers using specified format
--password-file=FILE get password from FILE
--bwlimit=KBPS limit I/O bandwidth, KBytes per second
--write-batch=FILE write a batch to FILE
--read-batch=FILE read a batch from FILE
--checksum-seed=NUM set block/file checksum seed
-E, --extended-attributes copy extended attributes
-4, --ipv4 prefer IPv4
-6, --ipv6 prefer IPv6
-h, --help show this help screen


Please see the rsync(1) and rsyncd.conf(5) man pages for full documentation
See http://rsync.samba.org/ for updates, bug reports, and answers
rsync error: syntax or usage error (code 1) at /SourceCache/rsync/rsync-30/rsync/main.c(906)
logout

Désolé, je fais ce que je peux, mais là...


--------------------
---SaturaX---
Go to the top of the page
 
+Quote Post
saturax
post Tue 4 Mar 2008, 11:39
Post #14


pouet-pouet
********

Group: Members
Posts: 4,577
Joined: 09-Jan 03
From: Ciré D Aunis - FR
Member No.: 10,621




Edit: Bon j'avance un peu (avec l'aide de collegues codeurs sous Unix wink.gif )

Voici ce qu'ils m'ont fait essayer:

CODE
rsync -a  /Volumes/BackupStudio/ESSAI /Volumes/BackupA0708/ESSAI --update


ça a fonctionné, mais le probleme c'est qu'il ne synchronise pas, il s'est contenté de faire une copie du dossier "essai" de source dans le dossier "essai" de destination...

Quelles option dans la liste au dessus dois-je rajouter à la fin pour qu'il n'ecrive que les nouveaux fichier de la source dans le dossier de destination?

J'ai essayé d'enlever le -a mais ça ne change rien...


--------------------
---SaturaX---
Go to the top of the page
 
+Quote Post
saturax
post Tue 4 Mar 2008, 11:54
Post #15


pouet-pouet
********

Group: Members
Posts: 4,577
Joined: 09-Jan 03
From: Ciré D Aunis - FR
Member No.: 10,621




Pinaise ça marche!!!
j'ai modifié comme suit:
CODE
rsync -a -u -r /Volumes/BackupStudio/ESSAI/ /Volumes/BackupA0708/ESSAI/ --archive --update --recursive --progress

cool.gif cool.gif

Vais maintenant modifier les variable de source et destination et faire un test grandeur nature.

Apres restera plus qu'a programer ça.

J'avais trouvé un soft qui permetait de plannifier des commande faut que je remette la main dessus..


--------------------
---SaturaX---
Go to the top of the page
 
+Quote Post
saturax
post Tue 4 Mar 2008, 12:43
Post #16


pouet-pouet
********

Group: Members
Posts: 4,577
Joined: 09-Jan 03
From: Ciré D Aunis - FR
Member No.: 10,621




Bon je continue mon monologue..

Il y a un petit soucis... tout les fichiers n'ayant pas d'extension (sessions PT, fichiers son SDII ne sont plus reconnus (plus d'icones, plus de liens avec les applis...)

ça c'est ennuyeux quand meme... angry.gif

EDIT: En fait j'ai trouvé il suffit de mettre l'option "-E " " --extended-attributes"

Un grand merci Soif, c'était pas si hardu que ça et c'est tres gratifiant quand ça fonctionne!

J'ai retrouvé le soft de schedule c'est "cronnix" qui permet d'editer le cron sans passer par le terminal.

Je teste tout ça et je te tiens au jus.

This post has been edited by saturax: Tue 4 Mar 2008, 13:09


--------------------
---SaturaX---
Go to the top of the page
 
+Quote Post
dj-mozar
post Tue 4 Mar 2008, 17:36
Post #17


Hero
*******

Group: Members
Posts: 1,143
Joined: 04-Aug 02
From: SUD OUEST - FR
Member No.: 6,568




QUOTE (saturax @ mar 4 mar 2008, 12:43) *
Bon je continue mon monologue..

mais non t'es pas tout seul, je suis ce feuilleton de très près… c'est passionant


--------------------
déformation professionnelle
Go to the top of the page
 
+Quote Post
Gatam
post Tue 4 Mar 2008, 18:36
Post #18


Maniac Member
******

Group: Members
Posts: 934
Joined: 24-Jun 03
From: Sete - FR
Member No.: 20,117




idem
merci de défricher !!
smile.gif
Go to the top of the page
 
+Quote Post
Francois Déchery
post Tue 4 Mar 2008, 21:08
Post #19


Webmaster
Group Icon

Group: Admin
Posts: 3,204
Joined: 29-Oct 00
From: Sommieres - FR
Member No.: 11




QUOTE (saturax @ mar 4 mar 2008, 11:54) *
code]rsync -a -u -r /Volumes/BackupStudio/ESSAI/ /Volumes/BackupA0708/ESSAI/ --archive --update --recursive --progress
[/code]

d'apres ce que j'ai lu vite fait dans le man:
-a est equivalent a --archive
-u est equivalent a --update
-r est equivalent a --recursive
de plus les options devraient toutes etre place avant la source/destination

donc ca devrait etre au final:
CODE
rsync -a -u -r --progress /Volumes/BackupStudio/ESSAI/ /Volumes/BackupA0708/ESSAI/

A savoir : qaund vous etes dans le terminal, pour avoir le mode d'emploi d'un commande il suffit de tapper: "man commande". ainsi dans le cas de rsync, il faut simplement tapper "man rsync", puis return... apres pour avancer d'une page, faut faire espace, et "Q" pour sortir

QUOTE (saturax @ mar 4 mar 2008, 12:43) *
Il y a un petit soucis... tout les fichiers n'ayant pas d'extension (sessions PT, fichiers son SDII ne sont plus reconnus (plus d'icones, plus de liens avec les applis...)

ça c'est ennuyeux quand meme... angry.gif

EDIT: En fait j'ai trouvé il suffit de mettre l'option "-E " " --extended-attributes"

(c'est je crois rsyncX qui rajoute justement ce support de HSF+)

donc ta commande devrait devenir
CODE
rsync -a -u -r -E --progress /Volumes/BackupStudio/ESSAI/ /Volumes/BackupA0708/ESSAI/

Je pense egalement que tu devrait mettre --delete qui fait que les fichier qui ne son plus present sur la source sont effacé de la destination. de qui nous fait donc
CODE
rsync -a -u -r -E --progress --delete /Volumes/BackupStudio/ESSAI/ /Volumes/BackupA0708/ESSAI/

Par contre une fois tes essais faits, tu n'aura plus besoin de mettre --progress, qui t'indique ce qui ce passe (normalement tu regardera ton backup ce daire puisque ca sera une tache CRON, automatique

donc on va arriver a:
CODE
rsync -a -u -r -E --delete /Volumes/BackupStudio/ESSAI/ /Volumes/BackupA0708/ESSAI/

d'ailleurs selon l'usage que tu veux de ton backup, tu pourra peut etre , pour le script final, un backup qui est une copie identique (--delete) sur le disque A et une copie qui garde quand meme les fichiers effacés, sur le disque B.

Ca nous fairais donc un script du genre:
CODE
#!/bin/bash

echo "backup a l'identique sur le disque A"
rsync -a -u -r -E --delete /Volumes/HD_Audio /Volumes/HD_BackupA/

echo "backup incremental sur le disque B"
rsync -a -u -r -E /Volumes/HD_Audio /Volumes/HD_BackupB/

echo "j'ai fini"

QUOTE
Un grand merci Soif, c'était pas si hardu que ça et c'est tres gratifiant quand ça fonctionne!

n'est ce pas... tongue.gif tongue.gif tongue.gif

D'ailleurs ca serais pas si sorcier que ca de faire que a chaque backup, ton petit script t'envoie un email si un de tes disque de backup n'a plus que 2Go de libre rolleyes.gif

QUOTE
J'ai retrouvé le soft de schedule c'est "cronnix" qui permet d'editer le cron sans passer par le terminal.

remarque qu'au terminal c'est pas tellement dur.

QUOTE
Je teste tout ça et je te tiens au jus.

Quand tu auras fini, poste nous ton script, qu'il puisse etre utile a d'autres wink.gif

Au fait un dernier truc, j'ai pas bien compris ta config: t'as combien de macs qui ont combien chacun de HD et lequel tu backup vers ou?

Pasque pour l'instant ce que tu fait avec ta commande c'est en local, mais ca peut marche aussi en reseau pour pas bcp plus cher cool.gif cool.gif cool.gif


--------------------
Soif, MacMusic Webmaster

440Software, our new audio software directory
_____________________________________

440Software, notre nouveau site sur les logiciels audio pour Mac, PC et iPhone/iPad
Go to the top of the page
 
+Quote Post
saturax
post Wed 5 Mar 2008, 15:04
Post #20


pouet-pouet
********

Group: Members
Posts: 4,577
Joined: 09-Jan 03
From: Ciré D Aunis - FR
Member No.: 10,621




Bon alors ça marche du feu de dieu, voici ma commande finale:

CODE
#!/bin/bash

echo "Sauvegarde automatique A en cours"
rsync -a -u -E Volumes/BackupStudio/2008/  /Volumes/BackupA0708/2008/  --archive --update --extended-attributes --progress

echo "Sauvegarde automatique B en cours"
rsync -a -u -E /Volumes/BackupStudio/2008/ /Volumes/BackupB0708/2008/ --archive --update --extended-attributes --progress

echo "Sauvegarde automatique terminée"


(Pour ceux que ça interesse, il suffit de taper ça dans text edit et de changer l'extension "rtf" en ".command"

En fait je ne souhaite pas effacer les sources et comme le backup est identique à la source, on connait forcement l'espace restant.

En fait le shema est le suivant:

G4
I
I
(ethernet)
l
l __Backup secondaire A
Mac mini-----Backup principal----I
l l__Backup secondaire B
l
(ethernet)
l
l
G4

Le disque Backup Principal est programmé pour monter directement sur le bureau des G4 à leur boot.
On envois nos session PT dessus une fois la post prod terminée.

Ensuite, J'ai choppé ConniX, il suffi de selectionner le fichier .command et de choisir jour, heure minute, mois et c'est parti!!

Maintenant, je voudrai pouvoir ecrire un rapport de backup dans un fichier RTF pour pouvoir verifier les backup.
J'ai essayé la commande --write-batch=[fichier texte] mais ça ne marche pas, il m'a juste ecrit ma ligne de commande dedans..
Ensuite je me demandais si il y avait une commande existante à mettre en fin de script pour qu'il quitte terminal en fin de backup... ça existe?

Sinon on peut trouver un manuel français de Rsync ici:

http://www.delafond.org/traducmanfr/man/man1/rsync.1.html

Sinon j'ai laissé les commande --xxxxx à la fin car l'editeur-foireux- de RsynX les mettait à la fin.. et ça marche, visiblement..

This post has been edited by saturax: Wed 5 Mar 2008, 15:06


--------------------
---SaturaX---
Go to the top of the page
 
+Quote Post

3 Pages V  < 1 2 3 >
Reply to this topicStart new topic
2 User(s) are reading this topic (2 Guests and 0 Anonymous Users)
0 Members:

 

Lo-Fi Version - Wed 11 Dec 2024, 21:57
- © MacMusic 1997-2008