NOC online · 24/7Longview, TX · +1 323 412 0665
KinetikatechServers · Security · Websites
UK

Команди Linux і навички оболонки

curl: Веб-клієнт командного рядка, який запускає Інтернет

curl — це кишеньковий HTTP-клієнт кожного операційного інструментарію: діагностичний, зручний для конвеєрів і чесний щодо результатів. Поверхня його прапора виглядає величезною та здебільшого не в грі: близько дюжини прапорів охоплюють повсякденне оперативне використання, і їхнє знання є відмінністю між перевірками стану за сценарієм і щасливими. Правило, яке економить найбільше сторінок, є тривіальним: встановлюйте --max-time щоразу, тому що терпіння curl безмежне, а ваше — ні.

Головне

  • Подивіться, перш ніж завантажувати: curl -sSI https://host повертає метод, заголовки та статус без тіла; додайте -v, коли TLS рукостискання, проксі або заголовки хостів поводяться дивно.
  • Дисципліна тайм-ауту не обговорюється: --connect-timeout 5 руйнує мертві з'єднання, --max-time 15 руйнує повільні; перевірка працездатності без обох може пережити збій, який вона мала виявити.
  • Коди виходу є контрактом у сценаріях: 7 означає відмову в з’єднанні, 28 – час очікування, 22 – помилку HTTP, яку виявляє --fail; читайте код, а не лише вихідні дані, інакше ваш моніторинг нічого не дізнається.
  • Поєднання видимості з примусовим виконанням: -w '%{http_code} %{time_total}\n' повідомляє про те, що сталося, тоді як --fail-with-body відображає тіло помилки; без одного з них невдача виглядає точно як успіх.
  • Перевірте, що користувачі насправді потрапляють: --resolve example.com:443:10.1.2.3 перевіряє іменований сервер без ігор DNS, а -H 'Host: vhost.example.com' охоплює сторону vhost того самого запиту.
  • Передачі отримують навмисні позначки: -o називає вихід, -L слідує за перенаправленнями, які ви переглянули, --retry 3 --retry-delay 2 пом'якшує нестабільні висхідні потоки, а -F обробляє багатокомпонентні завантаження, про які wget ніколи не піклувався.
  • Заголовки та сокети містять небраузерний світ: -H 'Authorization: Bearer ...' для API та --unix-socket /run/app/app.sock для перевірки локальних служб, які взагалі ніколи не торкаються TCP.
  • Знайте про дві класичні пастки: змінні середовища проксі-сервера перехоплюють запит, який -v відкриває за секунди, і переспрямування, які мовчки перетворюють POST на GET, якщо ви не мали цього на увазі.

Польова нотатка

Перевірка працездатності, яка зависла протягом п’ятнадцяти хвилин, була curl без --max-time усередині циклу cron, і вона пережила збій, який вона мала виявити. За принципом, тайм-аути тепер вказуються перед URL-адресою.

Часті запитання

Чому curl вийшов із 0, коли сайт повернув 500?

успіх curl означає, що транспорт спрацював; Помилки на рівні HTTP невидимі без --fail (вихід 22) або читання %{http_code} з -w. Сценарії моніторингу наполягають на одному з двох.

curl чи wget для сценаріїв?

curl для API, заголовків, тіл POST і точного керування; wget для віддзеркалення та рекурсії. Для одноразового GET працює будь-який, а конвеєр, що змішує обидва, зазвичай свідчить про те, що ніхто не вирішив, кому належить завдання.

Чи виправдано пропуск перевірки TLS?

Для однієї інтерактивної діагностики проти самопідписаного лабораторного сертифікату, іноді; у будь-чому сценарному або керованому cron, ні. -k вимикає єдину перевірку, яка заважає людині посередині володіти вашим трансфером.

Як дізнатися, де насправді зупиняється повільний запит?

Змінні часу: -w 'dns:%{time_namelookup} connect:%{time_connect} tls:%{time_appconnect} ttfb:%{time_starttransfer} total:%{time_total}\n' запустити кілька разів, відокремлює нестабільність DNS від рукостискань і зупинок серверної частини.

Допомога Kinetikatech: команди linux і навички оболонки

Чесно: більшість команд приходить до нас, попередньо спробувавши все самі: Команди та сценарії, які вирішують, чи керує адміністратор сервером, чи бореться з ним: шукайте, трансформуйте, пересилайте та контролюйте текст і процеси за допомогою інструментів, які присутні в кожній базовій установці. Служба Безпека серверів Linux та Адміністрування серверів існує, щоб не доводилося опановувати команди linux і навички оболонки гірким досвідом — налаштування, нагляд і нічні сюрпризи о третій беремо на себе.

Поговорити з інженером

Проблема із сервером? Зламаний сайт? Повільна сторінка?

Критичні інциденти — відповідь за 30 хвилин, цілодобово, 7 днів на тиждень.

Запросити екстрену підтримку support@kinetikatech.com