Question Différence entre les commandes unix et linux [fermé]


Je viens d'acheter le livre UNIX in a Nutshell pour vraiment pas cher, même si je passe le plus clair de mon temps sous une forme quelconque de Linux. La première moitié du livre concerne les commandes et la syntaxe du shell. A peu près combien de cela est traduisible ou utilisable sous Linux?


4
2018-06-12 17:41


origine


Presque tout. - AndrejaKo
Allumez bash et voyez si ça marche :) - Not Available


Réponses:


Les principaux concepts (tuyaux, fichiers, périphériques, réseaux) restent les mêmes. La syntaxe du shell s'applique également à Linux - presque tous les systèmes d'exploitation de type Unix utilisent le même shell Bourne (sh) et / ou ses dérivés (frapper est particulièrement fréquent, zsh est probablement la seconde).

Les commandes de base (ls, mv, rm) reste le même, mais leurs options peuvent différer. En particulier, la plupart des distributions Linux sont livrées avec GNU coreutils outils, qui ont une gamme d'options beaucoup plus large que leurs homologues BSD et Unix.

Certaines autres commandes ont également été entièrement remplacées sous Linux (exemple: alors que des outils de configuration réseau tels que ifconfig et route existent toujours sur Linux, ils sont considérés comme obsolètes en faveur de ip).

C'est lorsque vous approfondissez la configuration du système que vous commencez à voir de grandes différences. Par exemple, l'authentification (PAM, BSD Auth, /etc/shadow) et des bases de données utilisateur (NIS, nsswitch); processus de démarrage (SysV init vs BSD init contre systemd contre Parvenu); nom d'appareil (eth0 contre tlp0 contre en0, MAKEDEV vs udev).

L'installation de logiciels est un sujet important: généralement, les distributions Linux offrent une gamme de packages pré-construits avec un outil de gestion de paquets qui les télécharge et les installe. Télécharger et compiler manuellement à partir du code source (./configure && make) est relativement rare.


8
2018-06-12 18:41



Les commandes de base sont assez différentes (sauf pour quelques paramètres communs) entre OS X (BSD Unix) et Linux, ce n'est même pas drôle. Par exemple, alors que vous n'êtes pas dans coreutils, les différences entre les implémentations de top mener à des solutions totalement différentes pour des problèmes spécifiques. En outre, pour ajouter à vos exemples, Mac OS X dispose d'un service d'annuaire pour la gestion des utilisateurs. networksetup pour de nombreuses tâches liées au réseau, et launchd en remplacement de init/rc/(x)inetd/crond. - Daniel Beck♦
@Daniel: ps est encore pire que top, Je pense. - grawity
Même si le livre spécifie qu'il est écrit pour solaris et svr4, s'appliquerait-il aux nouvelles versions de netbsd et pcbsd? - a sandwhich
@grawity Au moins GNU ps prend en charge la syntaxe BSD, c'est-à-dire ps aux ça marche, c'est tout ce dont j'ai besoin ;-) Mais tu as raison. Un certain nombre d'outils couramment utilisés sont une source de difficultés lors du passage d'un système à l'autre. - Daniel Beck♦
@a sandwhich: SysV (Solaris, SVR4) et BSD avaient de grandes différences même dans leur vieux rejets. (Je pense que Linux est légèrement plus proche de votre livre que les BSD.) Néanmoins, ils sont tous deux Unix, donc ma réponse est toujours valable. - grawity


En général, même si toutes les commandes ne sont pas exactement les mêmes, il est important que vous compreniez les principes et leur fonctionnement, il vous sera alors relativement facile d’en utiliser de nouvelles ou différentes. La syntaxe et la compréhension du fonctionnement de la ligne de commande est la chose la plus importante. Bien que je dise 90% de ce que j'utilise pour UNIX (sur mon Mac), j'utilise exactement la même chose dans Ubuntu (y compris ls, cd, etc.), il y a des commandes spécifiques à Linux, mais si vous savez utiliser la ligne de commande, vous pouvez les ramasser très bien. Mais oui, à peu près tout est pareil et ça devrait aller.


2
2018-06-12 18:27