Advertisement
Guest User

Untitled

a guest
Aug 22nd, 2011
141
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 9.75 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # remastersys-gui script to make an installable livecd/dvd from an (XK)Ubuntu installed
  4. # and customized system
  5. #
  6. #
  7. # Created by Tony "Fragadelic" Brijeski
  8. #
  9. # Copyright 2007,2008 Under the GNU GPL2 License
  10. #
  11. # Created October 28th, 2007,2008
  12. #
  13. # Version 2.0.13
  14. #
  15. # keeping version number in sync with main remastersys script
  16. #
  17. #
  18. # This script requires either zenity or kdialog to run
  19. #
  20. testzenity=`which zenity`
  21. testkdialog=`which kdialog`
  22.  
  23. if [ "$testzenity" = "" -o "testkdialog" = "" ]; then
  24. echo " None are present - proceeding to install the right one"
  25. if [ "`cat /etc/X11/default-display-manager`" = "/usr/bin/kdm" ]; then
  26. apt-get -y -q install kdebase-bin
  27. else
  28. apt-get -y -q install zenity
  29. fi
  30. fi
  31.  
  32.  
  33.  
  34. if [ "$testzenity" != "" ]; then
  35. DIALOG="`which zenity` --width=640 --height=400"
  36. TITLE="--title="
  37. TEXT="--text="
  38. ENTRY="--entry "
  39. ENTRYTEXT="--entry-text "
  40. MENU="--list --column=Pick --column=Info"
  41. YESNO="--question "
  42. MSGBOX="--info "
  43.  
  44. fi
  45.  
  46. if [ "$testkdialog" != "" ]; then
  47. DIALOG="`which kdialog` --geometry=640x400"
  48. TITLE="--title "
  49. TEXT=""
  50. ENTRY="--inputbox "
  51. ENTRYTEXT=""
  52. MENU="--menu "
  53. YESNO="--yesno "
  54. MSGBOX="--msgbox "
  55.  
  56. fi
  57.  
  58. testroot="`whoami`"
  59.  
  60. if [ "$testroot" != "root" ]; then
  61. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"This must be run with root privileges."
  62. exit 1
  63. fi
  64.  
  65. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"É necessário fechar todas as janelas e compartilhamentos de rede enquanto executa o Remastersys Backup. Por favor, faça isso agora e clique OK quando você estiver pronto para continuar."
  66.  
  67. mainmenu () {
  68.  
  69. CHOICE=`$DIALOG $TITLE"Remastersys Backup" $MENU $TEXT"Por favor selecione a opção desejada" Backup "Backup Completo do Sistema incluindo dados do usuário" Dist "Faça uma cópia para distribuir para seus amigos - será criado cdfs e iso" Distcdfs "Faça uma cópia somente do cdfs - bom se você deseja adicionar arquivos para o cd" Distiso "Faça uma cópia somente iso - cdfs já deve estar completo" Modify "Modificar o arquivo de configurações do remastersys" Clean "Limpar arquivos temporários" Info "Sobre Remastersys Backup" Quit "Sair do Remastersys Backup"`
  70.  
  71. if [ "$CHOICE" = "Backup" ]; then
  72. backupmenu
  73. elif [ "$CHOICE" = "Dist" ]; then
  74. distmenu
  75. elif [ "$CHOICE" = "Distcdfs" ]; then
  76. distcdfsmenu
  77. elif [ "$CHOICE" = "Distiso" ]; then
  78. distisomenu
  79. elif [ "$CHOICE" = "Modify" ]; then
  80. modifymenu
  81. elif [ "$CHOICE" = "Clean" ]; then
  82. cleanmenu
  83. elif [ "$CHOICE" = "Info" ]; then
  84. . /etc/remastersys/remastersys.version
  85. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Remastersys Backup é a interface gráfica do remastersys que é um utilitário de linha de comando para Ubuntu ou derivados que cria livecd/dvd or faz um backup completo do sistema incluindo os dados do usuário. Esta é a versão $REMASTERSYSVERSION. Remastersys Backup e remastersys foram criados por Tony Brijeski."
  86. mainmenu
  87. else
  88. exit 0
  89. fi
  90.  
  91. }
  92.  
  93. backupmenu () {
  94. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Você selecionou o modo Backup. Não interrompa este processo. Clique OK para iniciar o processo de Backup LiveCD/DVD."
  95. xterm -e "remastersys backup"
  96. . /etc/remastersys.conf
  97.  
  98. SQUASHFSSIZE=`ls -s $WORKDIR/remastersys/ISOTMP/casper/filesystem.squashfs | awk -F " " '{print $1}'`
  99. if [ "$SQUASHFSSIZE" -gt "3999999" ]; then
  100. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"O arquivo comprimido é maior que o permitido para a especificação iso9660. Você deve tentar reduzir a quantidade de dados que está fazendo cópia e tentar novamente."
  101. exit 1
  102. fi
  103. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Os arquivos $CUSTOMISO e $CUSTOMISO.md5 estão prontos em $WORKDIR/remastersys. É recomendado testar em uma máquina virtual ou em um cd/dvd regravável para ter certeza que funcionou como desejado. Clique em OK para voltar para o menu principal."
  104. mainmenu
  105. exit 0
  106. }
  107.  
  108. distmenu () {
  109. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Você selecionou o modo Dist. Clique OK para iniciar o processo de LiveCD/DVD para distribuir."
  110. xterm -e "remastersys dist"
  111. . /etc/remastersys.conf
  112.  
  113. SQUASHFSSIZE=`ls -s $WORKDIR/remastersys/ISOTMP/casper/filesystem.squashfs | awk -F " " '{print $1}'`
  114. if [ "$SQUASHFSSIZE" -gt "3999999" ]; then
  115. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"O arquivo comprimido é maior que o permitido para a especificação iso9660. Você deve tentar reduzir a quantidade de dados que está fazendo cópia e tentar novamente."
  116. exit 1
  117. fi
  118. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Os arquivos $CUSTOMISO e $CUSTOMISO.md5 estão prontos em $WORKDIR/remastersys. É recomendado testar em uma máquina virtual ou em um cd/dvd regravável para ter certeza que funcionou como desejado. Clique em OK para voltar para o menu principal."
  119. mainmenu
  120. exit 0
  121. }
  122.  
  123. distcdfsmenu () {
  124. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Você selecionou o modo Dist CDFS. Clique OK para iniciar o processo de LiveCD/DVD com somente cdfs."
  125. xterm -e "remastersys dist cdfs"
  126. . /etc/remastersys.conf
  127.  
  128. SQUASHFSSIZE=`ls -s $WORKDIR/remastersys/ISOTMP/casper/filesystem.squashfs | awk -F " " '{print $1}'`
  129. if [ "$SQUASHFSSIZE" -gt "3999999" ]; then
  130. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"O arquivo comprimido é maior que o permitido para a especificação iso9660. Você deve tentar reduzir a quantidade de dados que está fazendo cópia e tentar novamente."
  131. exit 1
  132. fi
  133.  
  134. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"O cdfs está pronto em $WORKDIR/remastersys. Você pode agora adicionar arquivos ao cd/dvd e então executar a opção somente iso quando estiver pronto. Clique em OK para voltar para o menu principal."
  135. mainmenu
  136. exit 0
  137. }
  138.  
  139. distisomenu () {
  140. . /etc/remastersys.conf
  141. if [ -f "$WORKDIR/remastersys/ISOTMP/casper/filesystem.squashfs" ]; then
  142. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Você selecionou o modo Dist ISO. Clique OK para criar o arquivo iso."
  143. xterm -e "remastersys dist iso"
  144. . /etc/remastersys.conf
  145. SQUASHFSSIZE=`ls -s $WORKDIR/remastersys/ISOTMP/casper/filesystem.squashfs | awk -F " " '{print $1}'`
  146. if [ "$SQUASHFSSIZE" -gt "3999999" ]; then
  147. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"O arquivo comprimido é maior que o permitido para a especificação iso9660. Você deve tentar reduzir a quantidade de dados que está fazendo cópia e tentar novamente."
  148. exit 1
  149. fi
  150. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Os arquivos $CUSTOMISO e $CUSTOMISO.md5 estão prontos em $WORKDIR/remastersys. É recomendado testar em uma máquina virtual ou em um cd/dvd regravável para ter certeza que funcionou como desejado. Clique em OK para voltar para o menu principal."
  151. mainmenu
  152. exit 0
  153. else
  154. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"O cdfs não existe. Clique OK para voltar para o menu principal e tente o modo Dist ou o modo Dist CDFS novamente."
  155. mainmenu
  156. exit0
  157. fi
  158. }
  159.  
  160. modifymenu () {
  161.  
  162. if [ -f /etc/remastersys.conf ]; then
  163. . /etc/remastersys.conf
  164. fi
  165.  
  166. if [ "$CDBOOTTYPE" = "" ]; then
  167. CDBOOTTYPE="ISOLINUX"
  168. fi
  169.  
  170. MODIFY=`$DIALOG $TITLE"Remastersys Backup" $MENU $TEXT"Por favor selecione a opção que deseja mudar." a "Username = $LIVEUSER" b "Title = $LIVECDLABEL" c "Filename = $CUSTOMISO" d "Working Directory = $WORKDIR" e "Files to Exclude = $EXCLUDES" f "URL for USB Creator = $LIVECDURL" q "Ir para o meu principal"`
  171.  
  172. if [ "$MODIFY" = "a" ]; then
  173. LIVEUSER=`$DIALOG $TITLE"Remastersys Backup" $ENTRY $TEXT"Entre novo nome de usuário - em letras minúsculas" $ENTRYTEXT"$LIVEUSER"`
  174. if [ "$LIVEUSER" = "" ]; then
  175. LIVEUSER="custom"
  176. fi
  177. #make sure live user is all lowercase
  178. LIVEUSER="`echo $LIVEUSER | awk '{print tolower ($0)}'`"
  179. elif [ "$MODIFY" = "b" ]; then
  180. LIVECDLABEL=`$DIALOG $TITLE"Remastersys Backup" $ENTRY $TEXT"Entre novo título para LiveCD/DVD" $ENTRYTEXT"$LIVECDLABEL"`
  181. if [ "$LIVECDLABEL" = "" ]; then
  182. LIVECDLABEL="Custom Live CD"
  183. fi
  184. elif [ "$MODIFY" = "c" ]; then
  185. CUSTOMISO=`$DIALOG $TITLE"Remastersys Backup" $ENTRY $TEXT"Entre novo nome do arquivo" $ENTRYTEXT"$CUSTOMISO"`
  186. if [ "$CUSTOMISO" = "" ]; then
  187. CUSTOMISO="custom-live.iso"
  188. fi
  189. elif [ "$MODIFY" = "d" ]; then
  190. WORKDIR=`$DIALOG $TITLE"Remastersys Backup" $ENTRY $TEXT"Entre novo diretório de trabalho" $ENTRYTEXT"$WORKDIR"`
  191. if [ "$WORKDIR" = "" ]; then
  192. WORKDIR="/home/remastersys"
  193. fi
  194. elif [ "$MODIFY" = "e" ]; then
  195. if [ "$EXCLUDES" = "" ]; then
  196. EXCLUDES=`$DIALOG $TITLE"Remastersys Backup" $ENTRY $TEXT"Entre arquivos para excluir separados por um espaço"`
  197. else
  198. EXCLUDES=`$DIALOG $TITLE"Remastersys Backup" $ENTRY $TEXT"Entre arquivos para excluir separados por um espaço" $ENTRYTEXT"$EXCLUDES"`
  199. fi
  200. elif [ "$MODIFY" = "f" ]; then
  201. LIVECDURL=`$DIALOG $TITLE"Remastersys Backup" $ENTRY $TEXT"Entre nova URL para USB Creator" $ENTRYTEXT"$LIVECDURL"`
  202. if [ "$LIVECDURL" = "" ]; then
  203. LIVECDURL="http://www.geekconnection.org/remastersys"
  204. fi
  205.  
  206. else
  207.  
  208. mainmenu
  209. exit 0
  210.  
  211. fi
  212.  
  213. cat > /etc/remastersys.conf <<FOO
  214. #Remastersys Global Configuration File
  215.  
  216.  
  217. # This is the temporary working directory and won't be included on the cd/dvd
  218. WORKDIR="$WORKDIR"
  219.  
  220.  
  221. # Here you can add any other files or directories to be excluded from the live filesystem
  222. # Separate each entry with a space
  223. EXCLUDES="$EXCLUDES"
  224.  
  225.  
  226. # Here you can change the livecd/dvd username
  227. LIVEUSER="$LIVEUSER"
  228.  
  229.  
  230. # Here you can change the name of the livecd/dvd label
  231. LIVECDLABEL="$LIVECDLABEL"
  232.  
  233.  
  234. # Here you can change the name of the ISO file that is created
  235. CUSTOMISO="$CUSTOMISO"
  236.  
  237.  
  238. # Here you can change the url for the usb-creator info
  239. LIVECDURL="$LIVECDURL"
  240.  
  241. FOO
  242.  
  243. modifymenu
  244.  
  245. }
  246.  
  247. cleanmenu () {
  248. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Isto removerá todos os arquivos do diretório temporário. Clique OK para continuar."
  249. xterm -e "remastersys clean"
  250. $DIALOG $TITLE"Remastersys Backup" $MSGBOX $TEXT"Pronto. Clique OK para voltar para o menu principal."
  251. mainmenu
  252. exit 0
  253. }
  254.  
  255.  
  256. mainmenu
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement