# [skrypt] Niepotrzebne pliki etc.

## KARQL

Witam.

Dzisiaj przegladajac forum przypadkiem znalazlem: https://forums.gentoo.org/viewtopic.php?p=1988006#1988006

Pewnie nie zainteresowal bym sie tym gdyby mnie o to znajomy nie pytal kilka dni wczesniej.

Po przygladnieciu sie temu skryptowi mozna stwierdzic, ze nie jest dobrze rozwiazany bo przy sprawdzaniu kazdego pliku z etc mieli cale /var/db/pkg. Kiedy tych plikow jest np. 1500 to sprawdzanie zajmie troche czasu. Do tego pokaze duzo plikow ktore sa potrzebne jak passwd, shadow itd. poniewaz ich nie ma w  /var/db/pkg.

Napisalem prosty skrypt dzialajacy na powyzszej zasadzie z tym, ze /var/db/pkg parsuje tylko raz. Dzieki temu dziala duzo szybciej. Problem plikow passwd, shadow itd. rozwiazalem dodajac liste plikow /etc z czystego stage.

Moj skrypt nie jest do konca idealny tez zdarzy mu sie pokazac pliki ktore sa potrzebne, jednak stwierdzielm, ze moze sie komus przyda gdy np. dawno usuwal jakis program i nie usunal plikow konfiguracyjnych.

Skrypt znajduje sie tutaj: http://karql.tartar.ath.cx/code/python/niepotrzebne_etc_gentoo.tar.bz2

Jak ktos ma jakies uwagi, albo poropozycje prosze je napisac.

Pozdrawiam.

----------

## przemos

```
Traceback (most recent call last):

  File "./niepotrzebne_etc_gentoo.py", line 23, in ?

    etc_files.findall('/etc')

  File "/usr/lib/python2.4/distutils/filelist.py", line 48, in findall

    self.allfiles = findall(dir)

  File "/usr/lib/python2.4/distutils/filelist.py", line 298, in findall

    stat = os.stat(fullname)

OSError: [Errno 2] No such file or directory: '/etc/resolv.conf.sv'
```

 :Question: 

----------

## quosek

Nie nalezy uzywac tego skryptu - jego dzialanie jest bledne

Dowod ?

ot - prosze:

```

/etc/hosts.allow

/etc/lilo.conf

/etc/gshadow

/etc/backup-manager.conf

/etc/printcap

/etc/hosts.deny

/etc/proftpd/proftpd.conf

/etc/runlevels/default/gpm

/etc/runlevels/default/xdm

/etc/runlevels/default/sshd

/etc/runlevels/default/acpid

/etc/runlevels/default/dcron

/etc/runlevels/default/cupsd

/etc/runlevels/default/rdate

/etc/runlevels/default/syslog-ng

/etc/runlevels/default/net.eth0

/etc/runlevels/default/alsasound

/etc/conf.d/lm_sensors

/etc/conf.d/xinetd

/etc/make.profile/packages

/etc/make.profile/parent

/etc/make.profile/make.defaults

/etc/make.profile/server/profile.bashrc

/etc/make.profile/server/parent

/etc/make.profile/server/make.defaults

/etc/make.profile/desktop/virtuals

/etc/make.profile/desktop/parent

/etc/make.profile/desktop/make.defaults

/etc/pango/pango.modules

/etc/pam.d/pop3

/etc/pam.d/pops

/etc/pam.d/imap4

/etc/pam.d/imaps

/etc/pam.d/pop3s

/etc/pam.d/imap4s

/etc/fonts/local.conf

/etc/fonts/conf.d/51-local.conf

/etc/fonts/conf.d/20-unhint-small-vera.conf

/etc/fonts/conf.d/80-delicious.conf

/etc/fonts/conf.d/unhinted.conf

/etc/fonts/conf.d/autohint.conf

/etc/fonts/conf.d/sub-pixel.conf

/etc/fonts/conf.d/yes-bitmaps.conf

/etc/fonts/conf.d/50-user.conf

/etc/fonts/conf.d/90-synthetic.conf

/etc/fonts/conf.d/30-amt-aliases.conf

/etc/fonts/conf.d/20-fix-globaladvance.conf

/etc/fonts/conf.d/20-lohit-gujarati.conf

/etc/fonts/conf.d/60-latin.conf

/etc/fonts/conf.d/65-fonts-persian.conf

/etc/fonts/conf.d/no-sub-pixel.conf

/etc/fonts/conf.d/65-nonlatin.conf

/etc/fonts/conf.d/30-urw-aliases.conf

/etc/fonts/conf.d/49-sansserif.conf

/etc/fonts/conf.d/40-generic.conf

/etc/fonts/conf.d/69-unifont.conf

/etc/fonts/conf.d/no-bitmaps.conf

/etc/env.d/20java

/etc/env.d/02locale

/etc/udev/rules.d/70-persistent-net.rules

/etc/udev/rules.d/70-persistent-cd.rules

/etc/cups/classes.conf

/etc/cups/client.conf

/etc/cups/printers.conf

/etc/cups/ppds.dat

/etc/cups/certs/0

/etc/bash/bash_logout

/etc/ssh/ssh_host_key

/etc/ssh/ssh_host_dsa_key.pub

/etc/ssh/ssh_host_rsa_key.pub

/etc/ssh/ssh_host_key.pub

/etc/ssh/ssh_host_dsa_key

/etc/ssh/ssh_host_rsa_key

```

min 90% tego wszystkiego jest potrzebne .........

porazka

----------

## KARQL

quosek

Chyba nie przeczytales mojego posta i informacji w skrypcie.

----------

## przemos

 *quosek wrote:*   

> Nie nalezy uzywac tego skryptu - jego dzialanie jest bledne
> 
> ...
> 
> min 90% tego wszystkiego jest potrzebne .........
> ...

 

Szczerze mówiąc chciałem tylko potestować co i jak bo już od bardzo dawna używam tego: https://forums.gentoo.org/viewtopic.php?t=254197 i wystarcza mi, chociaż jak we wszystkich chyba skryptach tego typu napewno się znajdzie parę plików, które błędnie są rozpoznawane jako niepotrzebnie, ale mimo to myślę że warto od czasu do czasu sprawdzić sobie, czy nie za dużo mamy śmieci w sytemie. A w tym głowa użytkownika, aby usunąć tylko te pliki, które są faktycznie nieporzebne.

----------

## quosek

KARQL - informacje przeczytalem. ale jezeli skrypt ma skutecznosc 10% to niestety, ale nie mozna mowic, ze on dziala. wolalbym juz nawet, by przepuscil 90% niepotrzebnych plikow, niz sugerowal usuniecie tej samej liczby potrzebnych....

Duzo lepiej sprawuje sie skrypt podany przez przemosa (mimo, iz wyszukuje wszsytkie pliki - nie tylko te w /etc) - chociaz mu tez daleko do doskonalosci - obydwa chociazby sugeruja usuniecie plikow, ktore domyslnie byly ....example (latwo je wykluczyc  :Wink: )

----------

## KARQL

Widze jak dziala ten skrypt. Normalnie bym go nie umieszczal, jednak jesli tamten byl umieszczony to poprawilem go troche i dalem bo, a noz sie komus przyda.

----------

