Προς το περιεχόμενο

Να χρησιμοποιήσω το larch ή υπάρχει κάτι καλυτερο;


mask2011

Προτεινόμενες αναρτήσεις

>sudo pacman -S archboot
Password: 
resolving dependencies...
warning: cannot resolve "capi4k-utils>=050718-8", a dependency of "archboot"
warning: cannot resolve "bittorrent>=5.2.2-4", a dependency of "archboot"
:: The following package cannot be upgraded due to unresolvable dependencies:
     archboot

Do you want to skip the above package for this upgrade? [y/N]

 

Τι εννοεί ο ποιητής;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πλεον το κανω με tar.

 

Εχω μια εγκατασταση οπως την θελω στο vbox.

 

Εχω γραψει ενα απλο script που μου κανει tar ολο το συστημα και το αποθηκευει σε εναν φακελο με ονομα "την ημερομηνια δημιουργιας του tar" και ενα log , στον Downloads φακελο μου:

 

 

>#!/bin/bash
rm /var/log/pacman.log
localepurge
echo "Making /backups directory"
cd /
mkdir backups
cd backups
echo ------------------------

echo "Creating log file"
touch /backups/log
echo ------------------------

echo "Unmounting gvfs"
umount /home/babis/.gvfs
echo ------------------------

#echo "Cleaning from previous folders"
#rm -r /backups

sleep 1
echo "Creating tar..."
tar -cvpf /backups/fullbackup.tar --directory=/ --exclude=dev/* --exclude=proc/* --exclude=sys/* --exclude=boot/grub/* --exclude=media/* --exclude=tmp/* --exclude=mnt/* --exclude=home/babis/.gvfs --exclude=root/.gvfs  --exclude=backups . >> /backups/log
echo ------------------------

sleep 2
echo "Moving tar"
mkdir /home/babis/Downloads/"`date +%A-%d-%m-%Y`"
mv /backups/fullbackup.tar /home/babis/Downloads/"`date +%A-%d-%m-%Y`"/fullbackup.tar
mv /backups/log /home/babis/Downloads/"`date +%A-%d-%m-%Y`"/log
echo ------------------------

cd /
sleep 1
echo "Cleaning up"
rm -r /backups
echo ------------------------

echo "Setting permissions"
chmod a+rw /home/babis/Downloads/"`date +%A-%d-%m-%Y`"/fullbackup.tar
chmod a+rw /home/babis/Downloads/"`date +%A-%d-%m-%Y`"/log
chmod a+rw /home/babis/Downloads/"`date +%A-%d-%m-%Y`"
echo ------------------------

echo Done. Tar image and log saved in /home/babis/Downloads/"`date +%A-%d-%m-%Y`".

sleep 1000

 

 

Και εχω γραψει εναν απλο "installer" με zenity που με ρωταει για τα partitions, κανει extract, εγκαθιστα και ενημερωνει grub και τελος φτιαχνει το fstab με UUIDS:

 

 

>#!/bin/bash

rm -r /media/koko


input_variable=$(find /dev -mindepth 1 -maxdepth 1  -name "*[sh]d[a-z][0-9]"  -printf 'FALSE\0%p\0' | xargs -0 zenity --width=500 --height=300 --text "Select target partition" --list --checklist --multiple --column  ' ' --column 'Partitions'); echo $input_variable

mkdir /media/koko

input_variable2=$(zenity --width=500 --height=300  --list  --text "Filesystem (for fstab)" --radiolist  --column "Filesystems" --column "list"  TRUE ext2 FALSE ext3 FALSE ext4 FALSE btrfs); echo $input_variable2

input_variable3=$(find /dev -mindepth 1 -maxdepth 1  -name "*[sh]d[a-z][0-9]"  -printf 'FALSE\0%p\0' | xargs -0 zenity --width=500 --height=300 --text "Select swap partition (for fstab)" --list --checklist --multiple --column  ' ' --column 'Partitions'); echo $input_variable3

input_variable1=$(find /dev -mindepth 1 -maxdepth 1  -name "*[sh]d[a-z]"  -printf 'FALSE\0%p\0' | xargs -0 zenity --width=500 --height=300 --text "Where to install grub" --list --checklist --multiple --column ' ' --column 'Hard Drives'); echo $input_variable1


mount $input_variable /media/koko

zenity --question --title='Continue?' --text='Press "Yes" when ready, or "No" to cancel operation.' || exit


(
       echo "5" ; sleep 1
       echo "# Starting up" ; sleep 1



echo "10" ; sleep 1
       echo "# Extracting..." ; sleep 1
cd ~
tar -C /media/koko  -xvpf   fullbackup.tar


echo "50" ; sleep 1
       echo "# Mounting sys, proc, dev" ; sleep 1
mount --bind /dev /media/koko/dev
mount -t proc /proc /media/koko/proc
mount -t sysfs /sys /media/koko/sys
cp arch.jpg  /media/koko/boot/grub

echo "70" ; sleep 1
       echo "# Installing and updating grub on mbr" ; sleep 1
chroot /media/koko grub-install $input_variable1
chroot /media/koko grub-mkconfig -o /boot/grub/grub.cfg


echo "80" ; sleep 1
       echo "# Generating fstab..." ; sleep 1
rm /media/koko/etc/fstab
cp -p /media/koko/home/babis/Files/Doc/fstab /media/koko/etc/fstab
echo "$input_variable    /      $input_variable2    defaults           0 0" >> /media/koko/etc/fstab

echo "$input_variable3   swap   swap                defaults           0 0" >> /media/koko/etc/fstab

echo -e "\033[1;31mConverting to UUID:\033[m"

sed -n 's|^/dev/\([sh]d[a-z][0-9]\).*|\1|p' </media/koko/etc/fstab >/media/koko/etc/fstab2

while read LINE; do   
   UUID=`ls -l /dev/disk/by-uuid | grep "$LINE" | sed -n 's/^.* \([^ ]*\) -> .*$/\1/p'`
   sed -i "s|^/dev/${LINE}|UUID=${UUID}|" /media/koko/etc/fstab
done </media/koko/etc/fstab2

rm /media/koko/etc/fstab2



echo "90" ; sleep 1
       echo "# Unmounting" ; sleep 1
cd ~
umount /media/koko/dev
umount /media/koko/proc
umount /media/koko/sys
umount $input_variable

echo "100" ; sleep 1
       echo "# Done. Reboot your system." ; sleep 1 
rm -r /media/koko
) |
zenity --width=500 --height=300 --progress \
         --title="Installing..." \
         --percentage=0

       if [ "$?" = -1 ] ; then
               zenity  --error \
                 --text="Canceled."
       fi

 

 

Tελος εχω φτιαξει ενα debian τελειως minimal live iso με remastersys που περιλαμβανει:

 

openbox

gparted για να φτιαχνω τα partitions

το tar

τον "installer"

 

To archboot φτιαχνει live iso απο το υπαρχον συστημα?

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

....

To archboot φτιαχνει live iso απο το υπαρχον συστημα?

 

αν το κάνεις σε chroot φτιάχνει νομίζω ενημερωμένο iso

και αν το κάνεις κανονικά φτιάχνει το υπάρχων σύστημα σου η κάπως έτσι αν έχω καταλάβει σωστά

πάντως ναι φτιάχνει το υπάρχων με κάποια επιλογή

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημοσ. (επεξεργασμένο)

@tritonas00

 

Είσαι θεός...!!!!!!!!! Μου επιτρέπεις να το χρησιμοποιήσω κ να σε πρήξω ( :P ) με τις noobικες ερωτήσεις μου;;;;;

 

Υ.Γ. Μπορώ να το χρησιμοποιήσω ή πρέπει να εγκαταστήσω κάτι;

 

EDIT: Εκτός του ότι πρέπει να αλλάξω τις διαδρομες στα scripts...

Επεξ/σία από mask2011
Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Ελευθερα, καντο οτι θες.

 

Μονο zenity χρειαζεσαι να εγκαταστησεις.

 

Το localepurge αν θες το βγαζεις.

 

Επισης ο "installer" καπου θα δεις οτι αντιγραφεις ενα fstab και μετα γραφει τις αλλαγες πανω σε αυτο.

 

Αυτο που αντιγραφει ειναι αδειο, δηλαδη:

 

># 
# /etc/fstab: static file system information
#
# <file system>        <dir>         <type>    <options>          <dump> <pass>
devpts                 /dev/pts      devpts    defaults            0      0
shm                    /dev/shm      tmpfs     nodev,nosuid        0      0

 

και μετα προσθετει τις αλλαγες.

 

Ο "installer" ζηταει μονο 2 partitions για την εγκατασταση (/ και swap) οποτε μπορεις να τον τροποποιησεις αν θες κατι παραπανω.

 

ζηταει to filesystem(ext2 etx3 etx4 btrfs) που εβαλες στο / για να το γραψει στο fstab

 

και τελος ζηταει τον mbr (sda sdb sdc - οτι υπαρχει στο συστημα κλπ) για να βαλει τον grub2

 

Δες το προσεκτικα, Κανε τις απαραιτητες αλλαγες ωστε να το προσαρμοσεις στις αναγκες σου.

 

απλο bash ειναι , θα βγαλεις ακρη.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

@tritonas

 

Σε ευχαριστώ. Θα το δοκιμάσω. Δεν πειράζει που δεν καταλαβαίνω και πολλά. Ευκαιρία να μάθω. Θα γράψω αποτελέσματα.

 

Πειράζει που χρησιμοποιώ τον grub legacy;

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πλεον το κανω με tar.

 

Εχω μια εγκατασταση οπως την θελω στο vbox.

 

Εχω γραψει ενα απλο script που μου κανει tar ολο το συστημα και το αποθηκευει σε εναν φακελο με ονομα "την ημερομηνια δημιουργιας του tar" και ενα log , στον Downloads φακελο μου:

 

 

>#!/bin/bash
rm /var/log/pacman.log
localepurge
echo "Making /backups directory"
cd /
mkdir backups
cd backups
echo ------------------------

echo "Creating log file"
touch /backups/log
echo ------------------------

echo "Unmounting gvfs"
umount /home/babis/.gvfs
echo ------------------------

#echo "Cleaning from previous folders"
#rm -r /backups

sleep 1
echo "Creating tar..."
tar -cvpf /backups/fullbackup.tar --directory=/ --exclude=dev/* --exclude=proc/* --exclude=sys/* --exclude=boot/grub/* --exclude=media/* --exclude=tmp/* --exclude=mnt/* --exclude=home/babis/.gvfs --exclude=root/.gvfs  --exclude=backups . >> /backups/log
echo ------------------------

sleep 2
echo "Moving tar"
mkdir /home/babis/Downloads/"`date +%A-%d-%m-%Y`"
mv /backups/fullbackup.tar /home/babis/Downloads/"`date +%A-%d-%m-%Y`"/fullbackup.tar
mv /backups/log /home/babis/Downloads/"`date +%A-%d-%m-%Y`"/log
echo ------------------------

cd /
sleep 1
echo "Cleaning up"
rm -r /backups
echo ------------------------

echo "Setting permissions"
chmod a+rw /home/babis/Downloads/"`date +%A-%d-%m-%Y`"/fullbackup.tar
chmod a+rw /home/babis/Downloads/"`date +%A-%d-%m-%Y`"/log
chmod a+rw /home/babis/Downloads/"`date +%A-%d-%m-%Y`"
echo ------------------------

echo Done. Tar image and log saved in /home/babis/Downloads/"`date +%A-%d-%m-%Y`".

sleep 1000

 

 

Και εχω γραψει εναν απλο "installer" με zenity που με ρωταει για τα partitions, κανει extract, εγκαθιστα και ενημερωνει grub και τελος φτιαχνει το fstab με UUIDS:

 

 

>#!/bin/bash

rm -r /media/koko


input_variable=$(find /dev -mindepth 1 -maxdepth 1  -name "*[sh]d[a-z][0-9]"  -printf 'FALSE\0%p\0' | xargs -0 zenity --width=500 --height=300 --text "Select target partition" --list --checklist --multiple --column  ' ' --column 'Partitions'); echo $input_variable

mkdir /media/koko

input_variable2=$(zenity --width=500 --height=300  --list  --text "Filesystem (for fstab)" --radiolist  --column "Filesystems" --column "list"  TRUE ext2 FALSE ext3 FALSE ext4 FALSE btrfs); echo $input_variable2

input_variable3=$(find /dev -mindepth 1 -maxdepth 1  -name "*[sh]d[a-z][0-9]"  -printf 'FALSE\0%p\0' | xargs -0 zenity --width=500 --height=300 --text "Select swap partition (for fstab)" --list --checklist --multiple --column  ' ' --column 'Partitions'); echo $input_variable3

input_variable1=$(find /dev -mindepth 1 -maxdepth 1  -name "*[sh]d[a-z]"  -printf 'FALSE\0%p\0' | xargs -0 zenity --width=500 --height=300 --text "Where to install grub" --list --checklist --multiple --column ' ' --column 'Hard Drives'); echo $input_variable1


mount $input_variable /media/koko

zenity --question --title='Continue?' --text='Press "Yes" when ready, or "No" to cancel operation.' || exit


(
       echo "5" ; sleep 1
       echo "# Starting up" ; sleep 1



echo "10" ; sleep 1
       echo "# Extracting..." ; sleep 1
cd ~
tar -C /media/koko  -xvpf   fullbackup.tar


echo "50" ; sleep 1
       echo "# Mounting sys, proc, dev" ; sleep 1
mount --bind /dev /media/koko/dev
mount -t proc /proc /media/koko/proc
mount -t sysfs /sys /media/koko/sys
cp arch.jpg  /media/koko/boot/grub

echo "70" ; sleep 1
       echo "# Installing and updating grub on mbr" ; sleep 1
chroot /media/koko grub-install $input_variable1
chroot /media/koko grub-mkconfig -o /boot/grub/grub.cfg


echo "80" ; sleep 1
       echo "# Generating fstab..." ; sleep 1
rm /media/koko/etc/fstab
cp -p /media/koko/home/babis/Files/Doc/fstab /media/koko/etc/fstab
echo "$input_variable    /      $input_variable2    defaults       	0 0" >> /media/koko/etc/fstab

echo "$input_variable3   swap   swap                defaults       	0 0" >> /media/koko/etc/fstab

echo -e "\033[1;31mConverting to UUID:\033[m"

sed -n 's|^/dev/\([sh]d[a-z][0-9]\).*|\1|p' </media/koko/etc/fstab >/media/koko/etc/fstab2

while read LINE; do   
   UUID=`ls -l /dev/disk/by-uuid | grep "$LINE" | sed -n 's/^.* \([^ ]*\) -> .*$/\1/p'`
   sed -i "s|^/dev/${LINE}|UUID=${UUID}|" /media/koko/etc/fstab
done </media/koko/etc/fstab2

rm /media/koko/etc/fstab2



echo "90" ; sleep 1
       echo "# Unmounting" ; sleep 1
cd ~
umount /media/koko/dev
umount /media/koko/proc
umount /media/koko/sys
umount $input_variable

echo "100" ; sleep 1
       echo "# Done. Reboot your system." ; sleep 1 
rm -r /media/koko
) |
zenity --width=500 --height=300 --progress \
         --title="Installing..." \
         --percentage=0

       if [ "$?" = -1 ] ; then
               zenity  --error \
                 --text="Canceled."
       fi

 

 

Tελος εχω φτιαξει ενα debian τελειως minimal live iso με remastersys που περιλαμβανει:

 

openbox

gparted για να φτιαχνω τα partitions

το tar

τον "installer"

 

To archboot φτιαχνει live iso απο το υπαρχον συστημα?

 

Αντί για το static home folder "babis" άλλαξε το καλύτερα σε $(whoami) για να είναι global ;)

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Το εφτιαξα με βαση τα δικα μου shit :P

 

Με λιγες αλλαγες μπορει να γινει global.

 

Επισης εδω τρεχω μονο 2 partitions , ενα / και ενα swap, και grub2

 

Οποιος θελει μπορει να το παρει να κανει αλλαγες και να το κανει πιο γενικο - οπως και να δουλευει ανεξαρτητως διανομης.

 

Απλο bash ειναι.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Πειράζει που χρησιμοποιώ τον grub legacy;

 

Δεν το εχω δοκιμασει με grub-legacy.

 

Δες στο wiki πως εγκαθισταται και ενημερωνεται ο grub-legacy στον mbr και κανε τις αλλαγες στο script.

Συνδέστε για να σχολιάσετε
Κοινοποίηση σε άλλες σελίδες

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...