In article <[EMAIL PROTECTED]>,
[EMAIL PROTECTED] (Kiss Gabor) writes:
> Ha a kollegam lep be, akkor neki ilyen hibauzenettel szall ki:
>
> cdrecord: Cannot allocate memory. Cannot get SCSI I/O buffer.
>
> A strace szerint ezert:
>
> mmap2(NULL, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
> = -1 EAGAIN (Resource temporarily unavailable)
Tuzetesebben osszevetve a ket futast ez latszik:
Jo:
fstat64(3, {st_mode=S_IFBLK|0660, st_rdev=makedev(3, 64), ...}) = 0
geteuid32() = 1000
getuid32() = 1000
write(1, "Using libscg version \'schily-0.8"..., 35) = 35
write(1, "Driveropts: \'burnfree\'\n", 23) = 23
ioctl(3, SG_GET_RESERVED_SIZE, 0xbfd1a3d8) = 0
ioctl(3, SG_GET_RESERVED_SIZE, 0xbfd1a3d4) = 0
write(2, "SCSI buffer size: 64512\n", 24) = 24
ioctl(3, SG_GET_RESERVED_SIZE, 0xbfd1a3b8) = 0
ioctl(3, SG_GET_RESERVED_SIZE, 0xbfd1a3b4) = 0
brk(0) = 0x80c2000
brk(0x80e5000) = 0x80e5000
brk(0) = 0x80e5000
brk(0) = 0x80e5000
brk(0x80e4000) = 0x80e4000
brk(0) = 0x80e4000
write(1, "atapi: -1\n", 10) = 10
[...]
Rossz:
fstat64(3, {st_mode=S_IFBLK|0660, st_rdev=makedev(33, 64), ...}) = 0
geteuid32() = 0
getuid32() = 1004
getuid32() = 1004
setreuid32(-1, 1004) = 0
ioctl(3, SG_GET_RESERVED_SIZE, 0xbfeaab38) = 0
ioctl(3, SG_SET_RESERVED_SIZE, 0xbfeaab34) = 0
ioctl(3, SG_GET_RESERVED_SIZE, 0xbfeaab34) = 0
write(2, "SCSI buffer size: 64512\n", 24) = 24
ioctl(3, SG_GET_RESERVED_SIZE, 0xbfeaab18) = 0
ioctl(3, SG_SET_RESERVED_SIZE, 0xbfeaab14) = 0
ioctl(3, SG_GET_RESERVED_SIZE, 0xbfeaab14) = 0
brk(0) = 0x80c2000
brk(0x80e5000) = 0x80c2000
mmap2(NULL, 1048576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) =
-1 EAGAIN (Resource temporarily unavailable)
write(2, "cdrecord: Cannot allocate memory"..., 62) = 62
write(1, "Cdrecord-Clone 2.01.01a01 (i686-"..., 485) = 485
munmap(0xb7f96000, 4096) = 0
exit_group(12) = ?
Egyre kevesbe ertem.
Miert kulonbozik az euid a ket esetben? Mondom, setuid root a cdrecord:
$ ls -l /usr/bin/cdrecord*
-rwsr-xr-- 1 root cdrom 133 2005-01-09 17:55 /usr/bin/cdrecord
-rwsr-xr-x 1 root root 348556 2005-01-09 17:55 /usr/bin/cdrecord.mmap
-rwsr-xr-x 1 root root 351404 2005-01-09 17:55 /usr/bin/cdrecord.shm
Es mindket esetben az mmap valtozat futott:
$ ls -lurt /usr/bin/cdrecord*
-rwsr-xr-x 1 root root 351404 2005-07-11 16:31 /usr/bin/cdrecord.shm
-rwsr-xr-x 1 root root 348556 2006-02-22 11:58 /usr/bin/cdrecord.mmap
-rwsr-xr-- 1 root cdrom 133 2006-02-22 11:58 /usr/bin/cdrecord
kissg
_________________________________________________
linux lista - [email protected]
http://mlf2.linux.rulez.org/mailman/listinfo/linux