[+] cdemu monuje cd ale

Tematy związane z oprogramowaniem, instalacją, konfiguracją
lamek
Beginner
Posty: 108
Rejestracja: 07 marca 2009, 13:22

[+] cdemu monuje cd ale środowisko KDE jej nie widzi

Post autor: lamek »

Witam,
mam mały problem z cdemu.
A mianowice daemon startuje ładuje dane do urządzenia /dev/sr1 itd.
ale udev,udisk2 czy nie wiem jaki serwer nie powiadamia środowiska, że można zamontować zasoby nowego urządzenia.
Dokładnie po wywołaniu komendy:

Kod: Zaznacz cały

cdemu load any linuxmint-13-kde-dvd-32bit.iso
nie wyskakuje mi okienko, ani w dolphin ani w powiadomieniach, że wlożono nową płyte.
jak zamontuje ręcznie z konsoli to wszystko działa.

Kod: Zaznacz cały

sudo mount -t iso9660 -o -ro /dev/sr1 /mnt
Moj system to debian testing KDE w wersji 4.11
udev w wersji 204-8, a udisk2 w 2.1.3-1.
W czym może być problem?:
--------------------------
Dodatkowe info:

Kod: Zaznacz cały

Starting CDEmu daemon with following parameters:
 - num devices: 4
 - ctl device: /dev/vhba_ctl
 - audio driver: default
 - bus type: session

Kod: Zaznacz cały

lsmod | grep vhba
vhba                   17120  4
scsi_mod              182938  5 sg,vhba,libata,sd_mod,sr_mod

Kod: Zaznacz cały

crw-rw---- 1 root cdrom 10, 57 mar 31 07:15 /dev/vhba_ctl

Kod: Zaznacz cały

[   38.151541] sr1: scsi3-mmc drive: 40x/40x cd/rw xa/form2 cdda tray
[   38.151652] sr 6:0:0:0: Attached scsi CD-ROM sr1
[   38.152079] sr 6:0:0:0: Attached scsi generic sg2 type 5
[   38.152237] scsi 6:0:1:0: CD-ROM            CDEmu    Virt. CD/DVD-ROM 1.10 PQ: 0 ANSI: 0
[   38.152369] sr2: scsi3-mmc drive: 40x/40x cd/rw xa/form2 cdda tray
[   38.152467] sr 6:0:1:0: Attached scsi CD-ROM sr2
[   38.152536] sr 6:0:1:0: Attached scsi generic sg3 type 5
[   38.152688] scsi 6:0:2:0: CD-ROM            CDEmu    Virt. CD/DVD-ROM 1.10 PQ: 0 ANSI: 0
[   38.152809] sr3: scsi3-mmc drive: 40x/40x cd/rw xa/form2 cdda tray
[   38.152898] sr 6:0:2:0: Attached scsi CD-ROM sr3
[   38.152949] sr 6:0:2:0: Attached scsi generic sg4 type 5
[   38.153371] scsi 6:0:3:0: CD-ROM            CDEmu    Virt. CD/DVD-ROM 1.10 PQ: 0 ANSI: 0
[   38.153483] sr4: scsi3-mmc drive: 40x/40x cd/rw xa/form2 cdda tray
[   38.153559] sr 6:0:3:0: Attached scsi CD-ROM sr4
[   38.153620] sr 6:0:3:0: Attached scsi generic sg5 type 5
lamek
Beginner
Posty: 108
Rejestracja: 07 marca 2009, 13:22

Post autor: lamek »

Jak uruchomię k3bsetup. To pojawia się od razu urządzenie do zamontowania.

Dodane:
Wygląda na to że dodanie:

Kod: Zaznacz cały

[font=Courier New]echo 2000 > /sys/module/block/parameters/events_dfl_poll_msecs[/font]
pomaga. Ale czy jest to bezpieczne? Tj. czy zmiana tego parametru nie spowalnia komputera lub czy może powodować uszkodzenie hardware?
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

Ja mam taką wartość w tym pliku domyślnie.

Kod: Zaznacz cały

cat /sys/module/block/parameters/events_dfl_poll_msecs 
2000
Jak chcesz możesz ją zwiększyć, np 5000, ale wtedy system będzie wykonywał "detekcje" co 5 sekund.
lamek
Beginner
Posty: 108
Rejestracja: 07 marca 2009, 13:22

Post autor: lamek »

Ok ale co ta funkcja dokładnie robi, zwiększony jest wtedy odczyt dysku?
Czy może mi to skrócić znacząco jego żywotność?
Czy włączenie tej opcji powoduje np. wolniejszy odczyt/zapis na dysku itp?
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

http://linuxtutorial.info/modules.php?n ... pageid=270
Z tego co ja rozumiem co 2 sekundy odczytywane są statusy urządzeń w poszukiwaniu zmian. Możesz też zastosować to tylko do konkretnego urządzenia, np u mnie CD-rom jest identyfikowane jako sr0:

Kod: Zaznacz cały

/sys/block/[B]sr0[/B]/events_poll_msecs
Choć nie wiem jak to się ma do cdemu, może tworzy jakieś wirtualne urządzenie? Nie chce mi się w to wgłębiać.
lamek
Beginner
Posty: 108
Rejestracja: 07 marca 2009, 13:22

Post autor: lamek »

Cdemu tworzy wirtualne napędy więc trzebaby napisać mały skrypt, który po odpaleniu daemona (odpalany przez usera w sessji) nadpiszę wartości dla użądzeń /dev/sr0 /dev/sr1 /dev/sr2 itd.
Awatar użytkownika
Rafal_F
Moderator
Posty: 2350
Rejestracja: 29 sierpnia 2008, 16:45

Post autor: Rafal_F »

No to już wszystko jasne.
lamek
Beginner
Posty: 108
Rejestracja: 07 marca 2009, 13:22

Post autor: lamek »

Może są lepsze rozwiązania ale ja zrobiłem coś takiego
utworzyłem plik cdemufixer.c

Kod: Zaznacz cały

#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>
#include <unistd.h>

int main()
{
   setuid( 0 );
   system( "/usr/bin/cdemufixer_script.sh" );

   return 0;
}
Skomiplowałem i skopiowałem do /usr/bin:

Kod: Zaznacz cały

gcc cdemufixer.c -o cdemufixer
sudo mv cdemufixer /usr/bin/
Utworzyłem plik skryptu /usr/bin/cdemufixer_script.sh o treści:

Kod: Zaznacz cały

#!/bin/bash
if [ -e /dev/sr1 ]; then
echo 3000 > /sys/block/sr1/events_poll_msecs
fi

if [ -e /dev/sr2 ]; then
echo 3000 > /sys/block/sr2/events_poll_msecs
fi

if [ -e /dev/sr3 ]; then
echo 3000 > /sys/block/sr3/events_poll_msecs
fi

if [ -e /dev/sr4 ]; then
echo 3000 > /sys/block/sr4/events_poll_msecs
fi
Nadałem odpowiednie uprawnienia plikom:

Kod: Zaznacz cały

sudo chown root.root /usr/bin/cdemufixer
sudo chown root.root /usr/bin/cdemufixer_script.sh
sudo chmod 4755 /usr/bin/cdemufixer
sudo chmod +x /usr/bin/cdemufixer_script.sh
Utworzyłem i dodałem do autostartu KDE skrypt .cdemu-starter.sh

Kod: Zaznacz cały

#!/bin/bash
cdemu-daemon -n 4 &
sleep 5 
cdemufixer
ODPOWIEDZ