1 Schritte zur Systeminstallation Betriebssystemversion: 1804 1.1 Wählen Sie die Installationssprache: 1.2 Wählen Sie die erste Option auf der Installationsoberfläche, um das System zu installieren 1.3 Wählen Sie die während des Installationsvorgangs verwendete Sprache aus, die auch nach der Systeminstallation als Standardsprache verwendet werden soll. 1.4 Wählen Sie die Region aus. Wählen Sie zuerst die letzte Option „andere“, drücken Sie dann die Eingabetaste und wählen Sie Asien und schließlich China. 1.5 Auswählen eines Gebietsschemas 1.6 Tastaturlayoutprüfung, wählen Sie NEIN 1.7 US-Tastatur auswählen 1.8 Bestätigen Sie, dass Sie die US-Tastatur verwenden möchten 1.9 Konfigurieren des Hostnamens 1.10 Erstellen Sie einen normalen Benutzer und legen Sie ein Passwort dafür fest 1.11 Bestätigen der Zeitzone 1.12 Wählen Sie die Methode zur Festplattenpartitionierung. Wählen Sie hier die manuelle Partitionierung 1.13 Datenträger auswählen 1.14 Festplattenpartitionierung bestätigen 1.15 Partitionieren der Festplatte 1.16 Neue Partition erstellen 1.17 Geben Sie die Partitionsgröße an. Hier wird die gesamte Festplattengröße dieser Partition zugewiesen. 1.18 Wählen Sie den Partitionstyp, hier wählen Sie die primäre Partition 1.19 Partitionierung abgeschlossen 1.20 Partitionierung abschließen und Daten schreiben 1.21 Bestätigen Sie das Schreiben auf die Festplatte 1.22 Ob ein Proxy verwendet werden soll, dieses Feld leer lassen 1.23 Ob automatisch aktualisiert werden soll, wählen Sie hier die Standardeinstellung, kein automatisches Update 1.24 Wählen Sie die Installationskomponente aus, wählen Sie die entsprechende zu installierende Komponente aus und drücken Sie dann die Leertaste. Wählen Sie hier OpenSSH Server 1.25 Installieren des GRUB-Bootloaders im Master-Boot-Record 1.26 Schließen Sie die Installation ab und bestätigen Sie den Neustart des Servers 1.27 Anmeldesystem 2 Grundlegende Systemkonfiguration Offizielle Dokumentation: https://help.ubuntu.com/ 2.1 Hostnamen ändern # Katze /etc/Hostname herzschlag 2.2 Ändern Sie den Namen der Netzwerkkarte in eth* # sed -i '/GRUB_CMDLINE_LINUX=/s/"$/net.ifnames=0 biosdevname=0"/' /etc/default/grub # update-grub Quelldatei `/etc/default/grub' Grub-Konfigurationsdatei wird generiert ... Linux-Image gefunden: /boot/vmlinuz-4.15.0-55-generic Initrd-Image gefunden: /boot/initrd.img-4.15.0-55-generic Erledigt # Neustart # sed -i 's/ens33/eth0/' /etc/netplan/01-netcfg.yaml 2.3 Konfigurieren der Root-Remoteanmeldung # Standardmäßig erlaubt Ubuntu kein Remote-SSH für Root-Benutzer. Wenn Sie in tatsächlichen Szenarien Remote-SSH für Root-Benutzer zulassen müssen, müssen Sie ein Root-Passwort festlegen und die Datei /etc/ssh/sshd_config wie folgt bearbeiten: ~$ sudo vim /etc/ssh/sshd_config 32 #PermitRootLogin prohibit-password #Standardmäßig ist die Anmeldung verboten. 33 PermitRootLogin yes #Ändern, um die Anmeldung zuzulassen. 57 #PasswordAuthentication yes 58 PasswordAuthentication yes #Aktivieren Sie die Kennwortauthentifizierung. Standardmäßig ist die Anmeldung per Kennwortauthentifizierung zulässig.~$ sudo su - root #Wechseln Sie zur Root-Benutzerumgebung.~# passwd #Passwort festlegenGeben Sie ein neues UNIX-Passwort ein: Geben Sie das neue UNIX-Passwort erneut ein: passwd: Passwort erfolgreich aktualisiert ~# systemctl restart sshd #Starten Sie den SSH-Dienst neu und testen Sie die Remote-SSH-Verbindung des Root-Benutzers 2.4 Netzwerkkonfiguration Offizielle Dokumentation: https://netplan.io/ Ab Ubuntu 17.10 wurde die feste IP-Konfiguration in /etc/network/interfaces aufgegeben und durch die Netplan-Methode ersetzt. Die Konfigurationsdatei lautet: /etc/netplan/01-netcfg.yaml # Statische IP-Konfigurationsmethode für Ubuntu 17.04 und früher: ~# cat /etc/Netzwerk/Schnittstellen root@hechunping:~# cat /etc/network/interfaces # interfaces(5)-Datei, die von ifup(8) und ifdown(8) verwendet wird auto lo iface lo inet loopback auto eth0 #Automatischer Start der Netzwerkkarte, schreiben Sie den tatsächlichen Namen der Netzwerkkarte, für die Sie die IP konfigurieren möchten iface eth0 inet static #Statische IP konfigurieren, schreiben Sie den tatsächlichen Namen der Netzwerkkarte, für die Sie die IP-Adresse konfigurieren möchten 172.18.3.12 #IP-Adresse Netzmaske 255.255.0.0 #Gateway-Maske 172.18.0.1 #Gateway DNS-Nameserver 223.6.6.6 #DNS DNS-Nameserver 223.5.5.5 #Netzwerkdienst neu starten~# /etc/init.d/networking restart ~# systemctl restart networking.service 2.4.1 Statische IP-Adresse einer einzelnen Netzwerkkarte root@hechunping:~# cat /etc/netplan/01-netcfg.yaml # Diese Datei beschreibt die auf Ihrem System verfügbaren Netzwerkschnittstellen # Weitere Informationen finden Sie unter netplan(5). Netzwerk: Version: 2 Renderer: networkd Ethernets: eth0: dhcp4: nein Adressen: [192.168.7.132/24] Gateway4: 192.168.7.2 Nameserver: Adressen: [223.6.6.6] root@hechunping:~# Netplan anwenden 2.4.2 Konfigurieren einer statischen IP für mehrere Netzwerkkarten # Katze /etc/netplan/01-netcfg.yaml # Diese Datei beschreibt die auf Ihrem System verfügbaren Netzwerkschnittstellen # Weitere Informationen finden Sie unter netplan(5). Netzwerk: Version: 2 Renderer: networkd Ethernets: eth0: dhcp4: nein Adressen: [172.20.7.34/16] Gateway4: 172.20.0.1 Nameserver: Adressen: [223.6.6.6] eth1: dhcp4: nein Adressen: [192.168.7.34/24] Routen: - bis: 172.20.0.0/16 über: 192.168.7.2 # Netplan anwenden 2.4.3 Einzelne NIC-Überbrückung # Katze /etc/netplan/01-netcfg.yaml # Diese Datei beschreibt die auf Ihrem System verfügbaren Netzwerkschnittstellen # Weitere Informationen finden Sie unter netplan(5). Netzwerk: Version: 2 Renderer: networkd Ethernets: eth0: dhcp4: nein Brücken: br0: dhcp4: nein Adressen: [172.20.7.34/16] Gateway4: 172.20.0.1 Nameserver: Adressen: [223.6.6.6] Schnittstellen: -eth0 # Netplan anwenden 2.4.4 Multi-NIC-Bridging Überbrücken Sie br0 und br1 jeweils mit eth0 und eth1. # cat /etc/netplan/01-netcfg.yaml # Diese Datei beschreibt die auf Ihrem System verfügbaren Netzwerkschnittstellen # Weitere Informationen finden Sie unter netplan(5). Netzwerk: Version: 2 Renderer: networkd Ethernets: eth0: dhcp4: nein eth1: dhcp4: nein Brücken: br0: dhcp4: nein Adressen: [172.20.7.34/16] Gateway4: 172.20.0.1 Nameserver: Adressen: [223.6.6.6] Schnittstellen: -eth0 br1: dhcp4: nein Adressen: [192.168.7.34/24] Routen: - bis: 172.20.0.0/16 über: 192.168.7.2 Schnittstellen: -eth1 root@hechunping:~# Netplan anwenden 2.4.5 Dual-NIC-Bonding Der Bridge-Befehl muss im Voraus installiert werden. Die beiden Netzwerkkarten verwenden denselben Netzwerkmodus. # cat /etc/netplan/01-netcfg.yaml # Diese Datei beschreibt die auf Ihrem System verfügbaren Netzwerkschnittstellen # Weitere Informationen finden Sie unter netplan(5). Netzwerk: Version: 2 Renderer: networkd Ethernets: eth0: dhcp4: nein eth1: dhcp4: nein Anleihen: Bindung0: Schnittstellen: -eth0 -eth1 Adressen: [172.20.7.34/16] Gateway4: 172.20.0.1 Nameserver: Adressen: [223.6.6.6,223.5.5.5] Parameter: Modus: Aktive Sicherung mii-Monitor-Intervall: 100 #ausschalten # Netplan anwenden 2.4.6 Dual-NIC-Bonding + Bridging NIC-Teaming wird verwendet, um NIC-Schnittstellenredundanz, hohe Verfügbarkeit und Portaggregation bereitzustellen, während überbrückte NICs für Dienste verwendet werden, die überbrückte Geräte erfordern. # Katze /etc/netplan/01-netcfg.yaml # Diese Datei beschreibt die auf Ihrem System verfügbaren Netzwerkschnittstellen # Weitere Informationen finden Sie unter netplan(5). Netzwerk: Version: 2 Renderer: networkd Ethernets: eth0: dhcp4: nein eth1: dhcp4: nein Anleihen: Bindung0: Schnittstellen: -eth0 -eth1 Parameter: Modus: Aktive Sicherung mii-Monitor-Intervall: 100 Brücken: br0: dhcp4: nein Adressen: [172.20.7.34/16] Gateway4: 172.20.0.1 Nameserver: Adressen: [223.6.6.6,223.5.5.5] Schnittstellen: -Bindung0 # Netplan anwenden 2.4.7 Mehrere interne und externe Netzwerkkarten binden Realisieren Sie die Netzwerkkartenbindung in einer Multinetzwerksituation. Hier werden zwei Netzwerkmodi verwendet: Bridging (eth0, eth1) und NAT (eth2, eth3). # cat /etc/netplan/01-netcfg.yaml # Diese Datei beschreibt die auf Ihrem System verfügbaren Netzwerkschnittstellen # Weitere Informationen finden Sie unter netplan(5). Netzwerk: Version: 2 Renderer: networkd Ethernets: eth0: dhcp4: nein eth1: dhcp4: nein eth2: dhcp4: nein eth3: dhcp4: nein Anleihen: Bindung0: Schnittstellen: -eth0 -eth1 Adressen: [172.20.7.34/16] Gateway4: 172.20.0.1 Nameserver: Adressen: [223.6.6.6,223.5.5.5] Parameter: Modus: Aktive Sicherung mii-Monitor-Intervall: 100 Bindung1: Schnittstellen: - eth2 -eth3 Adressen: [192.168.7.34/24] Parameter: Modus: Aktive Sicherung mii-Monitor-Intervall: 100 Routen: - bis: 172.20.0.0/16 über: 192.168.7.2 # Netplan anwenden 2.4.8 Interne und externe Bindung mehrerer Netzwerkkarten + Bridging # Katze /etc/netplan/01-netcfg.yaml # Diese Datei beschreibt die auf Ihrem System verfügbaren Netzwerkschnittstellen # Weitere Informationen finden Sie unter netplan(5). Netzwerk: Version: 2 Renderer: networkd Ethernets: eth0: dhcp4: nein eth1: dhcp4: nein eth2: dhcp4: nein eth3: dhcp4: nein Anleihen: Bindung0: Schnittstellen: -eth0 -eth1 Parameter: Modus: Aktive Sicherung mii-Monitor-Intervall: 100 Bindung1: Schnittstellen: - eth2 -eth3 Parameter: Modus: Aktive Sicherung mii-Monitor-Intervall: 100 Brücken: br0: dhcp4: nein Adressen: [172.20.7.34/16] Gateway4: 172.20.0.1 Nameserver: Adressen: [223.6.6.6,223.5.5.5] Schnittstellen: -Bindung0 br1: dhcp4: nein Adressen: [192.168.7.34/24] Routen: - bis: 172.20.0.0/16 über: 192.168.7.2 Schnittstellen: -Bindung1 # Netplan anwenden 3 Paketverwaltung 3.1 Ändern Sie die Software Warehouse-Adresse Alibaba Cloud Warehouse-Adresse: https://developer.aliyun.com/mirror USTC: http://mirrors.ustc.edu.cn/help/ubuntu.html Universität Tsinghua: https://mirror.tuna.tsinghua.edu.cn/help/ubuntu/ Huawei: https://mirrors.huaweicloud.com/ ###### Tsinghua-Quellkonfiguration###### Die Softwarequellkonfigurationsdatei von Ubuntu ist /etc/apt/sources.list. Erstellen Sie eine Sicherungskopie der mit dem System gelieferten Datei und ersetzen Sie die Datei durch den folgenden Inhalt, um das Quellimage der TUNA-Software zu verwenden. # cd /etc/apt/ # cp -p Quellen.Liste Quellen.Liste.bak # vim Quellenliste # Standardmäßig ist der Quellspiegel kommentiert, um die Aktualisierungsgeschwindigkeit von apt zu verbessern. Bei Bedarf können Sie ihn selbst auskommentieren. deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionisches Hauptuniversum mit eingeschränktem Multiversum deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates Haupteingeschränktes Universum Multiversum # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates Haupteingeschränktes Universum Multiversum deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports Haupteingeschränktes Universum Multiversum # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports Haupteingeschränktes Universum Multiversum deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security Haupt-Eingeschränktes Universum Multiversum # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security Haupt-Eingeschränktes Universum Multiversum # Vorab veröffentlichte Softwarequelle, Aktivierung nicht empfohlen # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionisch vorgeschlagenes Hauptmultiversum mit eingeschränktem Universum # apt update #Aktualisiert den lokalen Paketlistenindex. Dies muss nach der Änderung des apt-Repositorys ausgeführt werden. ###### Ali-Quellenkonfiguration###### # sed -i ‚s/cn.archive.ubuntu/mirrors.aliyun/‘ /etc/apt/sources.list # apt update #Aktualisiert den lokalen Paketlistenindex. Dies muss nach der Änderung des apt-Repositorys ausgeführt werden. 3.2 Verwendung des apt-Tools apt list #apt listet Warehouse-Pakete auf, entspricht yum list apt search NAME #Nach Installationspaketen suchen apt show apache2 #Detaillierte Informationen zu einem Installationspaket anzeigen apt install apache2 #Ein Paket online installieren apt remove apache2 #Ein einzelnes Paket deinstallieren, aber die Konfigurationsdatei behalten apt autoremove apache2 #Installationspaket entfernen und Abhängigkeiten auflösen apt update #Den lokalen Paketlistenindex aktualisieren, was nach der Änderung des apt-Repositorys ausgeführt werden muss apt purge apache2 #Deinstallieren Sie ein einzelnes Paket und löschen Sie die Konfigurationsdatei apt upgrade #Aktualisieren Sie alle installierten Pakete, die auf eine neue Version aktualisiert werden können apt full-upgrade #Aktualisieren Sie das gesamte System und entfernen Sie bei Bedarf alte Pakete. apt edit-sources #Quelldatei bearbeiten apt-cache madison nginx #Überprüfen Sie, welche Versionen der Softwarepakete im Repository installiert werden können apt install nginx=1.14.0-0ubuntu1.6 #Geben Sie bei der Installation des Softwarepakets die zu installierende Version an 3.3 Dpkg-Installationspaketverwaltung rpm: RPM (Red Hat Package Manager) ist ein Paketverwaltungssystem, das auf der Linux-Distribution von Red Hat basiert. Es bezieht sich auch auf das RPM-Paket selbst. RPM wird zum Verwalten von RPM-Paketen (wie Installation, Deinstallation und Upgrades) verwendet. „dpkg“ ist die Abkürzung für „Debian Packager“, ein speziell für „Debian“ entwickeltes Paketverwaltungssystem, um die Installation, Aktualisierung und Entfernung von Software zu erleichtern. Alle von „Debian“ abgeleiteten „Linux“-Distributionen verwenden „dpkg“, wie etwa „Ubuntu“, „Knoppix“ usw. dpkg -i gitlab-ce_11.9.8-ce.0_amd64.deb #Installieren Sie ein Softwarepaket dpkg -r gitlab-ce #Löschen Sie ein Softwarepaket und behalten Sie die Konfigurationsdatei dpkg -r -P gitlab-ce #Löschen Sie ein Softwarepaket, ohne die Konfigurationsdatei beizubehalten dpkg -I gitlab-ce_11.9.8-ce.0_amd64.deb #Zeigen Sie die Softwarepaketinformationen an dpkg -c gitlab-ce_11.9.8-ce.0_amd64.deb #Zeigen Sie die Dateien und Verzeichnisinhalte im Softwarepaket an dpkg -l #Listen Sie alle auf dem lokalen Computer installierten Softwareprogramme auf 3.4 Einrichten der Oracle JDK-Umgebung # Passwort /usr/local/src Entpacken Sie die Binärdatei und richten Sie einen Softlink ein: # tar xf jdk-8u212-linux-x64.tar.gz # ln -sv /usr/local/src/jdk1.8.0_212 /usr/local/jdk Konfigurieren Sie Umgebungsvariablen: # vim /etc/profile exportiere JAVA_HOME=/usr/local/jdk export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH export CLASSPATH=.$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar Importieren Sie die Umgebungsvariablen erneut und überprüfen Sie: # Quelle /etc/Profil # Java-Version Java-Version „1.8.0_212“ Java(TM) SE-Laufzeitumgebung (Build 1.8.0_212-b10) Java HotSpot(TM) 64-Bit Server VM (Build 25.212-b10, gemischter Modus) 3.5 OpenJDK installieren # apt installiere openjdk-8-jdk 3.6 Allgemeine Systembefehle installieren # apt purge ufw lxd lxd-client lxcfs lxc-common # apt install iproute2 ntpdate tcpdump telnet traceroute nfs-kernel-server nfs-common lrzsz-Baum openssl libssl-dev libpcre3 libpcre3-dev zlib1g-dev ntpdate tcpdump telnet traceroute gcc openssh-server lrzsz-Baum openssl libssl-dev libpcre3 libpcre3-dev zlib1g-dev ntpdate tcpdump telnet traceroute iotop unzip zip 3.7 Optimierung der Systemressourcenbegrenzung #cat /etc/security/limits.conf #Root-Kontoressourcen-Softlimit und Hardlimit für Root-Softcore unbegrenzt rooten Sie Hardcore-Core unbegrenzt Root-Soft-NProc 1000000 rooten schwer nproc 1000000 root-soft-nofile 1000000 rooten Sie hartes Nofile 1000000 Root-Soft-Memlock 32000 Root-Hard-Memlock 32000 Root-Soft-Nachrichtenwarteschlange 8192000 root harte Nachrichtenwarteschlange 8192000 #Weiche und harte Ressourcenlimits für andere Konten* Soft Core unbegrenzt * Hardcore unbegrenzt * weicher nproc 1000000 * harter nproc 1000000 * weiches Nofile 1000000 * hartes Nofile 1000000 * weiches Memlock 32000 * harter Speicherverschluss 32000 * weiche Nachrichtenwarteschlange 8192000 * harte Nachrichtenwarteschlange 8192000 3.8e Kernelparameteroptimierung # Steuert die Quellroutenüberprüfung net.ipv4.conf.default.rp_filter = 1 net.ipv4.ip_nonlocal_bind = 1 net.ipv4.ip_forward = 1 # Quellrouting nicht akzeptieren net.ipv4.conf.default.accept_source_route = 0 # Steuert die System Request-Debugging-Funktionalität des Kernels kernel.sysrq = 0 # Steuert, ob Core Dumps die PID an den Core-Dateinamen anhängen. # Nützlich zum Debuggen von Multithread-Anwendungen. kernel.core_uses_pid = 1 # Steuert die Verwendung von TCP-Syncookies net.ipv4.tcp_syncookies = 1 # Deaktivieren Sie den Netzfilter auf Bridges. net.bridge.bridge-nf-call-ip6tables = 0 net.bridge.bridge-nf-call-iptables = 0 net.bridge.bridge-nf-call-arptables = 0 # Steuert die standardmäßige maximale Größe einer Nachrichtenwarteschlange kernel.msgmnb = 65536 # # Steuert die maximale Größe einer Nachricht in Bytes kernel.msgmax = 65536 # Steuert die maximale gemeinsam genutzte Segmentgröße in Bytes kernel.shmmax = 68719476736 # # Steuert die maximale Anzahl gemeinsam genutzter Speichersegmente in Seiten kernel.shmall = 4294967296 # TCP-Kernelparameter net.ipv4.tcp_mem = 786432 1048576 1572864 net.ipv4.tcp_rmem = 4096 87380 4194304 net.ipv4.tcp_wmem = 4096 16384 4194304 net.ipv4.tcp_window_scaling = 1 net.ipv4.tcp_sack = 1 # Socket-Puffer net.core.wmem_default = 8388608 net.core.rmem_default = 8388608 net.core.rmem_max = 16777216 net.core.wmem_max = 16777216 net.core.netdev_max_backlog = 262144 net.core.somaxconn = 20480 net.core.optmem_max = 81920 # TCP-Verbindung net.ipv4.tcp_max_syn_backlog = 262144 net.ipv4.tcp_syn_retries = 3 net.ipv4.tcp_retries1 = 3 net.ipv4.tcp_retries2 = 15 # TCP-Verbindung wiederverwenden net.ipv4.tcp_timestamps = 0 net.ipv4.tcp_tw_reuse = 0 net.ipv4.tcp_tw_recycle = 0 net.ipv4.tcp_fin_timeout = 1 net.ipv4.tcp_max_tw_buckets = 20000 net.ipv4.tcp_max_orphans = 3276800 net.ipv4.tcp_synack_retries = 1 net.ipv4.tcp_syncookies = 1 #keepalive-Verbindung net.ipv4.tcp_keepalive_time = 300 net.ipv4.tcp_keepalive_intvl = 30 net.ipv4.tcp_keepalive_probes = 3 net.ipv4.ip_local_port_range = 10001 65000 # tauschen vm.overcommit_memory = 0 vm.swappiness = 10 #net.ipv4.conf.eth1.rp_filter = 0 #net.ipv4.conf.lo.arp_ignore = 1 #net.ipv4.conf.lo.arp_announce = 2 #net.ipv4.conf.all.arp_ignore = 1 #net.ipv4.conf.all.arp_announce = 2 Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung des Konzepts, Prinzips und der Verwendung von MySQL-Triggern
>>: Entwurf und Implementierung einer kaskadierenden Dropdown-Box in Vue
Inhaltsverzeichnis 1. Die Stapelstruktur verstehe...
body{font-size:12px; font-family:"Schriftart...
Methode 1: <input id= "File1" type= &...
Vorwort Hallo zusammen, hier ist der CSS-Assisten...
1. Video-Tag Unterstützt die automatische Wiederg...
Beim Produktdesign legen Designer Wert darauf, das...
Swap-Speicher bedeutet hauptsächlich, dass das Sy...
1. Einleitung Der Unterschied zwischen Zeilensper...
<br />Ich habe bereits zwei Artikel geschrie...
Die Betriebsumgebung dieses Tutorials: Windows 7-...
Inhaltsverzeichnis Vorwort Erkennen des geöffnete...
Verwandte Artikel: 9 praktische Tipps zum Erstelle...
Originalcode: center.html : <!DOCTYPE html>...
Inhaltsverzeichnis Was ist eine relationale Daten...
Bei Webdiensten geht es um die Kommunikation zwis...