Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Forumowy magiel: pogaduchy o wszystkim i o niczym.
Awatar użytkownika
Hwiparam
Zakręcona Traszka
Zakręcona Traszka
Posty: 815
Rejestracja: 14 lip 2009, 19:02
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Openbox
Architektura: x86_64

Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: Hwiparam »

W tym wątku chciałbym przedstawić moje dzieło :craz: Txtburn, bo tak ochrzciłem swoje dziecko, jest to program (a właściwie skrypt bashowy) do nagrywania płyt CD/DVD. Oferuje podstawowe opcje, takie jak tworzenie obrazów ISO, klonowanie płyt, wypalanie płyt z danymi czy też ISO, weryfikację danych.
Program wypala na płycie pliki umieszczone w katalogu ~/.txtburn (można zmienić lokalizację wedle uznania), tam też tworzy obrazy. Aby wypalić obraz, należy go wpierw umieścić w rzeczonym katalogu i zmienić nazwę na txtburn.iso. Obsługa interfejsu programu polega na podaniu numerka odpowiadającego interesującej nas opcji (1-6) i zatwierdzeniu Enterem.

KOD ŹRÓDŁOWY:

Kod: Zaznacz cały

#!/bin/bash
DIRECTORY="$HOME/.txtburn"
VOLNAME="txtburn"
ISONAME="txtburn.iso"
DEVICE="/dev/sr0"
MAXSPEED="4"
BUFFERSIZE="14"
echo "Witaj w programie txtburn, prprawdopodobnie najmniejszej na świecie aplikacji do nagrywania płyt."
echo "Co teraz zamierzasz zrobić? Wybierz jedną z poniższych opcji:"
echo "1 - Utwórz obraz ISO z plików na HDD"
echo "2 - Utwórz obraz ISO z zawartości płyty"
echo "3 - Wykonaj kopię płyty"
echo "4 - Nagraj obraz na płytę"
echo "5 - Utwórz płytę z danymi"
echo "6 - Zweryfikuj poprawność danych"
echo "7 - Wyczyść płytę wielokrotnego zapisu (CD-RW)"
echo "8 - Wyjdź"
read d
case "$d" in
"1") genisoimage -J -o $DIRECTORY/$ISONAME -R -V $VOLNAME $DIRECTORY ;;
"2") echo "Włóż dysk do napędu i naciśnij Enter..."; read && dd if=$DEVICE of=$DIRECTORY/$ISONAME ;;
"3") echo "Włóż dysk do napędu i naciśnij Enter..."; read && dd if=$DEVICE of=$DIRECTORY/$ISONAME && eject $DEVICE && echo "Obraz jest gotowy do nagrania. Teraz włóż czystą płytę i naciśnij Enter."; read && wodim -v -dao -eject speed=$MAXSPEED fs=$BUFFERSIZE dev=$DEVICE $DIRECTORY/$ISONAME ;;
"4") wodim -v -dao -eject speed=$MAXSPEED fs=$BUFFERSIZE dev=$DEVICE $DIRECTORY/$ISONAME ;;
"5") genisoimage -J -o $DIRECTORY/$ISONAME -R -V $VOLNAME $DIRECTORY && wodim -v -dao -eject speed=$MAXSPEED fs=$BUFFERSIZE dev=$DEVICE $DIRECTORY/$ISONAME ;;
"6") cdck -d $DEVICE -v -t ;;
"7") sudo umount $DEVICE && wodim -v dev=$DEVICE -eject blank=fast ;;
"8") echo "Wychodzę z programu." ;;
esac
Niespełna 30 linijek Basha - prościej się chyba nie da.
Wymagania: bash, genisoimage, wodim, dd, cdck, sudo.

Przy pisaniu wykorzystałem komendy stąd: http://forum.fluxboxpl.org/viewtopic.php?id=816 i trochę je zmodyfikowałem na potrzeby skryptu.
Aby skrypt działał poprawnie, możliwe, że trzeba będzie podać mu lokalizację napędu CD w systemie (zależy od używanego distro) - Wtedy wystarczy w 5. linijce kodu zmienić "/dev/sr0" na odpowiednią wartość.
Jakieś pytania/sugestie?
Ostatnio zmieniony 06 lut 2012, 18:10 przez Hwiparam, łącznie zmieniany 9 razy.
JerryG
Zakręcona Traszka
Zakręcona Traszka
Posty: 924
Rejestracja: 28 lut 2008, 21:22
Płeć: Mężczyzna
Wersja Ubuntu: 24.04
Środowisko graficzne: KDE Plasma
Architektura: x86_64

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: JerryG »

Jedno pytanie czy jest weryfikacja po nagraniu??
Czemu sie pytam, ostatnio mialem troche problemow z nagrywaniem obrazow .iso, nagrywalo sie ale nie przechodzilo weryfikacji.
Okazlo sie ze cale pudelko plyt DVD-R bylo walniete, do tego luzne plyty DVD+R tez, nastepnie CD-R i to renomowanych firm.
Uprzedzajac pytania 4 kompy i nagrywarki OK.
Inne plyty i kazda dobrze nagrala oraz przeszla weryfikacja nagrania.
Awatar użytkownika
Hwiparam
Zakręcona Traszka
Zakręcona Traszka
Posty: 815
Rejestracja: 14 lip 2009, 19:02
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Openbox
Architektura: x86_64

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: Hwiparam »

Weryfikacja danych jest, opcja pod numerkiem 6.
Ostatnio zmieniony 06 lut 2012, 12:12 przez Hwiparam, łącznie zmieniany 1 raz.
Awatar użytkownika
van.den.vons
Sędziwy Jeż
Sędziwy Jeż
Posty: 47
Rejestracja: 31 maja 2010, 10:44
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: Unity
Architektura: x86

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: van.den.vons »

Bardzo ciekawa koncepcja. Tylko, może jak byś mógł bardziej łopatologicznie? Wszystkie pakiety, które wymieniłeś jako potrzebne do zadziałania Twojego programu w kompie mam. Tyle, że pod linkiem są tak naprawdę dwa skrypty. Który? Jaką nazwę im nadać, gdzie umieścić w kompie? Pytam, bo na razie udało mi się zdziałać tyle, że program wysuwa mi szufladę nagrywarki. Aha? Jak możesz, napisz mini tutorial: krok po kroku... ściągamy, zapisujemy, naciskamy, wklejamy, itd.

Mnie się ta Twoja idea bardzo spodobała. Jeśli "zaskoczy" to wywalę z kompa te wszystkie Nero Linux i inne temu podobne.
Awatar użytkownika
Hwiparam
Zakręcona Traszka
Zakręcona Traszka
Posty: 815
Rejestracja: 14 lip 2009, 19:02
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Openbox
Architektura: x86_64

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: Hwiparam »

Wkleiłem skrypt w tagu w pierwszym poście, coby wątpliwości nie było.
To tak...
- umieszczasz plik w katalogu ~/bin i nazywasz go np. txtburn.sh:

Kod: Zaznacz cały

touch ~/bin/txtburn.sh
- Edytujesz utworzony plik i wklejasz do niego zawartość skryptu (to co jest w pierwszym poście w kodzie):

Kod: Zaznacz cały

nano ~/bin/txtburn.sh
- nadajesz atrybut wykonywalności:

Kod: Zaznacz cały

chmod +x ~/bin/txtburn.sh
- Uruchamiasz plik:

Kod: Zaznacz cały

~/bin/txtburn.sh
Teraz przejdźmy do praktycznego użycia programu:
- Pliki do wypalenia kopiujesz do katalogu ~/.txtburn , jak napisałem w pierwszym poście (ISO ma mieć nazwę txtburn.iso !),
- Wkładasz płytę do napędu,
- Odpalasz programik i wybierasz interesującą Cię opcję (podajesz numerek od 1 do 6)
To chyba było by na tyle, jakbyś miał więcej pytań, wal.
Awatar użytkownika
van.den.vons
Sędziwy Jeż
Sędziwy Jeż
Posty: 47
Rejestracja: 31 maja 2010, 10:44
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: Unity
Architektura: x86

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: van.den.vons »

No Panie Kolego :clap: :pt36: :whis: :wall: :clap: :clap: :clap: ... Szacun!! Ponad wszelką wątpliwość działa. Jestem w fazie eksperymentów nad usprawnieniem włączania, ale nie grzebania w kodzie Twojego programu. To znaczy... Musiałem ręcznie wrzucić Twój skrypt do katalogu bin w komputerze, ręcznie nadać mu prawo wykonywalności, ale to praktycznie nieistotny szczegół. Co poza tym? Zmodyfikowałem sobie menu i teraz mam w menu Programy->Dźwięk i wideo->TXT Burn, gdzie jest oczywiście skrót-aktywator do Twojego programiku. Do tego dodałem przecudnej urody ikonkę. Umiejscowiłem bezpośrednio pod Nero Linux, który zachowam na wszelki wypadek :).
Poza tym, w menu Miejsca dodałem sobie zakładkę TXT Burn, by mieć bezpośredni dostęp do katalogu .txtburn. Nazwy samego katalogu nie zmieniałem, więc pozostał z "kropką", dzięki czemu jest niewidoczny, i nie robi mi się bajzel w katalogu home, ale w zakładkach jest widoczny, dzięki czemu mogę w nim operować bez problemu.
Przetestowałem jak na razie opcje:
1 - Create an ISO image from files
4 - Burn an ISO image
5 - Create data CD/DVD
7 - Quit
Pozostałe opcje na razie nie były mi potrzebne. W każdym razie REWELACJA!! Jeszcze jakbyś potrafił uczynić by nagrywarka tym skryptem potrafiła wymazywać płyty wielokrotnego użytku było lepsze niż te wszystkie Nero, Brasero, k3b i inne takie.
Awatar użytkownika
Hwiparam
Zakręcona Traszka
Zakręcona Traszka
Posty: 815
Rejestracja: 14 lip 2009, 19:02
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Openbox
Architektura: x86_64

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: Hwiparam »

Dodałem opcję czyszczenia CD-RW (zaktualizowany skrypt w pierwszym poście), tylko niestety nie posiadam aktualnie przy sobie takiej płyty do wymazania , więc najlepiej jak sam sprawdzisz, czy działa (IMHO powinno) i ewentualnie podeślesz mi feedback.
Awatar użytkownika
van.den.vons
Sędziwy Jeż
Sędziwy Jeż
Posty: 47
Rejestracja: 31 maja 2010, 10:44
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: Unity
Architektura: x86

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: van.den.vons »

Ok, dzięki. Przetestowałem, bo akurat mam wolną płytę wielokrotnego zapisu CD-RW. Próbowałem kasować, to co wcześniej nagrałem Twoim programem na tej płytce. Program się uruchamia, ale wywala jakieś błędy, więc jej nie kasuje. Niestety, nie jestem w stanie podać Ci jakie to błędy, bo listing błędów to jakieś 8-10 linii tekstu, ale okno terminala zamyka się zbyt szybko, bym mógł je skopiować czy utrwalić. Pozostałe funkcje programu działają bez problemu.
Awatar użytkownika
Hwiparam
Zakręcona Traszka
Zakręcona Traszka
Posty: 815
Rejestracja: 14 lip 2009, 19:02
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Openbox
Architektura: x86_64

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: Hwiparam »

Się zamyka? Odpal program wpisując polecenie w terminalu (nie przez aktywator w menu, bo tak pewnie robisz, jak mniemam), wtedy się nie powinien sam zamykać i będziesz mógł podać, co to za błędy.
EDIT: Zmodyfikowałem nieco polecenie czyszczenia.
Jeszcze odmontuj płytę (sudo umount nazwa_urządzenia albo przez np. Nautilus) przed odpaleniem skryptu, możliwe, że o to mu chodzi.
Ostatnio zmieniony 06 lut 2012, 17:46 przez Hwiparam, łącznie zmieniany 1 raz.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: ethanak »

Myślałeś żeby zaproponować dołączenie tego do Vinuxa?
sir_herrbatka
Zakręcona Traszka
Zakręcona Traszka
Posty: 587
Rejestracja: 10 maja 2009, 14:44
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: KDE Plasma
Architektura: x86

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: sir_herrbatka »

Fajny ten skrypt i nie przekombinowany ;-)
Awatar użytkownika
Hwiparam
Zakręcona Traszka
Zakręcona Traszka
Posty: 815
Rejestracja: 14 lip 2009, 19:02
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Openbox
Architektura: x86_64

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: Hwiparam »

ethanak pisze:Myślałeś żeby zaproponować dołączenie tego do Vinuxa?
Piszesz poważnie? Jeśli ludzie odpowiedzialni za rozwój Vinuxa (czy też jakiegokolwiek innego distro) uznają ten skrypt za wart zamieszczenia, to nie będę miał nic przeciwko.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: ethanak »

Całkiem poważnie. Skrypt może być bardzo przydatny - bez problemu poleci pod Orcą czy SpeakUpem.
Kiedyś napisałem taki programik, ayer się nazywał (Accessible YElp Replacement)... w sumie miał być to test (konwertował gnomowe helpy na html i zamiast yelpa odpalał firefoksa - yelpa wtedy nie czytał żaden screenreader). Okazało sie, że przez jakiś rok niewidomi na całym świecie tego używali... więc na pewno warto!
Awatar użytkownika
van.den.vons
Sędziwy Jeż
Sędziwy Jeż
Posty: 47
Rejestracja: 31 maja 2010, 10:44
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: Unity
Architektura: x86

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: van.den.vons »

A zatem. Miałeś rację Hwiparam, problem polegał jednak na tym, że Twój programik (tak jak podejrzewałeś) wymaga odmontowania nagrywarki, jeśli chce się użyć opcji "7 - wymazywanie dysku". Teraz działa zajebistycznie, a nawet kur***** rewelacyjnie. Jeszcze (jeśli to nie jest dla Ciebie zbyt wielki problem, gdyby można było polecenie odmontowania nagrywarki przed kasowaniem dysku dorzucić do kodu Twojego skryptu, to... klękajcie narody. To co teraz piszę jest sprawdzone bez tej modyfikacji, o której wspomniałeś kilka postów wyżej. Przystępuję do sprawdzenia z tą modyfikacją.

... Z przed chwili. Kombinowałem na najróżniejsze sposoby, ale tak, czy inaczej, programik wymaga by nagrywarka była odmontowana. W sumie niewielki problem, kilka kliknięć w menu: System->Administracja->Narzędzie do obsługi dysków->Napęd CD/DVD->Odmontuj. Oczywiście wspólnota wszechświatowa będzie Ci dozgonnie wdzięczna, jeśli udałoby Ci się linie z komendą odmontowującą nagrywarkę, wcisnąć w swój skrypt. I tak jest to narzędzie rewelacyjne. Kopiowanie plików przeznaczonych do wypalenia na płytce metodą "chwyć i upuść" to kilka sekund, a sam programik wypala płytki dużo szybciej niż Nero.

Mam nadzieję, że nie masz nic przeciwko "spolszczeniu" Twojego dzieła na moje własne potrzeby? Chciałem go córce na lapku zainstalować, a ona niestety w szkole uczy się tylko "Hände hoch! Nicht schießen, ich bin unschuldig Pole". Oczywiście, przy zachowaniu Twojego © ® ™. :) :wink:
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: ethanak »

van.den.vons pisze:Mam nadzieję, że nie masz nic przeciwko "spolszczeniu" Twojego dzieła na moje własne potrzeby?
A czemu na własne a nie pro publico bono?
O ile wiem gettexta można w skryptach używac...
Awatar użytkownika
van.den.vons
Sędziwy Jeż
Sędziwy Jeż
Posty: 47
Rejestracja: 31 maja 2010, 10:44
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: Unity
Architektura: x86

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: van.den.vons »

Ok, nie ma sprawy. Nie chciałem tego jednak czynić bez zgody autora, o żesz pardon... AUTORA. To w końcu jego praca. Ale skoro taka jest wola ogółu, spróbuję to spolszczyć, oczywiście bez ingerencji w sam kod, bo to dla mnie magia.
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: ethanak »

van.den.vons pisze:Ok, nie ma sprawy. Nie chciałem tego jednak czynić bez zgody autora
Rozumiem że autor publikuje to na jakiejś normalnej licencji?
Ale skoro taka jest wola ogółu, spróbuję to spolszczyć, oczywiście bez ingerencji w sam kod, bo to dla mnie magia.
http://mywiki.wooledge.org/BashFAQ/098
Tu jest tutek jak to się robi
Awatar użytkownika
Hwiparam
Zakręcona Traszka
Zakręcona Traszka
Posty: 815
Rejestracja: 14 lip 2009, 19:02
Płeć: Mężczyzna
Wersja Ubuntu: inny OS
Środowisko graficzne: Openbox
Architektura: x86_64

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: Hwiparam »

@van.den.vons, Do opcji czyszczącej dodałem polecenie odmontowania płyty. Tylko będziesz musiał podać swoje hasło (sudo). A i przy okazji spolszczyłem skrypt.
@ethanak, Jak już pisałem, nie widzę najmniejszego problemu w dodaniu tego skryptu do Vinuxa, jeśli ktoś uzna to za stosowne.
Awatar użytkownika
van.den.vons
Sędziwy Jeż
Sędziwy Jeż
Posty: 47
Rejestracja: 31 maja 2010, 10:44
Płeć: Mężczyzna
Wersja Ubuntu: 14.04
Środowisko graficzne: Unity
Architektura: x86

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: van.den.vons »

Przetestowałem wszystkie opcje, łącznie z tą najnowszą poprawką. Wszystko działa rewelacyjnie, bez problemu, włącznie z kasowaniem płyt. Mistrzostwo świata, niskie pokłony!! :)
Awatar użytkownika
ethanak
Wygnańcy
Posty: 3054
Rejestracja: 04 gru 2007, 13:19
Płeć: Mężczyzna
Wersja Ubuntu: 12.04
Środowisko graficzne: GNOME
Architektura: x86
Lokalizacja: Bielsko-Biała
Kontakt:

Re: Prawdopodobnie najmniejszy na świecie program do wypalania płyt

Post autor: ethanak »

Hwiparam pisze:nie widzę najmniejszego problemu w dodaniu tego skryptu do Vinuxa, jeśli ktoś uzna to za stosowne.
No to zgłoś się do developerów Vinuxa albo na jakiejkolwiek liście niewidomych linuksiarzy!
Ja w razie czego mogę pomóc z i18n.
ODPOWIEDZ

Wróć do „Pogaduchy”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 17 gości