FAQ aMule-de

From AMule Project FAQ
Revision as of 15:25, 26 November 2004 by 84.128.98.219 (Talk)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

F.A.Q on aMule


by Jacobo221


Version in English | Versión en Español | Versione in Italiano | Version en Français


Was ist denn dieses ominöse aMule eigentlich?

aMule ist ein plattformunabhängiger Client für das eDonkey/eMule Filesharing Netzwerk, entstanden im August 2003 aus einer Abspaltung von xMule, das wiederum eine Abspaltung von lMule, das wiederum eine Portierung des nur-windoof Clients [eMule]] ist.

Im Moment ist es unter GNU/Linux, FreeBSD und OpenBSD, MacOSX, Windoof und der X-Box sowohl auf 32- als auch 64bit Systemen lauffähig. Die Windoof-Version ist allerdings noch nicht wirklich für den produktiven Einsatz geeignet.

Es ist beabsichtigt, dass aMule genauso funktionell und einfach zu benutzen ist, wie eMule und auch genauso aussieht, so dass Nutzer, die mit einem der beiden vertraut sind, ohne Schwierigkeiten zwischen beiden wechseln können.

Da aMule auf den Quellen von eMule basiert, finden neue Funktionen sehr schnell ihren Platz in aMule, nachdem sie in eMule eingebaut wurden, so dass auch die Nutzer von aMule sicher sein können, sich immer an der Spitze der Entwicklung der ED2k Clients zu befinden.

Nicht unwichtig ist, dass es von einem großartigen Team entwickelt wird, dass (sogfern das überhaupt möglich ist), vielleicht noch nutzerfreundlicher und -bezogener ist, als aMule selbst. Daher schauen Sie auch mal bei #amule auf irc.freenode.net vorbei oder besuchen Sie unsere Foren, wenn Sie Fragen oder Probleme haben, oder einfach nur einen guten Vorschlag, was man besser machen könnte.

Möchten Sie vielleicht sogar dem Entwicklerteam beitreten, melden Sie sich bitte in den Foren oder im IRC.


Wie kann man sich die Credits eines Clients ansehen?

Man kann sich die Credits eines Clients (was man ihm schuldet) ansehen, wenn man auf seinen Namen rechts klickt und Details anzeigen auswählt. Die Credits haben keinen bestimmten Wert, man kann sich entweder die gesamtübertragene Datenmenge, die man von diesem Clients bekommen hat, ansehen oder den Credit Modifikator (DL/UL Modifikator). Das Fenster zeigt auch, wenn der Client in der Uploadwarteschlange steht, seine Position und seine Bewertung.


Was bedeuten diese ganzen Farben in der Fortschrittsanzeige?

In der Liste der Downloads:
Rot: Für Blöcke in rot wurden in der aktuellen Sitzung noch keine Quellen gefunden.
Blau: Blöcke in blau haben mindestens eine nutzbare Quelle, je dunkler das Blau ist, desto mehr Quellen gibt es.
Gelb: Gerade in diesem Moment heruntergeladenen Blöcke werden gelb dargestellt.
Schwarz: Schwarze Blöcke wurden bereits fertig heruntergeladen und überprüft.
Grün: Sobald eine Datei komplett fertiggestellt ist, wird sie grün dargestellt (und ist dann im Eingangsverzeichnis zu finden).
Auf der ausführlichen Downloadliste (aufzurufen durch Doppelklick auf einen einzelnen Transfer):
Schwarz: Der Client hat diesen Block, wir aber noch nicht.
Weiß: Diesen Block hat der Client nicht.
Grün: Wir haben diesen Block beide.
Gelb: Dieser Block wird gerade von diesem Client zu uns heraufgeladen.
Auf der Uploadliste:
Schwarz: Diesen Block hat der Client fertiggestellt und überprüft.
Grau: Der Client hat diesen Block nicht.
Beachten Sie, dass nicht alle Clients die Fähigkeite haben, anderen beim Upload zu sagen, welche Teile sie bereits haben, daher haben manche Clients keine Anzeige der einzelnen Blöcke.
Bei den freigegebenen Dateien:
Rot: Außer uns gibt es keine andere Quelle dieses Blocks.
Blau: Umso dunkler das Blau ist, umso mehr Clients haben diesen Teil.
Auf der Suchseite:
Schwarz: Für schwarze Dateien wurde nur ein Clients gefunden, der sie hat.
Blau: Dateien in blau haben mindestens zwei Quellen, je dunkler das Blau, desto mehr.
Rot: Rote Dateien befinden sich bereits in der Downloadliste
Grün: Bereits vollständig heruntergeladene Dateien werden auch hier in grün dargestellt.

Was bedeuten diese ganzen Icons?

Schauen Sie im Abschnitt "Icons und was sie uns sagen wollen" im Artikel Wie alles begann nach.

Was bedeuten die Zahlen in Klammern im Suchfenster?

Sie zeigen die Zahl der Clients an, die bekanntermaßen die Datei vollständig haben. Aber auch wenn die Anzahl 0 ist, heißt das noch lange nicht, dass keiner sie komplett hat, nur, dass sie keiner als "komplett" markiert hat (viele Clients tun dies). Trotzdem kann man so einen Eindruck davon gewinnen, wieviele Leute die Datei vollständig haben, auch wenn es keine Gewissheit ist.

Was bedeuten die ganzen Zahlen in der Quellen-Spalte in der Transferliste?

Das Format der Quellenangabe ist XX/YY + ZZ (WW), wobei
XX für die Anzahl der verfügbaren Quellen steht (von denen man downloaden kann),
YY für die Gesamtanzahl an gefundenen Quellen steht,
ZZ für die Anzahl der Quellen, die "nach einer anderen Datei gefragt" worden und
WW für die Anzahl der Quellen steht, von denen wir gerade einen Block herunterladen.

Wofür stehen die Zahlen in der Spalte Priorität in der aufgeklappten Downloadliste?

Das ist die Warteschlangenposition, die man beim jeweiligen Client einnimmt. Nicht alle Clients geben diese an, daher steht in manchen Fällen dort einfach nichts.
Die Zahl in Klammern gibt die Positionen an, die man sich schon in der Warteschlange des Clients *bewegt* hat. Negative' Zahlen stehen für vorangeschrittene Positionen, positive für verlorene. Wenn negativ, wird die Zahl blau dargestellt, bei positiv rot.

Warum werden in der Uploadliste zwei Geschwindigkeiten angegeben?

Wenn man zu einem Client hochlädt, zeigt die Uploadliste die Geschwindigkeit (in Kilobyte pro Sekunde) zu diesem Client an, wenn nun, zur gleichen Zeit, dieser Client auch zu uns hochlädt, verändert sich die Anzeige zu XX/YY, wobei XX für unsere und YY für seine Uploadgeschwindigkeit steht. Wenn man in der Downloadliste sucht, wird man diesen Client finden.
Dies ist besonders nützlich, wenn man versucht, eine seltene Datei zu bekommen, da man sehen kann, was der Client zu einem hochlädt und, wenn es die gesuchte Datei ist, ihm einen Uploadplatz für Freunde vergeben kann, so dass man schneller zu ihm hochlädt, man damit mehr Credits bekommt und folglich auch schneller von ihm herunterladen kann.

Was ist A4AF?

A4AF bedeutet nach anderer Datei gefragt. Damit werden die Ressourcen eines bestimmten Downloads optimiert.
Wenn man eine Datei downloaded, holt sich aMule eine Liste aller Clients, die diese Datei haben. Einige davon haben möglicherweise auch andere Dateien, die man herunterladen möchte, daher kann man einen Client bei mehreren separaten Downloads haben.
A4AF versucht, dies zu vermeiden. Warum? Man kann nicht zwei Blöcke zur gleichen Zeit vom gleichen Client herunterladen. Durch das Aktivieren von A4AF sagt man aMule, nach Clients zu suchen, die sowohl bei dieser als auch bei anderen Dateien in der Downloadliste stehen, und sie bei den anderen zu entfernen. Dadurch bekommt man für diese Datei mehr Quellen.
Man kann auch einen Download auf das Gegenteil setzen, um A4AF andersherum anzuwenden, also Quellen an andere Downloads abzugeben. Das sollte für Dateien getan werden, die nicht so dringend sind, oder erst nach einer anderen ähnlichen Datei heruntergeladen werden sollen (z.B. bei einer Serie von Dateien).
Man kann das als eine Möglichkeit, persönliche Vorliegen in den Downloads einzustellen, ansehen.

Wenn eine Quelle gewechselt wird, bleibt der Platz in der Warteschlange dabei erhalten.

HINWEIS: Quellen mit einem Warteschlangenplatz kleiner als 50 beim Download mit der höheren Priorität werden niemals ausgewechselt. Damit wird sichergestellt, dass der Download auch beginnt.

Wo ist der Unterschied zwischen "übertragen" und "fertiggestellt" in der Downloadliste?

Übertragen ist die Gesamtmenge an Daten, die man für die ausgewählte Datei erhalten hat. Die Daten sind komprimiert, sobald sie ankommen, werden sie von aMule verarbeitet und entpackt. Die Gesamtmenge an Nutzdaten (also die Teile, die wirklich zur Datei gehören, alles andere sind Header, Prüfsummen usw.) kann in der Spalte Fertiggestellt abgelesen werden. can be viewed in the Completed column.

Was ist der Unterschied zwischen Pausieren und Stoppen eines Downloads?

Wen ein Download pausiert, werden alle Verbindungen die zu diesem Download gehören getrennt so dass keine Daten mehr übertragen werden, die Quellen werden aber beibehalten, bei der Wiederaufnahme wird aMule also versuchen, die Quellen wieder zu kontaktieren. Wird ein Download gestoppt, werden auch die Quellen verworfen, bei der Wiederaufnahme wird aMule als von neuem beginnen, Clients zu finden, die diese Datei haben.

Wofür sind die ganzen Dateien, die aMule beim ersten Start anlegt?

Most them are the same as eMule's. Here is a list and the meaning of each of them (have in mind that you might not have all of them on your hard disk):
~/.eMule: aMule's personal configuration (that is, things such as you nickname, your Temp and Incoming directories, your upload and download limits, and such...).
~/.aMule/addresses.dat: Contains a list of serverlist URLs to check (if enabled in Preferences) for new servers on startup.
~/.aMule/amulesig.dat: This is aMule's OnLineSignature file, which is the same as eMule's signature (see onlinesig.dat below) but with extended information (extended information includes nickname, session and total downloaded and uploaded bytes, aMule version, aMule uptime and number of shared files).
~/.aMule/aMule.tmpl: This is the template file which aMule WebServer uses to create the web page.
~/.aMule/aMule-online-sign.png: This file will only exist if CAS has been run sometime with the -o switch and ~/.aMule/casrc was successfully configured. It is an image containing details on aMule's status.
~/.aMule/casrc: This file will only exist if CAS has been run sometime with the -o switch. It contains the settings for the CAS image creation.
~/.aMule/clients.met: Contains the public hashes of other known clients along with the credits it owes each of them.
~/.aMule/cryptkey.dat: It contains the unique 384 bit private RSA key of your client.
~/.aMule/emfriends.met: Contains your friends list configuration
~/.aMule/ipfilter.dat: This file contains the IP ranges and access levels restrictions which will be passed to ipfilter.
~/.aMule/Incoming: By default, the directory where aMule stores the completed downloads.
~/.aMule/known.met: This file stores the hashes and some details of your shared files like size, path, statics, etc...
~/.aMule/known2.met: This file stores the verified AICH hashes of your shared files.
~/.aMule/lastversion: This is only for aMule to know if it's the first time you're starting aMule, if you had aMule installed before and which version you had installed previously.
~/.aMule/logfile: This file contains the log of the last aMule execution.
~/.aMule/muleconn: This file is a socket for aMule communications.
~/.aMule/onlinesig: This is an eMule compatible OnLineSignature file. It's used by other applications to know basic information on aMule's stat (if it's online, which server it's connected to, upload and download rate, and clients in queue).
~/.aMule/preferences.dat: Contains the public key of your client, also known as user hash.
~/.aMule/server.met: This is a list of all known servers and you're preferences on them (priority, name, ip, port and such).
~/.aMule/shareddir.dat: Stores the paths to all shared directories.
~/.aMule/Temp: By default, the directory where aMule stores the not completed downloads (temporary files).
~/.aMule/webserver: This directory contains the necessary files for aMule WebServer to display a nice Web page.
Other files on ~/.aMule/ are most surely backups of some of the above files.
Also, on the Temp directory (which is ~/.aMule/Temp by default but can be set to any other on Preferences), aMule will create, for each download three or four files):
*.part: This file contains the downloaded parts (not chunks, since not completed chunks are also stored here) of the download. As aMule is able to download from more than one user at the same time, this file has the size of the complete file. The missing parts are filled with zeros.
*.part.met: This file contains information on the downloaded parts of the download, the verified chunks, the hash values of the remaining chunks, etc...
*.part.met.bak: This are backups of the *.part.met files. Every now and then aMule creates this backups since without the *.part.met file, a download has no meaning for aMule. If any *.part.met file "disappeared, you should rename the *.part.met.bak to *.part.met.
*.part.met.seeds: This file only exists if you have enabled to store the IPs of sources of rare files in the preferences, so that aMule can try to connect to these sources again after a restart.

Can I use eMule's files and settings and vice-versa?

Most of them yes. The only ones you can't share between aMule and eMule are the program configuration (that is, preferences.ini in eMule and ~/.eMule in aMule). All the ED2K network related files can be successfully shared between the two applications with no more effort than copying the files in ~/.aMule to the eMule's directory and vice-versa. But have in mind that some files in ~/.aMule are aMule specific, such as amulesig.dat or aMule.tmpl, so it's better to only move those files that are in both the aMule and the eMule directory.

Moving the half downloaded files is easy: just place them from your eMule temp directory (by default C:\Program files\eMule\Temp into ~/.aMule/Temp or whatever your temp directory is in your aMule configuration.

What is all that stuff in amulesig.dat and onlinesig.dat?

I guess you already read what amulesig.dat and onlinesig.dat are for above. So, this is the meaning of their contents (have in mind that if aMule crashes, the contents of both files will be the last written status):
onlinesig.dat
It is composed of two lines separated by a line feed character (with no carriage return character). The first one, when aMule is offline, will contain a 0 (zero) and nothing else, but when aMule is online, it'll contain a 1 (number one) followed by | (the pipe character) then the name of there server it's currently connected to followed by the pipe character, then the IP of the server it's currently connected to followed by the pipe character and finally the port it is connected to on that server.
The second line contains, in this order, the downloading rate, the uploading rate and the number of users on queue, with a pipe character ('|') between each of them.
The second line does not end in a newline character ('\n').
When aMule is cleanly closed the second line contains the same structure but filled with zeros, while the first line will only contain a single zero.
amulesig.dat
aMule's signature file is much more powerful than eMule's and has as much lines as fields. It's structure is:
The first line will contain a 0 (zero) if aMule is disconnected or has been cleanly closed, a 2 if it's connecting (only since aMule 2.0.0-rc4), or a 1 (number 1) if it's online.
The second third and forth line contain the name, IP and port of the server aMule is connected to (in this order) or a zero if it's offline. Since aMule 2.0.0-rc4 it will also contain a 0 when aMule's status is connecting or cleanly closed.
The fifth line will contain an capital H or a capital L depending if aMule is connected on high or low ID. If aMule is disconnected. Again, since aMule 2.0.0-rc4 it will also contain a 0 when aMule's status is connecting or cleanly closed, this line will contain a zero.
The sixth and seventh lines contain the speed in which aMule is downloading and uploading respectively. Since aMule 2.0.0-rc4 both lines contain "0.0" when aMule is cleanly closed.
The eighth and ninth lines contain the number of clients on the upload queue and the amount of shared files respectively. Since aMule 2.0.0-rc4 both lines are set to zero too when aMule is cleanly closed.
The tenth line contains the nickname of the user.
The eleventh and twelve lines contain the total amount of bytes downloaded and uploaded respectively.
The thirteenth line contains the aMule version.
The fourteenth and fifteenth line contains the amount of bytes downloaded and uploaded in the current session respectively. Since aMule 2.0.0-rc4, both will be 0 if aMule is connecting or was cleanly closed
The sixteenth (and last) line contains the amount of time aMule has been running. It will be followed by a space and "secs" "mins" or "hours" depending on the value (or the same time abbreviations in your configure language). Since aMule 2.0.0-rc4, if aMule is connecting or was cleanly closed this field will contain 00 followed by the abbreviation "secs" (or that same abbreviation in your configured language).
The last line must be followed by a new line character ('\n').

I just installed aMule for the first time. How do I set it up?

Setting up aMule properly is just a matter of tastes and depends on many factors. If you just wish a quick startup configuration, then continue reading.
Open aMule and click on the Preferences button. Set a nickname and the language in which you wish to have aMule. Then switch to the Connection tab and input your Line Capacities. Then input the Bandwidth Limits according to the maximum amount of bandwidth you want aMule to use. Then switch to the Directories tab and set a directory for both the temporary files (where files will be stored until they are completely downloaded) and the completed files. Finally, select the directories which you want to share. It is not recommended to share too much files. Read bellow "What are the best settings I can set to have a nice download rate". To select recursively all directories inside a certain directory read Is there any way to recursively select a whole directory and its contents?.

Will aMule handle my xMule and lMule files? What should I do?

aMule automatically handles both lMule and xMule's configuration files, but in different ways:
lMule has been discontinued for several years now, so aMule understands that you are replacing lMule with aMule, so it renames ~/.lMule folder to ~/.aMule. If you used ~/.lMule/Temp and ~/.lMule/Incoming as your temporal and downloading directories respectively, you should change the paths in Preferences to ~/.aMule/Temp and ~/.aMule/Incoming respectively.
xMule is officially dead since May 2004 (official xMule's death announcement on xMule forums by its main developer at, the now non-existent web page, http://www.xmule.org), but for historical reasons, aMule will remain the ~/.xMule directory with its name and just copy from it its configuration files. This means that the files you were downloading will remain in the ~/.xMule directory if they were downloading there, but since aMule has handled xMule's configuration files, it will use still use it. You can either live with that, or move directories ~/.xMule/Temp and ~/.xMule/Incoming into ~/.aMule and change directories in Preferences.

How do I start my aMule experience?

Just click on the Connect button. You should have some servers listed on the Servers window, though. If you have no servers listed, then click on the little button below the Connect button in the Servers window before clicking the Connect button. After some time, aMule will be connected to some server (you'll know because in the lower right corner the "Not connected" message will disappear). When connected, switch to the Search window and search for the file you want and once you find the file you want, double-click on it.
For general aMule usage, join aMule #amule in irc.freenode.net or ask in forums at http://www.amule.org/amule


What are the best settings I can set to have a nice download rate?

If you understood "Is there any limit on the ED2K network?" then you might have seen that, if your provider allows you, the best is to have the upload limit set to a minimum of 10 KBps. Also, if you understood "What is all that credits, rate and score stuff about?", you might also understand that the more you upload, the more you download, so take the upload limit up as much as you can, share well known and popular files (don't share too much (not more than approximately 200 files) or you'll get banned from some servers for giving too much traffic) and try to share small-sized popular files since some ED2K clients give extra credits for providing them a whole small-sized files. A good tip (thanks to kaouete) when you are trying to download some rare or "never completing" file, is, whenever you see someone uploading to you some chunk of that file, give that client a friend slot so that, if it tries to download something from you, it gets preference and you gain credits on that client.

Is there a way to open a text file and load all the ed2k links from the file?

Yes, there is. Just place all the ed2k links you want to download in a text file, each ed2k link in a separate line. Name that file ED2KLinks then place it in ~/.aMule and aMule will automatically detect it, add all those ed2k links to download and remove the file.
You might want to read this to know more about this file.

Can I manage aMule remotely through telnet in the same way I do with eDonkey?

Yes you can, but not exactly in the same way as you do with eDonkey. Just start a normal telnet (or ssh) session with the host computer (the one running aMule) and, once in, use amulecmd to take control over aMule. To start new downloads just use the ed2k command. Remember aMuleCMD must be configured.
Another aMule utility that might be of your interest is CAS (which's command is cas) which will show basic aMule statistics.
Also, aMule WebServer might be what you are looking for if you can and don't mind using a web browser on the client computer. Have in mind that aMule WebBrowser must also be configured.

Is there any way to start aMule with no graphical interface?

Yes. Since aMule 2.0.0-rc6, you can use aMule Daemon, which can be executed on the command line by typing amuled. To control it, use either aMuleWeb, aMuleCMD or any other such application for remotely controlling aMule.

Anyway, up to aMule 2.0.0-rc6, aMule was a monolithic application. This means that core and GUI were whole inseparable block.

So, for those using an old aMule version or who refuse to use aMuled (aMule Daemon), there are still two walkarounds to run aMule on command line but they're not direct ways:

Through Xvfb:
You should run Xvfb and then run aMule in it. Afterwards you can take control over aMule using aMuleCMD and ed2k in the same way as you would if you were accessing aMule remotely over telnet (see above).

Short example:
Run Xvfb:
Xvfb :1 -screen 0 640x480x16 &
Set display to use for amule:
export DISPLAY=:1
Then run aMule:
amule &
Note: After running export DISPLAY=:1, all graphical applications launched from that shell will be opened in Xvfb's display. To avoid this, you can run aMule with the following command, so that only aMule runs there:
DISPLAY=:1 amule &
INFO: See the Screen page to know more about the Screen command

Through VNC:
It's also possible to use vncserver instead of Xvfb to achieve something similar. Just install vncserver and execute vncserver :0 -geometry 1024x768 followed by export DISPLAY=:0. This will create a hidden X server, accessible only remotely using a VNC client. Once the X server is running, you will need a window manager to manage aMule window (well, it's not really needed, but it's useful if you want to be able to close aMule without simply killing it), I recommend FluxBox due to its low CPU and memory requirements. Just start it with fluxbox & and then run aMule with amule &. Now you can connect to the VNC server and see the aMule window.

Keep in mind that if aMule shows any dialog that requires user input (like the one showed the first time aMule is executed), it will get stuck there until someone connects to the VNC server and clicks ok in the dialog. Usually, this should only need to be done once (and this connection may be used to update the serverlist and set the preferences), from then on aMule will start without user interaction, showing only some informational messages at startup.

If you need help on this issue, search aMule's forums or join #amule IRC channel at irc.freenode.net and ask.

Can I run two aMule instances at the same time?

Yes you can, although it is not recommended. aMule will only check if the concurrent user is running some aMule instance, so you can run as many aMule instances as user accounts you have access to. To do this, just run xhost + and then su as another user and run aMule from that shell.
Be aware, since aMule can't check if a user is running aMule on another X display. So, if your account is already running some aMule instance in some other X display, do not run another aMule instance on another X display or you might end up with lost configuration settings and corrupt chunks.

How can I get those nice aMule statics some people post on the IRC channels?

You can either copy and paste CAS's (C aMule Statics) output (to execute CAS, run cas) or, if you use xChat as your IRC client and have the Perl module installed, you could use XAS (xChat aMule Statics).

What is slot allocation?

Each upload is a slot, so, if you are uploading to five clients at the same time, you have five upload slots established. So, the amount of slot allocation is the bandwidth which each slot will be given.
As an example, if your upload limit is 20KBps, you can set slot allocation to 2KBps which means 10 clients will be able to download from you at the same time, each of them at a maximum transfer rate of 2KBps.
See section "Why is aMule ignoring the bandwidth I set per slot?" in aMule common problem's FAQ.

What is a friend slot?

A friend slot is just a slot which is assigned to a client in the friends list. Only one friend can have a slot at the same time. Whenever that friend (who has the friend slot enabled) tries to download a file from you, it will be given highest priority in the uploads queue, since it has that slot always assigned. While that friend isn't downloading, that assigned slot will be given to the client with the highest priority in the upload queue, as expected.

What is the real point on setting up Line Capacities in Preferences? Shouldn't aMule only care for the Bandwidth Limits?

aMule really only cares for the Bandwidth Limits. Line Capacities are only set for the Statics display. Let's see: Imagine you have a 100KBps connection, imagine you want to set the Limit at 40KBps because you have a web server which needs a minimum of 60KBps to serve all the petitions. Now imagine you download rare indonesian free songs. You most surely never download at more than 3KBps ever. So, you could set Line Capacities at 5KBps so that the graph at Statics has some meaning, since if you set it up as a 100KBps connection, the graph will show an horizontal line with no meaning at all.

aMule is crashing quite often here. Can I set it to restart every time it crashes?

No, you can't. But you can have scripts to do so. Some of these scripts even work if aMule hangs but doesn't crash.
The following scripts might suit your needs:
http://www.amule.org/amule/thread.php?threadid=1232
http://www.amule.org/amule/thread.php?threadid=542
http://deepthought.ena.si/mulerunner

Can I have aMule get data from the standard input to pass it to GDB or Valgrind?

Yes, you can. Up to aMule 2.0.0-rc3 this wasn't allowed, but as of version 2.0.0-rc4 you can with the parameter -i or --enable-stdin.
Anyway, people with aMule versions previous to 2.0.0-rc4 can use phoenix's aMule stdin patch.

How can I switch to aMule from eMule without loosing my credits?

If you already read about the meaning of aMule's files, you might already know what you have to do:
Get cryptkey.dat, clients.met and preferences.dat files from eMule's config directory (usually, under Windows, something like C:\Program files\eMule\config) and copy them into ~/.aMule. Now start aMule so it reads those files. You're done!

What is all this rabbit story about?

Ah, yeah, this all began... ehm... well... I mean... follow the white rabbit ;-)