[linux] programma's verwijderen

Pagina: 1
Acties:

  • R3b3l
  • Registratie: November 2002
  • Laatst online: 15-01 09:20
Hallo,

Ik draai al een tijdje hier en daar wat linux distro's (vooral slack) en elke keer kom ik op dezelfde vraag uit en heb er nog nooit een antwoord op kunnen vinden.

Vraag: Wanneer ik b.v. apache van source bouw op mijn distro, hoe verwijder ik de applicatie dan weer netjes? In het build process moet daar toch ergens een optie voor zijn. Immers tijdens de installatie weet het systeem wel waar welke bestanden heen moeten.

Thanx.

Verwijderd

Er zijn pakketten die "make uninstall" doen. Verder zijn er een aantal package management systemen die werken met source-based installs (de namen zijn me ff ontschoten). Afgezien van deze opties houd het een beetje op. Eventueel zou je nog een filelist voor en na de installatie van een bepaald source installed pakket kunnen maken en deze lijsten met mekaar vergelijken om te achterhalen wat je wel/niet moet verwijderen.

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 13-02 20:06

Gerco

Professional Newbie

Dit werkt niet bij alle programmas, maar bijvoorbeeld apache2 kun je installeren in /usr/local/apache2 (default). Als je die dan weggooit is het hele pakket pleite. Wat je dan nog overhoudt zijn wat symlinks in /etc/init.d en/of /usr(/local)/bin etc, daar zijn weer tools voor om broken symlinks te zoeken en verwijderen. Ideaal is anders, maar dit werkt voor mij meestal prima.

Thuis op de desktop gebruik ik gentoo en daar heb je het magische "emerge unmerge" toverwoord wat uitstekend werkt :D . Programmas die niet in portage zitten, installeer ik meestal niet en als ik het wel doe in mijn eigen homedir of als aparte user in zijn eigen homedir, dan is verwijderen helemaal makkelijk.

Er zijn uiteraard programmas waarvoor dit niet opgaat (moeten als root installed worden, eisen files op bepaalde locaties (/bin ofzo) en daarbij is het allemaal flink moeizaam. Gelukkig wordt dat langzaam aan beter.

[ Voor 21% gewijzigd door Gerco op 22-11-2004 14:22 ]

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


  • R3b3l
  • Registratie: November 2002
  • Laatst online: 15-01 09:20
Dat is toch allemaal wel een beetje suf hoor, als je een stuk software installeerd moet de bouwer van het pakket er toch ook van uit gaan dat sommige mensen dit wel eens willen deinstalleren. Nou weet ik dat linux niet bekend staat om gebruiksvriendelijk te zijn, en dat vraag ik ook niet, maar installeren / verwijderen van software is toch wel "bare minimum".

  • djexplo
  • Registratie: Oktober 2000
  • Laatst online: 21-12-2025
Alles wat je met apt-get installeerd kan je daar wel weer makkelijk mee verwijderen. (Ik draai debian)

'if it looks like a duck, walks like a duck and quacks like a duck it's probably a duck'


Verwijderd

Mja, diezelfde developers gaan ervan uit dat als je iets van source code instaleert dat je weet waar je mee bezig bent, daar "normale" gebruikers gebruik maken van de package manager van hun favoriete distro.

Als jij de package manager gebruikt is het systeem zo gebruikersvriendelijk als wat, maar als je dingen op je eigen manier gaat doen, jah, dan loop je soms tegen dit soort dingen aan. Heeft weinig met "suf" te maken, eerder met een stukje kennis wat mist ...

[ Voor 11% gewijzigd door Verwijderd op 22-11-2004 14:31 ]


  • SiErRa
  • Registratie: Februari 2000
  • Laatst online: 13-02 13:54
Meestal is het ook wel mogelijk om van je gecompileerde source (dus alleen make nog niet make install) een pakketje te maken en deze op te nemen in je package management systeem. Dan heb je dus toch je eigen pakketje en kan je het ook weer netjes opruimen.

  • R3b3l
  • Registratie: November 2002
  • Laatst online: 15-01 09:20
SiErRa... das tenminste een goede optie...
Trouwens... make install weet ook waar ie zijn bestanden gaat heen schrijven, maakt ie daar toevallig niet een of ander bestandje van?

  • Gerco
  • Registratie: Mei 2000
  • Laatst online: 13-02 20:06

Gerco

Professional Newbie

the_r3b3l schreef op maandag 22 november 2004 @ 14:27:
Dat is toch allemaal wel een beetje suf hoor, als je een stuk software installeerd moet de bouwer van het pakket er toch ook van uit gaan dat sommige mensen dit wel eens willen deinstalleren. Nou weet ik dat linux niet bekend staat om gebruiksvriendelijk te zijn, en dat vraag ik ook niet, maar installeren / verwijderen van software is toch wel "bare minimum".
Dat zou inderdaad moeten ja, op Windows zou dat ook moeten. Daar heb je veel uninstallers die overal nog troep achterlaten als ze klaar zijn. Sommige mensen vinden het beter om te weten dat ze zelf moeten opruimen dan te leven in de veronderstelling dat er netjes is opgeruimd, maar er feitelijk nog bergen troep rondslingert.

Ik vind het make install statement (als root) ook een 'eng' statement, omdat ik niet precies weet wat het allemaal gaat doen en welke files het gaat verprutsen. Vandaar dus zoveel mogelijk een aparte prefix per programma en/of installeren als een aparte user waar mogelijk. Zo waarborg ik de stabiliteit van mijn systeem, voor zover mogelijk.

Een echte oplossing is natuurlijk een systemwide installer, zoals de package managers voor de verschillende linux smaken en Windows Installer/Installshield/Inno-Setup voor windows (al voldoen die niet aan de titel system-wide installer, maar msi komt in de buurt). Helaas laten ook deze producten nogal eens een steekje vallen (meestal de schuld van de developer/ISV, niet van de makers van het installer product).

[ Voor 22% gewijzigd door Gerco op 22-11-2004 14:49 ]

- "Als ik zou willen dat je het begreep, legde ik het wel beter uit!" | All number systems are base 10!


  • PowerSp00n
  • Registratie: Februari 2002
  • Laatst online: 17-11-2025

PowerSp00n

There is no spoon

En anders pak je nog een keer de source erbij, build je het en install je het met make install DESTDIR=/tmp/moetweg en dan kun je precies zien welke files van die source afkomstig zijn.

Een beetje creativiteit kan geen kwaad ;).

[ Voor 12% gewijzigd door PowerSp00n op 22-11-2004 14:48 ]


Verwijderd

the_r3b3l schreef op maandag 22 november 2004 @ 14:43:
[...]
Trouwens... make install weet ook waar ie zijn bestanden gaat heen schrijven, maakt ie daar toevallig niet een of ander bestandje van?
Ja en nee. Zoals ik al eerder vermelde, dit hangt af van het pakket. Meestal wordt er geen filelist bijgehouden, maar wordt er zoiets gedaan in de Makefile:
code:
1
2
3
for each compiled binary do
    install binary
done


Zoals je ziet, het zou een triviale aanpassing zijn in de gemiddelde Makefile om een filelist te genereren van de te-installeren files, echter wordt dit door zeer weinig developers gedaan. Sommige pakketten doen dit wel, en die bieden dan iets van een "make uninstall" aan.

edit:

PowerSp00n's optie is ook intri, en een makkelijke workaround

[ Voor 8% gewijzigd door Verwijderd op 22-11-2004 14:52 ]


  • Stainless Steel
  • Registratie: Februari 2002
  • Niet online
Voor slackware moet je eens kijken naar het paket checkinstall, staat in de extra dir op je slackware disk.

Dit paket doet de install voor je, maar houd gelijk bij welke files waar zijn neer gezet, maakt er een package van enz. Daarna kan je de package op andere systemen installeren met installpkg en uninstallen met removepkg

  • R3b3l
  • Registratie: November 2002
  • Laatst online: 15-01 09:20
Roestvrij Staal.... Checkinstall kicks ass!!!!

Verwijderd

Als je nou wel perse van source wil compilen dan kun je toch (meestal) bij configure een prefix direcotry meegeven? Komt alles in die directory of subdirectories eronder. Moet natuurlijk de software wel een prefix ondersteunen, maar volgens mij is dat bijna altijd zo.

Verder kun je ook nog stow of xstow gebruiken, die maken het verwijderen van source gecompileerde software een stuk makkelijker.

  • 0siris
  • Registratie: Augustus 2000
  • Laatst online: 07-02 23:33
djexplo schreef op maandag 22 november 2004 @ 14:31:
Alles wat je met apt-get installeerd kan je daar wel weer makkelijk mee verwijderen. (Ik draai debian)
tenzij er een hoop dependencies zijn die je mee-installeert: als je dan het pakket uninstalleert, blijven de dependancies gewoon geinstalleerd.... (toch?)

ach...in een volgend leven lach je er om!


  • tomato
  • Registratie: November 1999
  • Niet online
0siris schreef op maandag 22 november 2004 @ 17:34:
tenzij er een hoop dependencies zijn die je mee-installeert: als je dan het pakket uninstalleert, blijven de dependancies gewoon geinstalleerd.... (toch?)
aptitude haalt in ieder geval ook alle 'unused packages' weg, ik weet niet zeker of dat een feature van apt of van aptitude is.

Alles wat in de userdirs gezet wordt (instellingen, bijv een .emacs) blijft over het algemeen staan bij het gebruik van package managers. Dit is natuurlijk meestal ook gewenst.

  • 0siris
  • Registratie: Augustus 2000
  • Laatst online: 07-02 23:33
tomato schreef op maandag 22 november 2004 @ 17:37:
Alles wat in de userdirs gezet wordt (instellingen, bijv een .emacs) blijft over het algemeen staan bij het gebruik van package managers. Dit is natuurlijk meestal ook gewenst.
`
en als je dat niet wilt, kun je dat met apt-get remove --purge packagenaam ook gewoon verwijderen ;)

ach...in een volgend leven lach je er om!


  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

--purge verwijdert toch geen usersettings?

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.


  • _JGC_
  • Registratie: Juli 2000
  • Laatst online: 14:06
Wat betreft onvriendelijkheid van source pakketjes:
zelf ben ik maintainer voor Archlinux, daar ben ik dus een van de personen die alles uit source compileert en in pakketjes propt.

Dingen als "make DESTDIR" zijn allemaal leuk en aardig, maar na wat ik heb gezien aan rotzooi tot nu toe wil ik dus nooit meer het commando "make DESTDIR=... install" draaien als root. Wat een enorm aantal b0rken troepdingen zijn er op deze wereld :X
(overigens compileer ik alles in een chroot systeem en pleur ik dat ding van tijd tot tijd weg om opnieuw te beginnen :X)

Als je graag dingen wilt verwijderen, ben je gewoon op een fatsoenlijke package manager aangewezen.

  • mOrPhie
  • Registratie: September 2000
  • Laatst online: 29-01 12:00

mOrPhie

❤️❤️❤️❤️🤍

Overigens zijn er een aantal source-code package-managers. Ikzelf heb wel 'ns gespeeld met Linux From Scratch en heb toen wat dingen met PACO geprobeerd. Erg mooi ding. Het houdt bij wat je installeert, door wie het is geinstalleerd, van wie de files zijn en het geeft de optie om de software weer te deïnstalleren.

http://paco.sourceforge.net/
http://www.au.linuxfromsc...s/downloads/files/paco.tx

Een experimentele community-site: https://technobabblenerdtalk.nl/. DM voor invite code.

Pagina: 1