Системным администраторам и экспертам по Linux необходимо хорошо разбираться в командной строке, включая различные важные команды, которые помогают им проводить аудит систем. Одной из таких команд является uptime.
uptime это показатель, который измеряет надежность и стабильность системы. Он представлен в процентах от времени, в течение которого система остается непрерывно работоспособной и доступной для использования. Если время безотказной работы системы велико, это указывает на то, что она более надежна и стабильна. Информация о времени безотказной работы важна, поскольку она помогает отслеживать, как долго система работала (или безотказно работала) с момента последней перезагрузки или завершения работы.
Как и должно звучать, команда uptime используется для отображения того, как долго система работала или оставалась активной. Эта команда извлекает следующую информацию:
Вы можете вызвать команду uptime, используя следующий синтаксис:
uptime
Например, при выполнении команды uptime в системе Linux отобразится результат, аналогичный:
20:11:37 up 172 days, 22 min, 4 users, load average: 0.23, 0.54, 0.31
В приведенном выше выводе, 20:11:37 – текущее системное время; 172 дни, 22 мин – время безотказной работы системы; 4 – количество активных пользователей; и 0.23, 0.54, 0.31 – среднее время загрузки системы за последние одну, пять и пятнадцать минут соответственно.
Вы также можете вызвать команду uptime с различными параметрами для настройки отображаемой информации, используя следующий синтаксис:
uptime [options]
Следующие параметры используются с uptime для получения конкретных сведений о системе:
Вы также можете прочитать файл /proc/uptime, чтобы получить время безотказной работы системы. /proc – это виртуальная или псевдофайловая система, также известная как псевдофайловая система с информацией о процессе. Он содержит информацию о системе и процессах, запущенных в ней в данный момент. Файлы в каталоге /proc содержат подробную информацию о ядре, процессах, системной памяти и конфигурации оборудования.
/proc – Файловая система создается при загрузке системы и удаляется при завершении работы системы.
В каталоге /proc содержится файл с именем /uptime, который предоставляет следующую информацию:
В многоядерной системе второе значение в /proc/uptime – это общее время простоя каждого процессора. Например, если четырехъядерный процессор простаивает в течение 1 секунды, то общее время простоя системы составит 4 секунды. Следовательно, общее время простоя системы может быть больше, чем общее время безотказной работы системы в многоядерных системах.
Например, выполнение команды cat /proc/uptime в системе Linux восстанавливает файл /proc/ uptime со следующей информацией:
1629.24 4171.98
В приведенных выше выходных данных 1629.24 – время безотказной работы системы и 4171.98 – время простоя системы. Очевидно, что время простоя системы больше, чем время безотказной работы системы.
Существует множество команд, отображающих время безотказной работы системы, таких как uptime, w и top. В отличие от файла /proc/uptime, эти команды отображают время безотказной работы в привлекательном формате или удобочитаемой форме.
Итак, какая польза от файла /proc/uptime, если уже существуют различные команды, служащие одной и той же цели?
Как и любой другой файл в файловой системе proc, содержимое файла /proc/ uptime генерируется “на лету”. Это означает, что всякий раз, когда вы просматриваете содержимое файла, ядро пересчитывает значение времени безотказной работы и простоя, а затем отображает результат. Итак, файл /proc/uptime на самом деле является наиболее точным источником информации для каждой команды, которая имеет дело со временем безотказной работы и простоя.
Такие команды, как uptime и w, используют выходные данные этого файла для измерения времени безотказной работы в секундах, а затем отображают их в различных форматах. Аналогично, команда top использует оба значения, найденные в файле /proc/uptime, для вычисления процента времени простоя процессора.
Другое применение файла /proc/uptime заключается в том, что вы можете прочитать его в своих пользовательских скриптах и использовать его выходные данные для различных вариантов использования. Например, если сервер необходимо перезагружать каждый месяц для установки последних исправлений безопасности и обновлений встроенного программного обеспечения, можно создать простой скрипт для непрерывного чтения выходных данных файла /proc/uptime. Как только первое значение времени безотказной работы превысит 2 592 000 (при условии, что 30 дней в каждом месяце), система автоматически перезагрузится или отправит уведомление системному менеджеру.
Для просмотра времени безотказной работы системы можно использовать uptime и /proc/uptime. На приведенной ниже диаграмме показаны основные различия между ними:
uptime | /proc/uptime |
---|---|
Это команда Linux | Это псевдофайл в Linux |
Отображает время безотказной работы в удобочитаемом формате | Время безотказной работы отображается с разбивкой по секундам |
Не отображает время простоя процессора | Отображает время простоя процессора |
Использует значение времени безотказной работы, присутствующее в выходных данных файла /proc/uptime | Ядро генерирует этот файл “на лету”, когда вы отображаете содержимое этого файла |
Может использоваться с различными опциями для отображения настроенной или отфильтрованной информации о времени безотказной работы | Не предоставляет опций для настройки или фильтрации информации о времени безотказной работы |
Может отображать текущее время, время загрузки и средние значения загрузки системы | Отображает только информацию о времени безотказной работы и времени простоя |
Время безотказной работы Linux – важный показатель, который показывает, как долго работает система или сколько времени прошло с момента последней перезагрузки системы. Его также можно рассматривать как продолжительность, в течение которой система может оставаться без присмотра без сбоев.
Команда uptime – одна из наиболее часто используемых команд для определения времени безотказной работы системы, поскольку она предоставляет дополнительную системную информацию, такую как текущее время, количество активных пользователей и средние значения нагрузки. В файле /proc/uptime отображается время безотказной работы в секундах (вместо хорошо понятного формата времени в часах, минутах и секундах), что поначалу может быть непросто для понимания. Возможно, именно поэтому uptime не является такой популярной командой или используется не так широко.
Тем не менее, этот файл является наиболее точным источником для команды uptime, а также других, таких как top и w, которые имеют дело со временем безотказной работы и простоя. Упомянутые в этой статье различия между uptime и /proc/uptime могут помочь системным администраторам и экспертам по Linux определить, какая команда лучше всего подходит для их конкретного варианта использования.