[Problem] Fehler beim Compilieren: fakeroot-1.18. cannot run C compiled programs

cmonty14

Mitglied
Mitglied seit
22 Jan 2007
Beiträge
378
Punkte für Reaktionen
0
Punkte
16
Hallo!

Ich habe freetz-stable-2.0 ausgecheckt.

Beim Compilieren erhalte ich nach kurzer Zeit diesen Fehler:
Code:
checking whether we are cross compiling... configure: error: in `/home/shares/hardware/AVM/Freetz/freetz-stable-2.0/source/host-tools/fakeroot-1.18.4/build/biarch':
configure: error: cannot run C compiled programs.
If you meant to cross compile, use `--host'.
See `config.log' for more details
make: *** [/home/shares/hardware/AVM/Freetz/freetz-stable-2.0/source/host-tools/fakeroot-1.18.4/build/biarch/.configured] Fehler 1
user@server:/home/shares/hardware/AVM/Freetz/freetz-stable-2.0$ vi source/host-tools/fakeroot-1.18.4/build/biarch/config.log

Das (vermeintliche) Logfile "config.log" habe ich angehängt.

Frage:
Was ist die Ursache für diesen Fehler?

Ich habe bisher immer mit einer 32-bit Plattform (x86) ohne Probleme kompiliert.
Seit dem Umstieg auf Debian 64-bit habe ich dieses Problem.

THX
 

Anhänge

  • config.log.txt
    8.8 KB · Aufrufe: 3
Schau mal ins wiki. Man musste da einige 32 bit Pakete installieren.
 
Hallo!

Ich habe, wie im Wiki angegeben, diese Pakete installiert:
Code:
#Ubuntu 13.04 64 bit
graphicsmagick subversion gcc g++ binutils autoconf automake automake1.9 libtool make bzip2 libncurses5-dev zlib1g-dev flex bison patch texinfo tofrodos gettext pkg-config ecj fastjar realpath perl libstring-crc32-perl ruby ruby1.8 gawk python libusb-dev unzip intltool libacl1-dev libcap-dev libc6-dev-i386 lib32ncurses5-dev gcc-multilib

Ich denke dies ist das relevante Ticket.
Aber das genannte Paket "gcc-multilib" habe ich installiert.
 
In dem Ticket schreibt dileks, dass 64-Bit Unterstützung nicht funktionieren würde, obwohl ich (und sicher viele andere) das bereits seit 5 Jahren verwendet haben. Er schlägt dafür auch eine Änderung vor, die er aber nur auf einem 32-Bit System getestet hat, und die in Wirklichkeit verhindert, dass man ein 64-Bit verwenden kann.

Das interessante bei Dir ist, dass das Test-Programm ohne Fehler erstellt werden kann, aber nicht ausgeführt.
Code:
configure:3648: gcc -o conftest -m32 -O3 -Wall   conftest.c  >&5
configure:3652: $? = 0
configure:3659: ./conftest
../../configure: line 3661: ./conftest: cannot execute binary file
Du kannst mal ein einfaches Programm conftest.c erstellen:
Code:
int main ()
{
  return 0;
}
und dieses dann mit den Optionen von oben übersetzen. Kannst Du dieses Programm dann ausführen? Was sagt file dazu, was strace?
Code:
gcc -o conftest -m32 -O3 -Wall   conftest.c
./conftest
file conftest
strace ./conftest
 
Et voila...

Code:
user@server:/home/shares/hardware$ vi conftest.c
user@server:/home/shares/hardware$ chmod +x conftest.c 
user@server:/home/shares/hardware$ gcc -o conftest -m32 -O3 -Wall   conftest.c
user@server:/home/shares/hardware$ ./conftest
-bash: ./conftest: Kann die Datei nicht ausführen.

user@server:/home/shares/hardware$ file conftest
conftest: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0x7c4bc19a3b3adf784f3493274aec9ce7820b5725, not stripped

user@server:/home/shares/hardware$ strace ./conftest
execve("./conftest", ["./conftest"], [/* 17 vars */]) = -1 ENOEXEC (Exec format error)
dup(2)                                  = 3
fcntl(3, F_GETFL)                       = 0x8002 (flags O_RDWR|O_LARGEFILE)
fstat(3, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7fa3f4ed0000
lseek(3, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
write(3, "strace: exec: Exec format error\n", 32strace: exec: Exec format error
) = 32
close(3)                                = 0
munmap(0x7fa3f4ed0000, 4096)            = 0
exit_group(1)                           = ?
 
Die Quelldatei conftest.c braucht kein chmod +x, es stört hier aber nicht weiter.

Probiere mal mit der gleichen Datei folgendes:
Code:
gcc -o conftest -m32 -O3 -Wall   conftest.c
readelf -l conftest
ls -l /lib*/ld-*
file /lib*/ld-*
gcc -o conftest -m32 -O3 -Wall -static   conftest.c
strace conftest
 
Und weiter...
Code:
user@server:~$ gcc -o conftest -m32 -O3 -Wall conftest.c

user@server:~$ readelf -l conftest

Elf file type is EXEC (Executable file)
Entry point 0x80482f3
There are 8 program headers, starting at offset 52

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  PHDR           0x000034 0x08048034 0x08048034 0x00100 0x00100 R E 0x4
  INTERP         0x000134 0x08048134 0x08048134 0x00013 0x00013 R   0x1
      [Requesting program interpreter: /lib/ld-linux.so.2]
  LOAD           0x000000 0x08048000 0x08048000 0x00550 0x00550 R E 0x1000
  LOAD           0x000550 0x08049550 0x08049550 0x0011c 0x00120 RW  0x1000
  DYNAMIC        0x00055c 0x0804955c 0x0804955c 0x000f0 0x000f0 RW  0x4
  NOTE           0x000148 0x08048148 0x08048148 0x00044 0x00044 R   0x4
  GNU_EH_FRAME   0x000480 0x08048480 0x08048480 0x0002c 0x0002c R   0x4
  GNU_STACK      0x000000 0x00000000 0x00000000 0x00000 0x00000 RW  0x4

 Section to Segment mapping:
  Segment Sections...
   00     
   01     .interp 
   02     .interp .note.ABI-tag .note.gnu.build-id .hash .gnu.hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn .rel.plt .init .plt .text .fini .rodata .eh_frame_hdr .eh_frame 
   03     .init_array .fini_array .jcr .dynamic .got .got.plt .data .bss 
   04     .dynamic 
   05     .note.ABI-tag .note.gnu.build-id 
   06     .eh_frame_hdr 
   07     

user@server:~$ ls -l /lib*/ld-*
lrwxrwxrwx 1 root root     20 Nov 29 18:03 /lib/ld-linux.so.2 -> /lib32/ld-linux.so.2
-rwxr-xr-x 1 root root 134304 Nov 29 18:03 /lib32/ld-2.17.so
lrwxrwxrwx 1 root root     10 Nov 29 18:03 /lib32/ld-linux.so.2 -> ld-2.17.so
lrwxrwxrwx 1 root root     32 Nov 29 18:00 /lib64/ld-linux-x86-64.so.2 -> /lib/x86_64-linux-gnu/ld-2.17.so

user@server:~$ file /lib*/ld-*
/lib/ld-linux.so.2:          symbolic link to `/lib32/ld-linux.so.2'
/lib32/ld-2.17.so:           ELF 32-bit LSB shared object, Intel 80386, version 1 (SYSV), dynamically linked, BuildID[sha1]=0xffa050e7e29ca4f4576b9d83c7f7475e0f8299a6, stripped
/lib32/ld-linux.so.2:        symbolic link to `ld-2.17.so'
/lib64/ld-linux-x86-64.so.2: symbolic link to `/lib/x86_64-linux-gnu/ld-2.17.so'

user@server:~$ gcc -o conftest -m32 -O3 -Wall -static conftest.c

user@server:~$ strace ./conftest  
execve("./conftest", ["./conftest"], [/* 16 vars */]) = -1 ENOEXEC (Exec format error)
dup(2)                                  = 3
fcntl(3, F_GETFL)                       = 0x8002 (flags O_RDWR|O_LARGEFILE)
fstat(3, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f132fa46000
lseek(3, 0, SEEK_CUR)                   = -1 ESPIPE (Illegal seek)
write(3, "strace: exec: Exec format error\n", 32strace: exec: Exec format error
) = 32
close(3)                                = 0
munmap(0x7f132fa46000, 4096)            = 0
exit_group(1)                           = ?

Schon einen Verdacht?
 
Meine Vermutung war zunächst, dass dynamische Libraries bzw. speziell der dynamische Linker fehlt. Das scheint aber nicht der Fall zu sein, das Programm will /lib/ld-linux.so.2 (aus Requesting program interpreter), dies ist ein Link auf /lib32/ld-linux.so.2 und dies wieder ein Link auf /lib32/ld-2.17.so, welches eine vorhandene Datei ist.
Der Versuch mit -static zeigt, dass es nicht daran liegt, sondern dass auch ein statisches Programm nicht ausgeführt werden kann.
Meine Vermutung ist, dass der Kernel so konfiguriert ist, dass er keine 32-Bit Programme ausführen kann. Es hat aber wenig Sinn, 32-Bit Libraries mit einem Kernel auszuliefern, der keine 32-Bit Programme ausführen kann.

Es gibt diese Option im Kernel
CONFIG_IA32_EMULATION:

Include code to run legacy 32-bit programs under a 64-bit kernel. You should likely turn this on, unless you're 100% sure that you don't have any 32-bit programs left.
Wenn Dein Kernel die config.gz enthält, kannst Du das so testen:
Code:
zcat /proc/config.gz | grep CONFIG_IA32_EMULATION

Wenn Du die Toolchain selbst erstellst, brauchst Du keine 32-Bit Unterstützung auf dem System.
 
Hallo!

Ich habe einen rel. aktuellen Kernel:
Code:
user@server:~$ uname -r
3.12.6-amd64

Diesen Kernel habe ich selber aus den Quellen kompiliert ohne von den Standard-Optionen abzuweichen.
Deshalb kann ich nicht ausschließen, dass die Kernel-Option CONFIG_IA32_EMULATION fehlt.

Frage:
Wie kann ich überprüfen, welche Optionen für den Kernel gesetzt sind?

Die Datei /proc/config.gz existiert nicht.

THX

Update:
Ich habe den Kernel auf die aktuellste stable-Version upgegradet: 3.13.5
Ist das Problem nach der Ausgabe von strace immer noch vorhanden?
Code:
user@server:~$ uname -r
3.13.5-031305-generic

user@server:~$ gcc -o conftest -m32 -O3 -Wall conftest.c

user@server:~$ strace ./conftest 
execve("./conftest", ["./conftest"], [/* 15 vars */]) = 0
[ Process PID=2807 runs in 32 bit mode. ]
brk(0)                                  = 0x9c24000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff7795000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=32445, ...}) = 0
mmap2(NULL, 32445, PROT_READ, MAP_PRIVATE, 3, 0) = 0xfffffffff778d000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib32/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0 \232\1\0004\0\0\0"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1763036, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff778c000
mmap2(NULL, 1768220, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0xfffffffff75dc000
mmap2(0xf7786000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1aa) = 0xfffffffff7786000
mmap2(0xf7789000, 11036, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0xfffffffff7789000
close(3)                                = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xfffffffff75db000
set_thread_area(0xffa1d2a0)             = 0
mprotect(0xf7786000, 8192, PROT_READ)   = 0
mprotect(0xf77b7000, 4096, PROT_READ)   = 0
munmap(0xf778d000, 32445)               = 0
exit_group(0)                           = ?

user@server:~$ gcc -o conftest -m32 -O3 -Wall -static conftest.c

user@server:~$ strace ./conftest 
execve("./conftest", ["./conftest"], [/* 15 vars */]) = 0
[ Process PID=2820 runs in 32 bit mode. ]
uname({sys="Linux", node="server", ...}) = 0
brk(0)                                  = 0x8aab000
brk(0x8aabd40)                          = 0x8aabd40
set_thread_area(0xff927990)             = 0
brk(0x8accd40)                          = 0x8accd40
brk(0x8acd000)                          = 0x8acd000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
exit_group(0)                           = ?

Soweit ich das bewerten kann, sieht das besser aus.
 
Zuletzt bearbeitet:
Frage:
Wie kann ich überprüfen, welche Optionen für den Kernel gesetzt sind?
Versuch mal mit:
Code:
cat /boot/config-$(uname -r)
Code:
cat /boot/config-$(uname -r) | grep -i CONFIG_IA32_EMULATION
 
Wenn Du den Kernel selbst erstellt hast, dann ist in dem Verzeichnis, wo er erstellt wurde, die Datei ".config". Die Datei /proc/config.gz ist die komprimierte ".config", sofern dies in der Kernel Konfiguration aktiviert ist (CONFIG_IKCONFIG_PROC).

Aber wie bereits geschrieben, brauchst Du keine 32-Bit Unterstützung, wenn Du die Toolchain selbst erstellst.
 
Nachdem ich den Kernel upgegradet habe läuft der Make-Prozess jetzt weiter ohne den Fehler.
Somit ist es naheliegend, dass die von RalfFriedl beschriebene Ursache zutrifft.
(Dies kann ich freilich erst verifizieren, wenn der Make-Prozess fertig ist und ich mit dem alten Kernel boote. Im neuen Kernel ist die Option CONFIG_IA32_EMULATION jedenfalls gesetzt.)

Frage:
Wie erstelle ich die Toolchain selbst?

THX

Update:
Wie erwartet ist die Option mit dem Kernel 3.12.5 nicht gesetzt:
Code:
user@server:~$ cat /boot/config-$(uname -r) | grep -i CONFIG_IA32_EMULATION
# CONFIG_IA32_EMULATION is not set
 
Zuletzt bearbeitet:
Vielen Dank.
Ich hatte den "Level of user competence" auf "Advanced" gesetzt und somit keine Option "Toolchain options".

Ich habe jetzt aber ein neues Problem:
Code:
user@server:~/fusessh/Freetz/freetz-stable-2.0$ make
mkdir -p packages/target-mipsel_uClibc-0.9.29/bind-9.8.3-P3/root
if test -d make/bind/files; then tar -c -C make/bind/files --exclude=.svn . | tar -x -C packages/target-mipsel_uClibc-0.9.29/bind-9.8.3-P3 ; fi
tar: ./root/etc/named.conf: Cannot utime: No such file or directory
tar: ./root/etc/rndc.conf: Cannot utime: No such file or directory
tar: ./root/etc/rndc.key: Cannot utime: No such file or directory
tar: Exiting with failure status due to previous errors
make: *** [packages/target-mipsel_uClibc-0.9.29/.bind-9.8.3-P3] Error 2

user@server:~/fusessh/Freetz/freetz-stable-2.0$ ls -l make/bind/files/root/etc/
total 20
drwxr-xr-x 1 user user 4096 Feb 26 00:32 default.bind
drwxr-xr-x 1 user user 4096 Feb 26 00:32 init.d
lrwxrwxrwx 1 user user   26 Feb 26 00:32 named.conf -> /tmp/flash/bind/named.conf
lrwxrwxrwx 1 user user   25 Feb 26 00:32 rndc.conf -> /tmp/flash/bind/rndc.conf
lrwxrwxrwx 1 user user   24 Feb 26 00:32 rndc.key -> /tmp/flash/bind/rndc.key

Soll ich hierfür einen neue Thread öffnen, da dieses Problem ja nicht unmittelbar mit dem anderen Problem zusammenhängt?

Die Ursache des neuen Problems sehe ich darin, dass nach den Dateien
./root/etc/named.conf
./root/etc/rndc.conf
./root/etc/rndc.key
gesucht wird, die in das Verzeichnis /tmp/flash verlinkt sind.

In diesem Verzeichnis gibt es aber diese Dateien nicht.
Dies könnte wiederum daher rühren, dass ich das Freetz-Verzeichnis mittels Laufwerksfreigabe auf der Maschine gemountet habe und somit im Share kompiliere.
Das bedeutet, dass Zugriffe auf Verzeichnisse ausserhalb des Shares nicht funktionieren werden.
Vermeintlich sollte man /tmp/flash unterhalb des Freetz-Verzeichnisses aufbauen?

THX
 
Du kannst auch in diesem Thread bleiben, wenn der ursprüngliche Threadersteller nichts dagegen hat.

Man muss zum Erstellen von Freetz nie ein /tmp/flash auf dem Build System anlegen.
Was für ein Dateisystem ist es? Du schreibst etwas von Laufwerksfreigabe auf der Maschine.

Rufe das Kopieren mal so auf:
Code:
tar -c -C make/bind/files --exclude=.svn . | strace -fs200 tar -x -C packages/target-mipsel_uClibc-0.9.29/bind-9.8.3-P3
 
Nun, ich bin selbst der Threadersteller... und hätte nichts dagegen. Ich möchte mich halt an die "Regeln" halten, die hier im Forum gelten.. jetzt bleibe ich mal hier.

Zurück zu deiner Frage:
Ich verwende sshfs, weil das sehr komfortabel ist und ich (zunächst) auf Samba- oder NFS-Konfiguration verzichten kann.

Die Ausgabe des von dir genannten Aufrufs liefere ich nach sobald ich wieder vor dem "Problemrechner" sitze.

Update: Hier nun die Ausgabe des o.g. Befehls
Code:
user@server:~/fusessh/Freetz/freetz-stable-2.0$ tar -c -C make/bind/files --exclude=.svn . | strace -fs200 tar -x -C packages/target-mipsel_uClibc-0.9.29/bind-9.8.3-P3
execve("/bin/tar", ["tar", "-x", "-C", "packages/target-mipsel_uClibc-0.9.29/bind-9.8.3-P3"], [/* 16 vars */]) = 0
brk(0)                                  = 0x2266000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffe6c26b000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=33437, ...}) = 0
mmap(NULL, 33437, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ffe6c262000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/librt.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20#\0\0\0\0\0\0@\0\0\0\0\0\0\0\310s\0\0\0\0\0\0\0\0\0\0@\0008\0\t\0@\0!\0 \0\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\370\1\0\0\0\0\0\0\370\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0\3\0\0\0\4\0\0\0\0U\0\0\0\0\0\0\0U\0\0\0\0\0\0\0U\0\0\0\0\0\0\34\0\0\0\0\0\0\0\34\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=31752, ...}) = 0
mmap(NULL, 2128888, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffe6be44000
mprotect(0x7ffe6be4b000, 2093056, PROT_NONE) = 0
mmap(0x7ffe6c04a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7ffe6c04a000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240\32\2\0\0\0\0\0@\0\0\0\0\0\0\0x\205\32\0\0\0\0\0\0\0\0\0@\0008\0\n\0@\0E\0D\0\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0000\2\0\0\0\0\0\0000\2\0\0\0\0\0\0\10\0\0\0\0\0\0\0\3\0\0\0\4\0\0\0\3206\27\0\0\0\0\0\3206\27\0\0\0\0\0\3206\27\0\0\0\0\0\34\0\0\0\0\0\0\0\34\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1742520, ...}) = 0
mmap(NULL, 3849280, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffe6ba98000
mprotect(0x7ffe6bc3b000, 2093056, PROT_NONE) = 0
mmap(0x7ffe6be3a000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x1a2000) = 0x7ffe6be3a000
mmap(0x7ffe6be40000, 15424, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ffe6be40000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libpthread.so.0", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@l\0\0\0\0\0\0@\0\0\0\0\0\0\0\10u\1\0\0\0\0\0\0\0\0\0@\0008\0\t\0@\0%\0\"\0\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\370\1\0\0\0\0\0\0\370\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0\3\0\0\0\4\0\0\0\340\24\1\0\0\0\0\0\340\24\1\0\0\0\0\0\340\24\1\0\0\0\0\0\34\0\0\0\0\0\0\0\34\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=131593, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffe6c261000
mmap(NULL, 2208688, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffe6b87c000
mprotect(0x7ffe6b893000, 2093056, PROT_NONE) = 0
mmap(0x7ffe6ba92000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x7ffe6ba92000
mmap(0x7ffe6ba94000, 13232, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ffe6ba94000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffe6c260000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffe6c25f000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffe6c25e000
arch_prctl(ARCH_SET_FS, 0x7ffe6c25f700) = 0
mprotect(0x7ffe6be3a000, 16384, PROT_READ) = 0
mprotect(0x7ffe6ba92000, 4096, PROT_READ) = 0
mprotect(0x7ffe6c04a000, 4096, PROT_READ) = 0
mprotect(0x648000, 4096, PROT_READ)     = 0
mprotect(0x7ffe6c26d000, 4096, PROT_READ) = 0
munmap(0x7ffe6c262000, 33437)           = 0
set_tid_address(0x7ffe6c25f9d0)         = 2841
set_robust_list(0x7ffe6c25f9e0, 0x18)   = 0
rt_sigaction(SIGRTMIN, {0x7ffe6b8827a0, [], SA_RESTORER|SA_SIGINFO, 0x7ffe6b88b210}, NULL, 8) = 0
rt_sigaction(SIGRT_1, {0x7ffe6b882820, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x7ffe6b88b210}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
clock_gettime(CLOCK_REALTIME, {1393606273, 596570053}) = 0
brk(0)                                  = 0x2266000
brk(0x2287000)                          = 0x2287000
open("/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/locale.alias", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/locale/de_DE.utf8/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/locale/de_DE/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/locale/de.utf8/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
open("/usr/lib/locale/de/LC_IDENTIFICATION", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
fcntl(0, F_GETFD)                       = 0
fcntl(1, F_GETFD)                       = 0
fcntl(2, F_GETFD)                       = 0
rt_sigaction(SIGCHLD, {SIG_DFL, [CHLD], SA_RESTORER|SA_RESTART, 0x7ffe6bacd250}, {SIG_DFL, [], 0}, 8) = 0
geteuid()                               = 1000
umask(0)                                = 022
umask(022)                              = 0
read(0, "./\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0000000755\0000001750\0000001750\00000000000000\00012303224014\000010552\0 5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 10240) = 10240
fstat(0, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
clock_gettime(CLOCK_REALTIME, {1393606273, 819412651}) = 0
socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
close(3)                                = 0
socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
close(3)                                = 0
open("/etc/nsswitch.conf", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=475, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7ffe6c26a000
read(3, "# /etc/nsswitch.conf\n#\n# Example configuration of GNU Name Service Switch functionality.\n# If you have the `glibc-doc-reference' and `info' packages installed, try:\n# `info libc \"Name Service Switch\"'"..., 4096) = 475
read(3, "", 4096)                       = 0
close(3)                                = 0
munmap(0x7ffe6c26a000, 4096)            = 0
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=33437, ...}) = 0
mmap(NULL, 33437, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ffe6c262000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libnss_compat.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\23\0\0\0\0\0\0@\0\0\0\0\0\0\0\20t\0\0\0\0\0\0\0\0\0\0@\0008\0\t\0@\0\36\0\35\0\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\370\1\0\0\0\0\0\0\370\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0\3\0\0\0\4\0\0\0@]\0\0\0\0\0\0@]\0\0\0\0\0\0@]\0\0\0\0\0\0\34\0\0\0\0\0\0\0\34\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=31632, ...}) = 0
mmap(NULL, 2127000, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffe6b674000
mprotect(0x7ffe6b67b000, 2093056, PROT_NONE) = 0
mmap(0x7ffe6b87a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x6000) = 0x7ffe6b87a000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libnsl.so.1", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0`A\0\0\0\0\0\0@\0\0\0\0\0\0\0\220T\1\0\0\0\0\0\0\0\0\0@\0008\0\t\0@\0\36\0\35\0\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\370\1\0\0\0\0\0\0\370\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0\3\0\0\0\4\0\0\0\300\26\1\0\0\0\0\0\300\26\1\0\0\0\0\0\300\26\1\0\0\0\0\0\34\0\0\0\0\0\0\0\34\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=89104, ...}) = 0
mmap(NULL, 2194072, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffe6b45c000
mprotect(0x7ffe6b471000, 2093056, PROT_NONE) = 0
mmap(0x7ffe6b670000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14000) = 0x7ffe6b670000
mmap(0x7ffe6b672000, 6808, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x7ffe6b672000
close(3)                                = 0
mprotect(0x7ffe6b670000, 4096, PROT_READ) = 0
mprotect(0x7ffe6b87a000, 4096, PROT_READ) = 0
munmap(0x7ffe6c262000, 33437)           = 0
open("/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=33437, ...}) = 0
mmap(NULL, 33437, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7ffe6c262000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libnss_nis.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240!\0\0\0\0\0\0@\0\0\0\0\0\0\0\310\242\0\0\0\0\0\0\0\0\0\0@\0008\0\t\0@\0\36\0\35\0\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\370\1\0\0\0\0\0\0\370\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0\3\0\0\0\4\0\0\0\20\206\0\0\0\0\0\0\20\206\0\0\0\0\0\0\20\206\0\0\0\0\0\0\34\0\0\0\0\0\0\0\34\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=43592, ...}) = 0
mmap(NULL, 2139320, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffe6b251000
mprotect(0x7ffe6b25b000, 2093056, PROT_NONE) = 0
mmap(0x7ffe6b45a000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x9000) = 0x7ffe6b45a000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/x86_64-linux-gnu/libnss_files.so.2", O_RDONLY|O_CLOEXEC) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\"\0\0\0\0\0\0@\0\0\0\0\0\0\0@\304\0\0\0\0\0\0\0\0\0\0@\0008\0\t\0@\0\36\0\35\0\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0\370\1\0\0\0\0\0\0\370\1\0\0\0\0\0\0\10\0\0\0\0\0\0\0\3\0\0\0\4\0\0\0\200\223\0\0\0\0\0\0\200\223\0\0\0\0\0\0\200\223\0\0\0\0\0\0\34\0\0\0\0\0\0\0\34\0\0\0\0\0\0\0\20\0\0\0\0\0\0\0\1\0\0\0\5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0644, st_size=52160, ...}) = 0
mmap(NULL, 2148168, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x7ffe6b044000
mprotect(0x7ffe6b050000, 2093056, PROT_NONE) = 0
mmap(0x7ffe6b24f000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xb000) = 0x7ffe6b24f000
close(3)                                = 0
mprotect(0x7ffe6b24f000, 4096, PROT_READ) = 0
mprotect(0x7ffe6b45a000, 4096, PROT_READ) = 0
munmap(0x7ffe6c262000, 33437)           = 0
open("/etc/passwd", O_RDONLY|O_CLOEXEC) = 3
lseek(3, 0, SEEK_CUR)                   = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=1050, ...}) = 0
mmap(NULL, 1050, PROT_READ, MAP_SHARED, 3, 0) = 0x7ffe6c26a000
lseek(3, 1050, SEEK_SET)                = 1050
munmap(0x7ffe6c26a000, 1050)            = 0
close(3)                                = 0
socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
close(3)                                = 0
socket(PF_FILE, SOCK_STREAM|SOCK_CLOEXEC|SOCK_NONBLOCK, 0) = 3
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = -1 ENOENT (No such file or directory)
close(3)                                = 0
open("/etc/group", O_RDONLY|O_CLOEXEC)  = 3
lseek(3, 0, SEEK_CUR)                   = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=752, ...}) = 0
mmap(NULL, 752, PROT_READ, MAP_SHARED, 3, 0) = 0x7ffe6c26a000
lseek(3, 752, SEEK_SET)                 = 752
munmap(0x7ffe6c26a000, 752)             = 0
close(3)                                = 0
openat(AT_FDCWD, "packages/target-mipsel_uClibc-0.9.29/bind-9.8.3-P3", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
mkdirat(3, ".", 0755)                   = -1 EEXIST (File exists)
newfstatat(3, ".", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(3, ".", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
mkdirat(3, "./root", 0755)              = -1 EEXIST (File exists)
newfstatat(3, "./root", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
mkdirat(3, "./root/etc", 0755)          = -1 EEXIST (File exists)
newfstatat(3, "./root/etc", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
mkdirat(3, "./root/etc/init.d", 0755)   = -1 EEXIST (File exists)
newfstatat(3, "./root/etc/init.d", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
openat(3, "./root/etc/init.d/rc.bind", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0755) = -1 EEXIST (File exists)
unlinkat(3, "./root/etc/init.d/rc.bind", 0) = 0
openat(3, "./root/etc/init.d/rc.bind", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0755) = 4
write(4, "#!/bin/sh\n\nDAEMON=bind\nDAEMON_BIN=named\nDAEMON_CONFIG=/tmp/flash/${DAEMON}/${DAEMON_BIN}.conf\nPID_FILE=/var/run/${DAEMON_BIN}/${DAEMON_BIN}.pid\n. /etc/init.d/modlibrc\n\n[ -r /etc/options.cfg ] && . /et"..., 1728) = 1728
dup2(4, 4)                              = 4
fstat(4, {st_mode=S_IFREG|0755, st_size=1728, ...}) = 0
utimensat(4, NULL, {{1393606273, 0}, {1393371148, 0}}, 0) = 0
close(4)                                = 0
newfstatat(3, "./root/etc/init.d", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
utimensat(3, "./root/etc/init.d", {{1393570670, 0}, {1393371148, 0}}, 0) = 0
openat(3, "./root/etc/rndc.key", O_WRONLY|O_CREAT|O_EXCL, 0) = -1 EEXIST (File exists)
unlinkat(3, "./root/etc/rndc.key", 0)   = 0
openat(3, "./root/etc/rndc.key", O_WRONLY|O_CREAT|O_EXCL, 0) = 4
fstat(4, {st_mode=S_IFREG, st_size=0, ...}) = 0
close(4)                                = 0
newfstatat(3, "./root/etc", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(3, "./root", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
openat(3, "./root/etc/rndc.conf", O_WRONLY|O_CREAT|O_EXCL, 0) = -1 EEXIST (File exists)
unlinkat(3, "./root/etc/rndc.conf", 0)  = 0
openat(3, "./root/etc/rndc.conf", O_WRONLY|O_CREAT|O_EXCL, 0) = 4
fstat(4, {st_mode=S_IFREG, st_size=0, ...}) = 0
close(4)                                = 0
openat(3, "./root/etc/named.conf", O_WRONLY|O_CREAT|O_EXCL, 0) = -1 EEXIST (File exists)
unlinkat(3, "./root/etc/named.conf", 0) = 0
openat(3, "./root/etc/named.conf", O_WRONLY|O_CREAT|O_EXCL, 0) = 4
fstat(4, {st_mode=S_IFREG, st_size=0, ...}) = 0
close(4)                                = 0
mkdirat(3, "./root/etc/default.bind", 0755) = -1 EEXIST (File exists)
newfstatat(3, "./root/etc/default.bind", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
openat(3, "./root/etc/default.bind/named_conf.def", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0644) = -1 EEXIST (File exists)
unlinkat(3, "./root/etc/default.bind/named_conf.def", 0) = 0
openat(3, "./root/etc/default.bind/named_conf.def", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0644) = 4
write(4, "CAPTION='Bind: named.conf'\n\nCONFIG_FILE='/tmp/flash/bind/named.conf'\nCONFIG_SAVE='modsave flash; if pidof named > /dev/null; then echo \"\"; /mod/etc/init.d/rc.bind restart; fi'\nCONFIG_TYPE='text'\n\nTEXT"..., 209) = 209
dup2(4, 4)                              = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=209, ...}) = 0
utimensat(4, NULL, {{1393606274, 0}, {1393371148, 0}}, 0) = 0
close(4)                                = 0
openat(3, "./root/etc/default.bind/bind.cfg", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0644) = -1 EEXIST (File exists)
unlinkat(3, "./root/etc/default.bind/bind.cfg", 0) = 0
openat(3, "./root/etc/default.bind/bind.cfg", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0644) = 4
write(4, "export BIND_ENABLED='no'\nexport BIND_CMDLINE=''\nexport BIND_MULTID='yes'\nexport BIND_WRAPPER='no'\n", 98) = 98
dup2(4, 4)                              = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=98, ...}) = 0
utimensat(4, NULL, {{1393606274, 0}, {1393371148, 0}}, 0) = 0
close(4)                                = 0
openat(3, "./root/etc/default.bind/named_conf", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0755) = -1 EEXIST (File exists)
unlinkat(3, "./root/etc/default.bind/named_conf", 0) = 0
openat(3, "./root/etc/default.bind/named_conf", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0755) = 4
write(4, "#!/bin/sh\n\ncat <<EOF\n\noptions {\n\tdirectory \"/var/media/ftp/uStor01/bind\";\n\tforwarders { 192.168.180.1; 192.168.180.2; };\n\t#forward first;\n\tlisten-on port 53 { 127.0.0.1; 192.168.178.1; };\n\tallow-query"..., 518) = 518
dup2(4, 4)                              = 4
fstat(4, {st_mode=S_IFREG|0755, st_size=518, ...}) = 0
utimensat(4, NULL, {{1393606274, 0}, {1393371148, 0}}, 0) = 0
close(4)                                = 0
read(0, "./root/usr/\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0000000755\0000001750\0000001750\00000000000000\00012303224014\000012346\0 5\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 10240) = 10240
newfstatat(3, "./root/etc/default.bind", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
utimensat(3, "./root/etc/default.bind", {{1393570670, 0}, {1393371148, 0}}, 0) = 0
mkdirat(3, "./root/usr", 0755)          = -1 EEXIST (File exists)
newfstatat(3, "./root/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
mkdirat(3, "./root/usr/lib", 0755)      = -1 EEXIST (File exists)
newfstatat(3, "./root/usr/lib", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
mkdirat(3, "./root/usr/lib/cgi-bin", 0755) = -1 EEXIST (File exists)
newfstatat(3, "./root/usr/lib/cgi-bin", {st_mode=S_IFDIR|0755, st_size=4096, ...}, AT_SYMLINK_NOFOLLOW) = 0
openat(3, "./root/usr/lib/cgi-bin/bind.cgi", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0755) = -1 EEXIST (File exists)
unlinkat(3, "./root/usr/lib/cgi-bin/bind.cgi", 0) = 0
openat(3, "./root/usr/lib/cgi-bin/bind.cgi", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0755) = 4
write(4, "#!/bin/sh\n\n\n. /usr/lib/libmodcgi.sh\n[ -r /etc/options.cfg ] && . /etc/options.cfg\n\ncheck \"$BIND_ENABLED\" yes:auto \"*\":man\ncheck \"$BIND_MULTID\" yes:multid\ncheck \"$BIND_WRAPPER\" yes:wrapper\n\nsec_begin '"..., 1376) = 1376
dup2(4, 4)                              = 4
fstat(4, {st_mode=S_IFREG|0755, st_size=1376, ...}) = 0
utimensat(4, NULL, {{1393606274, 0}, {1393371148, 0}}, 0) = 0
close(4)                                = 0
newfstatat(3, "./root/usr/lib/cgi-bin", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
utimensat(3, "./root/usr/lib/cgi-bin", {{1393570670, 0}, {1393371148, 0}}, 0) = 0
newfstatat(3, "./root/usr/lib", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
utimensat(3, "./root/usr/lib", {{1393570670, 0}, {1393371148, 0}}, 0) = 0
newfstatat(3, "./root/usr", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
utimensat(3, "./root/usr", {{1393570670, 0}, {1393371148, 0}}, 0) = 0
openat(3, "./.language", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0644) = -1 EEXIST (File exists)
unlinkat(3, "./.language", 0)           = 0
openat(3, "./.language", O_WRONLY|O_CREAT|O_EXCL|O_NOCTTY|O_NONBLOCK|O_CLOEXEC, 0644) = 4
write(4, "languages\n{ de en }\ndefault\n{ en }\nfiles\n{\n\tetc/init.d/rc.bind\n\tetc/default.bind/named_conf.def\n\tusr/lib/cgi-bin/bind.cgi\n}\n", 124) = 124
dup2(4, 4)                              = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=124, ...}) = 0
utimensat(4, NULL, {{1393606274, 0}, {1393371148, 0}}, 0) = 0
close(4)                                = 0
clock_gettime(CLOCK_REALTIME, {1393606274, 110527976}) = 0
clock_gettime(CLOCK_REALTIME, {1393606274, 110727035}) = 0
close(0)                                = 0
newfstatat(3, "./root/etc/named.conf", {st_mode=S_IFREG, st_size=0, ...}, AT_SYMLINK_NOFOLLOW) = 0
unlinkat(3, "./root/etc/named.conf", 0) = 0
symlinkat("/tmp/flash/bind/named.conf", 3, "./root/etc/named.conf") = 0
newfstatat(3, "./root/etc/named.conf", {st_mode=S_IFLNK|0777, st_size=26, ...}, AT_SYMLINK_NOFOLLOW) = 0
utimensat(3, "./root/etc/named.conf", {{1393606274, 0}, {1393371148, 0}}, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
write(2, "tar: ", 5tar: )                    = 5
write(2, "./root/etc/named.conf: Cannot utime", 35./root/etc/named.conf: Cannot utime) = 35
write(2, ": No such file or directory", 27: No such file or directory) = 27
write(2, "\n", 1
)                       = 1
newfstatat(3, "./root/etc/named.conf", {st_mode=S_IFLNK|0777, st_size=26, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(3, "./root/etc/rndc.conf", {st_mode=S_IFREG, st_size=0, ...}, AT_SYMLINK_NOFOLLOW) = 0
unlinkat(3, "./root/etc/rndc.conf", 0)  = 0
symlinkat("/tmp/flash/bind/rndc.conf", 3, "./root/etc/rndc.conf") = 0
newfstatat(3, "./root/etc/rndc.conf", {st_mode=S_IFLNK|0777, st_size=25, ...}, AT_SYMLINK_NOFOLLOW) = 0
utimensat(3, "./root/etc/rndc.conf", {{1393606274, 0}, {1393371148, 0}}, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
write(2, "tar: ", 5tar: )                    = 5
write(2, "./root/etc/rndc.conf: Cannot utime", 34./root/etc/rndc.conf: Cannot utime) = 34
write(2, ": No such file or directory", 27: No such file or directory) = 27
write(2, "\n", 1
)                       = 1
newfstatat(3, "./root/etc/rndc.conf", {st_mode=S_IFLNK|0777, st_size=25, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(3, "./root/etc/rndc.key", {st_mode=S_IFREG, st_size=0, ...}, AT_SYMLINK_NOFOLLOW) = 0
unlinkat(3, "./root/etc/rndc.key", 0)   = 0
symlinkat("/tmp/flash/bind/rndc.key", 3, "./root/etc/rndc.key") = 0
newfstatat(3, "./root/etc/rndc.key", {st_mode=S_IFLNK|0777, st_size=24, ...}, AT_SYMLINK_NOFOLLOW) = 0
utimensat(3, "./root/etc/rndc.key", {{1393606274, 0}, {1393371148, 0}}, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
write(2, "tar: ", 5tar: )                    = 5
write(2, "./root/etc/rndc.key: Cannot utime", 33./root/etc/rndc.key: Cannot utime) = 33
write(2, ": No such file or directory", 27: No such file or directory) = 27
write(2, "\n", 1
)                       = 1
newfstatat(3, "./root/etc/rndc.key", {st_mode=S_IFLNK|0777, st_size=24, ...}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(3, "./root/etc", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
newfstatat(3, "./root/etc", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
utimensat(3, "./root/etc", {{1393570670, 0}, {1393371148, 0}}, 0) = 0
newfstatat(3, "./root", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
newfstatat(3, "./root", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
utimensat(3, "./root", {{1393570670, 0}, {1393371148, 0}}, 0) = 0
newfstatat(3, ".", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
newfstatat(3, ".", {st_mode=S_IFDIR|0755, st_size=4096, ...}, 0) = 0
utimensat(3, ".", {{1393570670, 0}, {1393371148, 0}}, 0) = 0
write(2, "tar: ", 5tar: )                    = 5
write(2, "Exiting with failure status due to previous errors", 50Exiting with failure status due to previous errors) = 50
write(2, "\n", 1
)                       = 1
close(1)                                = 0
close(2)                                = 0
exit_group(2)                           = ?
 
Zuletzt bearbeitet:
Ich vermute, es liegt am sshfs. Versuche mal zum Vergleich auf ein anderes Dateisystem:
Code:
DIR=/tmp/test
mkdir -p $DIR
tar -c -C make/bind/files --exclude=.svn . | strace -fs200 tar -x -C $DIR

Code:
newfstatat(3, "./root/etc/named.conf", {st_mode=S_IFREG, st_size=0, ...}, AT_SYMLINK_NOFOLLOW) = 0
unlinkat(3, "./root/etc/named.conf", 0) = 0
symlinkat("/tmp/flash/bind/named.conf", 3, "./root/etc/named.conf") = 0
newfstatat(3, "./root/etc/named.conf", {st_mode=S_IFLNK|0777, st_size=26, ...}, AT_SYMLINK_NOFOLLOW) = 0
utimensat(3, "./root/etc/named.conf", {{1393606274, 0}, {1393371148, 0}}, AT_SYMLINK_NOFOLLOW) = -1 ENOENT (No such file or directory)
Die erste Zeile schaut nach, ob die Datei schon existiert. Es fällt auf, dass st_mode=S_IFREG und nicht st_mode=S_IFLNK.
Dann wird die vorhandene Datei (der vorhandene Link?) gelöscht, ein neuer Symlink angelegt, und dann zeigt newfstatat, dass es sich tatsächlich um einen Link handelt.
Schließlich wird utimensat für diese Datei aufgerufen. Da wir aus dem vorherigen Aufruf wissen, dass die Datei existiert, gehe ich davon aus, dass sshfs die Option AT_SYMLINK_NOFOLLOW im Aufruf utimensat ignoriert.

Zum Vergleich bei mir (eine andere Datei, aber im Prinzip das Gleiche):
Erstes Kopieren, Ziel noch nicht vorhanden.
Code:
symlinkat("wrap_editors", 4, "root/usr/bin/nvi") = -1 ENOENT (No such file or directory)
mkdirat(4, "root", 0755)                = 0
mkdirat(4, "root/usr", 0755)            = 0
mkdirat(4, "root/usr/bin", 0755)        = 0
symlinkat("wrap_editors", 4, "root/usr/bin/nvi") = 0
newfstatat(4, "root/usr/bin/nvi", {st_mode=S_IFLNK|0777, st_size=12, ...}, AT_SYMLINK_NOFOLLOW) = 0
utimensat(4, "root/usr/bin/nvi", {{1393862579, 141043321}, {1293150760, 0}}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(4, "root/usr/bin/nvi", {st_mode=S_IFLNK|0777, st_size=12, ...}, AT_SYMLINK_NOFOLLOW) = 0
Zweites Kopieren, Ziel vorhanden.
Code:
symlinkat("wrap_editors", 4, "root/usr/bin/nvi") = -1 EEXIST (File exists)
unlinkat(4, "root/usr/bin/nvi", 0)      = 0
symlinkat("wrap_editors", 4, "root/usr/bin/nvi") = 0
newfstatat(4, "root/usr/bin/nvi", {st_mode=S_IFLNK|0777, st_size=12, ...}, AT_SYMLINK_NOFOLLOW) = 0
utimensat(4, "root/usr/bin/nvi", {{1393862670, 98036014}, {1293150760, 0}}, AT_SYMLINK_NOFOLLOW) = 0
newfstatat(4, "root/usr/bin/nvi", {st_mode=S_IFLNK|0777, st_size=12, ...}, AT_SYMLINK_NOFOLLOW) = 0
Man sieht, dass meine Version von tar etwas anders vorgeht. Es versucht zuerst, den Link zu erstellen, erst wenn das nicht geht, wird das Verzeichnis erstellt bzw. der vorhandene Link gelöscht.
 
Ich vermute, es liegt am sshfs. Versuche mal zum Vergleich auf ein anderes Dateisystem:
Code:
DIR=/tmp/test
mkdir -p $DIR
tar -c -C make/bind/files --exclude=.svn . | strace -fs200 tar -x -C $DIR

Hallo RalfFriedl,

entschuldige meine Nachfrage, aber was genau meinst du damit? Soll ich den Test mit einem NFS-Share durchführen?

Eine generelle Frage:
Welche Technik ist empfohlen, wenn man mit einem Fileserver arbeitet, auf dem alle Freetz-Dateien liegen?
NFS? Samba? FTP?
Oder ist es problematisch mit einem Fileserver zu arbeiten?

THX
 
Das einfachste ist, alle Dateien lokal zu haben. Wenn Du einen Fileserver verwenden willst, muss dieser die von Dir verwendeten Tools sowie die von Freetz benötigten Funktionen unterstützen.
Was Freetz von einem Dateisystem braucht, ist relativ einfach: Verzeichnisse, Dateien und Symlinks, vielleicht noch Hardlinks. Das sind Dinge, die man von jedem UNIX Dateisystem erwarten kann. Von Samba oder generell einer Windows Freigabe kann man dies nicht unbedingt voraussetzen.
FTP ist keine Dateisystem, ebenso wenig wie SSH. Man kann damit ein Dateisystem emulieren, dann muss aber die Emulation auch mit den Tools zusammen funktionieren, in diesem Fall mit tar. Das Problem hier ist die unvollständige Emulation des Aufrufs, den Dein tar verwendet. Dies lässt sich beheben durch ein anderes Dateisystem, durch eine Korrektur an sshfs, oder auch durch ein anderes tar, das nicht versucht, die Zeiten für einen Link zu setzen. Mit busybox tar sieht das ganze so aus:
Code:
mkdir("root/", 0777)                    = -1 EEXIST (File exists)
stat("root/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
mkdir("root/usr/", 0777)                = -1 EEXIST (File exists)
stat("root/usr/", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
mkdir("root/usr/bin", 0777)             = -1 EEXIST (File exists)
stat("root/usr/bin", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
unlink("root/usr/bin/nvi")              = 0
symlink("wrap_editors", "root/usr/bin/nvi") = 0
Wie man sieht, keine ausgefallene Verwendung von neuen Systemaufrufen, kein Versuch, die Zugriffszeiten auf den Link zu setzen, mit anderen Worten, das würde bei Dir vermutlich auch über sshfs funktionieren.

Was das Problem mit sshfs und utimensat betrifft, solltest Du das bei den Entwicklern melden, vielleicht wird das dann korrigiert.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.