Π‘ΡΠΊΠΎΠ½ΠΎΠΌΡŒΡ‚Π΅ 15% Π½Π° всСх хостинговых услугах

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ свои Π½Π°Π²Ρ‹ΠΊΠΈ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ скидку Π½Π° любой Ρ‚Π°Ρ€ΠΈΡ„Π½Ρ‹ΠΉ ΠΏΠ»Π°Π½

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠΎΠ΄: Skills ΠΠ°Ρ‡Π°Ρ‚ΡŒ
Π ΡƒΠ±Ρ€ΠΈΠΊΠΈ
Linux

Как ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π² Linux: ΠΏΠΎΠ»Π½ΠΎΠ΅ руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… ΠΈ систСмных администраторов

Π Π°Π±ΠΎΡ‚Π° Π² Linux часто ощущаСтся ΠΊΠ°ΠΊ навигация ΠΏΠΎ ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅. ВмСсто ΠΏΠΎΠ»ΠΎΠΊ Ρƒ вас Π΅ΡΡ‚ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ (ΠΏΠ°ΠΏΠΊΠΈ), Π° вмСсто ΠΊΠ½ΠΈΠ³ β€” Ρ„Π°ΠΉΠ»Ρ‹. НСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΡΠ²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ Π»ΠΈ Π²Ρ‹ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ систСмным администратором, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ ΠΈΠ»ΠΈ Π»ΡŽΠ±ΠΎΠΏΡ‹Ρ‚Π½Ρ‹ΠΌ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠΌ, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρƒ, ΠΎΠ²Π»Π°Π΄Π΅Π½ΠΈΠ΅ основами Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. Один ΠΈΠ· самых критичСских Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π½Π°Π²Ρ‹ΠΊΠΎΠ² β€” Π·Π½Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ эффСктивно ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ список Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ.

Π­Ρ‚ΠΎ руководство ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Ρ‚ вас Ρ‡Π΅Ρ€Π΅Π· всС практичСскиС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для Π²Ρ‹Π²ΠΎΠ΄Π° списка Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ Π² Linux, ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ ΡΠΈΠ»ΡŒΠ½Ρ‹Π΅ стороны ΠΈ ограничСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° ΠΈ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π²Π°ΠΌ Ρ‚ΠΎΡ‡Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ инструмСнт β€” Π²ΠΊΠ»ΡŽΡ‡Π°Ρ использованиС Π² скриптах ΠΈ производствСнных сСрвСрных окруТСниях.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ листинг Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ Π²Π°ΠΆΠ΅Π½

На ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ врСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΏΠΊΡƒ "Π”ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹" ΠΈΠ»ΠΈ "Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ" Ρ‡Π΅Ρ€Π΅Π· графичСский интСрфСйс. На Linux сСрвСрС, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ находятся Π² Ρ†Π΅Π½Ρ‚Ρ€Π΅ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ административной Π·Π°Π΄Π°Ρ‡ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ:

  • БистСмноС администрированиС: Быстро ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ находится Π² /etc/, /var/log/ ΠΈΠ»ΠΈ /usr/local/bin/.
  • Π’Π΅Π±-хостинг: НайдитС ΠΈ управляйтС ΠΏΠ°ΠΏΠΊΠ°ΠΌΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² Π² /var/www/ ΠΈΠ»ΠΈ /home/.
  • Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния: ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ контроля вСрсий ΠΈ окруТСния, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ .git/ ΠΈΠ»ΠΈ .venv/.
  • Аудит бСзопасности: ΠŸΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ установлСно, настроСно ΠΈ Π·Π°ΠΏΡƒΡ‰Π΅Π½ΠΎ Π² систСмС.
  • Автоматизация ΠΈ скриптинг: НадСТно пСрСчисляйтС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ для использования Π² shell скриптах ΠΈ cron заданиях.

Если Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ эффСктивно Π»ΠΈΡΡ‚ΠΈΡ‚ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Π²Ρ‹ всСгда Π±ΡƒΠ΄Π΅Ρ‚Π΅ Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ сСбя Π΄Π΅Π·ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ β€” особСнно Π² ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠΉ срСдС VPS Hosting, Π³Π΄Π΅ Π½Π΅Ρ‚ графичСского Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒΡΡ.

ΠœΠ΅Ρ‚ΠΎΠ΄ 1: Команда ls β€” быстро ΠΈ просто

Команда ls β€” это инструмСнт ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ для отобраТСния содСрТимого Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ. Π­Ρ‚ΠΎ пСрвая ΠΊΠΎΠΌΠ°Π½Π΄Π°, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΠ·ΡƒΡ‡Π°ΡŽΡ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Linux, ΠΈ Π½Π΅ Π±Π΅Π· ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹: ΠΎΠ½Π° быстрая, удобочитаСмая ΠΈ доступна Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠΉ систСмС.

Π‘Π°Π·ΠΎΠ²ΠΎΠ΅ использованиС

ls

Π­Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ всС скрытыС Ρ„Π°ΠΉΠ»Ρ‹ ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ.

Бписок Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ

ls -d */

Π’ΠΎΡ‚ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ каТдая Ρ‡Π°ΡΡ‚ΡŒ:

  • -d β€” ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ls Π½Π΅ ΡΠΏΡƒΡΠΊΠ°Ρ‚ΡŒΡΡ Π² ΠΏΠΎΠ΄Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Π° Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒ сами записи Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ.
  • */ β€” шаблон glob ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ соотвСтствуСт всСм дирСкториям (ΠΈ символичСским ссылкам Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ) Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠ°ΠΏΠΊΠ΅.

Бписок Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ с ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ

ls -ld */

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ -l Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π»ΠΈΠ½Π½ΠΎΠ³ΠΎ списка, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚:

  • Π Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»Π°
  • ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ТСстких ссылок
  • Π’Π»Π°Π΄Π΅Π»Π΅Ρ† ΠΈ Π³Ρ€ΡƒΠΏΠΏΠ°
  • Π Π°Π·ΠΌΠ΅Ρ€ Ρ„Π°ΠΉΠ»Π°
  • ВрСмСнная ΠΌΠ΅Ρ‚ΠΊΠ° послСднСго измСнСния

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄Π°:

drwxr-xr-x 3 root root 4096 Jun 10 14:22 backups/
drwxr-xr-x 5 www-data www-data 4096 Jun 12 09:15 html/
drwxr-xr-x 2 deploy deploy 4096 Jun 11 18:03 logs/

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅: скрытыС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹

Π¨Π°Π±Π»ΠΎΠ½ */ Π½Π΅ соотвСтствуСт скрытым дирСкториям β€” Ρ‚Π΅ΠΌ, ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‚ΡΡ с Ρ‚ΠΎΡ‡ΠΊΠΈ (.), Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ .git/, .ssh/ ΠΈΠ»ΠΈ .config/. Π­Ρ‚ΠΎ Π²Π°ΠΆΠ½ΠΎΠ΅ прСдостСрСТСниС, особСнно Π² срСдС, Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΊ бСзопасности.

Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ls -d */: быстрыС ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΈΠ΄ΠΈΠΌΡ‹Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ Π½Π΅ трСбуСтся Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ скриптов.

ΠœΠ΅Ρ‚ΠΎΠ΄ 2: Команда find β€” мощная ΠΈ надСТная

Команда find β€” это Π²Ρ‹Π±ΠΎΡ€ профСссионала для пСрСчислСния Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ls, ΠΎΠ½Π° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ использования, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ рСкурсивный ΠΎΠ±Ρ…ΠΎΠ΄, Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ скрытыС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ Π²Π΅Π΄Π΅Ρ‚ сСбя согласованно Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… дистрибутивах Linux ΠΈ локалях.

РСкурсивноС пСрСчислСниС всСх Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ

find . -type d
  • . β€” Π½Π°Ρ‡Π°Π»ΠΎ с Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ.
  • -type d β€” соотвСтствиС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ записям Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ (Π½Π΅ Ρ„Π°ΠΉΠ»Π°ΠΌ, символичСским ссылкам ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Ρ‚ΠΈΠΏΠ°ΠΌ).

Π­Ρ‚ΠΎ рСкурсивно пСрСчислит ΠΊΠ°ΠΆΠ΄ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡƒΡ€ΠΎΠ²Π½Π΅ Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹ ΠΏΠΎΠ΄ вашим Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌ мСстополоТСниСм.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня (ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄)

find . -mindepth 1 -maxdepth 1 -type d
  • -mindepth 1 β€” ΠΈΡΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ саму Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ (.) ΠΈΠ· Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ².
  • -maxdepth 1 β€” ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΡŽ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Ρ‹ нСпосрСдствСнных ΠΏΠΎΡ‚ΠΎΠΌΠΊΠΎΠ².

Π­Ρ‚ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ способ пСрСчислСния Ρ‚ΠΎΠ»ΡŒΠΊΠΎ прямых ΠΏΠΎΠ΄Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠ°ΠΏΠΊΠΈ, ΠΈ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎ Π½Π° систСмах GNU/Linux, macOS ΠΈ BSD.

ΠΠ»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° для систСм GNU/Linux

На Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ соврСмСнных дистрибутивов Linux β€” Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π½Π° Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… сСрвСрах β€” Π²Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ:

find . -maxdepth 1 -type d

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ это Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ . Π² Π²Ρ‹Π²ΠΎΠ΄. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ -mindepth 1 вмСстС с -maxdepth 1 для Π΅Π³ΠΎ чистого ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ скрытых Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ find Π½Π΅ полагаСтся Π½Π° shell-Π³Π»ΠΎΠ±Ρ‹, ΠΎΠ½Π° автоматичСски Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ скрытыС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ:

find . -mindepth 1 -maxdepth 1 -type d

Π­Ρ‚ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ .git/, .ssh/, .config/ ΠΈ Π»ΡŽΠ±Ρ‹Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ с прСфиксом Ρ‚ΠΎΡ‡ΠΊΠΈ наряду с Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΌΠΈ.

ИспользованиС find Π² скриптах

find β€” это ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ инструмСнт для shell-скриптинга, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ:

  • Она бСзопасно ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΠΌΠ΅Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ² с ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌΠΈ ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ символами.
  • На Π½Π΅Π΅ Π½Π΅ Π²Π»ΠΈΡΡŽΡ‚ настройки Π»ΠΎΠΊΠ°Π»ΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ†Π²Π΅Ρ‚ΠΎΠ² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°.
  • Она Π²Ρ‹Π΄Π°Π΅Ρ‚ согласованный, парсируСмый Π²Ρ‹Π²ΠΎΠ΄.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€: Ρ†ΠΈΠΊΠ» ΠΏΠΎ всСм дирСкториям Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня

find . -mindepth 1 -maxdepth 1 -type d | while read -r dir; do
    echo "Processing: $dir"
done

Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ find: Π² любоС врСмя, ΠΊΠΎΠ³Π΄Π° Π²Π°ΠΌ Π½ΡƒΠΆΠ½Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ скрытыС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, рСкурсивныС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΈΠ»ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ для скриптинга ΠΈ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ.

ΠœΠ΅Ρ‚ΠΎΠ΄ 3: Команда tree β€” Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠ°Ρ€Ρ‚Ρ‹ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ

Команда tree ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΊΠ°Ρ€Ρ‚Ρƒ структуры вашСй Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ. Она Π½Π΅ установлСна ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π° всСх дистрибутивах, Π½ΠΎ Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Π° для Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ, Π°Π΄Π°ΠΏΡ‚Π°Ρ†ΠΈΠΈ Π½ΠΎΠ²Ρ‹Ρ… сотрудников ΠΈ понимания слоТных ΠΌΠ°ΠΊΠ΅Ρ‚ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ².

Установка tree

Debian/Ubuntu:

sudo apt install tree

CentOS/RHEL/AlmaLinux:

sudo yum install tree

Бписок Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ (Π±Π΅Π· Ρ„Π°ΠΉΠ»ΠΎΠ²)

tree -d

ΠžΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹ для избСТания ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π°

tree -d -L 2
  • -d β€” ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ.
  • -L 2 β€” ΠžΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ 2 уровнями Π³Π»ΡƒΠ±ΠΈΠ½Ρ‹.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄Π°:

.
β”œβ”€β”€ backups
β”‚   └── daily
β”œβ”€β”€ html
β”‚   β”œβ”€β”€ assets
β”‚   └── uploads
└── logs

Π’ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ скрытыС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ

tree -d -a

Когда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ tree: Визуализация структур ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ², написаниС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ исслСдованиС Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ ΠΌΠ°ΠΊΠ΅Ρ‚Π° сСрвСра Π² ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π·.

Бпособ 4: ΠŸΠΎΡ‡Π΅ΠΌΡƒ слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ls -l | grep "^d"

Π’Ρ‹ ΠΈΠ½ΠΎΠ³Π΄Π° встрСтитС этот ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½, ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹ΠΉ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅:

ls -l | grep "^d"

ИдСя состоит Π² Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹Π²ΠΎΠ΄Π° Π΄Π»ΠΈΠ½Π½ΠΎΠ³ΠΎ списка ls для отобраТСния Ρ‚ΠΎΠ»ΡŒΠΊΠΎ строк, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…ΡΡ с d β€” Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ. Π₯отя это выглядит ΡƒΠΌΠ½ΠΎ, это ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ…Ρ€ΡƒΠΏΠΊΠΎ ΠΈ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·Π±Π΅Π³Π½ΡƒΡ‚ΠΎ Π² любом ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎΠΌ контСкстС:

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠžΠ±ΡŠΡΡΠ½Π΅Π½ΠΈΠ΅
Π§ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊ локалиНСкоторыС Π»ΠΎΠΊΠ°Π»ΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π° ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‚ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π²Ρ‹Π²ΠΎΠ΄Π° ls -l, Π½Π°Ρ€ΡƒΡˆΠ°Ρ ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ grep.
ΠšΠΎΠ΄Ρ‹ цвСтовЕсли ls Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΊΠΎΠ΄Ρ‹ экранирования ANSI для Ρ†Π²Π΅Ρ‚ΠΎΠ², ΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ ^d ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ.
Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ дирСкторииНС ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ, ΠΊΠ°ΠΊ ΠΈ Π² случаС с ls -d */.
БимволичСскиС ссылкиБимволичСскиС ссылки, ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ Π½Π° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ l, Π° Π½Π΅ d, поэтому ΠΎΠ½ΠΈ ΠΌΠΎΠ»Ρ‡Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ.
ΠΠ΅Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ скриптовРазбор Π²Ρ‹Π²ΠΎΠ΄Π° ls Π² скриптах явно Π½Π΅ рСкомСндуСтся Π² Π»ΡƒΡ‡ΡˆΠΈΡ… ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°Ρ… написания shell-скриптов.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ find вмСсто этого. Π­Ρ‚ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ΠΎ для этой Π·Π°Π΄Π°Ρ‡ΠΈ ΠΈ ΠΈΠ·Π±Π΅Π³Π°Π΅Ρ‚ всСх Π²Ρ‹ΡˆΠ΅ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ.

Быстрая справка: Π²Ρ‹Π±ΠΎΡ€ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°

Π¦Π΅Π»ΡŒΠ›ΡƒΡ‡ΡˆΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°
Быстрая интСрактивная ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° (Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΈΠ΄ΠΈΠΌΡ‹Π΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ)ls -d */
ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ список с Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΠΌΠΈls -ld */
Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ скрытыСfind . -mindepth 1 -maxdepth 1 -type d
ВсС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ рСкурсивноfind . -type d
Π’ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Π°Ρ структура Π΄Π΅Ρ€Π΅Π²Π°tree -d
ИспользованиС Π² shell-скриптСfind . -mindepth 1 -maxdepth 1 -type d

Π›ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ для производствСнных сСрвСрных срСд

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π° ΠΆΠΈΠ²ΠΎΠΌ сСрвСрС β€” Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ учСтная запись Shared Web Hosting ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ управляСмый VPS β€” ΠΏΠΎΠΌΠ½ΠΈΡ‚Π΅ ΠΎΠ± этих ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°Ρ…:

  1. ВсСгда провСряйтС скрытыС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΏΡ€ΠΈ Π°ΡƒΠ΄ΠΈΡ‚Π°Ρ… бСзопасности. Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ .ssh/, .git/, .env/ ΠΈ .config/, часто содСрТат ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ find с -mindepth 1, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π² вашСм Π²Ρ‹Π²ΠΎΠ΄Π΅.
  1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ find Π²ΠΎ всСх скриптах, Π½ΠΈΠΊΠΎΠ³Π΄Π° ls. ΠŸΠ°Ρ€ΡΠΈΠ½Π³ Π²Ρ‹Π²ΠΎΠ΄Π° ls β€” это Ρ…ΠΎΡ€ΠΎΡˆΠΎ извСстный Π°Π½Ρ‚ΠΈΠΏΠ°Ρ‚Ρ‚Π΅Ρ€Π½ Π² shell-скриптингС. Команда find Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π°, нСзависима ΠΎΡ‚ Π»ΠΎΠΊΠ°Π»ΠΈ ΠΈ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹Π΅ случаи.
  1. ΠšΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΡƒΠΉΡ‚Π΅ find с -exec для массовых ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. НапримСр, для списка Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ:
   find . -mindepth 1 -maxdepth 1 -type d -exec du -sh {} ;
  1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ tree -d -L 2 ΠΏΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ. Когда Π²Ρ‹ Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚Π΅ΡΡŒ ΠΏΠΎ SSH ΠΊ Π½Π΅Π·Π½Π°ΠΊΠΎΠΌΠΎΠΌΡƒ сСрвСру, быстрый tree -d -L 2 ΠΈΠ· /var/www/ ΠΈΠ»ΠΈ /home/ Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½Ρ‹ΠΉ ΠΎΠ±Π·ΠΎΡ€ структуры.
  1. Π’Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. Π—Π½Π°Π½ΠΈΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ β€” это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρ‹. РСгулярно провСряйтС Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ls -ld */, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ настроСнныС Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ с доступом для всСх.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Π°ΡƒΠ΄ΠΈΡ‚ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π²Π΅Π±-сСрвСра

ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π²Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΠ»ΠΈ Π½ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Linux VPS. Π’ΠΎΡ‚ практичСский Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс, ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, описанныС Π² этом руководствС:

# Navigate to the web root
cd /var/www/

# Quick visual check of top-level directories
ls -ld */

# Full audit including hidden directories
find . -mindepth 1 -maxdepth 1 -type d

# Visual map of the project structure (2 levels deep)
tree -d -L 2

# Check disk usage per directory
find . -mindepth 1 -maxdepth 1 -type d -exec du -sh {} ;

Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ процСсс Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ ΠΌΠ΅Π½Π΅Π΅ ΠΌΠΈΠ½ΡƒΡ‚Ρ‹ ΠΈ Π΄Π°Π΅Ρ‚ Π²Π°ΠΌ ΠΏΠΎΠ»Π½ΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ структуры ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² вашСго Π²Π΅Π±-сСрвСра, Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ ΠΈ потрСблСния дискового пространства β€” Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ знания для любого администратора, ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰Π΅Π³ΠΎ VPS с cPanel ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ стСком Linux.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Бписок ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· самых Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π½Π°Π²Ρ‹ΠΊΠΎΠ² Linux, Π½ΠΎ Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ Π²Π°ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠΌΠ΅Π΅Ρ‚ большСС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‡Π΅ΠΌ Π΄ΡƒΠΌΠ°ΡŽΡ‚ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ². Π’ΠΎΡ‚ ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ Ρ€Π΅Π·ΡŽΠΌΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… Π²Ρ‹Π²ΠΎΠ΄ΠΎΠ²:

  • ls -d */ ΠΈΠ΄Π΅Π°Π»Π΅Π½ для быстрых ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ β€” Π½ΠΎ ΠΎΠ½ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ скрытыС ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ ΠΈ Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для написания скриптов.
  • find . -mindepth 1 -maxdepth 1 -type d β€” Π·ΠΎΠ»ΠΎΡ‚ΠΎΠΉ стандарт для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ, ΠΏΠΎΡ€Ρ‚Π°Ρ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΈ бСзопасного для скриптов списка ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ скрытыС записи.
  • tree -d бСсцСнСн для Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ слоТных структур ΠΈ ΠΈΡ… прСдставлСния Π΄Ρ€ΡƒΠ³ΠΈΠΌ.
  • Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ ls -l | grep "^d" β€” это Ρ…Ρ€ΡƒΠΏΠΊΠΎ, зависит ΠΎΡ‚ Π»ΠΎΠΊΠ°Π»ΠΈ ΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ прСимущСств ΠΏΠ΅Ρ€Π΅Π΄ find.

НСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, управляСтС Π»ΠΈ Π²Ρ‹ конфигурациями Π² срСдС Dedicated Servers, Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π΅Ρ‚Π΅ Π²Π΅Π±-прилоТСния ΠΈΠ»ΠΈ просто Π²ΠΏΠ΅Ρ€Π²Ρ‹Π΅ исслСдуСтС Π½ΠΎΠ²ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ Linux, ΠΎΠ²Π»Π°Π΄Π΅Π½ΠΈΠ΅ этими ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ сэкономит Π²Π°ΠΌ врСмя, ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ дорогостоящиС ошибки ΠΈ даст Π²Π°ΠΌ ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π² Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ любой Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС с Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ.

Командная строка β€” это Π½Π΅ Π±Π°Ρ€ΡŒΠ΅Ρ€, это супСрсила. И всС начинаСтся с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚ΠΎΡ‡Π½ΠΎ Π·Π½Π°Ρ‚ΡŒ, Π³Π΄Π΅ Π²Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ ΠΈ Ρ‡Ρ‚ΠΎ вас ΠΎΠΊΡ€ΡƒΠΆΠ°Π΅Ρ‚.