Linux за българи: Форуми

Програмиране => Общ форум => Темата е започната от: AMD в Mar 03, 2012, 18:09



Титла: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 03, 2012, 18:09
Код
GeSHi (Bash):
  1. #!/bin/bash
  2. #Автор: Росен Александров
  3. #jabber - roko@jabber.calculate-linux.org
  4. #e-mail - sandikata@yandex.ru
  5. #irc - irc.freenode.net/ROKO__
  6.  
  7. # Переменные
  8. XDIALOG=`find /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin -name Xdialog`
  9. if [ -z "$XDIALOG" ]
  10. then
  11.  DIALOG="dialog"
  12. else
  13.  DIALOG="Xdialog"
  14. fi
  15.  
  16. pn="ddflash-gui"
  17. # Суперпользователь
  18. if [ `id -u` -ne 0 ] ; gksu $pn
  19. then
  20. $DIALOG --title "Ошибка!" --msgbox "Вы должны иметь привилегии суперпользователя!" 0 0
  21. exit 1
  22. fi
  23.  
  24. # DDFLASH 0.1
  25. $DIALOG --title "DDFLASH 0.1" --yesno "Добро пожаловать.\n
  26. Это тест версия!\n
  27. Используйте на свой страх и риск!\n
  28. Мы не принимаем жалобы на потерю данных!\n
  29. Автор: Росен Александров\n
  30. Готовы ли вы продолжать?" 16 85
  31.  
  32. otwet=$?
  33. if [ $otwet -ne 0 ]
  34. then notify-send -t 10000 "Вы не согласились, чтобы продолжить. Программа закрывается!"
  35. exit 0
  36. fi
  37.  
  38. $DIALOG --title "DDFLASH 0.1" --msgbox "Пожалуйста, отключите все USB устройства!" 16 85
  39. dmesg -c 1> /dev/null
  40. $DIALOG --title "DDFLASH 0.1" --msgbox "Теперь подключите USB устройство, которое будет признано, это займет некоторое время." 16 85
  41. sleep 10
  42. USB=`dmesg | grep removable | cut -d '[' -f 3 | cut -d ']' -f 1`
  43. if [ -z "$USB" ]; then
  44. USB=`dmesg | grep removable | cut -d ' ' -f 3 | cut -c 2,3,4`
  45. fi
  46. DEVICE=`for var in $USB; do echo "/dev/$var"; done`
  47. set $DEVICE
  48. usb=`$DIALOG --title "$TITLE" --radiolist "DDFLASH 0.1 Выберите устройство?" 15 60 3 \
  49. :$1 "" off \
  50. :$2 "" off \
  51. :$3 "" off 3>&1 1>&2 2>&3 | cut -c2-11`
  52. [ -z "$usb" ] && exit 0
  53.  
  54. # Образ
  55. iso=`$DIALOG --title "DDFLASH 0.1 Выберите изображение? (ISO)" --fselect "/" 40 100 3>&1 1>&2 2>&3`
  56. [ -z "$iso" ] ;
  57.  
  58. # Продолжать
  59. $DIALOG --title "DDFLASH 0.1" --clear \
  60. --yesno "Вы уверены, что хотите продолжить?" 16 85 3
  61.  
  62. value=$?
  63.  
  64. case $value in
  65. 0) umount $usb ; dd if=$iso of=$usb
  66.   Xdialog --no-buttons --infobox "Копирование ... Пожалуйста, подождите ..." 0 0
  67. ;;
  68.  
  69. 1) notify-send -t 10000 "Отмена нажатой."
  70.   exit 0
  71. ;;
  72.  
  73. 255) notify-send -t 10000 "Диалог был закрыт."
  74. ;;
  75.  
  76. esac
  77. $DIALOG --title "DDFLASH 0.1" --msgbox "Копирование завершено." 15 60
  78. exit 0
  79.  
  80.  

Скоро ще има още подобрения по програмата.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: jet в Mar 03, 2012, 19:38
Ако искаш някой да ти ползва скрипта - махни тези номера на редове или дай линк за сваляне.
А какъв е този Xdialog, в кой-пакет се намира, освен ако не трябва да се ползва твоята дистрибуция.
При версия 0.2, ще ходиш да заменяш 0.1 с 0.2 ли
Не се заяждам, градивна критика.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 03, 2012, 19:52
Ако искаш някой да ти ползва скрипта - махни тези номера на редове или дай линк за сваляне.
А какъв е този Xdialog, в кой-пакет се намира, освен ако не трябва да се ползва твоята дистрибуция.
При версия 0.2, ще ходиш да заменяш 0.1 с 0.2 ли
Не се заяждам, градивна критика.

Не това 0.1 го добавям като пиша пакети за моята дистрибуция, и нали ако има големи промени ще стане 0.2, а евентуално ако са само фиксове добавям 0.1-r1 r2 и така нататък.

Линк за сваляне сега ще публикувам.

https://github.com/sandikata/ROKO__/blob/master/ddflash-gui ($2)

Цъкваш на RAW и получаваш чистия код, без номерация на редовете.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 03, 2012, 19:56
Xdialog си е самостоятелен пакет. За всяка дистрибуция. Вече отделен въпрос е дали всяка дистрибуция ще го има в хранилището си (Особено ако е КДЕ Десктоп.)

Xdialog е еквивалент на Zenity и Kdialog

http://mirror.yandex.ru/gentoo-distfiles/distfiles/Xdialog-2.3.1.tar.bz2 - с GTK

http://mirror.yandex.ru/gentoo-distfiles/distfiles/dialog-1.1-20120215.tgz - с Console Like Interface

Зависимости: libtool bash ncurses gettext gtk+-2

ПС: За Дебиан/Убунту потребители, ако не съществува в хранилищата може да се инсталира ръчно както писах по-горе, тъй като при тях се използва "whiptail"


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 03, 2012, 20:11
Малко снимки от програмката.

http://imglink.ru/show-image.php?id=be907b1ee69b125a6f388d5a7981d2e4
http://imglink.ru/show-image.php?id=7c6e5dfecefe6fec45d63291c698a494
http://imglink.ru/show-image.php?id=5d3344a56109098d53c55117abdccdd7
http://imglink.ru/show-image.php?id=ef70a832f44b08be7ff85aed3ed3de8e

ПС: Не всички диалози се показват при мен, защото нямам включено USB и съм направил скрипта да не продължава ако не покаже налични устройства в списъка (4-тия линк).


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: Naka в Mar 03, 2012, 22:54
И това копира с dd iso-то върху флашка.

Трябва да се каже, че това е възможно само ако iso-to е така направено че да може да бутва и от CD и от Флашка. При федората знам, че вече от ver 13 нагоре iso-тата им са такива. Не знам как е при другите дистрибуции. Може навсякъде вече да е така.

Но в общият случай iso не може направо да се записва върху флашка. Iso-то си е за CD и ефекта ще е никакъв. Няма да бутне.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: radoshow в Mar 03, 2012, 23:00
И това копира с dd iso-то върху флашка.

Трябва да се каже, че това е възможно само ако iso-to е така направено че да може да бутва и от CD и от Флашка. При федората знам че вече от ver 13 нагоре iso-тата им са такива. Не знам как е при другите дистрибуции. Може навсякъде вече да е така.

Но в общият случай iso не може направо да се записва върху флашка. Iso-то си е за CD и ефекта ще е никакъв. Няма да бутне.
Примерно Убунту,ЛинуксМинт и някой други не могат да се записват по този начин,ама много са тези,които можеш да запишеш като bootableUSB.

P.S.Аз имам забележки към скрипта.Примерно когато не си поставил флашка в USB-то не спира до там скрипта,а си продължава до края.Може да се направи като искането на на Адмонистраторски права.Когато не открие флашка да спира скрипта.Не знам за Xdialog-а дали е еквивалент на Zenity и Kdialog,ама по-добре ползвай тях,защото при мен изглежда като инсталатор на ArchLinux.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 04, 2012, 08:36
И това копира с dd iso-то върху флашка.

Трябва да се каже, че това е възможно само ако iso-to е така направено че да може да бутва и от CD и от Флашка. При федората знам, че вече от ver 13 нагоре iso-тата им са такива. Не знам как е при другите дистрибуции. Може навсякъде вече да е така.

Но в общият случай iso не може направо да се записва върху флашка. Iso-то си е за CD и ефекта ще е никакъв. Няма да бутне.

Направено е за дистрибуциите които правят Хибридни образи (Hybrid ISO)


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 04, 2012, 08:38
И това копира с dd iso-то върху флашка.

Трябва да се каже, че това е възможно само ако iso-to е така направено че да може да бутва и от CD и от Флашка. При федората знам че вече от ver 13 нагоре iso-тата им са такива. Не знам как е при другите дистрибуции. Може навсякъде вече да е така.

Относно забележката нямам в момента флашка на която да тествам поведението му. Ако можеш покажи с снимки какво си забелязал.
Но в общият случай iso не може направо да се записва върху флашка. Iso-то си е за CD и ефекта ще е никакъв. Няма да бутне.
Примерно Убунту,ЛинуксМинт и някой други не могат да се записват по този начин,ама много са тези,които можеш да запишеш като bootableUSB.

P.S.Аз имам забележки към скрипта.Примерно когато не си поставил флашка в USB-то не спира до там скрипта,а си продължава до края.Може да се направи като искането на на Адмонистраторски права.Когато не открие флашка да спира скрипта.Не знам за Xdialog-а дали е еквивалент на Zenity и Kdialog,ама по-добре ползвай тях,защото при мен изглежда като инсталатор на ArchLinux.


Значи нямаш инсталиран Xdialog направил съм го така че ако имаш Xdialog излиза графично, ако имаш само dialog излиза конзолно.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: v_badev в Mar 05, 2012, 10:15
И колко продължава тестовият период скрипта?

П.П.
Понеже форума е на Линукс за българи, а не на Calculate Linux е по-правилно съобщенията да са преведени български.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 10:22
И колко продължава тестовият период скрипта?

П.П.
Понеже форума е на Линукс за българи, а не на Calculate Linux е по-правилно съобщенията да са преведени български.

Това мисля че важи и за статиите които се пускат на английски!

Сега по темата. Тестов ще е докато получа отзиви дали работи, и какви проблеми са забелязани. Аз нямам в момента къде да го тествам.

Не съществува риск да си изтриеш важна информация на диска, защото съм го направил така че да следи само за сменяеми дялове (флашки и други). Единственото е ако имаш нещо важно на флашката си заминава безвъзвратно.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: radoshow в Mar 05, 2012, 10:56
Росене,преди малко тествах скрипта и при мен не се получи.За теста ползвах ArchLinux(този имах на компа).Сега ще дръпна някой друг хибрид(ако искаш предложи ти някой) и ще пробвам отново.Направих видео на теста.Ето виж:
http://youtu.be/mTMGBpN6j_Q ($2)


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 11:10
Предполагах че ще е подобен резултата.
Някой от знаещите може ли да даде идея?

Не съм много сигурен в това дали изобщо скрипта записва в променливи данните въведени от Xdialog.

Ами да ....

roko__@Calculate(11:47:41-12-03-05)( ~ pts/2 )# sudo sh script.sh
usr/share/
/dev/sdf
/usr/share/themes/MurrinaNeoGraphite/gtk-2.0/gtkrc:52: Murrine configuration option "scrollbar_color" is no longer supported and will be ignored.
/home/roko__/Торенти/Need For Speed Underground 2.iso

Не чете правилно USB-то. това usr/share не знам от къде се взема че само пречи.

usb=`$DIALOG --title "Выберите устройство." --radiolist "DDFLASH 0.1" 0 0 0 \
        :$1 "" off \
        :$2 "" off \
   :$3 "" off \
   :$4 "" off \
   :$5 "" off \
        :$6 "Не трогай сюда!" off 3>&1 1>&2 2>&3 | cut -c2-11`

Проблема идва от тази секция ама а де...

roko__@Calculate(11:54:54-12-03-05)( ~ pts/2 )# sudo sh script.sh
usr/share/
/dev/sdf
/usr/share/themes/MurrinaNeoGraphite/gtk-2.0/gtkrc:52: Murrine configuration option "scrollbar_color" is no longer supported and will be ignored.
/home/roko__/Торенти/Need For Speed Underground 2.iso
dd: открытие «/usr/share/themes/MurrinaNeoGraphite/gtk-2.0/gtkrc:52: Murrine configuration option "scrollbar_color" is no longer supported and will be ignored.\n/home/roko__/Торенти/Need For Speed Underground 2.iso»: Нет такого файла или каталога
dd: открытие «usr/share/\n/dev/sdf»: Нет такого файла или каталога
0:00:00 [   0B/s] [<=>               

Ето какво изсира, не мога да разбера от къде се взема това usr/share/\n/dev/sdf
Трябва ми само /dev/sdf да излиза.

Но е доста тъпо.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: 4096bits в Mar 05, 2012, 12:15
Не съм от разбирачите, но с 'dd' не е ли бавничко? Ако iso-то е DVD?!


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 12:16
Не съм от разбирачите, но с 'dd' не е ли бавничко? Ако iso-то е DVD?!

То няма бързо копиране при бавна памет.

Мисля че открих проблема, след малко ще кача официалната версия!


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: laskov в Mar 05, 2012, 12:32
Не съм от разбирачите, но с 'dd' не е ли бавничко? Ако iso-то е DVD?!
Бързодействието на dd зависи и от параметъра bs=


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 12:40
http://www.calculate-linux.ru/blogs/ru/343/show

Ето и финалната версия. Периодично теглете наново програмката, за да я имате винаги актуална при евентуални промени от моя страна.

Смятам да подобрявам интерфейса но изисква време, така че търпение!
Надявам се да помогне на много хора при създаването на Boot USB Flash.

Тъй като често се пита "Как да си напраа флашката да боот..."


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 13:03
Не съм от разбирачите, но с 'dd' не е ли бавничко? Ако iso-то е DVD?!
Бързодействието на dd зависи и от параметъра bs=

Това за bs нещо не го схващам. Често го ползвам при създаване на файлове в диска. С dd if=/dev/zero of=/tmp/script bs=1k count=50M което създава 50 гигабайта файл. Но тук не знам каква точно ще е ролята му?!


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: laskov в Mar 05, 2012, 13:21
Цитат
dd if=/dev/sda of=/dev/sdb bs=1048576

Presto... The same backup that took 13h48m last night at an average throughput rate of 10.1mb/sec ran tonight in 2h15m at an average throughput of 62.1mb/sec. That's 1/6th the time of last night's run and 4% faster than my throughput 'SWAG'. Wow!
Източник: How to speed up dd ($2)
PS: Не казвам, че в твоя случай bs трябва да е толкова.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: laskov в Mar 05, 2012, 13:31
Ако искаш, може да ползваш и този метод ($2) :) за ускорение.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: evgeny81 в Mar 05, 2012, 14:21
Ето и преведен на Български вариант: :)

#!/bin/bash
#Автор: Росен Александров
#jabber - roko@jabber.calculate-linux.org
#e-mail - sandikata@yandex.ru
#irc - irc.freenode.net/ROKO__

# Променливи
XDIALOG=`find /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin -name Xdialog`
if [ -z "$XDIALOG" ]
then
  DIALOG="dialog"
else
  DIALOG="Xdialog"
fi

# Администратор
if [ `id -u` -ne 0 ]
then
 $DIALOG --title "Грешка!" --msgbox "Трябва да влезете като Администратор!" 0 0
 exit 1
fi

# DDFLASH 0.1
$DIALOG --title "DDFLASH 0.1" --yesno "Здравейте.\n
Това е тестова версия!\n
Използвайте на свой риск!\n
Ние не поемаме отговорност при загубени данни!\n
Автор: Росен Александров\n
Ако сте готови продължете?" 0 0

otwet=$?
if [ $otwet -ne 0 ]
then notify-send -t 10000 "Не се съгласихте да продължите.Програмата се затваря!"
exit 0
fi

$DIALOG --title "DDFLASH 0.1" --msgbox "Моля отключете всички USB устройства!" 0 0
dmesg -c 1> /dev/null
$DIALOG --title "DDFLASH 0.1" --msgbox "Поставете USB устройството което ще ползвате." 0 0
sleep 10
USB=`dmesg | grep removable | cut -d '[' -f 3 | cut -d ']' -f 1`
DEVICE=`for var in $USB; do echo "/dev/$var"; done`
set $DEVICE
usb=`$DIALOG --title "Изберете устройство." --radiolist "DDFLASH 0.1" 0 0 0 \
    :$1 "" off \
    :$2 "" off \
    :$3 "" off \
    :$4 "" off \
    :$5 "" off \
    :$6 "Тук не пипайте!" off 3>&1 1>&2 2>&3 | cut -c2-11`
[ -z "$usb" ] ;

# Образ
iso=`$DIALOG --title "DDFLASH 0.1 Изберете ISO образ? (ISO)" --fselect "/" 40 100 3>&1 1>&2 2>&3`
[ -z "$iso" ] ;

# Продължение
$DIALOG --title "DDFLASH 0.1" --clear \
    --yesno "Сигурни ли сте че искате да продължите?" 0 0 3

value=$?
#usb=$?
#iso=$?

echo "$usb"
echo "$iso"

case $value in
0) $DIALOG --no-buttons --infobox "Копиране ... Моля,почакайте ..." 0 0 ;
   umount "$usb" ; dd if="$iso" of="$usb"
;;

1) notify-send -t 10000 "Прекъсване на действието." ;
   exit 0
;;

255) notify-send -t 10000 "Действието прекратено." ;
    exit 0
;;

esac
$DIALOG --title "DDFLASH 0.1" --msgbox "Копирането е завършено." 0 0
exit 0


П.п.В Русия не съм бил от 27 Години може да съм го позабравил малко :)


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: bop_bop_mara в Mar 05, 2012, 14:42
Ето и преведен на Български вариант: :)

#!/bin/bash
#Автор: Росен Александров

Сложи и обяснение кой е преводачът, това също е вид авторско право (пък и да знаят хората към кого да се обръщат за въпроси и предложения по превода).

ROKO, някакъв лиценз избра ли му вече за тези, които биха решили да го модифицират, да речем?


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 14:48
Ето и преведен на Български вариант: :)

#!/bin/bash
#Автор: Росен Александров

Сложи и обяснение кой е преводачът, това също е вид авторско право (пък и да знаят хората към кого да се обръщат за въпроси и предложения по превода).

Колебанията ми са между BSD License и GPLv3. Но да направя последна справка :)
ROKO, някакъв лиценз избра ли му вече за тези, които биха решили да го модифицират, да речем?

Още мисля над кой лиценз да бъде.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 15:05
Така. От този момент нататък тази програма ще се разпространява според условията на GPLv3.
Тъй като BSD лиценза вече не защитава правата на автора (поне от това което прочетох за него.)

https://github.com/sandikata/ROKO__/commit/fe40d1fc0e36320b478824fb90e99c959e98ee8f

Код:
#!/bin/bash
#Автор: Росен Александров
#jabber - roko@jabber.calculate-linux.org
#e-mail - sandikata@yandex.ru
#irc - irc.freenode.net/ROKO__
#Лиценз: Эта программа защищена лицензией GPLv3!

# Переменные
XDIALOG=`find /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin -name Xdialog`
if [ -z "$XDIALOG" ]
then
  DIALOG="dialog"
else
  DIALOG="Xdialog"
fi

# Суперпользователь
if [ `id -u` -ne 0 ]
then
 $DIALOG --title "Ошибка!" --msgbox "Вы должны иметь привилегии суперпользователя!" 0 0
 exit 1
fi

# DDFLASH 0.1
$DIALOG --title "DDFLASH 0.1" --yesno "Добро пожаловать.\n
Это тест версия!\n
Используйте на свой страх и риск!\n
Мы не принимаем жалобы на потерю данных!\n
Автор: Росен Александров\n
Готовы ли вы продолжать?" 0 0

otwet=$?
if [ $otwet -ne 0 ]
then notify-send -t 10000 "Вы не согласились, чтобы продолжить. Программа закрывается!"
exit 0
fi

$DIALOG --title "DDFLASH 0.1" --msgbox "Пожалуйста, отключите все USB устройства!" 0 0
dmesg -c 1> /dev/null
$DIALOG --title "DDFLASH 0.1" --msgbox "Теперь подключите USB устройство, которое будет признано, это займет некоторое время." 0 0
sleep 10
USB=`dmesg | grep removable | cut -d '[' -f 3 | cut -d ']' -f 1`
DEVICE=`for var in $USB; do echo "/dev/$var"; done`
set $DEVICE
usb=`$DIALOG --title "Выберите устройство." --radiolist "DDFLASH 0.1" 0 0 0 \
:$1 "" off \
:$2 "" off \
:$3 "" off \
:$4 "" off \
:$5 "" off \
:$6 "Не трогайте здесь!" off 3>&1 1>&2 2>&3 | cut -c2-11`
[ -z "$usb" ] ;

# Образ
iso=`$DIALOG --title "DDFLASH 0.1 Выберите образ (ISO)" --fselect "/" 40 100 3>&1 1>&2 2>&3`
[ -z "$iso" ] ;

# Продолжать
$DIALOG --title "DDFLASH 0.1" --clear \
--yesno "Вы уверены, что хотите продолжить?" 0 0 3

value=$?
#usb=$?
#iso=$?

echo "$usb"
echo "$iso"

case $value in
0) $DIALOG --no-buttons --infobox "Копирование ... Пожалуйста, подождите ..." 0 0 ;
   umount "$usb" ; dd if="$iso" of="$usb"
;;

1) notify-send -t 10000 "Отмена нажатой." ;
   exit 0
;;

255) notify-send -t 10000 "Диалог был закрыт." ;
exit 0
;;

esac
$DIALOG --title "DDFLASH 0.1" --msgbox "Копирование завершено, или прекращено." 0 0
exit 0


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 15:06
Ето и преведен на Български вариант: :)

#!/bin/bash
#Автор: Росен Александров
#jabber - roko@jabber.calculate-linux.org
#e-mail - sandikata@yandex.ru
#irc - irc.freenode.net/ROKO__

# Променливи
XDIALOG=`find /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin -name Xdialog`
if [ -z "$XDIALOG" ]
then
  DIALOG="dialog"
else
  DIALOG="Xdialog"
fi

# Администратор
if [ `id -u` -ne 0 ]
then
 $DIALOG --title "Грешка!" --msgbox "Трябва да влезете като Администратор!" 0 0
 exit 1
fi

# DDFLASH 0.1
$DIALOG --title "DDFLASH 0.1" --yesno "Здравейте.\n
Това е тестова версия!\n
Използвайте на свой риск!\n
Ние не поемаме отговорност при загубени данни!\n
Автор: Росен Александров\n
Ако сте готови продължете?" 0 0

otwet=$?
if [ $otwet -ne 0 ]
then notify-send -t 10000 "Не се съгласихте да продължите.Програмата се затваря!"
exit 0
fi

$DIALOG --title "DDFLASH 0.1" --msgbox "Моля отключете всички USB устройства!" 0 0
dmesg -c 1> /dev/null
$DIALOG --title "DDFLASH 0.1" --msgbox "Поставете USB устройството което ще ползвате." 0 0
sleep 10
USB=`dmesg | grep removable | cut -d '[' -f 3 | cut -d ']' -f 1`
DEVICE=`for var in $USB; do echo "/dev/$var"; done`
set $DEVICE
usb=`$DIALOG --title "Изберете устройство." --radiolist "DDFLASH 0.1" 0 0 0 \
    :$1 "" off \
    :$2 "" off \
    :$3 "" off \
    :$4 "" off \
    :$5 "" off \
    :$6 "Тук не пипайте!" off 3>&1 1>&2 2>&3 | cut -c2-11`
[ -z "$usb" ] ;

# Образ
iso=`$DIALOG --title "DDFLASH 0.1 Изберете ISO образ? (ISO)" --fselect "/" 40 100 3>&1 1>&2 2>&3`
[ -z "$iso" ] ;

# Продължение
$DIALOG --title "DDFLASH 0.1" --clear \
    --yesno "Сигурни ли сте че искате да продължите?" 0 0 3

value=$?
#usb=$?
#iso=$?

echo "$usb"
echo "$iso"

case $value in
0) $DIALOG --no-buttons --infobox "Копиране ... Моля,почакайте ..." 0 0 ;
   umount "$usb" ; dd if="$iso" of="$usb"
;;

1) notify-send -t 10000 "Прекъсване на действието." ;
   exit 0
;;

255) notify-send -t 10000 "Действието прекратено." ;
    exit 0
;;

esac
$DIALOG --title "DDFLASH 0.1" --msgbox "Копирането е завършено." 0 0
exit 0


П.п.В Русия не съм бил от 27 Години може да съм го позабравил малко :)

ПС: При това положение, вече ще трябва да напишеш своето име под моето, лиценза както и приноса ти за програмата. И по възможност да се информираш какво позволява и какво забранява лиценза.

Но благодаря за съдействието.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: radoshow в Mar 05, 2012, 16:34
При мен не иска да работи.Копирах финалния код,но не става.Аз ли правя някъде грешка?Иначе като напиша в терминала:
Код
GeSHi (Bash):
  1. sudo dd if=~/Downloads/archlinux-2011.08.19-core-i686.iso of=/dev/sdc
Качва ISO-то на флашка и се зарежда без проблем.Пак направих видео да видиш какво се случва.
http://youtu.be/YMkPVYzShAA ($2)


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: evgeny81 в Mar 05, 2012, 19:43
Ето и последната версия преведена на Български:

#!/bin/bash
#Автор: Росен Александров
#jabber - roko@jabber.calculate-linux.org
#e-mail - sandikata@yandex.ru
#irc - irc.freenode.net/ROKO__
#Превод на Български: Евгений Симеонов
#e-mail - simeonov.evgeny@yandex.ru
#Лиценз: Тази програма е защитена от лиценза GPLv3!

# Променливи
DIALOG="Xdialog"
pn="calculate-usb-creator"

# Администратор
if [ `id -u` -ne 0 ];
then
gksu "${pn}" ;
exit 1
fi

# Calculate USB Creator 0.1
$DIALOG --title "Calculate USB Creator 0.1" --yesno "Добре дошли.\n
Това е тестова версия!\n
Използвайте на своя отговорност!\n
Ние не поемаме отговорност за загуба на данни!\n
Автор: Росен Александров\n
Готови ли сте да продължите?" 0 0

otwet=$?
if [ $otwet -ne 0 ]
then notify-send -t 10000 "Не сте съгласни да продължите. Програмата се затваря!"
exit 0
fi

# USB/ISO детектор
# Автор: Joern Lindau
# e-mail: joern.lindau@t-online.de
# Лиценз: GPL - 2
$DIALOG --title "Calculate USB Creator 0.1" --msgbox "Моля, отключете всички USB устройства!" 0 0
dmesg -c 1> /dev/null
$DIALOG --title "Calculate USB Creator 0.1" --msgbox "Поставете USB устройството което ще ползвате, това ще отнеме известно време." 0 0
sleep 10
USB=`dmesg | grep removable | cut -d '[' -f 3 | cut -d ']' -f 1`
DEVICE=`for var in $USB; do echo "/dev/$var"; done`
set $DEVICE
usb=`$DIALOG --title "Изберете устройство." --radiolist "Calculate USB Creator 0.1" 0 0 0 \
:$1 "" off \
:$2 "" off \
:$3 "" off \
:$4 "" off \
:$5 "" off \
:$6 "Не пипайте тук!" off 3>&1 1>&2 2>&3 | cut -c2-11`
[ -z "$usb" ] ;
# USB/ISO Детектор

# Образ
iso=`$DIALOG --title "Calculate USB Creator 0.1 Изберете образ (ISO)" --fselect "/" 40 100 3>&1 1>&2 2>&3`
[ -z "$iso" ] ;


# Продължение
$DIALOG --title "Calculate USB Creator 0.1" --msgbox "Вие избрахте устройство $usb" 0 0 0
$DIALOG --title "Calculate USB Creator 0.1" --msgbox "Вие избрахте образ $iso" 0 0 0

$DIALOG --title "Calculate USB Creator 0.1" --clear \
--yesno "Сигурни ли сте че искате да продължите?" 0 0 0

value=$?

case $value in
0) $DIALOG --no-buttons --infobox "Копиране ... Моля, Почакайте ..." 0 0 ;
   umount "$usb" ; dd if="$iso" of="$usb"
;;

1) notify-send -t 10000 "Прекъсване на действието." ;
   exit 0
;;

255) notify-send -t 10000 "Действието беше прекратено." ;
exit 0
;;

esac
$DIALOG --title "Calculate USB Creator 0.1" --msgbox "Копирането завършено, или прекратено." 0 0
exit 0



Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 19:52
При мен не иска да работи.Копирах финалния код,но не става.Аз ли правя някъде грешка?Иначе като напиша в терминала:
Код
GeSHi (Bash):
  1. sudo dd if=~/Downloads/archlinux-2011.08.19-core-i686.iso of=/dev/sdc
Качва ISO-то на флашка и се зарежда без проблем.Пак направих видео да видиш какво се случва.
http://youtu.be/YMkPVYzShAA ($2)

По някаква причина не е забелязал УСБ-то ти...


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: victim70 в Mar 05, 2012, 21:20
Приятелю, обърни се за превод към братята руснаци. Това дето си го писал на руски е безсмислица, или аз незнам руски.
Цитат
Это тест версия!\n
Используйте на свой страх и риск!\n
Мы не принимаем жалобы на потерю данных!\n
Автор: Росен Александров\n
Готовы ли вы продолжать?" 0 0

Превода (близкият) на това звучи горе-долу така:
Използвайте със собствен страх и риск. Ние не приемаме жалби за загуба на данни. Готови ли вие да продължавате.
Според мене ще се разбере но е абсолютно неправилно.

По близко и правилно е:
Цитат
Вы пользуете тестовую версию программы.
Автор не принимает ответност для возможная потери данных
Вы захотили продолжить?
В близък превод:
Вие използвате тестова версия на програмата. Автора не е отговорен за потенциална загуба на данни. Бихте ли желали да продължите?

Гугъла работи отвратително на руски и френски. Не го ползвай за фрази и ако не си го учил, разчитай само на обратният превод руски-български.
Наистина превежда сентенцията клакто си я написал, но не е правилно.

Все пак се консултирай с братушките, не съм ползвал езика активно от 15 години.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 05, 2012, 22:13
Приятелю, обърни се за превод към братята руснаци. Това дето си го писал на руски е безсмислица, или аз незнам руски.
Цитат
Это тест версия!\n
Используйте на свой страх и риск!\n
Мы не принимаем жалобы на потерю данных!\n
Автор: Росен Александров\n
Готовы ли вы продолжать?" 0 0

Превода (близкият) на това звучи горе-долу така:
Използвайте със собствен страх и риск. Ние не приемаме жалби за загуба на данни. Готови ли вие да продължавате.
Според мене ще се разбере но е абсолютно неправилно.

По близко и правилно е:
Цитат
Вы пользуете тестовую версию программы.
Автор не принимает ответност для возможная потери данных
Вы захотили продолжить?
В близък превод:
Вие използвате тестова версия на програмата. Автора не е отговорен за потенциална загуба на данни. Бихте ли желали да продължите?

Гугъла работи отвратително на руски и френски. Не го ползвай за фрази и ако не си го учил, разчитай само на обратният превод руски-български.
Наистина превежда сентенцията клакто си я написал, но не е правилно.

Все пак се консултирай с братушките, не съм ползвал езика активно от 15 години.


Не ми трябва преводач за да говоря на родния си език :>.

На свой страх и риск, означава на своя отговорност в превод на български.

Просто Русия е огромна и навсякъде в Русия има разлики в писмения и устния диалект. Но е напълно правилен текста.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: b2l в Mar 06, 2012, 11:46
Искам да попитам какъв е смисъла от  този код:
Код
GeSHi (Bash):
  1. usb=`$DIALOG --title "Изберете устройство." --radiolist "Calculate USB Creator 0.1" 0 0 0 \
  2. :$1 "" off \
  3. :$2 "" off \
  4. :$3 "" off \
  5. :$4 "" off \
  6. :$5 "" off \
  7. :$6 "Не пипайте тук!" off 3>&1 1>&2 2>&3 | cut -c2-11`
  8. [ -z "$usb" ] ;
  9. # USB/ISO Детектор

Защото виждам, че менюто което се появява е неактивно...


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 06, 2012, 13:48
Искам да попитам какъв е смисъла от  този код:
Код
GeSHi (Bash):
  1. usb=`$DIALOG --title "Изберете устройство." --radiolist "Calculate USB Creator 0.1" 0 0 0 \
  2. :$1 "" off \
  3. :$2 "" off \
  4. :$3 "" off \
  5. :$4 "" off \
  6. :$5 "" off \
  7. :$6 "Не пипайте тук!" off 3>&1 1>&2 2>&3 | cut -c2-11`
  8. [ -z "$usb" ] ;
  9. # USB/ISO Детектор

Защото виждам, че менюто което се появява е неактивно...

На този въпрос и аз не мога да отговоря, но работи.
Просто тази част от програмата ми е взаимствана от Joern Lindau (Toorox Linux Developer)
С off са защото трябва потребителя да избере кое устройство да изтрие, а не всички открити от програмата.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: bop_bop_mara в Mar 06, 2012, 15:37
Просто тази част от програмата ми е взаимствана от Joern Lindau (Toorox Linux Developer)
Това не трябва ли да се опоменава, поне според повечето лицензи?


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: evgeny81 в Mar 06, 2012, 16:56
Всъщност в сегашния вариант е написано от кой е взаимствал и т.н.
Погледнете на предната страница още вчера е поправено поста ми с превода


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: v_badev в Mar 06, 2012, 17:13
Освен ако USB/ISO детектора на Joern Lindau не е лицензиран под „GPL2 или следваща версия“ не може да бъде част от GPL3 програма. За който може да чете на английски ($2) или на руски ($2).

Не можах да намеря оригиналният код за 2-те минути, които отделих за търсене, така че може и да не съм прав.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: evgeny81 в Mar 06, 2012, 17:24
Освен ако USB/ISO детектора на Joern Lindau не е лицензиран под „GPL2 или следваща версия“ не може да бъде част от GPL3 програма. За който може да чете на английски ($2) или на руски ($2).

Не можах да намеря оригиналният код за 2-те минути, които отделих за търсене, така че може и да не съм прав.

Виж тук

http://www.toorox.de/toorox_downloads/toorox-iso2stick


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: v_badev в Mar 06, 2012, 18:08
Значи лицензите са несъвместими и скрипта на AMD не може да се бъде лицензиран под GPL3. В линка, който си дал изрично пише само GPL2.

@AMD - Не е добра идея да лицензираш нещо под лиценз, който не си чел. Вероятно все някой го е превел на руски.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: bop_bop_mara в Mar 06, 2012, 18:58
Всъщност в сегашния вариант е написано от кой е взаимствал и т.н.
Погледнете на предната страница още вчера е поправено поста ми с превода
Да, видях, извинявам се за недоглеждането. Не се съмнявам, че ще оправите и въпроса с различните версии на GPL.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 06, 2012, 19:11
Значи лицензите са несъвместими и скрипта на AMD не може да се бъде лицензиран под GPL3. В линка, който си дал изрично пише само GPL2.

@AMD - Не е добра идея да лицензираш нещо под лиценз, който не си чел. Вероятно все някой го е превел на руски.

Четох го внимателно. И не случайно го избрах.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: bop_bop_mara в Mar 06, 2012, 19:19
Да разбираме, че твоята програма остава GPL3, въпреки че използвания код на Joern Lindau е само GPL2 (а не GPL2 и слдваща версия)?


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 06, 2012, 21:26
Пратете имейл до автора и да хване адвокат на свободна практика, да съди росен за авторски права...  :P

:> Йорн не би ме съдил, в приятелски отношения сме.
Лиценза ще го оправя. Не крада труда на хората. Има клаузи в GPLv3 които ми харесват, но кражбата на собственост не ми харесва, за това че програмата ми изцяло минава на същия лиценз.

https://github.com/sandikata/ROKO__/commit/1303dadc5db2ccbd9a00e131add37eb13d98f28a
https://github.com/sandikata/ROKO__/blob/master/calculate-usb-creator

Както казах одържах си на думата


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: gat3way в Mar 06, 2012, 21:51
Не искам да се меся, но си има guidelines за това как една програма се пуска с GPL лиценз. Друг е въпроса, че ако трябва да се следват в случая, съотношението eLoC/LoC много вероятно ще падне под 50%.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: lunarvalley в Mar 06, 2012, 22:24
ако е GPL не трябва ли и копие от лиценза да се включи?
http://www.gnu.org/licenses/gpl-2.0.html

Цитат
1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: gat3way в Mar 06, 2012, 23:30
Да, много е лоша Америка :)

И така, какъв последно лиценз избра?


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: gat3way в Mar 07, 2012, 01:07
А, не така. GPL софтуерът е свободен и свободата специално там означава отговорности и ограничения. Ама не може така просто да напишеш license:gpl2. Това ако брадатите гурута от GNU го видят ще ти се нахокат, скарат и наплюят. Ако наистина искаш да пишеш свободен софтуер, слагаш wtf license и не се занимаваш. Другото е претенциозна бюрокрация и ако съвсем съзнателно искаш да преебеш всички останали, трябва да го направиш с класа. Което включва задължителната част с глупавите license хедъри. Това е положението.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 07, 2012, 11:22
Да, много е лоша Америка :)

И така, какъв последно лиценз избра?

Не видя ли в commit-a какво съм променил ?


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: b2l в Mar 07, 2012, 11:39
Знам какво прави кода който копирах, но не знам как точно е извлечен в xdialog --radiolist.

Абе аз от вчера си мисля, ама нямам време да пиша - твоята програмка няма ли да тръгне и без този код? То в него всичко е disable (поне така като гледам)...


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 07, 2012, 12:07
Предлагам ти след като си го лицензирал, следващата стъпка е да направиш един хубав сайт за този невероятен скрипт и да сложиш форум в него който твойте почитатели да дискутират своите впечатления.  :D  :D

Може да напишеш и ентерпрайз версия  :)



Не платени версии няма да се пускат. Това е за свободно ползване. Но все пак, не искам някой да ми краде труда.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 07, 2012, 12:10
Знам какво прави кода който копирах, но не знам как точно е извлечен в xdialog --radiolist.

Абе аз от вчера си мисля, ама нямам време да пиша - твоята програмка няма ли да тръгне и без този код? То в него всичко е disable (поне така като гледам)...

Явно не си чел документацията на Xdialog...

--radiolist опцията го изисква, да е така. Освен ако не искаш някой определен ред да е отметнат по подразбиране, ако на всички се даде "on" познай какво става, колкото USB Флашки и Карти памет имаш ще са отметнати за изтриване. И за това са изключени за да може потребителя да направи своя избор.


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: v_badev в Mar 07, 2012, 12:15
Нали осъзнаваш че лицензите сами по себе си не могат да спрат някой да не ползва твоят код. Ако някой ти „краде труда“, можеш да го спреш само като го съдиш.

П.П.
Звучиш като Мария Илиева за АКТА :)


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: b2l в Mar 07, 2012, 12:17
Знам какво прави кода който копирах, но не знам как точно е извлечен в xdialog --radiolist.

Абе аз от вчера си мисля, ама нямам време да пиша - твоята програмка няма ли да тръгне и без този код? То в него всичко е disable (поне така като гледам)...

Явно не си чел документацията на Xdialog...

--radiolist опцията го изисква, да е така. Освен ако не искаш някой определен ред да е отметнат по подразбиране, ако на всички се даде "on" познай какво става, колкото USB Флашки и Карти памет имаш ще са отметнати за изтриване. И за това са изключени за да може потребителя да направи своя избор.

Искаш да ми кажеш, че ако не изскача този прозорец програмата няма да може да работи така ли?


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: AMD в Mar 07, 2012, 12:43
Знам какво прави кода който копирах, но не знам как точно е извлечен в xdialog --radiolist.

Абе аз от вчера си мисля, ама нямам време да пиша - твоята програмка няма ли да тръгне и без този код? То в него всичко е disable (поне така като гледам)...

Явно не си чел документацията на Xdialog...

--radiolist опцията го изисква, да е така. Освен ако не искаш някой определен ред да е отметнат по подразбиране, ако на всички се даде "on" познай какво става, колкото USB Флашки и Карти памет имаш ще са отметнати за изтриване. И за това са изключени за да може потребителя да направи своя избор.

Искаш да ми кажеш, че ако не изскача този прозорец програмата няма да може да работи така ли?

Ще си работи, но така е по-разбираемо за тези които не знаят как.

За мен инак е все едно, най-лесно ми е да напиша dd if=/dev/sdX of=/dev/sdX ..

Но дали един новак ще знае дали /dev/sda му е флашката или /dev/sd[bcdef] ?


Титла: Re: Инструмент за записване на ISO върху USB FLASH (Calculate USB Creator 0.1)
Публикувано от: bop_bop_mara в Mar 07, 2012, 17:12
//полу-офтопик
Флеймът от темата беше отделен и пратен в Кошчето. Съжалявам, ако покрай него е заминала и някаква важна информация, авторите ѝ могат да я напишат отново, спазвайки Правилата на форума.

Всякакъв нов флейм ще последва съдбата на досегашния. Концентрирайте се върху техническата част на нещата.