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

Που εισαι αφιλοτιμο desktop?[Sabayon4.2]


Gi0

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

firewalker για καντο λιγο πιο λιανα,πως το χρησιμοποιω το παραπανω?Γιατι μαλλον απαντας στην επομενη απορια μου,πως θα ενσωματωσω με τον πιο απλο τροπο την λειτουργια αυτη στο sabayon.Με πιο τροπο μπορω να το προσθεσω μονιμα στο packet manager?

 

 

Ένα πρόχειρο script με όνομα SizeCheck θα μπορούσε να είναι το παρακάτω.

 

Έστω ότι ο δίσκος του / (ή εκεί που κυρίως περνάει o packet manager τα πακέτα) είναι ο /dev/sda1. Η εντολή του packet manager έστω ότι είναι pacman (Arch Linux).

 

>
#!/bin/bash

Parameter=$@

#Packet manager command
Command=pacman

MainDisk=/dev/sda1

SizeLeft=`df | grep $MainDisk|awk '{print $4}'`

echo $SizeLeft

#Check if disk free space is less than 2 Gbytes.

if [ $SizeLeft -le  2097152 ]; then
echo	
echo "It seems that you run out of space!"
       echo "$(df -h| grep $MainDisk|awk '{print $4}') of free space are available."
read -p "Are you sure you want to continue installing packets (yes/no)? " UsrResp
echo
if [ ! $UsrResp = yes ]; then	
	echo "Terminated by user."
	exit 1
fi	
fi

$Command $Parameter

exit 0

 

Αντιγράφω το script στο /usr/bin/.

 

Δηλώνω ένα alias στο .bashrc του χρήστη μου: alias pacman=SizeCheck. Έτσι κάθε φορά που καλώ pacman -Syu στην ουσία καλώ SizeCheck -Syu που εκτελεί τον έλεγχο και μετά ανάλογα με τις συνθήκες εκτελεί pacman -Syu.

 

Θα ήταν πιό εύκολο να γίνει με διανομές debian based γιατί το aptitude σου λέει πόσος χώρος θα χρειαστεί μετά το extraction των πακέτων.

 

Και πάλι όμως δεν θα είναι και τόσο απλός ο έλεγχος αφού δεν υπολογίζει τα αρχεία που πιθανών αντικαθίστανται (νέες εκδόσεις πακέτων που είναι ήδη εγκατεστημένα) ή την cache του packet manager. Π.χ. μπορεί να έχεις 1 Giga ελεύθερα και τα πακέτα που θέλεις να περάσεις να είναι 2 Giga ασυμπίεστα αλλά να περνάνε άνετα αφού στην ουσία ο packet manager σβήνει και γράφει. Στο τέλος μπορεί να έχει πάλι ~1 Giga ελεύθερο.

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

  • Απαντ. 45
  • Δημ.
  • Τελ. απάντηση

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.


  • Δημιουργία νέου...