Unix binárisok Linuxon?

Fórumok

Üdv!

Lehet láma kérdés, de a kugliban nem találtam értelmes választ: van -e arra lehetőség, hogy SCO Unixware -en (7.1.x) leforgatott, i386 -os ELF binárisokat futtassak Red Hat Linux 5.x/6.0 -án? Ha igen, akkor van -e szükség valami extra telepítendő dologra? (pl. a SCO Unixware -re létezik Linux binary compatibility pack, így lehet rajta Linuxra forgatott binárisokat futtatni)

S ha már itt tartunk: Power7 + AIX -en mekkora eséllyel futtatható ugyanez a cucc? Mármint az i386 -os ELF bináris, ami SCO Unixra lett fordítva. Nem értek sajnos egyáltalán az AIX -hez, így nem tudom, milyen emulátort lehet rá telepíteni, ami esetleg futtathatná az x86 binárisokat...

Szóval inkább csak elméleti szinten érdekel, hogy mekkora az esélye a dolognak és hogy mire lenne szükség.

Köszi előre is!

Hozzászólások

a régi szép időkben volt egy iBCS2 modul, amivel lehetett sco binárisokat futtatni linuxon, de ez az akkori sco és akkori linux volt.

Poweren nem fog natívan futni semmi x86, emulátor kell hozzá, esetleg a qemu-t meg a bochs-t nézd meg.

Nem elég az ibcs2 modul, az csak a kernel 'personality'-t adta, azon felül kellettek még egy eredeti sco-ból a shared libek (.so), ill. az egyéb fájlrendszerbeli hülyeségek. Anno volt, aki így futtatott Oracle-t, kb. még az előző évezredben, amikor nem létezett Linuxra... :)

Na, most járok annál a pontnál, hogy kernelmodulként már be vannak töltve a sco -s dolgok és hiányoznak a shared libek. :)
Sajnos a Linuxos ldd nem tud mit kezdeni a Unixos binárisokkal... ugye jól gondolom, hogy Unixon kellene összegyűjtenem a libeket és átmásolni a Linux boxra?
Fájlrendszerbeli hülyeségek alatt mit értesz?

ugye jól gondolom, hogy Unixon kellene összegyűjtenem a libeket és átmásolni a Linux boxra?

Hát, összegyűjteni ott lehet, ahol vannak :)
Igazából ezt úgy szokták, hogy valami sco-ról lemásolják az egész lib könyvtárat...

Fájlrendszerbeli hülyeségek alatt mit értesz?

Ezek a kedves sco-s libek, na ezek nem feltétlenül ugyanott fogják keresni az oprendszer dolgait, mint ahova a linuxon rakták őket.
Nem kell meglepődni, ha a program olyan könyvtárakat és fájlokat keres majd, amik máshol vannak. Az igazán régi dolgokkal (pl. /etc/hosts, /etc/resolv.conf) nem lesz gond, de lehetnek olyan dolgok, amik máshogy mennek (mondjuk /etc/mtab unix-onként halál más tud lenni), és panaszkodhat emiatt. Ha a programot shell script indítja, akkor az számíthat sco-s utility-kre, amik máshol vannak linuxon, vagy esetleg egyáltalán nincsenek, de ha vannak is, más opciókkal üzemelnek, esetleg más formátumú a kimenetük. B variáns, hogy egy egész sco-t szőröstül-bőröstül bemásolsz egy könyvtárba, és chroot-ban futtatod a programot.

Köszi az eddigi kommenteket! Elindulok az ibcs2 nyomvonalon, meglátom, hová jutok. Bár valami dokumentáció jó lenne róla, mert azt nem találok 1994 -es linuxjournal.com -os cikktől eltekintve.

Olyankor mit lehet tenni, ha a SCO -s bináris olyan libet kér, ami már a Linuxon is jelen van, ugyanazzal a névvel?

Most konkrétan a libnsl.so -ról (name service library ) van szó, ami a /usr/lib/libnsl.so helyen már létezik, de ugye ez Linuxra lett fordítva a disztribútor által. Csak tesztelésképp egy SCO -ra forgatott bash -t akarok most futtatni, az is szeretné használni a /usr/lib/libnsl.so -t, de nyilván nem tudja amiatt, hogy Linuxos libről van szó. Emiatt segmentation fault -ot kapok. :(