Re: Script für Mailboxkonvertierung?

2004-10-21 Diskussionsfäden Michelle Konzack
Hallo Lars,

Am 2004-10-21 07:12:49, schrieb Lars B:
 moin, Michelle,
 
 cool - scheint zu klappen!
 
 ich hatte in ?man su? zwar diese Syntax gesehen,  muss echt gestehen, 
 dass ich - obwohl ich es irgendwann mal bis zum abitur geschafft hatte, 
 ungelogen ;-) - für manpages zu doof bin bzw. da noch nie richtig was 
 draus gelernt habe - so ein kurzes beispiel wie deins ist mir dann 
 lieber.

Ich habe auch ne ganze Weile gebraucht, bis ich das mit dem --
geraft hatte. Und was die manpages betrifft,habe ich diese garantiert
5000 mal gelesen. 

 jetzt muss ich mal schauen, ob ich den rest der konvertierung - 
 abarbeiten von username und password aus einer liste - auch noch 
 hinbekomme.

Naja, wie willste das machen ?
Eine Datei anlegen und pro Zeile einen Benutzer/Password ? 
Also:

  _( 'newuser.list' )___
/
| user1 clar_pass1
| user2 clar_pass2
| user3 clar_pass3
| user4 clar_pass4
| user5 clar_pass5
 \__

Das kannste dann mit

  _( 'newuser.exe' )
 /
|  '!/bin/bash
|  
|  (cat newuser.list ; echo ) |
|  while read NEWUSER NEWPASS
|  do
|CNEWPASS=`mcrypt NEWPASS`
|let DAYSINCE=`date +%s`
|let DAYSINCE=DAYSINCE/3600/24
|echo -n $NEWUSER:x:$NEWUID:$NEWGID:$NEWNAME,,,:$NEWHOME:$NEWSHELL  passwd.new
|echo -n $NEWUSER:$CNEWPASS:$DAYSINCE:0:9:7:::  shadow.new
|  done
 \__


 danke jedenfalls
 
 gruss
 
 
 lars


Greetings
Michelle

-- 
Linux-User #280138 with the Linux Counter, http://counter.li.org/ 
Michelle Konzack   Apt. 917  ICQ #328449886
   50, rue de Soultz MSM LinuxMichi
0033/3/8845235667100 Strasbourg/France   IRC #Debian (irc.icq.com)


signature.pgp
Description: Digital signature


Script für Mailboxkonvertierung?

2004-10-20 Diskussionsfäden Lars B
Liebe Gemeinde,

es steht die Umstellung eines Mailservers an, wozu ich etwa 500 Postfächer im alten mbox-Format zu Maildir konvertieren müsste; zum Anlegen der User habe ich mir ein kleines Script modifiziert, was auch super funktioniert (Script starten, name und passwort eingeben, fertig!), ich werde die User alle damit anlegen, weil das höchstwahrscheinlich schneller gehen dürfte als studenlanges rumbasteln an einem script, umd die user damit anlegen zu lassen.

Nun muss ich zum konvertieren der mboxes ins maildir aber als su ins jeweilige home-verzeichnis und mb2md -s mbox -d maildir/ ausführen - im Script plaziert, meckert mir su, dass er nichts ausführen kann in der yntax:

su $LOGIN mb2md -s mbox -d Maildir/

Hat jemand eine Idee, wie ich die Konvertierung elegant lösen könnte?
Die Befehlsfolge su $LOGIN mb2md -s mbox -d Maildir/ bekomme ich nicht als Script aufgerufen, weil ich nicht weiss, wie ich dem Script nacheinander die namen aller user übergeben soll.

Gibt es vielleicht auch die Möglichkeit, alle user in eine Textdatei zu schreiben und diese dann abarbeiten zu lassen?


danke im Voraus für Tipps, im Anhang das Script, was ich mir zurechtmodifiziert habe.

gruss

lars




echo
echo -n Login name fuer den neuen User []: 
read LOGIN
if [ -z $LOGIN ]
then echo leer gueldet nicht.;exit
fi

test -d /home/adminz/scripte/mkumw/home/$LOGIN  echo Den User gibt es bereits bzw
ein /home/-Verzeichnis ist bereits vorhanden! Bitte /home/-Verzeichnis loeschen oder
/etc/passwd bzw. /etc/shadow ueberpruefen!

echo Neuer login name: $LOGIN

echo
echo Benutzer wird angelegt; falls nicht, bitte zum Abbruch Control-C druecken.
Ansonsten 
echo ENTER zum Anlegen des Accounts und Einrichten des Passworts!
read FOO
echo
#echo Making new account...

/usr/sbin/useradd $LOGIN -g users -s /bin/bash -d
/home/adminz/scripte/mkumw/home/$LOGIN

mkdir /home/adminz/scripte/mkumw/home/$LOGIN
chown $LOGIN /home/adminz/scripte/mkumw/home/$LOGIN

if [ -d /home/adminz/scripte/mkumw/home/$LOGIN ]; then
chmod 711 /home/adminz/scripte/mkumw/home/$LOGIN
fi
echo

/usr/bin/passwd $LOGIN

/usr/sbin/postfix reload

cd /home/adminz/scripte/mkumw/home/$LOGIN
#su $LOGIN maildirmake Maildir
cp /home/adminz/scripte/mkumw/alte-mails/$LOGIN /home/adminz/scripte/mkumw/home/$LOGIN/
chown $LOGIN /home/adminz/scripte/mkumw/home/$LOGIN/$LOGIN

su $LOGIN mb2md -s /home/adminz/scripte/mkumw/home/$LOGIN/$LOGIN 
#-d /home/adminz/scripte/mkumw/home/$LOGIN/Maildir

#su $LOGIN ../mbox2imap 

exit 0

echo Benutzer $LOGIN angelegt, Mails kopiert und in IMAP gewandelt

exit 0


Re: Script für Mailboxkonvertierung?

2004-10-20 Diskussionsfäden Jan Kesten
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Lars B wrote:
| su $LOGIN mb2md -s mbox -d Maildir/
Hallo, Lars :-)
Vielleicht fehlt dir nur ein '-c' wie
su $LOGIN -c mb2md -s mbox -d Maildir/
ob dabei die Anführungszeichen notwendig sind kann ich Dir aber
nicht verraten, vielleicht einfach mal testen. Hast Du denn vorher
auch noch die Mails aus /var/spool/ kopiert? Ich hatte die mal aus
versehen vergessen, das war nicht so klasse...
Cheers,
Jam
- --
GPG-KeyID: 82201FC4
Available at my public keyserver www.gpg-keyserver.de
-BEGIN PGP SIGNATURE-
Version: GnuPG v1.2.4 (MingW32)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFBdn0lvvmCkIIgH8QRAt9QAJ9nl3Wg7/a8niD1hNjMCcmjkjegCACfRXqY
WeMCLkioRqFpyD97bGN6xjI=
=2wjJ
-END PGP SIGNATURE-
--
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)


Re: Script für Mailboxkonvertierung?

2004-10-20 Diskussionsfäden Werner Detter
hallo,

das selbe problem/die selbe aufgabe hatte ich auch schon, hab mir dazu ein
kleines perlskript geschrieben welches die umkonvertierung für mich
erledigt hat. hat reibungslos funktioniert.

hier der benötigte auszug aus dem perlskript:

# mailhome anlegen und so
system(/usr/bin/maildirmake /mail/$user);
system(/bin/chmod -R +700 /mailhome/$p_u);

my $path=/var/mail/$user;

if (-e $path) {

# mailboxkonvertierung vorbereiten   
$procmailrc=/tmp/procmailrc;
open(PR,$procmailrc);
print PR VERBOSE=on\n;
print PR LOGABSTRACT=all\n;
print PR LOGFILE=/tmp/procmail.log\n;
print PR :0\n;
print PR /mail/$user/;
close(PR);

# nun wirklich umkonvertieren
system(/bin/cat /var/mail/$p_u | /usr/bin/formail -s procmail
/tmp/procmailrc);

}


# noch die rechte anpassen, bei mir postfix als mta
system(/bin/chown -R postfix:postdrop /mailhome/$user);

den codeschnipsel kannste bei dir ja entsprechend implmentieren und für
jeden user durchlaufen lassen. zum verständnis kannst du die aktionen
ja auch händisch angehen, um zu sehen was hier eigentlich geschieht.

hoffe geholfen zu haben,

werner detter







-- 
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Script für Mailboxkonvertierung?

2004-10-20 Diskussionsfäden Andreas Pakulat
On 20.Oct 2004 - 16:51:35, Lars B wrote:
 Liebe Gemeinde, 
 im Script plaziert, meckert mir su, dass er nichts ausführen kann in 
 der yntax: 
 
 su $LOGIN mb2md -s mbox -d Maildir/ 

man su, 1. su - verwenden. und 2. su -c mb2md -s mbox -d Maildir/
nutzen. Die Zeile in deinem Skript sollte also
su -c mb2md -s mbox -d Maildir - $LOGIN 

lauten.

Andreas

-- 
Who is D.B. Cooper, and where is he now?


-- 
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/

Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject unsubscribe. Probleme? Mail an [EMAIL PROTECTED] (engl)



Re: Script für Mailboxkonvertierung?

2004-10-20 Diskussionsfäden Lars B
moin, Michelle,
cool - scheint zu klappen!
ich hatte in ´man su´ zwar diese Syntax gesehen,  muss echt gestehen, 
dass ich - obwohl ich es irgendwann mal bis zum abitur geschafft hatte, 
ungelogen ;-) - für manpages zu doof bin bzw. da noch nie richtig was 
draus gelernt habe - so ein kurzes beispiel wie deins ist mir dann 
lieber.

jetzt muss ich mal schauen, ob ich den rest der konvertierung - 
abarbeiten von username und password aus einer liste - auch noch 
hinbekomme.

danke jedenfalls
gruss
lars
På 20.10.2004 kl. 21:47 skrev Michelle Konzack:
Am 2004-10-20 16:51:35, schrieb Lars B:
Liebe Gemeinde,

Nun muss ich zum konvertieren der mboxes ins maildir aber als su ins
jeweilige home-verzeichnis und mb2md -s mbox -d maildir/ ausführen - 
im
Script plaziert, meckert mir su, dass er nichts ausführen kann in der
yntax:

su $LOGIN mb2md -s mbox -d Maildir/
Schon mal:
su $LOGIN -- mb2md -s mbox -d Maildir/
versucht ?
Hat jemand eine Idee, wie ich die Konvertierung elegant lösen könnte?
Die Befehlsfolge su $LOGIN mb2md -s mbox -d Maildir/ bekomme ich
nicht als Script aufgerufen, weil ich nicht weiss, wie ich dem Script
nacheinander die namen aller user übergeben soll.
Eine Datei mit allen $USER erstellen, einen pro Zeile
und dann:
for $LOGIN_USER in `cat liste.user` ; do
su $LOGIN_USER -- mb2md -s mbox -d Maildir/
done
Gibt es vielleicht auch die Möglichkeit, alle user in eine Textdatei 
zu
schreiben und diese dann abarbeiten zu lassen?
s.o.
danke im Voraus für Tipps, im Anhang das Script, was ich mir
zurechtmodifiziert habe.
gruss
lars
Greetings
Michelle
--
Linux-User #280138 with the Linux Counter, http://counter.li.org/
Michelle Konzack   Apt. 917  ICQ #328449886
   50, rue de Soultz MSM LinuxMichi
0033/3/8845235667100 Strasbourg/France   IRC #Debian (irc.icq.com)