Session d'étude Linux 3ème: Paramètre d'interdiction de suppression de fichier et fonction de recherche

1ère Session d'étude Linux 1ère: Console virtuelle et manipulation de fichiers 2ème Session d'étude Linux 2ème: Fonctionnement des fichiers Ceci est le troisième article après les premier et deuxième articles. Le 14 février, nous avons organisé une session d'étude interne à Ancar Co., Ltd. C'est une revue du sujet de la session d'étude

Veuillez noter que cet article concerne les «Bases de Linux». Si vous avez des informations supplémentaires, veuillez laisser un commentaire: bow:

Chaque commande est exécutée à l'aide du terminal macOS standard

Postscript

  1. [Paramètre d'interdiction de suppression de fichier](# Paramètre d'interdiction de suppression de fichier)
  2. [Rechercher un fichier](#Find File)
  3. [Autres fonctions de recherche](#Autres fonctions de recherche)

Paramètre d'interdiction de suppression de fichier

Pour rendre un fichier non supprimable, le répertoire auquel il appartient doit être protégé en écriture.

Fichier protégé en écriture (wrt_no) dans le répertoire accessible en écriture (mydir) Fichier inscriptible (wrt_ok) dans le répertoire protégé en écriture (bandir)

Maintenant, protégeons-le en écriture et vérifions les autorisations avec la commande ls.

# wrt_Protection en écriture non
$ chmod -w mydir/wrt_no

#bandir Dirctori protégé en écriture
$ chmod -w bandir

#Le répertoire bandir est protégé en écriture
$ ls -ld *dir
drwxrwxr-x 2 keita ancar 20 14 février 17:39 mydir
dr-xr-xr-x 2 keita ancar 20 14 février 17:39 bandir

Vous pouvez maintenant confirmer qu'il est protégé en écriture.

# wrt_non Le fichier est protégé en écriture
$ ls -l mydir/w* bandir/w*
-r--r--r--1 keita ancar 7 14 février 17:39 mydir/wrt_no
-rw-rw-r--1 keita ancar 7 14 février 17:39 bandir/wrt_ok

Vérifions s'il peut réellement être supprimé. bandir / wrt_ok ne peut plus être supprimé, et mydir / wrt_no peut être supprimé avec confirmation. Je vois. .. .. Si vous ne pouvez pas supprimer un fichier, vous devez également vérifier les autorisations du répertoire auquel il appartient.

$ ls -ld *dir
dr-xr-xr-x 2 keita ancar 20 14 février 17:42 bandir
drwxr-xr-x 2 keita ancar 20 14 février 17:43 mydir

$ rm bandir/wrt_ok
rm: `bandir/wrt_ok'Ne peut pas être supprimé: Permission denied

$ rm mydir/wrt_no
rm:Fichier protégé en écriture Fichier vide normal`mydir/wrt_no'Voulez-vous supprimer?y

Trouver un fichier

J'ai appris la commande find. J'ai trouvé que le résultat ne s'affiche que si le répertoire est spécifié correctement comme dans (2). Je veux être prudent à ce sujet. Dans l'exemple ci-dessous, il semble que la recherche par nom chmod -name soit effectuée en fonction de / bin / ʻet elle est affichée à l'écran -print`.

$ find /bin -name chmod  -print  ----①
$ find /bin/ -name chmod -print  ----②
/bin/chmod

$ find dr1 -name myfile
dr1/dr1b/myfile
dr1/dr1a/myfile
dr1/myfile

Vient ensuite la recherche en spécifiant le caractère générique. N'oubliez pas de le mettre entre "" lorsque vous spécifiez des jokers! Si vous ne le placez pas entre guillemets doubles, il sera développé par le shell et vous n'obtiendrez pas la sortie correcte.

$ find /bin/ -name "ch*"
/bin/chacl
/bin/chgrp
/bin/chcon
/bin/chmod
/bin/chown
/bin/chrt
/bin/chardetect
/bin/chmem
/bin/chattr
/bin/chage
/bin/chvt
/bin/chronyc

Vient ensuite le cas de la recherche par date à laquelle les données du fichier ont été mises à jour. Spécifiez la date sous forme de nombre. Ajouter «+» à «la veille» Si vous ajoutez -, ce sera" un jour plus proche du présent ". C'est pratique ~ Dans l'exemple ci-dessous, la recherche portera sur les fichiers créés / mis à jour dans les 4 jours (il y a 3 jours, il y a 2 jours, il y a 1 jour, aujourd'hui, 4 jours au total).

$ find ~/ -mtime -4
/root/.bash_logout
/root/.bash_profile
/root/.bashrc
/root/.cshrc
/root/.tcshrc
/root/.ssh
/root/.ssh/authorized_keys
/root/aa1.txt
/root/aa2.txt
/root/aa4.txt
/root/hoge.txt
/root/hogehoge.php
/root/hoge.rb
/root/rfile2

Voici une recherche de fichiers créés / mis à jour il y a 4 jours.

$ find ~/ -mtime 4
/root/
/root/rfile3

Autres fonctions de recherche

localiser la chaîne Une commande de recherche qui affiche les fichiers contenant la chaîne spécifiée. La commande Locate affiche uniquement le nom du fichier.

$ locate mkdir
/usr/bin/mkdir
/usr/lib/python2.7/site-packages/lockfile/mkdirlockfile.py
/usr/lib/python2.7/site-packages/lockfile/mkdirlockfile.pyc
/usr/lib/python2.7/site-packages/lockfile/mkdirlockfile.pyo
/usr/share/man/man1/mkdir.1.gz
/usr/share/man/man1p/mkdir.1p.gz
/usr/share/man/man2/mkdir.2.gz
/usr/share/man/man2/mkdirat.2.gz
/usr/share/man/man3p/mkdir.3p.gz
/usr/share/man/overrides/cs/man1/mkdir.1
/usr/share/man/overrides/es/man1/mkdir.1
/usr/share/man/overrides/fr/man1/mkdir.1
/usr/share/man/overrides/pl/man1/mkdir.1
/usr/share/man/overrides/zh_CN/man1/mkdir.1

C'est tout pour cette fois!

Résumé

Bien qu'il s'agisse d'un contenu basique, j'ai pu apprendre à utiliser des commandes que je n'utilise pas normalement. Si j'ai une chance, j'aimerais l'utiliser de plus en plus.

Toutes corrections ou corrections sont les bienvenues, alors laissez un commentaire!

Recommended Posts

Session d'étude Linux 3ème: Paramètre d'interdiction de suppression de fichier et fonction de recherche
Groupe d'étude Linux 1er: console virtuelle et manipulation de fichiers
Session d'étude Linux 2ème: Fonctionnement des fichiers
[Linux] Recherche de fichiers
Périphérique et système de fichiers Linux
À propos des autorisations de fichiers et de répertoires Linux