


Les bases de Linux : un incontournable pour les développeurs full-stack
Présentation | Linux est presque partout, qu'il s'agisse de construction de serveurs ou de développement de clients, les compétences de base du système d'exploitation sont nécessaires pour le full stack. |
Les distributions Linux peuvent être grossièrement divisées en deux catégories, l'une est la distribution maintenue par des sociétés commerciales et l'autre est la distribution maintenue par des organisations communautaires. La première est représentée par le célèbre Redhat (RHEL) et la seconde est représentée par Debian. .
Redhat devrait s'appeler la série Redhat, comprenant RHEL, Fedora et CentOS (la version clone communautaire de RHEL, gratuite). À proprement parler, Ubuntu ne peut pas être considérée comme une distribution indépendante. Ubuntu est amélioré sur la base de Debian, un système de bureau Linux presque parfait qui présente tous les avantages de Debian ainsi que ses propres avantages améliorés. La communauté Ubuntu valorise avant tout la praticité et l'innovation.
Si vous avez juste besoin d'un système de serveur relativement stable, le meilleur choix est CentOS. Une fois l'installation terminée, il peut fournir des services très stables après une configuration simple. Mais pour les environnements cloud, unbantu peut être une bonne solution. Hadoop a d'abord été développé sur ubantu.
ArchitectureComprendre l'architecture et avoir un meilleur sens de l'orientation. Linux a deux modes : noyau et utilisateur. Le noyau, le shell et le système de fichiers forment ensemble la structure de base du système d'exploitation. Le noyau Linux se compose des parties suivantes : gestion de la mémoire, gestion des processus, pilote de périphérique, système de fichiers et gestion du réseau, etc.
Comprendre le noyau Linux peut utiliser pleinement les ressources et avoir un sens lors du réglage du système.
Linux divise la mémoire en « pages de mémoire » gérables et fournit des abstractions pour les tampons de 4 Ko, tels que l'allocateur de dalle. Un processus est en fait une entité en cours d'exécution d'une application spécifique, et la planification des processus contrôle l'accès du processus au processeur. Les mécanismes de communication inter-processus courants sous Linux incluent les signaux, les canaux, la mémoire partagée, les sémaphores, les sockets, etc. Le noyau fournit une API via SCI pour créer un nouveau processus (fork, exec ou POSⅨ), arrêter le processus (kill, exit), et communiquer et synchroniser entre eux (signal ou mécanisme POSⅨ).
Le système d'exploitation Linux combine des systèmes de fichiers indépendants dans une structure arborescente hiérarchique, et une seule entité représente ce système de fichiers. Étant donné que Linux prend en charge de nombreux systèmes de fichiers différents et les organise en un système de fichiers virtuel unifié, le pilote de périphérique fournit un ensemble d'interfaces abstraites que le système d'exploitation peut comprendre pour compléter l'interaction avec le système d'exploitation, tandis que les détails spécifiques liés au matériel Les opérations sont effectuées par le pilote de périphérique. La partie réseau du noyau Linux se compose de sockets BSD, de couches de protocole réseau et de pilotes de périphériques réseau. Les pilotes de périphériques réseau sont responsables de la communication avec les périphériques matériels, et il existe un pilote de périphérique correspondant pour chaque périphérique matériel possible.
système de fichiers LinuxLe système Linux peut prendre en charge une variété de systèmes de fichiers actuellement populaires, et EXT4 est recommandé.
Les principaux types de fichiers sous Linux sont :
1) Les fichiers ordinaires sont divisés en texte brut et binaire.
2) Fichier de répertoire, où les fichiers sont stockés.
3) Lier des fichiers, des fichiers pointant vers le même fichier ou répertoire.
4) Les fichiers de périphérique sont divisés en périphériques bloc et périphériques caractère.
5) Les fichiers tuyaux assurent la communication inter-processus
6) Fichier socket, lié à la communication réseau
Linux utilise une structure de répertoires standard. Le programme d'installation a déjà créé un système de fichiers et une composition de répertoires complète et fixe pour l'utilisateur, et spécifié le rôle de chaque répertoire et les types de fichiers qu'il contient.
Nom du répertoire | Brève description |
---|---|
/poubelle | Commande exécutable binaire |
/dev | Fichiers spéciaux de l'appareil |
/etc | Fichiers de gestion et de configuration du système |
/etc/rc.d | Fichiers et scripts de configuration de démarrage |
/maison | Le point de base du répertoire personnel de l'utilisateur. Par exemple, le répertoire personnel de l'utilisateur abc est /home/user, qui peut être représenté par ~abc | .
/lib | Bibliothèque de programmation standard |
/sbin | Commandes de gestion du système, les programmes de gestion utilisés par les administrateurs système sont stockés ici |
/tmp | Point de stockage de fichiers temporaires publics |
/racine | Répertoire personnel de l'administrateur système |
/mois | Le système fournit ce répertoire pour permettre aux utilisateurs de monter temporairement d'autres systèmes de fichiers. |
/perdu+trouvé | Ce répertoire est généralement vide. Le système s'arrête anormalement et laisse des fichiers « sans abri » |
/proc | Le répertoire virtuel est un mappage de la mémoire système. Ce répertoire est accessible directement pour obtenir des informations sur le système. |
/var | La zone de débordement de certains fichiers volumineux, tels que les fichiers journaux de divers services |
/usr | Le plus grand répertoire, presque toutes les applications et fichiers que vous devez utiliser se trouvent dans ce répertoire. Contient : /usr/X11R6 répertoire où la fenêtre X est stockée /usr/bin De nombreuses applications /usr/sbin Quelques programmes de gestion pour les super utilisateurs /usr/doc documentation Linux /usr/include Fichiers d'en-tête nécessaires au développement et à la compilation d'applications sous Linux /usr/lib Fichiers de configuration pour les bibliothèques de liens dynamiques et les progiciels couramment utilisés /usr/man documentation d'aide Code source /usr/src, le code source du noyau Linux est placé dans /usr/src/linux /usr/local/bin Commandes ajoutées localement /usr/local/lib Bibliothèques ajoutées localement |
Shell est l'interface utilisateur du système, fournissant une interface permettant aux utilisateurs d'interagir avec le noyau. Il reçoit les commandes saisies par l'utilisateur et les envoie au noyau pour exécution. C'est un interpréteur de commandes. Il existe de nombreux types de shells, mais BASH est recommandé ici. BASH est le Bourne Again Shell de GNU, qui est le shell par défaut du système d'exploitation GNU. La plupart des packages de distribution Linux utilisent ce shell. Shell et commandes Linux
Linux a de nombreuses commandes. Une classification simple est donnée ci-dessous.
Organiser des commandes Linux dans le shell pour effectuer une série de tâches est une programmation shell. Shell, Perl et Python sont les langages de script les plus couramment utilisés sous Linux, et je recommande toujours d'utiliser Python.
Les systèmes Linux standard disposent généralement d'un ensemble de programmes appelés applications, qui comprennent des éditeurs de texte, des langages de programmation, X Window, des outils Internet, des bases de données, etc.
Pour l'édition de texte, Emacs et vim ont leurs propres mérites. Ils peuvent même être utilisés comme IDE via des plug-ins. Personnellement, je pense que VIM devrait être une compétence nécessaire. Il existe également de nombreuses commandes dans vim, qui se résument comme suit :
En ce qui concerne la gestion des applications, Ubuntu doit être familiarisé avec la commande apt et Centos a besoin de la commande yum. Bien sûr, la compilation et l'installation du code source sont indispensables. La manière d'écrire le makefile et l'utilisation de configure/autoconfig/make doivent vous être familières.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les principales différences entre Centos et Ubuntu sont: l'origine (Centos provient de Red Hat, pour les entreprises; Ubuntu provient de Debian, pour les particuliers), la gestion des packages (Centos utilise Yum, se concentrant sur la stabilité; Ubuntu utilise APT, pour une fréquence de mise à jour élevée), le cycle de support (CentOS fournit 10 ans de soutien, Ubuntu fournit un large soutien de LT tutoriels et documents), utilisations (Centos est biaisé vers les serveurs, Ubuntu convient aux serveurs et aux ordinateurs de bureau), d'autres différences incluent la simplicité de l'installation (Centos est mince)

Comment utiliser Docker Desktop? Docker Desktop est un outil pour exécuter des conteneurs Docker sur les machines locales. Les étapes à utiliser incluent: 1. Installer Docker Desktop; 2. Démarrer Docker Desktop; 3. Créer une image Docker (à l'aide de DockerFile); 4. Build Docker Image (en utilisant Docker Build); 5. Exécuter Docker Container (à l'aide de Docker Run).

CentOS a été interrompu, les alternatives comprennent: 1. Rocky Linux (meilleure compatibilité); 2. Almalinux (compatible avec CentOS); 3. Serveur Ubuntu (configuration requise); 4. Red Hat Enterprise Linux (version commerciale, licence payante); 5. Oracle Linux (compatible avec Centos et Rhel). Lors de la migration, les considérations sont: la compatibilité, la disponibilité, le soutien, le coût et le soutien communautaire.

Étapes d'installation de CentOS: Téléchargez l'image ISO et Burn Bootable Media; démarrer et sélectionner la source d'installation; sélectionnez la langue et la disposition du clavier; configurer le réseau; partitionner le disque dur; définir l'horloge système; créer l'utilisateur racine; sélectionnez le progiciel; démarrer l'installation; Redémarrez et démarrez à partir du disque dur une fois l'installation terminée.

Méthode de visualisation du processus docker: 1. Commande Docker CLI: Docker PS; 2. Commande CLI Systemd: Docker d'état SystemCTL; 3. Docker Compose CLI Commande: Docker-Compose PS; 4. Process Explorer (Windows); 5. / Répertoire proc (Linux).

Docker utilise les fonctionnalités du noyau Linux pour fournir un environnement de fonctionnement d'application efficace et isolé. Son principe de travail est le suivant: 1. Le miroir est utilisé comme modèle en lecture seule, qui contient tout ce dont vous avez besoin pour exécuter l'application; 2. Le Système de fichiers Union (UnionFS) empile plusieurs systèmes de fichiers, ne stockant que les différences, l'économie d'espace et l'accélération; 3. Le démon gère les miroirs et les conteneurs, et le client les utilise pour l'interaction; 4. Les espaces de noms et les CGROUP implémentent l'isolement des conteneurs et les limitations de ressources; 5. Modes de réseau multiples prennent en charge l'interconnexion du conteneur. Ce n'est qu'en comprenant ces concepts principaux que vous pouvez mieux utiliser Docker.

Vs Code Système Exigences: Système d'exploitation: Windows 10 et supérieur, MacOS 10.12 et supérieur, processeur de distribution Linux: minimum 1,6 GHz, recommandé 2,0 GHz et au-dessus de la mémoire: minimum 512 Mo, recommandée 4 Go et plus d'espace de stockage: Minimum 250 Mo, recommandée 1 Go et plus d'autres exigences: connexion du réseau stable, xorg / wayland (Linux) recommandé et recommandée et plus

Dépannage des étapes pour la construction d'image Docker échouée: cochez la syntaxe Dockerfile et la version de dépendance. Vérifiez si le contexte de construction contient le code source et les dépendances requis. Affichez le journal de construction pour les détails d'erreur. Utilisez l'option - cibler pour créer une phase hiérarchique pour identifier les points de défaillance. Assurez-vous d'utiliser la dernière version de Docker Engine. Créez l'image avec --t [Image-Name]: Debug Mode pour déboguer le problème. Vérifiez l'espace disque et assurez-vous qu'il est suffisant. Désactivez SELINUX pour éviter les interférences avec le processus de construction. Demandez de l'aide aux plateformes communautaires, fournissez Dockerfiles et créez des descriptions de journaux pour des suggestions plus spécifiques.
