use IO::File; use Fcntl qw(O_RDONLY O_NONBLOCK); my $CDROM_LOCKDOOR = 0x5329; my $cdrom_dev = '/dev/scd0'; my $cdrom = IO::File->new( $cdrom_dev , O_RDONLY|O_NONBLOCK ) or die "unable to open $cdrom_dev: $!"; my $ret = ioctl( $cdrom , $CDROM_LOCKDOOR , pack('I',0) );