ΠΠΎΠΈΡΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π² Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΎΠΉ, Π΅ΡΠ»ΠΈ Π²Ρ Π½Π΅ ΠΎΠ±Π»Π°Π΄Π°Π΅ΡΠ΅ Π·Π½Π°Π½ΠΈΡΠΌΠΈ ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΡΡ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΠΎΠ±Π»Π΅Π³ΡΠ΅Π½ΠΈΡ Π²Π°ΡΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ.
ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ, Π΅ΡΡΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΡΠΉ ΡΠ°ΠΉΠ», Π° Π²Ρ Π½Π΅ Π·Π½Π°Π΅ΡΠ΅, Π³Π΄Π΅ Π΅Π³ΠΎ Π½Π°ΠΉΡΠΈ, ΠΈ Π²Π°ΠΌ ΠΎΡΡΠ°Π΅ΡΡΡ Π΅Π³ΠΎ ΠΈΡΠΊΠ°ΡΡ.
ΠΠΎΠΌΠ°Π½Π΄Π° find ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ Π²Π°ΠΌ Π½Π°ΠΉΡΠΈ Π΅Π³ΠΎ.
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΏΡΠΎΡΡΠΎ ΠΈΡΠ΅Ρ ΡΠ°ΠΉΠ»Ρ Π² ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ².
ΠΡΠΎ ΠΌΠΎΡΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΊΠ°ΡΡ ΡΠ°ΠΉΠ»Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΊΡΠΈΡΠ΅ΡΠΈΠ΅Π², ΡΠ°ΠΊΠΈΡ ΠΊΠ°ΠΊ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ°, Π²ΡΠ΅ΠΌΡ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ, Π²Π»Π°Π΄Π΅Π½ΠΈΠ΅, ΡΠ°Π·ΠΌΠ΅Ρ.
ΠΠ½Π° ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΡ , Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΠΈΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΈ Π΄Π°ΠΆΠ΅ ΡΠ΄Π°Π»ΡΡΡ ΠΈΡ .
Π£ΠΏΡΠΎΡΠ΅Π½Π½ΡΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ
$ find [options] [path or directoryβ¦] [your-expression]
ΠΡΠΈΠΌΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ find
1. ΠΠΎΠΈΡΠΊ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ
ΠΠΎΠΈΡΠΊ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .pdf Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ /home/tech/
$ find /home/tech/ -name "*.pdf"
ΠΠΎΠΈΡΠΊ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .pdf Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅
$ find . -name "*.pdf"
2. ΠΠΎΠΈΡΠΊ ΠΏΠΎ ΡΠΈΠΏΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΡΠΈΡ -type
ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΡΠΈΡ -type ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
- f: ΠΈΡΠΊΠ°ΡΡ ΠΎΠ±ΡΡΠ½ΡΠΉ ΡΠ°ΠΉΠ»
- d: ΠΈΡΠΊΠ°ΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³
- l: Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΡΡΠ»ΠΊΠΈ
- c: Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²
- Π±: ΠΠ»Ρ ΠΏΠΎΠΈΡΠΊΠ° Π±Π»ΠΎΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²
- p: Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ°Π½Π°Π»Π° (FIFO)
- s: ΠΈΡΠΊΠ°ΡΡ ΡΠΎΠΊΠ΅Ρ
ΠΠΎΠΈΡΠΊ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°Ρ ΡΠ°ΠΉΠ»Π° httpd.conf
$ find /home /etc /var -name httpd.conf -type f
ΠΠ°ΠΉΡΠΈ Π²ΡΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ Π² ΠΊΠΎΡΠ½Π΅ (/) Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ django.
$ find / -type d -name django
3. ΠΠ°ΠΉΡΠΈ ΡΠ°ΠΉΠ»Ρ Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠΌΠΈ ΠΏΡΠ°Π²Π°ΠΌΠΈ
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π°ΠΉΠ΄Π΅Ρ ΡΠ°ΠΉΠ»Ρ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ 644 ΠΈ Π²ΡΠ²Π΅Π΄Π΅Ρ ΠΈΡ .
$ find /home -type f -perm 0644 -print
4. ΠΠ°ΠΉΡΠΈ ΡΠ°ΠΉΠ»Ρ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°
Π§ΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ ΡΠ°ΠΉΠ»Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ Π±ΠΎΠ»Π΅Π΅ 10 ΠΌΠ΅Π³Π°Π±Π°ΠΉΡ ΠΈ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ:
find . -size +10M -type f -print0 | xargs -0 ls -Ssh | sort -z
ΠΠ°Π½ΠΈΠΏΡΠ»ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ
ΠΠ°ΠΉΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠΉ
## ΠΠ°ΠΉΡΠΈ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ΅ΠΆΠΈΠΌΠΎΠΌ 755 ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ Π½Π° 777 find /home -type f -perm 0755 -print -exec chmod 777 {} \; ## ΠΠ»Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ² find /home -type d -perm 0755 -print -exec chmod 777 {} \;
ΠΠΎΠΈΡΠΊ ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΡΠΈΡΠ΅ΡΠΈΠ΅Π² ΠΏΠΎΠΈΡΠΊΠ°.
find /etc -type f -name "*.pdf" -exec rm -f {} \; find ./path/ -name '*.txt' -exec rm '{}' \;
ΠΠΎΠΈΡΠΊ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ
find /etc/selinux -name "*.conf" -mtime 5
ΠΡΡΠ΅ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ ΡΠ°ΠΉΠ»Ρ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°ΠΊΠ°Π½ΡΠΈΠ²Π°ΡΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ conf Π² ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ ΠΈ Π±ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ Π² ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠ΅ 5 Π΄Π½Π΅ΠΉ.
ΠΠ°ΠΉΡΠΈ ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ ΡΠΆΠ°ΡΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ /data ΡΡΠ°ΡΡΠ΅ 7 Π΄Π½Π΅ΠΉ.
find /data/*.gz -mtime +7 -exec rm -rf {} \;
ΠΠ°ΠΉΡΠΈ ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ ΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ
find /var -name "*.backup" -delete find / -type f -name *.txt -exec rm {} \; find / -type d -name flask -exec rm -rf {} \; ## directory
ΠΠ°ΠΉΡΠΈ ΠΈ ΡΠ΄Π°Π»ΠΈΡΡ ΠΏΡΡΡΡΠ΅ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΠ°Π±ΠΎΡΠ΅ΠΌ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅.
find . -type d -empty -exec rmdir {} \;
ΠΠΎΠΈΡΠΊ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΠΎ Π²Π»Π°Π΄Π΅Π»ΡΡΡ
ΠΠ°ΠΉΡΠΈ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠ΅ Β ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ tech
find /home -user tech
ΠΠ°ΠΉΠ΄ΠΈΡΠ΅ ΡΠ°ΠΉΠ»Ρ pdf, ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ tech, Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ /var
find /var -user tech -iname "*.pdf"
ΠΠ°ΠΉΡΠΈ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ, ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°ΡΠΈΠ΅ Π³ΡΡΠΏΠΏΠ΅ accounts
find /home -group accounts
ΠΠΎΠΈΡΠΊ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ
ΠΠΎΠΌΠ°Π½Π΄Π° find ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΊΠ°ΡΡ ΠΈ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ, ΠΊΠΎΠ³Π΄Π° Π²Ρ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΠ΅ ΠΆΠ΅Π»Π°Π΅ΠΌΡΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΡ.
Π§ΡΠΎΠ±Ρ Π½Π°ΠΉΡΠΈ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ 70 ΠΠ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ /var, Π²ΡΠΏΠΎΠ»Π½ΠΈΡΠ΅
find /var -size 70M
ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΎΠΏΠΎΡΡΠ°Π²ΠΈΡΡ ΡΠ°ΠΉΠ»Ρ Ρ ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ°ΠΌΠΈ, Π²Ρ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ
find /var -size +70M -exec rm -rf {} \;
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π»Π΅Π³ΠΊΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡ Π²Π°ΡΠΈ ΡΠ°ΠΉΠ»Ρ ΠΈ Π΄ΠΎΡΡΠΈΠ³Π°ΡΡ Π΅ΡΠ΅ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΠ»ΠΈΡΡ find.
Π‘ΠΏΠ°ΡΠΈΠ±ΠΎ, ΡΡΠΎ ΠΏΡΠΎΡΠΈΡΠ°Π»ΠΈ, ΠΈ ΠΌΡ Π½Π°Π΄Π΅Π΅ΠΌΡΡ, ΡΡΠΎ ΡΡΠΎ Π±ΡΠ»ΠΎ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠ²Π½ΠΎ.