Hallo, Gast |
Du musst dich registrieren bevor du auf unserer Seite Beiträge schreiben kannst.
|
Foren-Statistiken |
» Mitglieder: 1
» Neuestes Mitglied: Joopi
» Foren-Themen: 463
» Foren-Beiträge: 640
Komplettstatistiken
|
Benutzer Online |
Momentan sind 6 Benutzer online » 0 Mitglieder » 4 Gäste AhrefsBot, bot
|
|
|
Ports am Server |
Geschrieben von: Joopi - 08-01-2023, 10:05 - Forum: Linux
- Keine Antworten
|
|
Prüfung der benutzten und belegten Ports am System
Mit folgendem Befehl wird eine Liste der von den laufenden Prozessen, Diensten und Dämonen genutzten Ports ausgegeben:
So kann man z.B. prüfen, ob der Port 22 für SSH genutzt wird. Auf meinem vServer hatte ich den Port auf 650 gelegt.
Um sich dann mit dem geänderten Port in der Konsole über SSH am Server anzumelden, muss folgender Befehl abgesetzt werden:
Code: ssh user@ipadresse -p650
Wichtig für die Sicherheit ist noch, dass man den Passwortzugang durch einen Private-/Public-Keys-Zugang ersetzt. Dieser Zugang ist quasi nicht zu hacken.
|
|
|
Abhängigkeit feststellen |
Geschrieben von: Joopi - 08-01-2023, 09:51 - Forum: Linux
- Keine Antworten
|
|
Es ist nicht immer einfach herauszufinden, warum ein Programm unter Linux nicht läuft, nicht startet oder abstürzt.
Wird ein Programm aus der Konsole heraus gestartet, kann man oftmals sehen, welche Meldungen ausgegeben werden. Hierüber kann oftmals erkannt werden, dass z.B. eine Abhängigkeit nicht oder nicht mehr vorhanden ist.
Welche Abhängigkeiten ein Programm hat, kann man mit dem Befehl ldd feststellen. Man wird zwar erschlagen, aber das dann wohl auch vollständig.
Folgender Befehl mit dem entsprechenden Programm (kompletter Pfad ist wohl notwendig) listet alle Abhängigkeiten auf:
|
|
|
Grub und seine Dateien |
Geschrieben von: Joopi - 08-01-2023, 09:49 - Forum: Linux
- Keine Antworten
|
|
Ich musste mich leider mit dem Bootloader GRUB befassen.
Früher war das relativ einfach, heutzutage aber ist das manuelle Verändern der notwendigen Dateien wie eine Operation am offenen Herzen.
Es gibt mehrere Orte, an denen Dateien für GRUB liegen.
/boot/grub/grub
Diese Datei wird automatisch erstellt und dem, was nachfolgt. Hier sollte nichts verändern werden.
/etc/grub.d
Das ist ein Ordner, in dem verschiedene Dateien liegen, die wohl nicht verändert werden sollen. Es hat wohl was mit der Reihenfolge der Einträge, Muss- und Kann-Einträge, zu tun.
/etc/default/grub
In dieser Datei kann man etwas ändern. Das Einzige, was ich ändern würde, wäre die Startzeit in Sekunden. Das ist die Zeit, die GRUB wartet, um ggfs. einen anderen Eintrag in der Auflistung des GRUB-Fensters auszuwählen. Oftmals sind 10 Sekundn eingestellt. Die Zeit sollte nicht zu kurz gewählt werden, damit man tatsächlich genug Zeit hat, um reagieren und agieren zu können.
Das ist ein Auszug aus dieser Datei, in der zu sehen ist, dass die Zeit auf 5 Sekunden gesetzt wurde:
Zitat:GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="quiet"
GRUB_CMDLINE_LINUX=""
Im Falle einer Veränderung, muss GRUB upgedatet werden. Das geht in der Konsole mit diesem Befehl:
Damit, sofern kein Fehler gemacht wurde, sollte die Änderung beim nächsten Start sichtbar und nutzbar sein.
Informationen zu einem möglicherweise defekten GRUB sind hier zu finden:
https://wiki.ubuntuusers.de/GRUB_2/Reparatur/
|
|
|
Dateisystem unter Linux |
Geschrieben von: Joopi - 08-01-2023, 09:47 - Forum: Linux
- Keine Antworten
|
|
Der Verzeichnisbaum
Linux hat ein durchdacht aufgebautes Dateisystem. Der Verzeichnisbaum beginnt an der "Wurzel" names Root, welche einfach durch ein "/" dargestellt wird. Die wichtigsten Verzeichnisse mit Ihrer Bedeutung im Folgenden:
- /boot: Verzeichnis welches den Linuxkernel enthält welcher beim booten gestartet wird.
- /bin: enthält Programme welche beim booten benötigt werden.
- /sbin: enthält Programme welche beim booten benötigt werden, aber nur solche, welche nur von root benutzt werden können.
- /lib: enthält Systembibliotheken welche von Programmen in /bin oder /sbin benötigt werden. Außerdem auch Kernelmodule.
- /root: Ist das Heimatverzeichnis des Benutzers root.
- /etc: Enthält Konfigurationsdateien. Diese Konfigurationsdateien gelten Systemweit. Benutzerspezifische Konfigurationsdateien befinden sich im Heimatverzeichnis des jeweiligen Benutzers.
- /dev: Enthält Gerätedateien.
- /proc: Die darin enthaltenen Dateien existieren nicht wirklich auf der Festplatte. Dieses Verzeichnis enthält Statusinformationen zum momentanen Systemzustand.
- /opt: In diesem Verzeichnis ist optionale Anwendungssoftware enthalten. Meist handelt es sich um größere Programmpakete, wie z. B. OpenOffice.org oder KDE. Nicht alle Distributionen verwenden dieses Verzeichnis.
- /usr: Enthält die Mehrzahl der Anwendungsprogramme, inklusive ihrer Manpages und Dokumentation. Dieses Unterverzeichnis besitzt selber Unterverzeichnisse wie /usr/bin, /usr/sbin, /usr/lib, welche den obigen /bin, /sbin und /lib-Verzeichnissen entsprechen. Zusätzlich auch noch /usr/share, welches zusätzliche Dateien zu Programmen enthält (beispielsweise Übersetzungsdateien oder grafische Icons), sowie /usr/local, in welchen standardmäßig selbstkompilierte Programme landen.
- /var: Variable Daten, wie z. B. Mailspool oder Druckerspooldateien oder die Logdateien. Logdateien liegen in /var/log. Auch manche Serverdienste legen ihre Datendateien hier ab (z. B. Datenbankdateien oder Emails eines Mailservers).
- /tmp: Enthält temporäre Dateien und ist für alle Benutzer des Systems schreibbar.
- /home: Enthält die Heimatverzeichnisse der Benutzer.
- /mnt und /media: Diese beiden Verzeichnisse enthalten Mountpoints für zusätzliche Datenträger, wie etwa CD-Rom oder USB-Sticks. Das ältere Verzeichnis /mnt wird dabei auf den meisten Distributionen durch die Alternative /media verdrängt.
Die Verzeichnisse /etc, /bin, /sbin, /lib, /root und /dev müssen in der Root-Partition ("/") enthalten sein, da sie während des bootens benötigt werden. Alle anderen Verzeichnisse können (müssen aber nicht) auch auf anderen Partitionen liegen.
|
|
|
Apache2 deaktivieren |
Geschrieben von: Joopi - 08-01-2023, 09:44 - Forum: Linux
- Keine Antworten
|
|
Bedingt durch die teilweise misslungene Installation von mysql-server auf Ubuntu Gnome 20.04 LTS am 23.05.2020 - bedingt durch den Absturz auf dem System mit Debian 8 Jessie am 22.05.2020 - musste ich notgedrungen XAMPP in Ubuntu installieren.
XAMPP hat einen eigenen Webserver, klar. Somit musste ich notwendig werden, dass ich den automatischen Dienst beim Hochfahren des Systems für Apache2 nicht mehr würde ausführen lassen dürfen.
Den kann man deaktivieren. Und das habe ich am 24.05.2020 um 19.15 Uhr gemacht.
Grundlage ist systemd, das init-system, welches wie folgt festzustellen ist:
Es gibt zwei Bereiche, in denen Servicedienste laufen:
Zitat:benutzerdefiniert: /etc/systemd/system
systemeigene: /lib/systemd/system
Der Dienst von Apache2 liegt im systemeigenen Bereich und lautet:
Die neue Art die Services zu starten ist wie folgt:
Code: sudo systemctl [BEFEHL] [UNIT[.service]]
sudo systemctl start apache2
Das Deaktivieren von Apache2 habe ich wie folgt ausgeführt:
Code: sudo systemctl disable apache2.service
Den Zustand, ob ein Service aktiv oder inaktiv ist, kann man wie folgt feststellen:
Code: sudo systemctl is-enabled apache2.service
Letztlich, wenn ein Service wieder aktiv werden soll, dann ist folgender Befehl auszuführen:
Code: sudo systemctl enable apache2.service
Welche Möglichkeiten systemd insgesamt zu bieten hat, ist hie nachzulesen:
https://wiki.ubuntuusers.de/systemd/systemctl/
Es ist möglich, dass man ein eigenes Script schreibt, mit dem z.B. XAMPP beim Systemstart gestartet wird; analog wie bei Apache2.
Das wird hier beschrieben: https://linuxconfig.org/how-to-run-scrip...er-desktop
Das Script lampp.sh ist nun als Service aktiviert und wird beim Start ausgeführt. Es sollte dann also so sein, dass der Webserver dann direkt zur Verfügung steht und ich nicht immer schockiert bin, wenn meine Webseiten nicht ausgeführt werden.
Die Frage ist nun, ob ich auch für das Herunterfahren ein entsprechendes Script vorbereiten muss?
Ich habe nun auch für das Herunterfahren ein Script erstellt und gleichfalls als Service aufgebaut.
- lampp.service als Dienst für den Start
- lampp_down.service als Dienst für das Herunterfahren.
|
|
|
Aliase einrichten |
Geschrieben von: Joopi - 08-01-2023, 09:24 - Forum: Linux
- Keine Antworten
|
|
Manches ist auf der Konsole oftmals einzutippen. Diese immer wieder notwendigen Befehle kann man über aliases mit einem Shortcode belegen.
Dazu ist es notwendig, dass im Ordner etc die Datei profile editiert wird. Am Ende der Datei ist folgendes z.B. einzutragen:
Zitat:alias lx='ls -1'
alias la='ls -al'
alias ll='ls -l'
alias update='apt-get update && apt-get upgrade'
Sobald die Datei abgespeichert ist, muss noch ein Befehl zur Aktivierung der neuen Einträge abgesetzt werden:
|
|
|
Debian installierte Programme |
Geschrieben von: Joopi - 08-01-2023, 09:22 - Forum: Linux
- Keine Antworten
|
|
Auf meinem Desktop-PC habe ich jede Menge Programme installiert, die teilweise nicht im Repository liegen, sondern von mir manuell durch DEB-Pakete installiert wurden.
Zwar habe ich für den Neuaufbau eines Ubuntu-Rechners eine Programmliste erstellt, die aber vielleicht nicht ganz aktuell ist.
Es gibt verschiedene Möglichkeiten, um festzustellen, welche Programme installiert sind.
Eine Pakteliste lässt sich wie folgt aufrufen:
Code: dpkg -l > installierte_programme_20200511.txt
Aus dieser Datei lässt sich leider nicht so ohne weiteres entnehmen, welches Programm ich manuell installiert habe, weil es im Standard nicht enthalten ist.
Eine ganz gute Möglichkeit bietet der folgende Befehl:
Hier scheinen dann tatsächlich die mir bekannten und nachinstallierten Programme. Allerdings werden auch die wegen der Abhängigkeiten mitinstallierten Programme und Dateien aufgelistet. Das ist aber besser als nichts.
Möchte man nach einer Neuinstallation die gleiche Konfiguration haben wie vorher, so kann man sich mit folgendem Befehl eine Paketliste erstellen lassen:
Code: dpkg --get-selections
...die dann mit folgendem Befehl im neuen System wiederhergestellt werden kann:
Code: dpkg --set-selections
Dieser Befehl ist natürlich mit Vorsicht zu genießen.
Alle Listen müssen, um sie dauerhaft zu haben, in eine Datei umgeleitet werden.
Ob das alles nahtlos funktionieren kann, weiß ich nicht, aber ich werde es mal in einer VirtualBox ausprobieren.
|
|
|
Dateirechte auf dem Server |
Geschrieben von: Joopi - 08-01-2023, 09:19 - Forum: Linux
- Keine Antworten
|
|
Die Dateirechte auf dem Server sind sehr wichtig. Mir ist nie ganz klar, welche Rechte wann für welche Ordner und Dateien standardmäßig gesetzt sein sollten. Im Internet habe ich die folgenden Empfehlungen gefunden:
- 640 für statische Dateien (HTML, Bilder)
- 700 für dynamische Inhalte (Perl, PHP usw.)
- 600 für Konfigurations-Dateien (im Ordner Includes am besten aufgehoben)
- 710 für Verzeichnisse
Es gab auch noch andere Empfehlungen, die ich in der Realität auch bei mir auf dem Server via FileZilla gesehen habe:
- 755 für Verzeichnisse, die nicht besonders geschützt werden müssen
- 644 für die meisten Dateien
- 400/440 für sensible Daten, wie z.B. wp-config.php (z.B mit Datenbank-Infos und Login-Daten)
|
|
|
index.html via Visual Studio Code |
Geschrieben von: Joopi - 08-01-2023, 12:00 - Forum: Programmieren
- Keine Antworten
|
|
Heute habe ich es endlich gelernt, wie man in Visual Studio Code, mit diesem Editor arbeite ich nun immer häufiger, schnell ein vorgefertigtes HTML-Gerüst einfügt.
Nach dem Erstellen der Datei index.html wird einfach nur in der ersten Zeile ein Ausrufezeichen (!) eingegeben. Der anschließende Druck auf die Entertaste erzeugt dann das HTML-Gerüst.
Einzige Änderung, die vorzunehmen ist, ist der Austausch von en durch de im HTML-TAG.
Endlich habe ich es verstanden.
|
|
|
|