Samstag, 26. Mai 2012, 03:51

Du bist nicht angemeldet.



kls

hat hier 2. Wohnsitz.

  • »kls« ist der Autor dieses Themas

Beiträge: 149

Ubuntu: 8.04

Kernel: UStudio 2.6.27-rt

Desktop: KDE

Architektur: 32-bit

  • Private Nachricht senden

1

Samstag, 31. März 2007, 09:10

/var aufräumen?

Hallo Leute.

Mit der Zeit kann /var ganz schön anwachsen.
Bei kleinen Partitionen kann das dann sehr ärgerlich/nervig werden.

Hat jemand vielleicht ein Script parat, um dort mal kräftig aufzuräumen?

Viele Gruesse
\Klaus

kls

hat hier 2. Wohnsitz.

  • »kls« ist der Autor dieses Themas

Beiträge: 149

Ubuntu: 8.04

Kernel: UStudio 2.6.27-rt

Desktop: KDE

Architektur: 32-bit

  • Private Nachricht senden

2

Samstag, 31. März 2007, 17:52

Hi Leute.

Ich habe nun versucht , nach dem umwerfenden Feedback auf meinen Thread, ;) mein
eigens /var Cleanup Script zu schreiben. Hatte eine schöne Basis bei Knoppix gefunden, davon ist allerdings nicht viel übriggebliegen.

Was haltet hier hiervon:

Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
#!/bin/bash
# 
# written by KLS 03-31-2007 (based on Knoppix CLEAN.sh)
#
# This script cleans up /var 
#
# Tested on Ubuntu 6.10 - 2.6.20-rt3
#
# Revison PA1 03-31-2007
#

#-----------------------------------------------------------------------
# Check root
#-----------------------------------------------------------------------

checkroot () {
if [ "$UID" -ne 0  ]
 then
 echo "Must be root to run this script..."
 exit $E_NOTROOT
fi  
}

#-----------------------------------------------------------------------
# Setenv and stop logging
#-----------------------------------------------------------------------

stopproc () {
umask 022
/etc/init.d/apmd stop > /dev/null 2>&1
/etc/init.d/networking stop > /dev/null 2>&1
/etc/init.d/cron stop > /dev/null 2>&1
/etc/init.d/klogd stop > /dev/null 2>&1
/etc/init.d/sysklogd stop > /dev/null 2>&1
/etc/init.d/acpid stop > /dev/null 2>&1
}

#-----------------------------------------------------------------------
# restart logging
#-----------------------------------------------------------------------

restartproc () {
/etc/init.d/apmd start > /dev/null 2>&1
/etc/init.d/networking start > /dev/null 2>&1
/etc/init.d/cron start > /dev/null 2>&1
/etc/init.d/klogd start > /dev/null 2>&1
/etc/init.d/sysklogd start > /dev/null 2>&1
/etc/init.d/acpid start > /dev/null 2>&1
}

#-----------------------------------------------------------------------
# remove only "temporary" or saved files in the given directories
#-----------------------------------------------------------------------
nuke(){
for i in `find $@ -name \*.gz -o -name \*.bz2 -o -name \*.0 -o -name \*.0.log -o -name browse.dat -o -name \*.\*pk 2>/dev/null`; do
rm -f "$i"
done
}

#-----------------------------------------------------------------------
# set all files in the given directories to a length of zero
#-----------------------------------------------------------------------
zero(){
for i in `find $@ -type f -size +0 -not -name \*.ini 2>/dev/null`; do
cat /dev/null>"$i"
done
}

#-----------------------------------------------------------------------
# main
#-----------------------------------------------------------------------

checkroot
stopproc

rm -rf /tmp/* /var/tmp/* /var/tmp/.??* /var/backups/* \
       /var/run/screen/* /var/spool/squid/*
nuke /var/log /var/cache
zero /var/local /var/log /var/spool /var/mail \
     /var/cache/man /var/lib/wine \
     /var/lib/nfs /var/lib/xkb

apt-get clean

restartproc

echo "Done..."

Unter var liegen auch noch Pakete als .deb's archiviert. Kann ich diese
wohl löschen?

Ich übernehme keine Garantie, dass das Script 100%ig funktioniert und ggfs. nicht zuviel
Daten löscht. Also Test auf eigene Gefahr! Mein Selbstversuch scheint allerdings funktioniert zu haben. ;)


Kommentare erwünscht.

Gruss
Klaus

Dieser Beitrag wurde bereits 4 mal editiert, zuletzt von »kls« (1. April 2007, 18:35)


basslord

Ubuntufreund

Beiträge: 2 671

Ubuntu: 12.04

Kernel: 3.2.0-24-generic

Desktop: KDE

Architektur: 64-bit

Danksagungen: 1 / 1

  • Private Nachricht senden

3

Sonntag, 1. April 2007, 15:35

Sieht doch soweit gut aus. Bringt dann wohl ein paar Megs freien Speicher. /var/tmp und /tmp kann man auch so bei jedem reboot leeren lassen. Ist immer eine gute Idee.
Unter ausufernden Logfiles leidet sollte man in der Regel aber nicht leiden. Das hat /var bei mir jedenfalls noch nie gesprengt.

Die debs werden auch durch ein apt-get clean aus dem cache entfernt. Können also raus.

Gruß
Rodge

PS: Packe das Script der Übersichtlichkeit wegen dennoch mal in Code-Tags ;)
"Ohne Musik wäre das Leben ein Irrtum." - Friedrich Nietzsche

kls

hat hier 2. Wohnsitz.

  • »kls« ist der Autor dieses Themas

Beiträge: 149

Ubuntu: 8.04

Kernel: UStudio 2.6.27-rt

Desktop: KDE

Architektur: 32-bit

  • Private Nachricht senden

4

Sonntag, 1. April 2007, 18:43

Hallo Rodge.

Habe das apt-get clean ins Script, der Vollständigkeit halber oben eingefuegt.
Danke für den Tip.

Hintergrund des Scriptes war ja unter anderem, dass ich das /var ins RAM packe
um Plattenzugriffe zu vermeiden. Da zählt dann jedes eingesparte Byte.


Gruss
\Klaus