Nowe posty

Autor Wątek: dysk twardy  (Przeczytany 15411 razy)

Gregu

  • Gość
dysk twardy
« dnia: 2006-01-09, 17:27:39 »
Cześć. (M2006, KDE, klawiatura multimedialna+xbindkeys)
Docelowo chodzi mi o ustawienie jakiegoś klawisza, który spełniałby funkcję otwierania i zarazem zamykania CD.
Podczas przypisywania poleceń do klawiszy zatrzymałem się na takich (działających) ustawieniach:
\\"eject\\" - wysuwa cd
\\"eject -t\\" - zamyka cd
lecz trzeba do tego użyć 2 klawiszy (ostatecznie mogę jeszcze zastosować jakąś kombinację klawiszy, aby zwolnić ten drugi).
np.
analogicznie przy pomocy dcop obsługuję klawisz mute:
-aby wyciszyć dźwięk, wpisuję \\"dcop polecienie\\"
-aby włączyć dźwięk, wpisuję to samo \\"dcop polecenie\\"
dlatego mogłem je przypisać pod jeden klawisz.

Czy ktoś mógłby mi dać jakąś wskazówkę, gdzie znalazłbym coś interesującego? Może ktoś już się z czymś takim spotkał?
Szukałem już w forum, man eject, google.
Nie twierdzę, że takie polecenie do CD wogóle istnieje. Jestem początkujący, więc może o czymś nie wiem, lub coś przeoczyłem. Po prostu zżera mnie ciekawość. Z góry dziekuję za odpowiedź.

chmooreck

  • Gość
dysk twardy
« Odpowiedź #1 dnia: 2006-01-09, 20:58:41 »
poczytaj jeszcze raz help\\'a/man\\'a do eject...

jak za dwa dni nie znajdziesz, to odswiez topic - moze ci podam ;-)

Gregu

  • Gość
dysk twardy
« Odpowiedź #2 dnia: 2006-01-11, 21:15:26 »
Nie znalazłem jednego polecenia do zamykania/otwierania CD, ale zrobiłem tak: napisałem plik wykonywalny i przypisałem go pod klawisz. Oto ten skromny myk:
---------------------
eject
#tu myślałem, że jakieś pause, break, wait #chwyci mi ten szybko zamykający się mechanizm, #ale przypuszczam, że te polecenia, to #działają, ale w pętlach itp. (a programistą #nie jestem)
eject -t
---------------------
Wniosek:
- gregu, weź się wreszcie za programowanie!

No chyba, że mogę jeszcze prosić o jakąś podpowiedź...z góry dzięki

chmooreck

  • Gość
dysk twardy
« Odpowiedź #3 dnia: 2006-01-11, 21:40:34 »
2006-01-11 21:15:26 Gregu napisał:

 > Wniosek:
 > - gregu, weź się wreszcie za programowanie!
 >
 > No chyba, że mogę jeszcze prosić o jakąś podpowiedź...z góry dzięki

ja mam inny wniosek...
 - gregu, naucz sie czytac ! ;-)

eject -T

Maciek_Rutecki

  • Gość
dysk twardy
« Odpowiedź #4 dnia: 2006-01-11, 22:36:32 »
2006-01-11 21:40:34 chmooreck napisał:

> 2006-01-11 21:15:26 Gregu napisał:
 >
 >  > Wniosek:
 >  > - gregu, weź się wreszcie za programowanie!
 >  >
 >  > No chyba, że mogę jeszcze prosić o jakąś podpowiedź...z góry dzięki
 >
 > ja mam inny wniosek...
 >  - gregu, naucz sie czytac ! ;-)
 >
 > eject -T

W moim manualu dużego \\"T\\" nie ma :-)

--
Maciek

Gregu

  • Gość
dysk twardy
« Odpowiedź #5 dnia: 2006-01-11, 22:43:46 »
> ja mam inny wniosek...
>  - gregu, naucz sie czytac ! ;-)

Hmm, zobaczmy \\"man eject\\":
\\"-t   With  this  option the drive is given a CD-ROM tray close command.
            Not all devices support this command.\\"

Czytając mana, wnioskuję, że to polecenie nie otwiera CD, tylko je zamyka (poza tym pojawiło się już w moich poprzednich postach, jako polecenie zamykające CD). Mi natomiast chodzi o to, czy istnieje jedna komenda, która zarówno otworzy, jak i zamknie CD (jak np. MUTE - \\"dcop kmix Mixer0 toggleMute 0\\" - działa w obie strony); \\"eject -t\\" - nie działa u mnie w obie strony.

> eject -T

Zobaczmy:
#eject -T
#eject: błędna opcja -- T,

gdyż prawidłowy parametr, to \\"-t\\"

Może mam jakieś starsze jądro (2.6.12-12mdk) lub inną dystrybucję i dlatego to, co proponujesz u mnie nie funkcjonuje. Może mam inną wersję eject (2.0.13), może coś namieszałem? Albo niejasno sformułowałem swoje posty - w takim razie przepraszam. Zaczyna brakować mi pomysłów. Będę wdzięczny za odpowiedź.

Gregu

  • Gość
dysk twardy
« Odpowiedź #6 dnia: 2006-01-11, 22:59:30 »
> Zaczyna brakować mi pomysłów. Będę wdzięczny za odpowiedź.


Może nie od razu odpowiedź...cenniejsza będzie podpowiedź.

chmooreck

  • Gość
dysk twardy
« Odpowiedź #7 dnia: 2006-01-12, 00:15:05 »
sciagnij sobie nowszego eject\\'a... ;-)

Gregu

  • Gość
dysk twardy
« Odpowiedź #8 dnia: 2006-01-12, 00:49:16 »
A ja jakieś skrypty piszę, kombinuję, jak koń pod górę, trzymam to biedne CD, żeby mi się nie kukało, jak już się otworzy, a tu jest nowsza wersja...cóż, pozostaje mi tylko przeprosić za zamieszanie.
Dziękuję za cierpliwość.
Pozdrawiam.

devilan

  • Gość
dysk twardy
« Odpowiedź #9 dnia: 2006-01-12, 07:43:48 »
2006-01-12 00:49:16 Gregu napisał:

> A ja jakieś skrypty piszę, kombinuję, jak koń pod górę, trzymam to biedne CD, żeby mi się nie
 > kukało, jak już się otworzy, a tu jest nowsza wersja...cóż, pozostaje mi tylko przeprosić za
 > zamieszanie.
 > Dziękuję za cierpliwość.
 > Pozdrawiam.

Eject zwraca pewna wartosc w zaleznosci czy komenda sie udala czy nie (czyli czy udalo sie wykonac zadanie czy nie).
to co zwraca eject znajduje sie w zmiennej srodowiskowej $?

np.:
#!/bin/bash

eject;
# Skladnia polecenia warunkowego:
if [ \\"$?\\" == \\"1\\" ]; then
     #niepowodzenie polecenia
     # tu zastanow sie co robimy
     # i wpisz odpowiednie polecenie
else
     #polecenie sie powiodlo
     # tu tez zastanow sie co trzeba w tym wypadku zrobic
     # i uzupełnij poleceniem :)
fi

dodam jeszcze, ze exit powoduje przerwanie dzialania skryptu :)

konradnie

  • Gość
dysk twardy
« Odpowiedź #10 dnia: 2006-01-09, 16:15:26 »
Witam
mam dysk twardy WD -JB i plyte glowna abit kt7 raid  
problemem jest wolno pracujacy dysk (linux debian)  plyta via 133 dma66

gdy ustawiam hdparm dma to odrazu wyskauja jakies bledy i wraca do starych ustawien

a jak zainstalowalem linuxa ze standardowym jajkiem przy odpalaniu juz te bledy pokazywal i nie zawsze sie uruchamial

bledy zalacze jak bede w domu


jakis pomysl ?????

Pozdrawiam

chmooreck

  • Gość
dysk twardy
« Odpowiedź #11 dnia: 2006-01-09, 21:00:49 »
bez bledu nie ma pomyslu

konradnie

  • Gość
dysk twardy
« Odpowiedź #12 dnia: 2006-01-09, 23:06:18 »
przykladowy wycinek przy uruchamianiu systemu badow nie przewiduje na dysku cos raczej kontrolera + sterownik bym bral pod uwage


hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
 hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
 ide: failed opcode was: unknown
 hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
ide0: reset: success
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
hda: dma_intr: status=0x51 { DriveReady SeekComplete Error }
hda: dma_intr: error=0x84 { DriveStatusError BadCRC }
ide: failed opcode was: unknown
ide0: reset: success

Maciek_Rutecki

  • Gość
dysk twardy
« Odpowiedź #13 dnia: 2006-01-09, 23:20:50 »
2006-01-09 23:06:18 konradnie napisał:



1. Stary dysk
2. Zła taśma do dysku
3. Kontroler nie radzi sobie z DMA

Zerknij w opcjach jądra:
Device Drivers --->
ATA/ATAPI/MFM/RLL support --->
<*> Include IDE/ATA-2 DISK support
  • Use multi-mode by default


Możesz wybrać inne wolniejsze DMA, np.:
hdparm -X udma 3 /dev/hda

Pomocne będzie:
hdparm -i /dev/hdc (dla dysku hdc)

Zerknij:
http://www.it-faq.pl/news_archives/pl.comp.os.linux/2002/oct/msg09460.html

... a wystarczyło wpisać komunikat błedu w google :P

--
Maciek

konradnie

  • Gość
dysk twardy
« Odpowiedź #14 dnia: 2006-01-10, 23:43:01 »
hdparm -i /dev/hda

/dev/hda:

 Model=WDC WD800JB-00ETA0, FwRev=77.07W77, SerialNo=WD-WMAHL1875385
 Config={ HardSect NotMFM HdSw>15uSec SpinMotCtl Fixed DTR>5Mbs FmtGapReq }
 RawCHS=16383/16/63, TrkSize=57600, SectSize=600, ECCbytes=74
 BuffType=DualPortCache, BuffSize=8192kB, MaxMultSect=16, MultSect=16
 CurCHS=65535/1/63, CurSects=4128705, LBA=yes, LBAsects=156301488
 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
 PIO modes:  pio0 pio1 pio2 pio3 pio4
 DMA modes:  mdma0 mdma1 mdma2
 UDMA modes: udma0 udma1 udma2 udma3 *udma4 udma5
 AdvancedPM=no WriteCache=enabled
 Drive conforms to: Unspecified:  ATA/ATAPI-1 ATA/ATAPI-2 ATA/ATAPI-3 ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6

 * signifies the current active mode


tamte rady niestety nie pomogly pasek zmienilem
w komplilowane w jadro mam te opcje (a dysk nie sadze aby byl zly niedawno zmienilem plyte i na niej od poczatku sa problemy pod windows jest ok)