По какому принципу происходит запись CD? Я пробовал так: /***************************************************************/ #include <sys/ioctl.h> #include <fcntl.h> #include <linux/cdrom.h> #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> #include <stdio.h> #include <sys/sendfile.h> int main(int argc, char argv[]) { struct stat stat_buf; off_t offset = 0; char* cddrive = "/dev/cdrom"; /*это у меня устройство ЦэДыРома*/ int cd_fd = open (cddrive, O_RDWR); int fd = open (argv [1], O_RDONLY); fstat (fd, &stat_buf);/* Определяю размер файла*/ sendfile (cd_fd, fd, &offset, stat_buf.st_size); ioctl (cd_fd, CDROMEJECT); close (cd_fd); close (fd); return 0; } /**********************************************************/ И не фига! Записи не происходит :( Может я не в том направлении копаю? Надеюсь на Ваш квалифицированный ответ. P.S.: Не спрашивайте, зачем мне нужно писать CD, имея cdrecord. Мне просто хочется научится это сделать.