J'utilise Windows et Mac OS depuis 5 ans et maintenant j'envisage d'utiliser Linux quotidiennement. J'ai installé Ubuntu sur une machine virtuelle et j'essaie de comprendre comment je peux utiliser Linux pour mon travail quotidien (en tant que programmeur / concepteur Web js).
Désolé pour la question novice, mais il me vient à l'esprit que parfois lorsque j'installe un programme make config
et make install
qu'il change mon système d'une manière qui n'est pas facilement réversible. Dans Windows, lorsque vous installez un programme, vous pouvez le désinstaller et, espérons-le, s'il est lu par le livre, il ne restera aucune trace du programme dans le système de fichiers ou le registre, etc. Sous Mac OS, vous supprimez simplement une application comme un fichier.
Mais sous Linux, il y en a apt-get
et puis il y en a make
. Je ne comprenais pas vraiment comment garder mon installation Linux propre et bien rangée. J'ai l'impression que toute nouvelle installation d'application peut briser mon système. Mais alors Linux a la réputation d'être très robuste, donc il doit y avoir quelque chose que je ne comprends pas sur la façon dont l'installation et la désinstallation des applications affectent le système. Quelqu'un peut-il éclairer cela?
Mise à jour: lors de l'installation d'une application, ses fichiers peuvent se propager n'importe où vraiment (les gestionnaires de paquets gèrent une partie du problème), mais il y a un hack sympa à ce sujet: utilisez Docker pour installer des applications et conservez-les dans leur bac à sable, surtout si vous n'allez pas les utiliser trop souvent. Il est également possible d' exécuter des applications GUI comme Firefox entièrement dans un "bac à sable" Docker.
apt-get
plutôt quemake
d'installer un logiciel.make install
est utilisé lorsque vous devez créer la dernière version (éventuellement instable) d'un logiciel à partir de sources, qui n'est pas encore disponible en tant que package.apt
est plus simple et fournit un meilleur tui que l'utilisationapt-get
.*.app
fichier insuffisante, car les installations d'application jonchaient souvent d'autres endroits (par exemple le répertoire Library, de la mémoire). De plus, si vous créez manuellement à partir de la source dans Ubuntu avecmake install
, utilisezcheckinstall
plutôt pour permettre une suppression facile../configure ; make ; make install
chemin. Tout ce dont vous avez besoin est d'apprendre le fabuleux outil fpm .Réponses:
Une nouvelle installation cassera rarement votre système (sauf si vous faites des trucs bizarres comme mélanger la source et le binaire).
Si vous utilisez des binaires précompilés dans Ubuntu, vous pouvez les supprimer et ne pas avoir à vous soucier de casser votre système, car un binaire devrait répertorier ce qu'il nécessite pour fonctionner et votre gestionnaire de paquets répertoriera les programmes qui dépendent de ce programme pour que vous puissiez les consulter.
Lorsque vous utilisez source, vous devez être plus prudent afin de ne pas supprimer quelque chose de critique (comme glib). Il n'y a aucun avertissement ni rien d'autre lorsque vous désinstallez de la source. Cela signifie que vous pouvez complètement casser votre machine.
Si vous souhaitez désinstaller à l'aide de,
apt-get
vous utiliserezapt-get remove package
comme indiqué précédemment. Tous les programmes qui dépendent de ce package seront également désinstallés et vous aurez la possibilité de les examiner.Si vous souhaitez désinstaller, le processus est généralement
make uninstall
. Il n'y a aucun avertissement (comme je l'ai dit plus haut).make config
ne modifiera pas votre système, mais lemake install
fera.En tant que débutant, je recommande d'utiliser
apt-get
ou n'importe quelle distribution que vous utilisez pour les packages binaires. Il garde les choses agréables et organisées et à moins que vous ne le vouliez vraiment, il ne cassera pas votre système.Espérons que cela clarifie tout.
la source
--purge
option avecapt-get
En théorie,
make uninstall
vous devez supprimer ce qui a étémake install
ajouté et votre système ne devrait pas s'accumuler. Le problème, bien sûr, est que tous les makefiles ne sont pas créés égaux.Certains peuvent omettre la
uninstall
règle, vous laissant le soin de comprendre ce que lainstall
règle a fait. Pire, si la règle d'installation a écrasé une bibliothèque liée, uneuninstall
routine stupide peut casser les dépendances d'un autre programme.La meilleure solution pour les installations source est d'utiliser un préfixe différent de celui des packages installés par le gestionnaire de packaging du système. Apt installe des fichiers
/usr/
afin d'utiliser la/usr/local/
hiérarchie pour vos installations source. Cela rend beaucoup plus facile de savoir à quels fichiers appartiennent les packages et les désinstallations qui ne briseront pas le système../configure --prefix=/usr/local
fonctionne pour de nombreux scripts de configuration. Sinon, vous pouvez modifier manuellement le Makefile. Ou copiez simplement les fichiers manuellement.Apt et les autres gestionnaires d'empaquetage gardent une trace des fichiers qu'ils ont installés et de leurs dépendances inverses afin que leurs fonctions de désinstallation soient sûres à utiliser.
la source
Je vous recommande d'utiliser
apt-get install
pour installer n'importe quel package sous linux etapt-get remove
(nom du package) ouapt-get purge
(nom du package) qui supprimera non seulement le package principal que vous souhaitez désinstaller, mais tous les packages ou dépendances associés qui ont été installés lors de l'installation.Maintenant, pour garder votre système plus propre, je vous recommande d'utiliser
apt-get clean
https://askubuntu.com/questions/144222/how-do-apt-get-clean-and-apt-get-clean-all-differ#144224 ( ce post est intéressant à ce sujet) qui supprimera tous les fichiers téléchargés lors de l'installation mais qui ne sont plus nécessaires.Une autre commande qui serait utile si vous souhaitez supprimer toutes les dépendances installées sur votre système, mais qu'elles n'ont pas été supprimées lors de la désinstallation, est
apt-get autoremove
.Si vous installez un package via make et make install, vous serez responsable de le désinstaller vous-même (il y a peut-être un fichier README inclus dans le package téléchargé qui vous indique comment le faire) ainsi que d'essayer de désinstaller toutes les dépendances qui lui sont associées. . C'est pourquoi il est toujours recommandé d'installer des packages sous Linux proposés par le gestionnaire de packages de la distribution, si vous le faites de cette façon, vous pouvez être sûr que votre package a été suffisamment testé pour fonctionner avec la distribution (version de Linux) que vous utilisez. et il est très peu probable qu'il brise votre système. En outre, vous pouvez être sûr que votre package sera mis à jour en cas de besoin, alors que si vous l'installez par vous-même, vous êtes responsable de tout cela.
J'espère que ça aide :)
la source
La façon normale de gérer les applications installées sous Linux est avec un gestionnaire de packages. Le choix des gestionnaires de packages est l'un des principaux éléments qui différencient les distributions. Ubuntu, comme Debian (sur lequel il est basé), utilise dpkg et APT ; la plupart du temps, il vous suffit d'interagir avec l'une des interfaces d'APT, comme
apt-get
(ligne de commande), aptitude (ligne de commande ou mode texte) ou Synaptic (GUI).Un gestionnaire de packages garde la trace des fichiers appartenant à quel programme installé. Comme sous Windows, les programmes peuvent exécuter du code arbitraire dans le cadre de leur procédure d'installation ou de désinstallation, mais ils se comportent généralement bien et ne cassent pas les autres programmes. De plus, le code (de) d'installation est écrit par le responsable du package, et non par l'auteur en amont (pour les packages de la distribution principale). Contrairement à Windows, il existe une interface unifiée pour l'installation, la mise à niveau et la désinstallation: le gestionnaire de packages. Vous n'avez pas besoin de rechercher le programme de désinstallation (s'il y en a un), il vous suffit de cliquer sur l'icône «désinstaller» dans le gestionnaire de package graphique ou d'exécuter
apt-get remove PACKAGENAME
.Si vous avez besoin d'un logiciel «exotique», vous devrez peut-être l'installer manuellement, soit en déballant une archive, soit en compilant à partir de la source. Les installateurs qui se présentent sous la forme d'un programme exécutable sont rares dans le monde Linux. L' exécution
make install
tend à se propager chaque programme sur plusieurs répertoires (/usr/local/bin
,/usr/local/man
,/usr/local/lib
, etc.). Pour garder les choses triées, je recommande d'utiliser un «gestionnaire de paquets du pauvre», comme stow . Avec stow, chaque package est installé dans son propre répertoire et l'stow
utilitaire se charge de créer des liens symboliques afin que les commandes installées par le package se trouvent dans le chemin de recherche des commandes, etc. Voir Suivi des programmes pour plus de détails.la source
apt-get
ou similaire). Mais ils ne mettent que des programmes raisonnablement populaires dans les référentiels, ceux qui ont suffisamment d'utilisateurs pour être sûrs qu'ils font essentiellement ce qu'ils sont censés faire.Presque chaque distribution a son propre choix de gestionnaire de paquets, il y en a plusieurs populaires. pacman, apt, rpm, emerge, ... les distributions basées sur debian utilisent apt.
Le document semble intimidant, mais ce n'est pas si difficile que ça de faire des .debs pour une utilisation locale , restez sur la tâche.
la source
Vous devriez essayer d'utiliser votre gestionnaire de paquets (apt-get, aptitude, synaptic ou aptdcon, software-center, mintinstall, ..) si possible. L'utilisation d'une tâche make pour l'installation est très brute, sans garantie d'avoir une
uninstall
contrepartie et sans garantie de bien jouer avec le reste du système (c'est juste un script lié au système de construction de make - et contrairement à un paquet révisé, les tâches make peuvent contenir tout code exécutable, potentiellement un malware).Si vous ne trouvez pas une version packagée du logiciel dont vous avez besoin, vous trouverez peut-être
checkinstall
(checkinstall make install
) utile.la source
Je ne suis pas un expert et je ne sais pas grand-chose sur l'installation de logiciels à partir des sources, mais en utilisant
apt-get
, vous pouvez supprimer les logiciels installés avecapt-get remove package-name
. Pour supprimer également tous les fichiers de configuration, utilisezapt-get purge package-name
. Le moyen le plus sûr de garder votre installation Linux en ordre est d'utiliser uniquement les packages dans les référentiels officiels. Lorsqu'un paquet est nécessaire qui n'est pas dans les référentiels officiels, il peut souvent être trouvé (puisque vous utilisez Ubuntu) dans un PPA .la source
apt-get
est inutile pour le PO qui a utiliséconfigure
etmake install
Comme le disent les autres réponses, de nos jours, il est typique d'installer la grande majorité de vos logiciels en utilisant le gestionnaire de paquets de votre distribution de choix. C'est tellement pratique que vous allez probablement le manquer lorsque vous reviendrez à Windows! Dans un sens, les différents «marchés» et «magasins» vont dans ce sens également pour les OS commerciaux.
Cela dit, je me souviens que lorsque j'ai commencé à apprendre sur Linux, j'étais perplexe quant à la façon dont les logiciels sont généralement installés. Alors que sous Windows, tous les fichiers se
c:\Programs
trouvent dans un seul répertoire , la "méthode unix" traditionnelle consiste à les disperser dans des "emplacements standard" (les détails ne sont pas si normalisés, [consultez LSB pour plus d'informations] [1] ), comme/usr/local/bin
pour les exécutables,/usr/local/doc
pour la documentation, etc.Dans un sens, Windows "ne sait pas" où se trouvent vos exécutables. Il sait qu'ils sont "quelque part sous
c:\Program Files
", mais pas beaucoup plus. Analyser tous ces répertoires pour les trouver est, ou était, un coût prohibitif. Ainsi, un lien vers l'exécutable serait explicitement placé dans un emplacement connu (le menu Démarrer), et c'est ce que vous utiliseriez pour le démarrer.Sous Unix / Linux, votre shell, et la plupart des autres programmes d'ailleurs, rechercheront automatiquement les exécutables ou autres ressources dans un ensemble connu d'emplacements. C'est pourquoi, en copiant simplement vos fichiers dans leurs répertoires appropriés, vous les "voyez" automatiquement, sans avoir à les "enregistrer" n'importe où pour que les utilisateurs les connaissent.
Les deux mécanismes ont leurs avantages et leurs inconvénients, mais vous constaterez que l'approche Unix est généralement plus flexible.
Veuillez garder à l'esprit qu'il existe de nombreuses exceptions et détails qui rendent l'image pas aussi claire que je l'ai décrite, mais je pense que ce type d'introduction peut être utile pour les débutants pour au moins comprendre la logique de base derrière.
la source
Je pense que le meilleur conseil est juste dans ce post de forum . Voici vos options (2 et 3 sont plus ou moins les mêmes en termes d'effet, vraiment):
Si vous ne pouvez pas faire fonctionner cette méthode, utilisez-la
checkinstall
comme d'autres l'ont recommandé. C'est un remplacement très simple pour faire l'installation:Cela devrait générer le logiciel comme d'habitude, puis s'exécuter
make install
dans un environnement confiné qui suit ce qu'il fait et crée un package qui ferait exactement ces choses. Ensuite, il installe ce package avec votre gestionnaire de packages. Supprimer alors, c'est comme supprimer tout autre paquet, comme dans (2).make install
, je suppose. Et espérons que le mainteneur du logiciel maintiendra une routine de désinstallation.la source