diff options
author | robi <robi> | 2010-09-24 02:03:00 +0000 |
---|---|---|
committer | robi <robi> | 2010-09-24 02:03:00 +0000 |
commit | 2761a6bac18b775c6ddd5dcdc83ade0ce6e4944c (patch) | |
tree | 62226f1e1439c8c1e7241722fe86bfcb2e728528 /INSTALL | |
parent | 2a7afdee4772f99afdc404bcafea2b70df1bead0 (diff) |
magic functions
Diffstat (limited to 'INSTALL')
-rw-r--r-- | INSTALL | 121 |
1 files changed, 65 insertions, 56 deletions
@@ -10,6 +10,23 @@ It works only on Linux (with a few limitations also Big-Endian-CPUs) Other UNIX operating systems will not compile. + +In versions ext4magic > 0.1.4 you need the package of the Linux command "file". +If you get the following error: +"error: The library libmagic.so not found, install the package "file" to build ext4magic" +and "file" is installed, generate a symlink to the existing version on your computer. + +# cd /usr/lib +# ln -s libmagic.so.1 libmagic.so +# ls -l /usr/lib/libmagic* +lrwxrwxrwx 1 root root 13 Sep 23 01:40 /usr/lib/libmagic.so -> libmagic.so.1 +lrwxrwxrwx 1 root root 17 Aug 28 16:09 /usr/lib/libmagic.so.1 -> libmagic.so.1.0.0 +-rwxr-xr-x 1 root root 116720 Oct 24 2009 /usr/lib/libmagic.so.1.0.0 + + + + + First check your current version of libext2fs with the following command # /sbin/fsck.ext3 -V @@ -19,11 +36,12 @@ if Version >= 1.41.9 Install the following devel packages: There are possibley different names according your Linux distribution -openSuse debian ------------------------------------------------- -libext2fs-devel e2fslibs-dev -libuuid-devel uuid-dev -libblkid-devel libblkid-dev +openSuse debian Fedora +---------------------------------------------------------------------- +libext2fs-devel e2fslibs-dev e2fsprogs-devel +libuuid-devel uuid-dev libuuid-devel +libblkid-devel libblkid-dev libblkid-devel + then # ./configure @@ -59,7 +77,7 @@ ext4magic is so linked to the newer library. You can see different version of li -Install HOWTO extendet german version +Installations HOWTO deutsch Installation von ext4magic ============================ @@ -82,6 +100,28 @@ nicht schon vorhanden, vorher installiert werden. gcc make +In ext4magic > 0.1.4 wird zusätzlich noch das Paket des Linux Befehls "file" benötigt. +Bei einigen Distributionen erhalten sie trotz installierten Paketes "file" bei configure +folgende Fehlermedlung: +"error: The library libmagic.so not found, install the package "file" to build ext4magic" + +in diesem Fall wechseln sie in das Verzeichnis /usr/lib und erzeugen dort einen Symlink libmagic.so +auf die dort vorhandene Version dieser Library. Folgender Konsollog zeigt das Vorgehen. + +# ls -l /usr/lib/libmagic* +lrwxrwxrwx 1 root root 17 Aug 28 16:09 /usr/lib/libmagic.so.1 -> libmagic.so.1.0.0 +-rwxr-xr-x 1 root root 116720 Oct 24 2009 /usr/lib/libmagic.so.1.0.0 +# cd /usr/lib +# ln -s libmagic.so.1 libmagic.so +# ls -l /usr/lib/libmagic* +lrwxrwxrwx 1 root root 13 Sep 23 01:40 /usr/lib/libmagic.so -> libmagic.so.1 +lrwxrwxrwx 1 root root 17 Aug 28 16:09 /usr/lib/libmagic.so.1 -> libmagic.so.1.0.0 +-rwxr-xr-x 1 root root 116720 Oct 24 2009 /usr/lib/libmagic.so.1.0.0 + + + + + Was weiter benötigt wird, ist abhängig von der Version einer auf ihrem System verwendeten Library. Auf dieser Library basieren die Befehle zum Erstellen und Verwalten der ext2/3/4 Filesysteme @@ -98,12 +138,15 @@ Die Version kann mit folgendem Befehl ermittet werden. Using EXT2FS Library version 1.41.9, 22-Aug-2009 weiter werden jetzt einige Devel-Pakete benötigt, diese können in den einzelnen Distributionen -unterschiedliche Namen tragen. Hier als Beispiel der Vergleich der Paketnamen bei -openSuse (erste Spalte) und Debian basierenden Systemen (zweite Spalte). +unterschiedliche Namen tragen. Hier als Beispiel der Vergleich der Paketnamen +zwischen einigen Distributionen + +openSuse debian Fedora +---------------------------------------------------------------------- +libext2fs-devel e2fslibs-dev e2fsprogs-devel +libuuid-devel uuid-dev libuuid-devel +libblkid-devel libblkid-dev libblkid-devel -libext2fs-devel e2fslibs-dev -libuuid-devel uuid-dev -libblkid-devel libblkid-dev Das ext4magic Archiv downloaden und entpacken und in das so entstehende Verzeichnis wechseln @@ -164,50 +207,10 @@ ext4magic angelegt wird. Nutzen sie die selbe Shell in der die EXT2LIB Variable # ./configure CFLAGS="-I$EXT2LIB" LDFLAGS="-L$EXT2LIB" LIBS="-luuid -lcom_err -lpthread" # make -sollten bei make trotzdem in den letzen Zeilen Ausgaben noch "ERROR" Meldungen erhalten die durch den -Befehl "ld" verursacht werden, versuchen sie bitte noch folgende Umgehung des Problems - -..................................... -im Unterverzeichnis src/ von ext4magic gibt es eine Datei Namens Makefile.in - Diese mit einem Editor -(hier im Beispiel mit vi ) öffnen und folgenden Abschnitt suchen. - - # vi src/Makefile.in - ..... - ..... - # library search path. - ext4magic_CFLAGS = -O2 -g -D_FILE_OFFSET_BITS=64 - ext4magic_LDFLAGS = -lext2fs -le2p -luuid -lblkid - noinst_HEADERS = block.h dir_list.h ext2fsP.h ext4magic.h hard_link_stack.h \ - inode.h jfs_compat.h jfs_user.h journal.h kernel-jbd.h ring_buf.h util.h - ..... - ..... - - -an den Anfang der Zeile die mit "ext4magic_LDFLAGS =" beginnt, ein '#' setzen - - # ext4magic_LDFLAGS = -lext2fs -le2p -luuid -lblkid - -und die Datei speichern. Danach configure mit folgenden Optionen ausführen, wir benötigen die -gleiche Shell in der wir vorhin die Variable EXT2LIB angelegt haben. Die gesamte Befehlszeile -am besten von hier per copy & paste übernehmen. (ist eine zusammenhängende Zeile auch wenn sie -bei ihnen eventuell in der Anzeige umgebrochen ist) - - - # ./configure LDFLAGS="$EXT2LIB/libext2fs.a $EXT2LIB/libcom_err.a $EXT2LIB/libe2p.a $EXT2LIB/libblkid.a $EXT2LIB/libuuid.a -lpthread" CFLAGS="-I $EXT2LIB" - -danach normal mit "make" compilieren - - -ist make ohne Error durchgelaufen, kann gegebenenfalls mit Root-Rechten und "make install" ext4magic -noch unterhalb von /usr/local/sbin/ installiert werden. - - -Sie erhalten so ein ext4magic Programm das auf einer anderen libext2fs Version beruht, als ihre Admintools auf dem -Rechner. Sie können damit auch ext4 Filesysteme untersuchen und auch gelöschte oder überschriebene Daten daraus -wiederherstellen, auch wenn das Betriebssystem auf dem Rechner ext4 nicht unterstützt. -Die unterschiedlichen Versionen sehen sie zB. im Vergleich der Ausgabe folgender Befehle: +Die Verwendung der unterschiedlichen Versionen von libext2fs sehen sie zB. im Vergleich +der Ausgabe folgender Befehle: # ext4magic -V x @@ -219,22 +222,28 @@ Die unterschiedlichen Versionen sehen sie zB. im Vergleich der Ausgabe folgender e2fsck 1.39 (29-May-2006) Benutze EXT2FS Library version 1.39, 29-May-2006 + + Sollten sie ext4magic installiert haben und dennoch nicht als root aufrufen können, liegt es wahrscheinlich an der PATH Variable. In vielen Distributionen ist /usr/local/sbin default entweder gar nicht in der PATH-Variable, oder nur wenn sie bei der Anmeldung -als root wirklich eine Loginshell durchlaufen haben. In diesem Fall wechseln mit dem Befehl +als root wirklich eine Loginshell durchlaufen haben. Sollte obwohl sie als root ausgeführt ext4magic nicht gefunden werden, +wechseln mit dem Befehl # su - noch einmal zu root. Dabei wird eine Loginshell durchlaufen und die PATH-Variable auch auf diese lokalen Systemverwalter Programme gesetzt. +Sollte es auch jetzt nicht funktionieren, überprüfen sie ihre PATH Variable des Users root. Hier sollte "/usr/local/sbin" mit +aufgeführt sein. Das selbe was eben bei der PATH-Variable gesagt wurde, könnte sich ähnlich auch bei der MANPATH Variable darstellen. Sollten sie die -Manpage von ext4magic obwohl sie das Programm installiert haben, nicht aufrufen können. Überprüfen sie die MANPATH Variable. +Manpage von ext4magic, obwohl sie das Programm installiert haben, nicht aufrufen können. Überprüfen sie die MANPATH Variable. Sollten sie ext4magic nicht installieren, können sie dennoch die Manpage auch ohne Installation anschauen. Aus dem Verzeichnis -in dem sie configure und make ausführen, starten sie folgenden Befehl um die Manpage zu lesen. +in dem sie configure und make ausführen, starten sie einen der folgenden Befehl um die Manpage zu lesen: # nroff -man src/ext4magic.8 | more + # man -l src/ext4magic.8 ----------------------------------------------------------------------------- |