Traduction(s) : English - Français - Italiano

(!) ?Discussion


Au départ, Unix était basé sur des blocs basiques et simples en même temps puissants et flexibles. Les éléments de base d'un système Unix sont les fichiers, les processus et les données. Idéalement les programmes sont petits, de simples outils pour faire une seule chose mais la faire bien. Plusieurs programmes peuvent travailler comme un pipeline (tube). Ils lisent les données à la fin d'un tube, et écrivent sur un autre (stdin et stdout, mais cela peut être aussi stderr qui est généralement la sortie d'erreur).

En faisant travailler différents programmes ensemble, il est possible de construire des outils complexes simplement et rapidement, sans problème de complexité. Les programmes tendent à être très modulaires sous Unix.

Bien que ces principes n'aient pas été particulièrement suivis dans les 30 années qui ont suivis la sortie d'Unix, les principes fondamentaux restent au cœur des Unix modernes et des clones ou systèmes dérivés comme les systèmes ?BSD et GNU/Linux. Cette philosophie modulaire peut clairement être vue dans les programmes et les sous-systèmes de ces systèmes d'exploitation.

Encore une fois : « Avec un petit programme qui effectue une tâche et une seule, mais qui le fait bien et efficacement, l'utilisateur (qui peut être l'administrateur) peut le combiner avec d'autres pour effectuer une tâche plus complexe. » L'auteru de cette page a écrit un programme en C pour compter les occurrences de mots dans un texte, pour ensuite découvrir que la commande "cat file || tr \ \\n || sort || uniq -c" faisait la même chose - mais plus vite ;-) )

L' administration système sous Unix est généralement effectuée par des manipulations matérielles, manipuler le système de fichier grâce à des commandes comme (chmod, chown, mount, etc.), l'installation de logiciel et de mises à jour, ou, le plus important, écrire et éditer (avec un éditeur de texte) des scripts et de fichiers de configuration. Le travail effectué par un script shell, donne beaucoup de contrôle à l'administrateur sur le système. Les programmeurs Unix ont des programmes qui lisent des fichiers de configuration (en fait la plupart implémentent un langage de script) pour donner le maximum de contrôle à l'administrateur pour manipuler les possibilités d'un logiciel. Parfois les vendeurs (ou les vieux administrateurs) proposent un menu d'administration système ou une interface graphique dans le but de simplifier les différentes tâches, mais la « voie Unix » est d'avoir de petits fichiers édités et de petits programmes lancés. Étant donné que la simplification ne peut couvrir toutes les subtilités (il est impossible d'écrire des programmes réels par bouton poussoir) les administrateurs ont toujours besoin de savoir ce qui se passe en l'arrière-plan.

Le concept de «complexité superficielle» s'applique ici.

System V vs. BSD

La plupart des systèmes Unix peuvent être placés dans la continuité de System V ou BSD. Les systèmes BSD ont tendance à suivre de près à la Voie Unix comme décrit ci-dessus. Ils sont particulièrement adaptés pour ceux qui souhaitent avoir un contrôle total de chaque paquetage. System V est plus orienté vers l'entreprise et est conçu avec des interfaces et des sous-systèmes plus pratiques dans ce sens. En particulier, Système V est plus susceptible d'avoir des moyens pour intégrer des logiciels tiers sans grandes difficultés d'administration. Les scripts d'initialisation du système au démarrage sont un exemple simple. Les systèmes BSD tendent à avoir un petit nombre de scripts qui sont maintenu par l'administrateur, la voie Système V, sans contradiction avec la voie Unix, permet à des logiciels de s'installer avec moins de risque d'erreur.

Voir aussi


CategorySystemAdministration | CategoryCommandLineInterface | CategoryRedundant: merge some parts with other shell/CLI pages