> saya punya file executable(bukan file script) yang ditujukan untuk
> dijalankan di distro Redhat 6.1 atau 6.2(kernel 2.0 atau 2.2).
>
> pada waktu file tersebut saya jalankan di SuSe 9.1(kernel 2.6),
> outputnya kok keluar 'bash: nama_file no such file or directory'.

Menurut saya, kemungkinan besar gara gara library. ie. ld-linux.so yang
lain versi atau executable ngga nemu ld-linux.so
Coba `ldd nama_file`

Ini saya coba di tempat saya,

####### 1. ls dulu #######
[EMAIL PROTECTED] test]# ls -lR
.:
total 20
-rwxr-xr-x  1 root root 11264 Nov 20 19:25 hello*
-rw-r--r--  1 root root    73 Nov 20 19:18 hello.c
drwxr-xr-x  3 root root  4096 Nov 20 19:23 lib_/

./lib_:
total 1204
-rwxr-xr-x  1 root root 1223895 Nov 20 19:23 ld-linux.so.2*
drwxr-xr-x  2 root root    4096 Nov 20 19:23 tls/

./lib_/tls:
total 1308
-rwxr-xr-x  1 root root 1334740 Nov 20 19:23 libc.so.6*

####### 2. isi hello.c #######
[EMAIL PROTECTED] test]# cat hello.c
#include<stdio.h>
int main(void) { printf("Hello, World\n"); return 0; }

####### 3. run hello, berhasil #######
[EMAIL PROTECTED] test]# ./hello
Hello, World

####### 4. run hello lagi, no such file or directory #######
[EMAIL PROTECTED] test]# /programs/scripts/newchroot
usage: newchroot newroot uid gid command
[EMAIL PROTECTED] test]# /programs/scripts/newchroot ./ 0 0 ./hello
exec: No such file or directory

[EMAIL PROTECTED] test]# strace -o ../blah.log /programs/scripts/newchroot
./ 0 0 ./hello
exec: No such file or directory

####### 5. ok, sekarang benerin library nya #######
[EMAIL PROTECTED] test]# mv lib_ lib

####### 6. eh jalan #######
[EMAIL PROTECTED] test]# /programs/scripts/newchroot ./ 0 0 ./hello
Hello, World

[EMAIL PROTECTED] test]# ldd ./hello
        linux-gate.so.1 =>  (0xffffe000)
        libc.so.6 => /lib/tls/libc.so.6 (0x4002a000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)

####### isi blah.log #######

execve("/programs/scripts/newchroot", ["/programs/scripts/newchroot",
"./", "0", "0", "./hello"], [/* 50 vars */]) = 0
uname({sys="Linux", node="quicksilver", ...}) = 0
brk(0)                                  = 0x804a000
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x40017000
open("/etc/ld.so.preload", O_RDONLY)    = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=71857, ...}) = 0
old_mmap(NULL, 71857, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40018000
close(3)                                = 0
open("/lib/tls/libc.so.6", O_RDONLY)    = 3
read(3, "[EMAIL PROTECTED]"..., 512)
= 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1334740, ...}) = 0
old_mmap(NULL, 1340908, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4002a000
old_mmap(0x4016c000, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED,
3, 0x142000) = 0x4016c000
old_mmap(0x4016f000, 9708, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4016f000
close(3)                                = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x40172000
set_thread_area({entry_number:-1 -> 6, base_addr:0x401724e0,
limit:1048575, seg_32bit:1, contents:0, read_exec_only:0,
limit_in_pages:1, seg_not_present:0, useable:1}) = 0
munmap(0x40018000, 71857)               = 0
chdir("./")                             = 0
chroot(".")                             = 0
setgid32(0)                             = 0
setuid32(0)                             = 0
execve("./hello", ["./hello"], [/* 50 vars */]) = -1 ENOENT (No such file
or directory)
dup(2)                                  = 3
fcntl64(3, F_GETFL)                     = 0x2 (flags O_RDWR)
brk(0)                                  = 0x804a000
brk(0x806b000)                          = 0x806b000
brk(0)                                  = 0x806b000
fstat64(3, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 1), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
= 0x40018000
_llseek(3, 0, 0xbfffed74, SEEK_CUR)     = -1 ESPIPE (Illegal seek)
write(3, "exec: No such file or directory\n", 32) = 32
close(3)                                = 0
munmap(0x40018000, 4096)                = 0
exit_group(0)                           = ?




-- 
Unsubscribe: kirim email kosong ke [EMAIL PROTECTED]
Arsip, FAQ, dan info milis di http://linux.or.id/milis.php
Tidak bisa posting? Baca:
http://linux.or.id/wiki/index.php?pagename=ProblemMilisDanSolusi
http://linux.or.id/wiki/index.php?pagename=TataTertibMilis

Kirim email ke