LFCS So archivieren/komprimieren Sie Dateien und Verzeichnisse, Festlegen von Dateiattributen und Finden von Dateien unter Linux - Teil 3

LFCS So archivieren/komprimieren Sie Dateien und Verzeichnisse, Festlegen von Dateiattributen und Finden von Dateien unter Linux - Teil 3

Vor kurzem startete die Linux Foundation die LFCS (Linux Foundation Certified Sysadmin. Dies beinhaltet die Unterstützung bereits laufender Systeme und Dienste sowie die Fehlerbehebung und -analyse der ersten Ebene sowie die Möglichkeit, zu entscheiden, wann Probleme mit den technischen Teams eskalieren sollen.

Linux Foundation Certified Sysadmin - Teil 3

Bitte sehen Sie sich das folgende Video an, das die Idee zum Linux Foundation -Zertifizierungsprogramm gibt.

Dieser Beitrag ist Teil 3 einer 10-Tutorial-Serie, hier in diesem Teil werden wir mit Archivieren/Komprimieren von Dateien und Verzeichnissen behandeln, Dateiattribute festlegen und Dateien im Dateisystem finden, die für die LFCS-Zertifizierungsprüfung erforderlich sind.

Archivierungs- und Komprimierungswerkzeuge

Eine Datei -Archiving -Tool gruppiert eine Reihe von Dateien in eine einzelne eigenständige Datei, die wir auf verschiedene Arten von Medien sichern, über ein Netzwerk übertragen oder per E -Mail senden können. Das am häufigsten verwendete Archivierungsmittel unter Linux ist Teer. Wenn ein Archivierungsdienstprogramm zusammen mit einem Komprimierungstool verwendet wird, können Sie die Scheibengröße reduzieren, die erforderlich ist, um dieselben Dateien und Informationen zu speichern.

Der Teernutzung

Teer Bündelt eine Gruppe von Dateien zusammen in ein einzelnes Archiv (allgemein als TAR -Datei oder Tarball bezeichnet). Der Name stand ursprünglich für Tape -Archiver, aber wir müssen beachten, dass wir dieses Tool verwenden können, um Daten in jegliche Art von schriftlichen Medien zu archivieren (nicht nur an Bändern). Teer wird normalerweise mit einem Komprimierungstool verwendet, wie z gzip, BZIP2, oder xz einen komprimierten Tarball produzieren.

Grundlegende Syntax:
# tar [Optionen] [Pathname…] 

Wo repräsentiert den Ausdruck, mit dem angegeben wird, auf welche Dateien bearbeitet werden sollen.

Am häufigsten verwendete Teerbefehle
Lange Option Abkürzung Beschreibung
 -erstellen  C  Schafft ein Teerarchiv
 -verketten  A  Fügen Sie TAR -Dateien an ein Archiv hinzu
 -anhängen  R  Fängt Dateien bis zum Ende eines Archivs an
 -aktualisieren  u  Fängt Dateien neuer als im Archiv kopieren
 -diff oder -Compare  D  Finden Sie Unterschiede zwischen Archiv- und Dateisystem
 -Dateiarchiv  F  Verwenden Sie Archivdatei oder Gerätearchiv
 -Liste  T  Listet den Inhalt eines Tarballs auf
 -extrahieren oder -get  X  Extrahiert Dateien aus einem Archiv
Normalerweise verwendete Betriebsmodifikatoren
Lange Option Abkürzung Beschreibung
 -Verzeichnis Dir  C  Änderungen an Directory DIR, bevor Operationen durchgeführt werden
 -gleiche Zeit  P  Bewahrt die ursprünglichen Berechtigungen
 -ausführlich  v  Listet alle gelesenen oder extrahierten Dateien auf. Wenn dieses Flag zusammen mit -List verwendet wird, werden die Dateigrößen, Eigentümer und Zeitstempel angezeigt.
 -verifizieren  W  Überprüft das Archiv nach dem Schreiben
 -Datei ausschließen  -  Schließt die Datei aus dem Archiv aus
 -ausschließen = Muster  X  Dateien ausschließen, die als Muster angegeben werden
 -gzip oder -gunzip  z  Verarbeitet ein Archiv durch GZIP
 -BZIP2  J  Verarbeitet ein Archiv durch BZIP2
 -xz  J  Verarbeitet ein Archiv durch XZ

Gzip ist das älteste Komprimierungswerkzeug und bietet die geringste Komprimierung BZIP2 Bietet eine verbesserte Komprimierung. Zusätzlich, xz ist die neueste, aber (normalerweise) die beste Komprimierung. Diese Vorteile der besten Komprimierung haben einen Preis: Die Zeit, die der Betrieb abgeschlossen benötigt, und die während des Prozesses verwendeten Systemressourcen.

Normalerweise, Teer mit diesen Versorgungsunternehmen komprimierte Dateien haben .gz, .BZ2, oder .xz Erweiterungen. In den folgenden Beispielen verwenden wir folgende Dateien: Datei1, Datei2, Datei3, Datei4 und Datei5.

Gruppierung und Komprimierung mit GZIP, BZIP2 und XZ

Gruppieren Sie alle Dateien im aktuellen Arbeitsverzeichnis und komprimieren Sie das resultierende Bundle mit gzip, BZIP2, Und xz (Bitte beachten Sie die Verwendung eines regulären Ausdrucks, um anzugeben, welche Dateien im Bundle enthalten sein sollten. Dies soll das Archiving -Tool zur Gruppierung der in früheren Schritten erstellten Tarballs verhindern.).

# TAR CZF MyFiles.Teer.GZ-Datei [0-9] # tar cjf myFiles.Teer.BZ2-Datei [0-9] # tar cjf myfile.Teer.XZ-Datei [0-9] 
Komprimieren Sie mehrere Dateien
Listen Sie den Inhalt eines Tarballs auf und Aktualisierung / Anhängen von Dateien auf dem Bundle

Listen Sie den Inhalt eines Tarballs auf und zeigen Sie dieselben Informationen wie eine lange Verzeichnisliste an. Beachten Sie, dass aktualisieren oder anhängen Vorgänge können nicht direkt auf komprimierte Dateien angewendet werden (wenn Sie eine Datei aktualisieren oder an einen komprimierten Tarball anhängen müssen, müssen Sie die TAR -Datei unkontrollieren und sie aktualisieren / anhängen und dann erneut komprimieren).

# TAR TVF [Tarball] 
Listen Sie Archivinhalte auf

Führen Sie einen der folgenden Befehle aus:

# gzip -d myFiles.Teer.GZ [ # 1] # BZIP2 -D MyFiles.Teer.BZ2 [ # 2] # xz -d myFiles.Teer.XZ [#3] 

Dann

# tar -Delete -File myFiles.tar file4 (löscht die Datei im Tarball) # tar - - -update -file myFiles.TAR -Datei4 (fügt die aktualisierte Datei hinzu) 

Und

# gzip myFiles.tar [wenn Sie # 1 oben wählen] # BZIP2 MyFiles.tar [wenn Sie # 2 oben wählen] # xz myFiles.tar [wenn Sie #3 oben wählen] 

Endlich,

# TAR TVF [Tarball] #AGAIN 

und vergleichen Sie das Änderungsdatum und die Uhrzeit von Datei4 mit den gleichen Informationen wie zuvor gezeigt.

Ohne Dateitypen

Angenommen, Sie möchten eine Sicherung von Benutzern durchführen heim Verzeichnisse. Eine gute Sysadmin -Praxis wäre (kann auch von Unternehmensrichtlinien festgelegt werden), um alle Video- und Audiodateien von Backups auszuschließen.

Vielleicht wäre es Ihr erster Ansatz, alle Dateien mit einem aus der Sicherung auszuschließen .MP3 oder .MP4 Erweiterung (oder andere Erweiterungen). Was ist, wenn Sie einen cleveren Benutzer haben, der die Erweiterung an ändern kann .txt oder .BKP, Ihr Ansatz wird Ihnen nicht viel gut tun. Um eine Audio- oder Videodatei zu erkennen, müssen Sie den Dateityp mit der Datei überprüfen. Das folgende Shell -Skript erledigt den Job.

#!/bin/bash # passieren das Verzeichnis an die Sicherung als erstes Argument. Dir = $ 1 # Erstellen Sie den Tarball und komprimieren Sie ihn. Schließen Sie Dateien mit der MPEG -Zeichenfolge in seinem Dateityp aus. # -Wenn der Dateityp enthält die Zeichenfolge MPEG $, $? (Der Exit -Status des zuletzt ausgeführten Befehls) wird auf 0 erweitert, und der Dateiname wird auf die Ausschlussoption umgeleitet. Ansonsten erweitert es sich auf 1. # -IB $? Equals 0, fügen Sie die Datei in die Liste der zugeschnittenen Dateien hinzu. Teer x <(for i in $DIR/*; do file $i | grep -i mpeg; if [ $? -eq 0 ]; then echo $i; fi;done) -cjf backupfile.tar.bz2 $DIR/* 
Dateien in TAR ausschließen
Wiederherstellung von Backups mit Tar -Erhaltungsberechtigungen

Sie können dann die Sicherung in das Home -Verzeichnis des ursprünglichen Benutzers (User_restore in diesem Beispiel) wiederherstellen und Berechtigungen mit dem folgenden Befehl erhalten.

# TAR XJF BACKUPFILE.Teer.BZ2-Verzeichnis user_restore--Same-permissions 
Stellen Sie Dateien aus dem Archiv wieder her

Lesen Sie auch:

  1. 18 TAR -Befehlsbeispiele unter Linux
  2. DTRX - Ein intelligentes Archiv -Tool für Linux

Verwenden Sie den Befehl Find, um nach Dateien zu suchen

Der finden Der Befehl dient zur rekursiv.

Normalerweise suchen wir nach Namen, Eigentümer, Gruppen, Typ, Berechtigungen, Datum und Größe.

Grundlegende Syntax:

# find [Directory_to_search] [Ausdruck]

Das Finden von Dateien rekursiv nach Größe

Alle Dateien finden (-F) im aktuellen Verzeichnis (.) Und 2 Unterverzeichnisse unten (-Maxdepth 3 Beinhaltet das aktuelle Arbeitsverzeichnis und 2 Level nach unten), deren Größe (-Größe) ist größer als 2 MB.

# finden . -Maxdepth 3 -Typ f -Größe +2m 
Finden Sie Dateien basierend auf der Größe
Finden und Löschen von Dateien, die zu bestimmten Kriterien entsprechen

Dateien mit 777 Berechtigungen gelten manchmal als offene Tür zu externen Angreifern. In beiden Fällen ist es nicht sicher, dass jemand etwas mit Dateien tun. Wir werden einen ziemlich aggressiven Ansatz verfolgen und sie löschen! ('''' + wird verwendet, um die Ergebnisse der Suche zu „sammeln“).

# find /home /user -perm 777 -exec rm '' + 
Finden Sie Dateien mit 777Permission
Finden von Dateien pro damit oder mime

Suchen Sie nach Konfigurationsdateien in /usw auf die zugegriffen wurde (-eine Zeit) oder modifiziert (-mtime) mehr (+180) oder weniger (-180) als 6 vor Monaten oder genau 6 vor wenigen Monaten (180).

Ändern Sie den folgenden Befehl gemäß dem folgenden Beispiel:

# finde /etc -iname "*.Conf "-Mtime -180 -Druck 
Finden Sie geänderte Dateien

Lesen Sie auch: 35 praktische Beispiele für Linux 'Find' Command

Dateiberechtigungen und grundlegende Attribute

Der erste 10 Zeichen in der Ausgabe von ls -l sind die Dateiattribute. Der erste dieser Zeichen wird verwendet, um den Dateityp anzugeben:

  1. - : Eine reguläre Datei
  2. -D : ein Verzeichnis
  3. -l : Ein symbolischer Link
  4. -C : ein Zeichengerät (das Daten als Stream von Bytes behandelt, ich.e. ein Terminal)
  5. -B : Ein Blockgerät (das Daten in Blöcken behandelt, ich.e. Speichergeräte)

Die nächsten neun Zeichen der Dateiattribute werden als Dateimodus bezeichnet und stellen das Lesedaten dar (R), schreiben (w) und ausführen (X) Berechtigungen des Eigentümers der Datei, des Gruppenbesitzers der Datei und des Restes der Benutzer (allgemein als „die Welt“ bezeichnet).

Während die Leseberechtigung in einer Datei ermöglicht, dasselbe geöffnet und zu lesen, ermöglicht dieselbe Berechtigung in einem Verzeichnis, dass der Inhalt aufgelistet wird, wenn auch die Ausführungsgenehmigung festgelegt ist. Darüber hinaus ermöglicht die Ausführungsberechtigung in einer Datei als Programm und ausgeführt, während sie in einem Verzeichnis das gleiche in die CD eingeleitet werden kann.

Dateiberechtigungen werden mit dem geändert Chmod Befehl, dessen grundlegende Syntax wie folgt ist:

# CHMOD [New_Mode] Datei 

Wo NEW_MODE ist entweder eine Oktalzahl oder ein Ausdruck, der die neuen Berechtigungen angibt.

Die Oktalzahl kann aus ihrem binären Äquivalent umgewandelt werden, das aus den gewünschten Dateiberechtigungen für den Eigentümer, die Gruppe und die Welt berechnet wird, wie folgt:

Das Vorhandensein einer bestimmten Erlaubnis entspricht einer Macht von 2 (r = 22, W = 21, x = 20), während seine Abwesenheit gleich ist 0. Zum Beispiel:

Dateiberechtigungen

Um die Berechtigungen der Datei wie oben in Oktalform festzulegen, geben Sie ein:

# Chmod 744 Myfile 

Sie können auch den Modus einer Datei mit einem Ausdruck festlegen, der die Rechte des Eigentümers mit dem Brief angibt u, die Rechte des Gruppenbesitzers mit dem Brief G, und der Rest mit Ö. Alle von denen "IndividuenKann gleichzeitig mit dem Brief dargestellt werden A. Berechtigungen werden mit dem erteilt (oder widerrufen) + oder - Zeichen.

Widerruf führen alle Benutzer für ein Shell -Skript aus

Wie wir bereits erläutert haben, können wir eine bestimmte Erlaubnis widerrufen, sie mit dem Minuszeichen vorzubereiten und anzugeben, ob es für den Eigentümer, den Gruppenbesitzer oder alle Benutzer widerrufen werden muss. Der unten stehende Ein-Liner kann wie folgt interpretiert werden: Änderungsmodus für alle (A) Benutzer, widerrufen (-) Erlaubnis ausführen (X).

# CHMOD A-X BACKUP.Sch 

Gewährung von Lesen, Schreiben und Ausführen von Berechtigungen für eine Datei an den Eigentümer und den Gruppenbesitzer und Lesen Sie die Berechtigungen für die Welt.

Wenn wir eine 3-stellige Oktalnummer verwenden, um Berechtigungen für eine Datei festzulegen, gibt die erste Ziffer die Berechtigungen für den Eigentümer, die zweite Ziffer für den Gruppenbesitzer und die dritte Ziffer für alle anderen an:

  1. Eigentümer: (r = 22 + w = ​​21 + x = 20 = 7)
  2. Gruppenbesitzer: (r = 22 + w = ​​21 + x = 20 = 7)
  3. Welt: (r = 22 + w = ​​0 + x = 0 = 4),
# Chmod 774 Myfile 

Mit der Zeit und in der Praxis können Sie entscheiden, welche Methode in jedem Fall am besten für Sie geeignet ist, um einen Dateimodus zu ändern. Eine lange Verzeichnisauflistung zeigt auch den Eigentümer und seinen Gruppenbesitzer der Datei (die als rudimentäre, aber effektive Zugriffskontrolle für Dateien in einem System dienen):

Linux -Dateiliste

Dateibesitz wird mit dem geändert Chown Befehl. Der Eigentümer und der Gruppenbesitzer können gleichzeitig oder separat geändert werden. Die grundlegende Syntax ist wie folgt:

# CHOWN -Benutzer: Gruppendatei 

Wo mindestens Benutzer oder Gruppe vorhanden sein müssen.

Wenige Beispiele

Ändern des Eigentümers einer Datei in einen bestimmten Benutzer.

# Chown Gacanepa geschickt 

Ändern des Eigentümers und der Gruppe einer Datei in einen bestimmten Benutzer: Gruppenpaar.

# Chown Gacanepa: Gacanepa Testfile 

Nur den Gruppenbesitzer einer Datei in eine bestimmte Gruppe ändern. Beachten Sie den Dickdarm vor dem Namen der Gruppe.

# Chown: Gacanepa mail_body.txt 

Abschluss

Als Sysadmin müssen Sie wissen, wie Sie Backups erstellen und wiederherstellen, wie Sie Dateien in Ihrem System finden und ihre Attribute ändern können, zusammen mit ein paar Tricks, die Ihr Leben erleichtern und Sie daran hindern können, zukünftigen Themen zu treffen.

Ich hoffe, dass die Tipps in diesem Artikel Ihnen helfen, dieses Ziel zu erreichen. Fühlen Sie sich frei, Ihre eigenen Tipps und Ideen im Kommentarbereich zum Nutzen der Community hinzuzufügen. Vielen Dank im Voraus!

Referenzlinks
  1. Über die LFCs
  2. Warum erhalten Sie eine Linux Foundation -Zertifizierung??
  3. Registrieren Sie sich für die LFCS -Prüfung
Werden Sie ein Linux -zertifizierter Systemadministrator