UFFICIALE L'OT di Linux e altri OS

Pubblicità
finito lo script di aggiornamento pacchetti aur installati. una cosa semplice che metto in appindicator. va lanciato da terminale a es. tramite il comando:
Codice:
$ gnome-terminal --hide-menubar --title="AUR update" -e 'sh -c "sh /home/$USER/aur_update.sh"'
Codice:
#!/bin/bash

#script per aggiornare pacchetti installati, by rebellion
#nome dello script: aur_update.sh
#da lanciare da terminale tramite comando : gnome-terminal --hide-menubar --title="AUR update" -e 'sh -c "sh /home/$USER/aur_update.sh"'

if [[ $(readlink -f /proc/$(ps -o ppid:1= -p $$)/exe) != $(readlink -f "$SHELL") ]] ; then notify-send "applicazione da lanciare tramite terminale"
else
package_path="1"
while [ "$package_path" != "" ] ; do
 dir=$(find /home/$USER -type d -name 'AUR')
 package_path=$(zenity --file-selection --file-filter="*.tar.gz" --filename=$dir/ --title="Seleziona pacchetto.tar.gz AUR da aggiornare" 2>/dev/null)
 if [ "$package_path" != "" ] ; then
  package_name_tar=${package_path##*/}
  lungh_package_name_tar=$((${#package_name_tar}+1))
  package_dir=${package_path:0: -$lungh_package_name_tar}
  package_name=${package_name_tar:0: -7}
  package_dir_del=$package_dir"/"$package_name
  package_path_old=$package_path"_old"
  package_dir_del_old=$package_dir_del"_old"
  search=$(find $package_dir -type d -name "$package_name")
  if [ "$search" = "" ] ; then echo "Cartella del pacchetto "$package_name" scompattato assente in "$package_dir": aggiornamento fallito." ; read -p "premi invio per continuare.." ; clear
  else
   read -p "Confermi l'aggiornamento di $package_name? s/n" -n 1 reply
   if [ $reply = "s" ] ; then
    echo -e "Aggiornamento "$package_name" in corso..\nbackup "$package_dir_del"---> fatto\nbackup "$package_name_tar"---> fatto"
    mv $package_path $package_path_old
    mv $package_dir_del $package_dir_del_old
    wget -P $package_dir https://aur.archlinux.org/cgit/aur.git/snapshot/$package_name_tar
    tar -xvzf $package_path -C $package_dir
    cd $package_dir_del
    if makepkg ; then
     sudo pacman -U $package_dir_del/*.pkg.tar.xz
     rm $package_path_old && rm -r $package_dir_del_old
     echo -e "\n$package_name aggiornato, premi invio per continuare." && read
    else
     rm -r $package_dir_del && mv $package_dir_del_old $package_dir_del
     rm $package_path && mv $package_path_old $package_path
     echo -e "\naggiornamento $package_name fallito.\nripristinato il backup del pacchetto.\npremi invio per continuare." && read
    fi
   else
    clear
   fi
  fi
 fi
done
fi

exit 0
 
Ultima modifica:
finito lo script di aggiornamento pacchetti aur installati. una cosa semplice che metto in appindicator. va lanciato da terminale a es. tramite il comando:
Codice:
$ gnome-terminal --hide-menubar --title="AUR update" -e 'sh -c "sh /home/$USER/aur_update.sh"'
Codice:
#!/bin/bash

#script per aggiornare pacchetti installati, by rebellion
#nome dello script: aur_update.sh
#da lanciare da terminale tramite comando : gnome-terminal --hide-menubar --title="AUR update" -e 'sh -c "sh /home/$USER/aur_update.sh"'

if [[ $(readlink -f /proc/$(ps -o ppid:1= -p $$)/exe) != $(readlink -f "$SHELL") ]] ; then notify-send "applicazione da lanciare tramite terminale"
else
package_path="1"
while [ "$package_path" != "" ] ; do
 dir=$(find /home/$USER -type d -name 'AUR')
 package_path=$(zenity --file-selection --file-filter="*.tar.gz" --filename=$dir/ --title="Seleziona pacchetto.tar.gz AUR da aggiornare" 2>/dev/null)
 if [ "$package_path" != "" ] ; then
  package_name_tar=${package_path##*/}
  lungh_package_name_tar=$((${#package_name_tar}+1))
  package_dir=${package_path:0: -$lungh_package_name_tar}
  package_name=${package_name_tar:0: -7}
  package_dir_del=$package_dir"/"$package_name
  package_path_old=$package_path"_old"
  package_dir_del_old=$package_dir_del"_old"
  search=$(find $package_dir -type d -name "$package_name")
  if [ "$search" = "" ] ; then echo "Cartella del pacchetto "$package_name" scompattato assente in "$package_dir": aggiornamento fallito." ; read -p "premi invio per continuare.." ; clear
  else
   read -p "Confermi l'aggiornamento di $package_name? s/n" -n 1 reply
   if [ $reply = "s" ] ; then
    echo -e "Aggiornamento "$package_name" in corso..\nbackup "$package_dir_del"---> fatto\nbackup "$package_name_tar"---> fatto"
    mv $package_path $package_path_old
    mv $package_dir_del $package_dir_del_old
    wget -P $package_dir https://aur.archlinux.org/cgit/aur.git/snapshot/$package_name_tar
    tar -xvzf $package_path -C $package_dir
    cd $package_dir_del
    if makepkg ; then
     sudo pacman -U $package_dir_del/*.pkg.tar.xz
     rm $package_path_old && rm -r $package_dir_del_old
     echo -e "\n$package_name aggiornato, premi invio per continuare." && read
    else
     rm -r $package_dir_del && mv $package_dir_del_old $package_dir_del
     rm $package_path && mv $package_path_old $package_path
     echo -e "\naggiornamento $package_name fallito.\nripristinato il backup del pacchetto.\npremi invio per continuare." && read
    fi
   else
    clear
   fi
  fi
 fi
done
fi

exit 0
appena posso lo provo :)
 
anzi, un dell dd a null o un mkfs è ancora meglio

Naaah, i tool linux sono più svegli dell'utilizzatore, spesso :asd:

Codice:
ntp-server[0]:~$ df -h
File system     Dim. Usati Dispon. Uso% Montato su
udev            110M     0    110M   0% /dev
tmpfs            25M  2,9M     22M  12% /run
/dev/sdc1       8,0G  1,4G    6,0G  19% /
tmpfs           121M   72K    120M   1% /dev/shm
tmpfs           5,0M     0    5,0M   0% /run/lock
tmpfs           121M     0    121M   0% /sys/fs/cgroup
/dev/sda1       990M   86M    838M  10% /boot
tmpfs            25M     0     25M   0% /run/user/0


ntp-server[0]:~$ mkfs.ext4 /dev/sdc1
mke2fs 1.43.4 (31-Jan-2017)
/dev/sdc1 contiene un file system btrfs con etichetta "ROOT-FS"
Proceed anyway? (y,N) n


ntp-server[0]:~$ dd if=/dev/null of=/dev/sdc1 count=1024 bs=1k
0+0 record dentro
0+0 record fuori
0 bytes copied, 0,000808161 s, 0,0 kB/s


p.s. comunque avevo fatto uno snapshot della VM prima di provare, non si sa mai :asd:
 
Naaah, i tool linux sono più svegli dell'utilizzatore, spesso :asd:

Codice:
ntp-server[0]:~$ df -h
File system     Dim. Usati Dispon. Uso% Montato su
udev            110M     0    110M   0% /dev
tmpfs            25M  2,9M     22M  12% /run
/dev/sdc1       8,0G  1,4G    6,0G  19% /
tmpfs           121M   72K    120M   1% /dev/shm
tmpfs           5,0M     0    5,0M   0% /run/lock
tmpfs           121M     0    121M   0% /sys/fs/cgroup
/dev/sda1       990M   86M    838M  10% /boot
tmpfs            25M     0     25M   0% /run/user/0


ntp-server[0]:~$ mkfs.ext4 /dev/sdc1
mke2fs 1.43.4 (31-Jan-2017)
/dev/sdc1 contiene un file system btrfs con etichetta "ROOT-FS"
Proceed anyway? (y,N) n


ntp-server[0]:~$ dd if=/dev/null of=/dev/sdc1 count=1024 bs=1k
0+0 record dentro
0+0 record fuori
0 bytes copied, 0,000808161 s, 0,0 kB/s


p.s. comunque avevo fatto uno snapshot della VM prima di provare, non si sa mai :asd:
snapshot restore e vuallllà? non c'è più gusto a sfasciare il sistema con btrfs..:asd:
@e_ale92 quale altro scriptino in bash/python mi potrebbe fare comodo? lo sviluppatore che è in me è già disoccupato..:D
 
snapshot restore e vuallllà? non c'è più gusto a sfasciare il sistema con btrfs..:asd:
@e_ale92 quale altro scriptino in bash/python mi potrebbe fare comodo? lo sviluppatore che è in me è già disoccupato..:D
beh dipende da quello che fai. se brasi la partizione o il punto di mount che contiene gli snapshots, sei gambe all'aria lo stesso :asd:

ahahahah addirittura?
anyway non saprei, sai? non mi viene nulla in mente :boh:
 
Pubblicità
Pubblicità
Indietro
Top