Advertisement
Guest User

u-mount

a guest
Mar 9th, 2013
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.31 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. # Monta y desmonta ^-^ lo necesario para crear un live iso de gentoo
  4.  
  5. if [[ $EUID -ne 0 ]]; then
  6. echo "Este script solo lo puede usar root" 1>&2
  7. echo "Usa: sudo bash <$0>"
  8. exit 1
  9. fi
  10.  
  11. function usage() {
  12.  
  13. uso="Uso:\n\nMontar: sudo bash $0 -m\nDesmontar: sudo bash $0 -d"
  14. echo -e $uso
  15.  
  16. }
  17.  
  18. if [ $# -eq 1 ]; then
  19.  
  20. distfiles="usr/portage/distfiles"
  21. my_dir="/home/usuario" # Directorio de las sources,edita esta parte
  22.  
  23. if [ -d $my_dir ]; then
  24.  
  25. case $1 in
  26.  
  27. -m)
  28.  
  29. echo "Cambiando directorio..."
  30.  
  31. sleep 1; cd "$my_dir"
  32.  
  33. cp /etc/resolv.conf "etc/"
  34.  
  35. if [ -d $distfiles ]; then
  36.  
  37. echo -n ""
  38.  
  39. else
  40.  
  41. echo "Creando distfiles..."
  42.  
  43. mkdir "usr/portage/distfiles"
  44.  
  45. fi
  46.  
  47. declare -a puntos=('proc' 'sys' 'dev' 'usr/portage/distfiles' ); i=0
  48.  
  49. while [ $i -lt ${#puntos[*]} ]; do
  50.  
  51. echo "Montando ${puntos[$i]}..."
  52.  
  53. sleep 1;
  54.  
  55. mount -o bind /${puntos[$i]} ${puntos[$i]}/
  56.  
  57. if [ $? -eq 0 ]; then
  58. let i=i+1
  59. continue;
  60. else
  61. exit 1;
  62. fi
  63.  
  64. done
  65.  
  66. echo "Chrooting..."
  67.  
  68. sleep 2;
  69.  
  70. chroot . /bin/bash --login;;
  71.  
  72. -d)
  73.  
  74. cd "$my_dir"
  75.  
  76. echo "Desmontando..."
  77.  
  78. sleep 1;
  79.  
  80. umount proc sys dev usr/portage/distfiles
  81.  
  82. case $? in
  83. 0)
  84. echo "Listo :D"
  85. sleep 1; clear ;;
  86. *)
  87. echo " " ;;
  88. esac ;;
  89.  
  90. *)
  91. usage;;
  92. esac
  93.  
  94. else
  95. echo "No existe $my_dir"
  96. exit 1;
  97. fi
  98.  
  99. else
  100. usage
  101. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement