mps-silme-etki

This commit is contained in:
milisbir 2018-06-30 06:49:15 +02:00
parent ecf5b6bb7a
commit a084af1087
1 changed files with 42 additions and 24 deletions

60
bin/mps
View File

@ -1,6 +1,6 @@
#!/bin/bash
versiyon="1.2.0 Milis Paket Sistemi"
versiyon="1.2.1 Milis Paket Sistemi"
iletisim="milisarge@gmail.com"
betikad=${0##*/}
@ -280,10 +280,10 @@ icerik_ekle(){
}
paket_sil(){
local paket kkont sil_onay oto_silme
paket="$1"
local paket kkont sil_onay oto_silme _silinecekler
[ -z $1 ] && hata_olustu "_paket_adi_gerekli" || paket=$1
tersbag_goster="hayir"
_silinecekler=/tmp/$paket.sil
cikti="--renkli"
if [ "$2" ]; then
if [ "$2" == "--normal" ];then
@ -308,21 +308,33 @@ paket_sil(){
kkont=`kurulu_kontrol "$1"`
if [ "$kkont" = "kurulu" ];then
if [ -f "$VT/$paket/kurulan" ];then
#dizin koruma
etkilenen_kurtar $1 $cikti
cat $VT/$paket/kurulan | cut -d '>' -f2 > /tmp/$paket.sil
#eski dizin koruma
#etkilenen_kurtar $1 $cikti
cat $VT/$paket/kurulan | cut -d '>' -f2 > ${_silinecekler}
if [ "$tersbag_goster" = "evet" ];then
$_yaz_uyari "ters bagimliliklar"
$_yaz_uyari "------------------"
ters_bagimli_bilgi "$paket"
$_yaz_uyari "------------------"
fi
$_yaz_uyari "etkilenen dosyalar"
$_yaz_uyari "------------------"
silme_etkilenen_kontrol /tmp/$paket.sil $paket
$_yaz_uyari "------------------"
#fi
# eski silme etkilenme kurtarma
#$_yaz_uyari "etkilenen dosyalar"
#$_yaz_uyari "------------------"
#silme_etkilenen_kontrol /tmp/$paket.sil $paket
#$_yaz_uyari "------------------"
# ------------
# yeni silme etkilenen kurtarma
silme_etkilenme_tespit $paket
# silme listesi güncelleme - dizin koruma
# bir paket silinirken dizin yapısındaki diğer paketlerin dosyaları korunacak.
if [ -f /tmp/${paket}_kd.liste ];then
for _kurtar in $(cat /tmp/${paket}_kd.liste);do
echo "$(grep -v "'${_kurtar}'" ${_silinecekler})" > ${_silinecekler}
done
$_yaz_bilgi "etkilenen konumlar korundu."
#else
#$_yaz_bilgi "kurtarılacak dosya yok."
fi
if [ "$oto_silme" = "evet" ];then
sil_onay="e"
else
@ -338,14 +350,14 @@ paket_sil(){
if [ "$sil_onay" = "e" ];then
_konum=$(talimat_bul $paket)
[ -f "$_konum/$paket.kos-sil" ] && bash "$_konum/$paket.kos-sil"
xargs rm -r -f < /tmp/$paket.sil &&
xargs rm -r -f < ${_silinecekler} &&
rm -r -f "$VT/$paket" &&
[ -f "$_konum/$paket.sil-kos" ] && bash "$_konum/$paket.sil-kos"
$_yaz_tm $paket" $_paket_silindi"
loglama "$paket $_paket_silindi"
rm -f /tmp/$paket.sil
rm -f ${_silinecekler}
else
rm -f /tmp/$paket.sil
rm -f ${_silinecekler}
fi
else
@ -1847,14 +1859,14 @@ log_analiz(){
fi
}
silme_etkilenme(){
silme_etkilenme_tespit(){
local _paket _kliste _eliste dizin
local _satir _edosya _ipaket _ustdizin
[ -z $1 ] && hata_olustu "_paket_adi_gerekli" || _paket=$1
_kliste=`mktemp`
_eliste=`mktemp`
[ -d /tmp/${_paket}_kurtarma ] && rm -rf /tmp/${_paket}_kurtarma
mkdir -p /tmp/${_paket}_kurtarma
#[ -d /tmp/${_paket}_kurtarma ] && rm -rf /tmp/${_paket}_kurtarma
#mkdir -p /tmp/${_paket}_kurtarma
[ -f /tmp/${_paket}_kd.liste ] && rm -rf /tmp/${_paket}_kd.liste
[ -f /tmp/${_paket}_ep.liste ] && rm -rf /tmp/${_paket}_ep.liste
@ -1870,7 +1882,7 @@ silme_etkilenme(){
_edosya=$(echo ${_isatir} | cut -d ':' -f2)
_ipaket=$(basename $(dirname ${_esatir}))
_ustdizin=$(dirname ${_edosya//[\']/})
mkdir -p /tmp/${_paket}_kurtarma/${_ustdizin}
#mkdir -p /tmp/${_paket}_kurtarma/${_ustdizin}
[ ! -f ${_edosya//[\']/} ] && echo "${_edosya//[\']/} dosyası eksik!"
# eksik dosyalar onaylı yekur yapılacak.
# /var/lib/pkg/kurtarma altına kopayalama seçimli olacak.
@ -1880,11 +1892,17 @@ silme_etkilenme(){
done
fi
done
if [ -s ${_kliste} ];then
sort -u ${_kliste} > /tmp/${_paket}_kd.liste
$_yaz "etkilenen konumlar"
cat /tmp/${_paket}_kd.liste
fi
if [ -s ${_eliste} ];then
sort -u ${_eliste} > /tmp/${_paket}_ep.liste
rm -rf ${_eliste} ${_kliste}
$_yaz "etkilenen paketler"
cat /tmp/${_paket}_ep.liste
fi
rm -rf ${_eliste} ${_kliste}
}
etkilenen_kurtar(){