summaryrefslogtreecommitdiff
path: root/INSTALL
blob: c979c550025e6d14d1d5a0755910771772278653 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
Install ext4magic
===================


Install HOWTO  short version 
---------------------- 

You have to compile it. It install a binary program /usr/local/sbin/ext4magic and a manpage
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


if Version >= 1.41.9  
===================
Install the following devel packages:
There are possibley different names according your Linux distribution

openSuse                        debian                 Fedora
----------------------------------------------------------------------
libext2fs-devel                 e2fslibs-dev        e2fsprogs-devel 
libuuid-devel                   uuid-dev            libuuid-devel 
libblkid-devel                  libblkid-dev        libblkid-devel 


then 
# ./configure
# make
# make install


if Version < 1.41.9
=================
download a actual version of e2fsprogs from http://e2fsprogs.sourceforge.net/
 # tar -xzf e2fsprogs-1.41.9.tar.gz
 # cd e2fsprogs-1.41.9
 # ./configure
 # make
Important: Please do not install this version. 
This could create problems with programs of your current distribution ..


save the directory path of lib/ in a variable for future use in configure commandline.
# EXT2LIB="$(pwd)/lib"

After this, change into the code directory of ext4magic
 # ./configure CFLAGS="-I$EXT2LIB" LDFLAGS="-L$EXT2LIB" LIBS="-luuid -lcom_err -lpthread"
 # make
 # make install

ext4magic is so linked to the newer library. You can see different version of libext2fs by:
 # ext4magic -V x
 # /sbin/fsck.ext3 -V


--------------------------------------------------------------------------



Installations HOWTO deutsch 

Installation von ext4magic  
============================

Allgemeine Voraussetzungen
--------------------------
Die Installation von ext4magic ist derzeit nur auf Linux möglich. Andere Unix basierende
Betriebssyteme werden sich nicht ohne größere Änderungen am Quellcode compilieren lassen.
Das Programm unterstützt mit derzeit noch kleinen Schönheitsfehlern auch "Big endian" basierende
Prozessoren, getestet wurden derzeit

OpenSuse x86 32/64Bit  
Ubuntu Sparc64   


Zum Installieren von ext4magic aus dem Quellcode werden folgende Pakete auf dem Rechner benötigt
diese werden noch einige andere Pakete aus der Entwicklergruppe mit installieren und sollten soweit
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  



Installation bei einer aktuellen Version von libext2fs
------------------------------------------------------
Soweit eine aktuelle Version (>= 1.41.9 ) von libext2fs auf dem Rechner installiert ist,
kann folgende Vorgehensweise zum erstellen des Programmes genutzt werden.
Die Version kann mit folgendem Befehl ermittet werden.

 # /sbin/fsck.ext3 -V
 e2fsck 1.41.9 (22-Aug-2009)
        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 
zwischen einigen Distributionen

openSuse                        debian                 Fedora
----------------------------------------------------------------------
libext2fs-devel                 e2fslibs-dev        e2fsprogs-devel 
libuuid-devel                   uuid-dev            libuuid-devel 
libblkid-devel                  libblkid-dev        libblkid-devel 



Das ext4magic Archiv downloaden und entpacken und in das so entstehende Verzeichnis wechseln

 # tar -xzf ext4magic-0.1.4.tar.gz 
 # cd ext4magic-0.1.4

Das Paket wird jetzt kompiliert.

 # ./configure
 # make

Damit wird das binäre Programm ext4magic erstellt. Dieses befindet sich derzeit noch im
Unterverzeichnis ext4magic/src/ und kann aber auch schon von dort aus gestartet werden.

 # make install

Würde das Programm nach /usr/local/sbin/ installieren. Dazu werden Root-Rechte benötigt.
Deinstallieren dann entsprechend mit "make uninstall"




Installation bei einer älteren Version von libext2fs
---------------------------------------------------------------------------------------

Sollte ihr Rechner aktuell noch kein ext4 Filesystem unterstützen, befindet sich auf dem Rechner 
derzeit wahrscheinlich auch eine ältere Version von libext2fs. Damit läßt sich ext4magic nicht
kompilieren. Eine Upgrade von libext2fs auf ein nicht zu ihrer Distribution passenden Version ist jedoch
nicht anzuraten, da auch wichtige Administrationskommandos wie zB "mkfs.ext3" und "fsck.ext3" 
davon betroffen sind. 
Mit folgender Vorgehensweise kann dieses Problem umgangen werden.


Laden sie von http://e2fsprogs.sourceforge.net/ eine Version von e2fsprogs größer oder gleich Version 1.41.9 herunter.
Entpacken sie das Archiv und welchseln in das Verzeichnis und kompilieren sie das Programm, ohne es zu installieren.

 # tar -xzf e2fsprogs-1.41.9.tar.gz
 # cd e2fsprogs-1.41.9
 # ./configure
 # make

Die letzten beiden Befehle werden einige Zeit benötigen und eine Reihe von Ausgaben auf dem Bildschirm machen.
Erfolgreich ist der Vorgang, wenn in den letzen Zeilen nichts von  "ERROR" steht.
Speichern sie jetzt das Verzeichnis in dem sie sich momentan jetzt noch befinden mit folgendem Befehl 
in einer Variable ab

 # EXT2LIB="$(pwd)/lib"


Danach wechseln sie in das Verzeichnis von ext4magic , welches beim Entpacken des Archives von
ext4magic angelegt wird. Nutzen sie die selbe Shell in der die EXT2LIB Variable angelegt wurde.

 wie folgt compilieren

 # tar -xzf ext4magic-0.1.4.tar.gz 
 # cd ext4magic-0.1.4
 # ./configure CFLAGS="-I$EXT2LIB" LDFLAGS="-L$EXT2LIB" LIBS="-luuid -lcom_err -lpthread"
 # make


 
Die Verwendung der unterschiedlichen Versionen von libext2fs sehen sie zB. im Vergleich 
der Ausgabe folgender Befehle:
 

  # ext4magic -V x
  ext4magic  version : 0.1.4
  libext2fs version : 1.41.11
  CPU is little endian.
  #
  # /sbin/fsck.ext3 -V
  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. 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.

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 einen der folgenden Befehl um die Manpage zu lesen:


  # nroff -man src/ext4magic.8 | more  
  # man -l src/ext4magic.8
 
-----------------------------------------------------------------------------