TestDisk Derleme

From CGSecurity
Jump to navigation Jump to search

En.png English De.png Deutsch Es.png Español Fr.png Français Ru.png Русский


Bu belge TestDisk ve PhotoRec'in nasıl derleneceğini açıklar.

Sisteme özel notlar

DOS

TestDisk & PhotoRec, DJGPP kullanılarak DOS/Win9x için derlenebilir. Daha fazla bilgi için okuyun:DOS derleme.

Mac OS X

TestDisk & PhotoRec'i derlemek için, Mac OS X kurulumu DVD'sinden Apple Development Kiti kurun. Ek notlar için Mac OS X derleme bölümüne bakın.

Linux

  • Debian, Ubuntu:
    • apt-get install build-essential e2fslibs-dev libncurses5-dev libncursesw5-dev libntfs-dev libjpeg62-dev libreiserfs0.3-dev uuid-dev zlib1g-dev
    • apt-get install autoconf automake git-core
  • Fedora, RedHat Enterprise, CentOS:
    • yum install ncurses-devel e2fsprogs-devel libjpeg-devel ntfsprogs-devel libewf-devel zlib-devel openssl-devel libuuid-devel.

Statik (yerel kütüphaneyi kullanmayan) versiyon için ek paketler gerekir:

    • ncurses-static libjpeg-static zlib-static openssl-static glibc-static
  • Mandriva:
    • urpmi ncurses-devel e2fsprogs-devel jpeg-devel libntfs-devel zlib-devel openssl-devel libewf-devel
  • OpenSuse:
    • install ncurses-devel e2fsprogs-devel libjpeg-devel ntfsprogs-devel zlib-devel openssl-devel libreiserfs-devel libuuid-devel

Daha fazla bilgi için okuyun: Linux derleme.

Windows

Windows versiyonu (Windows NT 4/Windows 2000/XP/2003/Vista...) oluşturmak için özgür C/C++ Cygwin derleyicisini kullanın.
MinGW derleyicisini kullanmak da mümkündür ancak bazı işlevler/kütüphaneler eksik olabilir. Daha fazla detay için okuyun Windows derleme.

Kütüphaneler

  • libncurses - Zorunlu, TestDisk ve PhotoRec metin tabanlı bir kullanıcı arayüzü kullanır, Ncurses kütüphanesi ve geliştirme dosyaları erişilebilir olmalıdır.
  • Ext2fs kütüphanesi - İsteğe bağlı, TestDisk ext2/ext3 bölümünden dosyaları listelemek ve PhotoRec tüm bölüm yerine ext2/ext3 bölümündeki boş alanı bölmek için kullanır
  • EWF kütüphanesi - İsteğe bağlı, TestDisk ve PhotoRec, Expert Witness Compression Format dosyalarına (örneğin Encase dosyaları) ulaşabilmek için kullanır
  • Iconv - İsteğe bağlı, unicode dosya isimlerinin işlenmesinde kullanılır
  • Jpeg kütüphanesi - İsteğe bağlı, PhotoRec tarafından JPEG kurtarma oranını artırmak için kullanılır
  • NTFS kütüphanesi - İsteğe bağlı, TestDisk NTFS bölümündeki dosyaları listelemek için kullanır
  • openssl kütüphanesi - Eğer kriptoyu işlemek için EWF kütüphanesi kullanılıyorsa gereklidir
  • Reiserfs kütüphanesi - İsteğe bağlı, TestDisk reiserfs bölümündeki dosyaları listelemek için kullanır
  • zlib kütüphanesi - İsteğe bağlı, PhotoRec gzip ile sıkıştırılmış içeriği çıkartmak için kullanır

ncurses Kütüphanesi

Ncurses kütüphanesi genellikle işletim sisteminizle kurulu gelir, bu sayede sizin kurmanızı gerektirmez. Eğer ncursesw erişilebilrse, TestDisk ve PhotoRec unicode karakterleri gösterebilir.

Ext2fs Kütüphanesi

Ext2fs kütüphanesi genellikle işletim sisteminizle kurulu gelir, bu sayede sizin kurmanızı gerektirmez. Eğer kurmanız gerekiyorsa, e2fsprogs'un son versiyonunu e2fsprogs.sf.net dan edinin

tar xzf e2fsprogs-1.38.tgz
cd e2fsprogs-1.38
./configure --with-cc=gcc
make libs
make install

EWF kütüphanesi

EWF kütüphane kaynağı https://github.com/libyal/libewf dan indirilebilir. EWF derlenme ve çalıştırılma için openssl ve zlib kütüphanelerine ihtiyaç duyar.

tar xzf libewf-beta-20070408.tar.gz
cd libewf-20070408
./configure
make lib
make install

Iconv kütüphanesi

Birçok platformda iconv fonksiyonları libc içine entegre edilmiştir, bu yüzden başka kütüphanelere ihtiyaç duyulmaz. DOS/djgpp için bir libiconv paketi olsa da unicode dosya isimlerini desteklemeyen bir işletim sisteminde işe yaramaz.

Jpeg kütüphanesi

Libjpeg kütüphanesi genellikle işletim sisteminizle kurulur, bu nedenle kendiniz kurmanızı gerektirmez. Diğer durumlarda libjpeg kaynağını http://www.ijg.org/files/jpegsrc.v6b.tar.gz adresinden indirin

tar xzf jpegsrc.v6b.tar.gz
cd jpeg-6b
./configure --enable-shared --enable-static
make
sudo make install

Mac OS X 10.3 GNU libtool ile gelir, gerçi ufak bir isim değişikliğiyle, glibtool. Şu komutu çalıştırmanız gerekebilir

ln -s `which glibtool` ./libtool

ntfsprogs nasıl derlenir?

https://www.tuxera.com/ adresinden ntfsprogs'un son versiyonunu indirin.

tar xzf ntfsprogs-1.13.0.tar.gz
cd ntfsprogs-1.13.0
./configure
make libs
make install

NT 4'de çalışan bir versiyon edinmek için configure --disable-default-device-io-ops komutunu kullanın; çünkü win32_io.c'nin kullandığı SetFilePointerEx'i NT 4 DLL dışa aktarmaz.

ReiserFS kütüphanesi

progsreiserfs-0.3.1-rc8.tar.gz dosyasını https://git.kernel.org/pub/scm/linux/kernel/git/jeffm/reiserfsprogs.git adresinden indirin

tar xzf progsreiserfs-*.tar.gz
cd progreiserfs-0.3.1-rc8
./configure --disable-nls --disable-Werror
make
make install

TestDisk Nasıl Derlenir?

Standart yöntem

TestDisk ve PhotoRec'i derlemek için şu komutları çalıştırın:

./configure
make

Yapılandırmak için parametre girmeniz gerekebilir, configure --help komutuna bakın.
Örnek:

./configure
--with-reiserfs-lib=/home/kmaster/perso/testdisk-5.2/progsreiserfs-0.3.1-rc8/libreiserfs/.libs/
--with-reiserfs-includes=/home/kmaster/perso/testdisk-5.2/progsreiserfs-0.3.1-rc8/include/
--with-ntfs-lib=/home/kmaster/perso/testdisk-5.2/ntfsprogs-1.8.5/libntfs/.libs/
--with-ntfs-includes=/home/kmaster/perso/testdisk-5.2/ntfsprogs-1.8.5/include/
--with-ext2fs-lib=/home/kmaster/perso/testdisk-5.2/e2fsprogs-1.34/lib
--with-ext2fs-includes=/home/kmaster/perso/testdisk-5.2/e2fsprogs-1.34/lib

Statik versiyon

Eğer derlenmiş dosyayı yukarıdaki kütüphanelerden birinin olmadığı sistemlerde çalıştırmanız gerekecekse statik versiyonu şu komutla oluşturun:

make static

Statik sıkıştırılmış ikili

Eğer dağıtım için küçük bir dosya istiyorsanız, UPX paketleyicisini https://upx.github.io/ adresinden indirin ve şu komutları kullanın:

strip src/testdisk src/photorec
upx src/testdisk src/photorec

Linux UPX program dosyalarını çalıştırmadan önce açmalıdır, bu yüzden /tmp'de daha fazla yere ihtiyaç duyabilir. Çalıştırılabilir dosya bu dizinde gereken izinlere sahip olmalıdır (mount -o remount,exec /tmp).

Çapraz Derleme

Return to TestDisk page