# Linux - Журналы, демоны, команды ###### `Linux` `CLI` ## Журналы Linux |Журнал| Назначение| | ------- | ------- | | /var/log/messages | содержит глобальные системные логи Linux, в том числе те, которые регистрируются при запуске системы. В этот лог записываются несколько типов сообщений: это почта, cron, различные сервисы, ядро, аутентификация и другие. | | /var/log/dmesg | содержит сообщения, полученные от ядра. Регистрирует много сообщений еще на этапе загрузки, в них отображается информация об аппаратных устройствах, которые инициализируются в процессе загрузки. Можно сказать это еще один лог системы Linux. Количество сообщений в логе ограничено, и когда файл будет переполнен, с каждым новым сообщением старые будут перезаписаны. Вы также можете посмотреть сообщения из этого лога с помощью команды dmseg. | | /var/log/auth.log | содержит информацию об авторизации пользователей в системе, включая пользовательские логины и механизмы аутентификации, которые были использованы. | | /var/log/boot.log | Содержит информацию, которая регистрируется при загрузке системы. | | /var/log/daemon.log | Включает сообщения от различных фоновых демонов | | /var/log/kern.log | Тоже содержит сообщения от ядра, полезны при устранении ошибок пользовательских модулей, встроенных в ядро. | | /var/log/lastlog | Отображает информацию о последней сессии всех пользователей. Это нетекстовый файл, для его просмотра необходимо использовать команду lastlog. | | /var/log/maillog /var/log/mail.log | журналы сервера электронной почты, запущенного в системе. | | /var/log/user.log | Информация из всех журналов на уровне пользователей. | | /var/log/Xorg.x.log | Лог сообщений Х сервера. | | /var/log/alternatives.log | Информация о работе программы update | | /var/log/btmp | лог файл Linux содержит информацию о неудачных попытках входа. Для просмотра файла удобно использовать команду last | | /var/log/cups | Все сообщения, связанные с печатью и принтерами. | | /var/log/anaconda.log | все сообщения, зарегистрированные при установке сохраняются в этом файле | | /var/log/yum.log | регистрирует всю информацию об установке пакетов с помощью Yum. | | /var/log/cron | Всякий раз когда демон Cron запускает выполнения программы, он записывает отчет и сообщения самой программы в этом файле. | | /var/log/secure | содержит информацию, относящуюся к аутентификации и авторизации. Например, SSHd регистрирует здесь все, в том числе неудачные попытки входа в систему. | | /var/log/wtmp или /var/log/utmp | системные логи Linux, содержат журнал входов пользователей в систему. С помощью команды wtmp вы можете узнать кто и когда вошел в систему. | | /var/log/faillog | лог системы linux, содержит неудачные попытки входа в систему. Используйте команду faillog, чтобы отобразить содержимое этого файла. | | /var/log/mysqld.log | файлы логов Linux от сервера баз данных MySQL. | | /var/log/httpd/ или /var/log/apache2 | лог файлы linux11 веб | | /var/log/lighttpd/ | логи linux веб | | /var/log/conman/ | файлы логов клиента ConMan, | | /var/log/mail/ | в этом каталоге содержатся дополнительные логи почтового сервера | | /var/log/prelink/ | Программа Prelink связывает библиотеки и исполняемые файлы, чтобы ускорить процесс их загрузки. /var/log/prelink/prelink.log содержит информацию о .so файлах, которые были изменены программой. | | /var/log/audit/ | Содержит информацию, созданную демоном аудита auditd. | | /var/log/setroubleshoot/ | SE Linux использует демон setroubleshootd (SE Trouble Shoot Daemon) для уведомления о проблемах с безопасностью. В этом журнале находятся сообщения этой программы. | | /var/log/samba/ | содержит информацию и журналы файлового сервера Samba, который используется для подключения к общим папкам Windows. | | /var/log/sa/ | Содержит .cap файлы, собранные пакетом Sysstat. | | /var/log/sssd/ | Используется системным демоном безопасности, который управляет удаленным доступом к каталогам и механизмами аутентификации. | ## Демоны | Процесс\Демон | Описание | | ------- | ------- | | auditd | auditd - это компонент аудита Linux систем. Ведёт протокол аудита на диске, который можно просмотреть с помощью комманд ausearch и aureport. Команда auditctl даёт возможность настроить правила для аудита. Более того, при старте загружаются правила содержащиеся в файле /etc/audit.rules. Некоторые же параметры самого демона можно настроить в файле auditd.conf. | | acpid | acpid (ACPI event daemon) - демон для реакции на ACPI события, например, реакция на нажатие кнопки питания или закрытия крышки ноутбука. Управление питанием и взаимодействие Linux с BIOS через ACPI (Advanced Configuration and Power Interface) и APM. Режимы "засыпания" ACPI: S1 - все спит, CPU в режиме минимальной активности; S3 - "Suspend to RAM" - все засыпает, CPU отключается; S4 - "Suspend to Disk" дамп состояния сохраняется на диск, система отключается, после включения работа системы восстанавливается с прежнего места; S5 - программное выключение питания. http://acpid.sourceforge.net/ | | atd | выполняет очередь заданий at(1) | | autofs | Формат таблицы автомонтирования. Таблицами (map-файлами) автомонтирования могут являться файлы, либо таблицы NIS, на которые ссылается основная (master) таблица автомонтирования (см. auto.master(5)). В таблицах описывается расположение файловых систем, которые автоматически подмонтируются к базовым точкам монтирования (задаваемых в файле auto.master). Здесь описывается формат таблицы sun, для другого формата (например, hesiod) этот документ не применим. |- - -| Таблицы можно редактировать `на лету' -- эти изменения будут учтены при следующей операции с данной таблицей. Однако это не относится к основной таблице auto.master! | | biod | Работает совместно с удаленным nfsd для разрешения клиентских запросов NFS. | | certmonger | Демон certmonger отслеживает и проверяет сертификаты на истечение срока их действия, и опционально может обновить сертификаты с помощью CA. Он может управлять всем процессом регистрации от генерации ключа до регистрации и обновления. | | cgconfig | Этот скрипт запускает утилиту cgconfigparser, которая анализирует и настраивает the control group filesystem (cgroup). Для анализа используется конфигурационный файл /etc/cgconfig.conf и определённые в нём параметры. | | cgred | Демон управляющий правилами cgroup :) | | cpufreq | Скрипт подгружаюет модули ядра для управления частотой процессора. | | cpuspeed | Изменяет частоту ЦПУ с целью экономии энергии. Многие современные ноутбуки и настольные ПК поддерживают эту технологию. Его могут использовать пользователи с процессорами Pentium-M, Centrino, AMD PowerNow, Transmetta, Intel SpeedStep, Athlon-64, Athlon-X2, Intel Core 2. Пользователям ноутбуков этот демон рекомендуется оставить включенным. Выключите этот демон, если нужно чтобы CPU использовал фиксированную величину частот. | | crond | | | cupsd | Сервер работы с печатью. Как доступ к удаленным принтерам, доступ к локальным, доступ извне к локальным. | | dbus | Система межпроцессного взаимодействия (Более широкий аналог CORBA и DCOP) | | dbus-daemon | Демон для работы с шиной данных | | dhcpd | Демон динамического определения конфигурации TCP/IP для клиентов. | | dnsmasq | Демон, кэширующий DNS имена и предоставляющий DHCP-сервер. | | earlysyslog | Запуск демона syslog, обеспечивает ведение логов. | | earlyxdm | Запуск X-сервера | | esound | Демон звука, с поддержкой удаленного доступа к звуковой карте | | esd | Звуковой сервер для оконного менеджера Enlightenment и среды GNOME. ESD смешивает звуковые потоки нескольких одновременно выполняемых программ и выводит получающийся поток на звуковую плату. Принадлежит пакету esound. | | fam | FAM (File Alteration Monitor) - монитор изменения файлов. Демон FAM используется окружениями рабочего стола, такими как GNOME, Xfce и KDE для отслеживания и отображения изменений, вносимых в файловую систему. Входит в состав пакета fam. Имеет описание на wiki.archlinux.org. | | fancontrol | Контроль скорости вращения кулера CPU. Входит в состав lm_sensors. | | fbset | Скрипт, необходимый для работы фреймбуфера. Настраивает его работу, в том числе подгружает модули ядра. | | festival | Демон, дающий возможность работать программам по чтению текстов. | | fingerd | Обеспечивает сетевой интерфейс для протокола finger, для использования команды finger. | | firstboot | Сервис специфичный только для Fedora. Запускается только один раз после установки для после инсталяционной настройки (задание пароля root, добавление пользователей и прочее). Может быть выключен после установки системы. | | ftpd | Служба для передачи файлов по FTP протоколу. | | functions | Один из системных скриптов инициализации Arch Linux. В нём описаны функции переопределяющие значения используемые при загрузке в runlevel 3. Скрипт используется только, если пользователь использует runlevel 5. Входит в состав initscripts. | | gpm | Cервер мыши для консоли и xterm. Содержится в одноимённом пакете. | | gpsd | Интерфейс для связи с GPS оборудованием. Большая часть пользователей может выключить его. | | haldaemon, hal | HAL расшифровывается как Hardware Abstraction Layer. Критичный сервис для сбора информации об оборудовании из разных источников. Рекомендуется оставить его включенным. | | halt | Скрипт выключения и перезагрузки. | | halt.local | Скрипт, команды которого должны быть выполнены до начала выключения или перезагрузки. | | healthd | Настраивает рабочий диапазон температур материнской платы/процессора, частот вращения кулеров. Является одним из компонентов lm_sensors. | | heimdal-kdc | Центр распределения ключей. Входит в пакет heimdal. | | httpd | Демон Веб-сервера Apache. | | init | Unix программа, которая порождает все остальные процессы. | | | | | | По умолчанию в демоне init определенно 7 уровней выполнения, на каждом из этих уровней выполняется заранее определенный набор системных служб. | | | | | | Уровни запуска: | | | 0 - Выключение системы | | | 1 - Однопользовательский режим работы | | | 2-5 - Многопользовательские режимы работы системы | | | 6 - Перезагрузка системы | | | | | | Более подробно про уровни запуска: less /etc/inittab | | inetd | Прослеживает сетевые запросы. При допустимом запросе запускает фоновый процесс для обслуживания запроса. В некоторых системах используется расширенная версия — xinetd | | iptables | Стандартный брандмауэр в Linux. Особо рекомендуется при непосредственном подключении к сети Интернет (по кабелю, DSL, T1). Не рекомендуется если дополнительно используется аппаратный фаервол (Netgear, Linksys, D-Link и пр.). | | ip6tables | Сервис iptables работающий по IPv6 протоколу. Если вы выключили поддержку IPv6, то этот сервис должен быть отключен. В ином случае рекомендуется оставить его включенным. | | irda | IrDA нужна для поддержки устройств, которые работают через инфракрасный порт (ноутбуки, PDA, мобильные телефоны, калькуляторы (прим. переводчика: калькуляторы? о_О), и т.д. Большинство пользователей может выключить его. | | irexecd | Демон для инфракрасника. Поставляется с lirc-utils. | | irqbalance, irq_balancer | В многопроцессорных системах служит для распределения прерываний между процессорами. Пользователи не имеющие многопроцессорных компьютеров/ноутбуков, могут отключить данный демон/сервис. Включение этого сервиса на одно процессорном компьютере не даст никакого эффекта. На новых компьютерах с более чем одним процессором (Intel Core 2 Duo, AMD X2) этот сервис должен быть включен. | | ivman | Демон отвечающий за автомонтировании устройств в системе(CD-дисков, USB-дисков и т.д.) | | jackd, jack-audio-connection-kit | Аудио сервер | | jexec | Обеспечивает поддержку для запуска и работы приложений на java - JAR. Будет доступен, если вы установите Java от Sun. Является необязательным и может быть отключен. | | joystick | Скрипт подгружающий модули ядра для работы джойстика. | | kadmind | Демон для определения учётных записей, имеющих доступ к базе данных Kerberos и их уровень доступа. Является одним из компонентов пакета heimdal. | | kdump | kdump - display kernel trace data. The command displays the kernel trace files produced with ktrace(1) in human readable format. By default, the file ktrace.out in the current directory is displayed. | | kbd | Настройка клавиатуры в виртуальном терминале. | | kdm | KDM (KDE Display Manager) — одна из программ пакета kdebase (входящего в состав KDE), которая предоставляет возможность входа в систему посредством графического интерфейса. | | kpasswd | Демон для смены пароля в Kerberos. Является одним из компонентов пакета heimdal. | | ksysguardd | Демон KDE для мониторинга системы. | | libvirtd | Демон для управления гостевыми машинами и сетями QEMU. | | libvirt-guests | Скрипт отправляющий в спящий режим гостевые операционные системы при выключении и пробуждающий их при загрузке. | | lircd | Демон LIRC расшифровывающий сигналы поступающие с ИК-порта. Поставляется с lirc-utils. | | lircmd | Демон LIRC транслирующий сигналы мыши. Поставляется с lirc-utils. | | lvm2-monitor | Демон для мониторинга LVM (Logical Volume Management). Рекомендуется если вы используете LVM, иначе оставьте его выключенным. | | lpd | «Line Printer Daemon» - протокол служит для управления спулом печати. | | mdadm | Демон ведущий наблюдение за MD устройствами (программным RAID в Linux). | | mdmonitor и mdmpd | Эти два демона используются в системах хранения данных с RAID-массивами (redundant array of inexpensive/independent disks). Mdmonitor запускает, останавливает и перезапускает mdadm (multipath device monitoring and management) - программную службу мониторинга и управления RAID. Запускать эту службу нужно только в том случае, если в вашей системе имеются RAID-устройства. | | messagebus | Сервис межпроцессного взаимодействия для Linux. Критичный компонент поскольку связан с D-BUS. Крайне рекомендуется оставить его включенным. | | microcode_ctl, microcode.ctl | Сервис позволяющий обновлять прошивку процессора Intel (Pentium Pro, PII, Celeron, PIII, Xeon, Pentium 4 и так далее). Обновления записываются каждый раз при загрузке. Должен быть включен только если у вас процессор Intel. | | mcelog, mcelogd | Для мониторинга аппаратных проблем в 64-разрядных сборках Linux удобно использовать пакет mcelog, анализирующий MCE (Machine Check Exception) состояние в CPU AMD и Intel, которое может указать на проблемы с памятью и с кэшем CPU, ошибки обмена данными между CPU и чипсетом материнской платы. | | mpd | Music Player Daemon — музыкальный проигрыватель имеющий клиент-серверную архитектуру, который воспроизводит музыку из указанного каталога. | | multipathd | Используется для мониторинга за Multi-Path устройствами, то есть накопителями, доступ к которым может осуществляться более чем одним контроллером или методом. | | mysqld, mysql | Демон базы данных MySQL | | nfsd | Процесс NFS операторских запросов для клиентских систем. Исторически каждый nfsd демоном поддерживает один запрос за раз, по этому запускается несколько копий. | | netconsole | Позволяет экспортировать консоль на другую машину по сети. По умолчанию может быть выключенным. | | netfs | Во время загрузки автоматически монтирует файловые системы доступные по сети (NFS, Samba и прочих). Большая часть пользователей настольных ПК и/или ноутбуков могут выключить его. | | network | Демон, отвечающий за создание и настройку локальных сетевых интерфейсов(LAN) | | network-remotefs | То же самое, что и предыдущий, но дополнительно поднимает wireless-интерфейсы | | nfs, nfslock | Сервисы обеспечивают работу стандартной сетевой файловой системы для ОС Unix/Linux и BSD. Если нужно открыть доступ по NFS, оставьте его включенным, иначе можно выключить. | | nginx | nginx - веб-сервер и почтовый прокси-сервер, работающий на Unix-подобных операционных системах. | | nmbd | Используется Samba. Смотрите Samba ниже. | | nscd | Демон сервера кеширующего имена и пароли используемые сервисами типа NIS, NIS+, LDAP, hesiod. Может быть выключен. | | nslcd | local LDAP name service daemon. | | ntpd | NTP демон, который управляет синхронизацией времени по сети. xntpd снабжён 3-й версией стандарта NTP. | | ntpdate | | | oddjobd | The oddjobd daemon provides the com.redhat.oddjob service on the system-wide message bus. Each facility which oddjobd provides is provided as a separate D-Bus method. | | openntpd | Сервер и клиент для синхронизации времени. | | openvpn | Обеспечивает безопасный метод создания VPN. Для дополнительной информации смотрите OpenVPN. Может быть отключен, если его не использует NetworkManager. | | pcmcia | Предоставляет поддержку карт расширения стандарта pcmcia. Обычно используется только в ноутбуках. | | pcscd | Предоставляет поддержку для кардридеров и смарт карт. Если нет кардридера или смарт-карт, то можно выключить этот сервис. Часто имеются в наличии на ноутбуках. | | portreserve | Предотвращает доступ к реальным портам для различных RPC служб и предоставляет приоритет зарезервированным приложениям. Более детальную информацию можно найти на странице руководства man portreserve. Рекомендуется оставить включенным. | | powerfail | Этот скрипт запускается при обнаружении сообщений от UPS | | postfix | Программа управления почтовой системой Postfix | | pppd | Демон протокола точка-точка (Point-to-Point Protocol Daemon) | | ppp | Скрипт для работы с демоном pppd. | | psacct | Управляет процессами ядра Linux. Занимается мониторингом. | | purge-kernels | Скрипт для автоматического удаления старых ядер (настраивается в /etc/zypp.conf) | | quota_nld | quota netlink message daemon | | raw | Скрипт подгружает модули raw-устройств. | | rdisc | Демон поиска сетевого шлюза, rdisc выступает клиентом протокола поиска шлюза по ICMP. rdisc вызывается при загрузке для получения таблиц маршрутизации сети с шлюзами по умолчанию. | | rdate | служба нужна для синхронизации компьютера с сервером времени при загрузке операционной системы. Можно отключить. | | restorecond | Используется для восстановления контекста и наблюдения за политикой SELinux относящейся к файлам. Сервис не обязателен, но рекомендован при использовании SELinux. | | rngd | rngd - Check and feed random data from hardware device to kernel random device. Дословно можно перевести как демон проверяющий и получающий случайные данные от аппаратных устройств для ядра случайных устройств - лихо как закручено:), random number generator daemon, по русски демон генерации случайных чисел. | | rpcbind | Демон для управления RPC, которые используются другими сервисами (как NFS или NIS). Работает подобно portmap. Может быть отключен, если нет других сервисов, зависящих от этого. | | rpcgssd, rpcidmapd, rpcsvcgssd | Используются NFS v4 (Network File System). Выключите, если вам не нужен NFS v4. http://ru.wikipedia.org/wiki/Network_File_System | | rsyslog | rsyslog служит для удобного сбора и обработки системных логов и позиционирует себя как расширенный модуль syslogd для систем Unix и Linux, акцентированный на безопасности и надежности, а также обладает продвинутой многопоточностью. Rsyslog предлагает широкий круг возможностей, с которым можно ознакомится перейдя по ссылке – RSyslog features. http://www.rsyslog.com/module-Static_Docs-view-f-features.html.phtml | | rsync | rsync (Remote Synchronization) — программа для UNIX-подобных операционных систем, выполняющая синхронизацию каталогов и файлов в нескольких местах с минимизацией трафика, используя кодирование данных при необходимости. rsync была создана как замена для rcp и scp. Подробнее... | | saslauthd | Демон сервера аутентификации SASL. SASL (Simple Authentication and Security Layer) предоставляет возможность аутентификации в протоколах, основанных на удаленных соединениях. | | samba, smbd | Демон сервера samba. | | sendmail | Обеспечивает поддержку локального IMAP или POP3 сервиса, оставьте его включенным. Сервис может оказаться полезным для оповещения про активность различных демонов/сервисов, которые можно обеспечить посредством cron или отправки почты из РНР скриптов. | | sensord | Демон из состава lm_sensors, собирает информацию от различных датчиков. | | sensors | Скрипт который по необходимости подгружает нужные модули ядра для работы с lm_sensors. | | shorewall | Скрипт для управления фаерволлом shorewall. | | slim | Login manager для иксов. | | smartd | Демон SMART наблюдающий за дисками. Используется для предсказания отказов работы и мониторинга дисков или проблем с жёстким диском. Обычно пользователи не нуждаются в этом демоне но, всё таки рекомендуется (особенно для серверов) оставить его включенным. | | smb | Демон SAMBA требуется для открытия общего сетевого доступа к файлам на Linux для Windows пользователей. Должен быть включён если вы имеете в сети машины на Windows, которым требуется предоставить доступ к файлам. | | smolt | Демон, который ежемесячно отправляет информацию с целью сбора статистики, для того чтобы помочь разработчикам. Статистика доступна всем. Пользователи, который желают помочь разработчикам должны включить этот сервис включенным. | | snmpd, snmptrapd | Обеспечивают поддержку SNMP (Simple Network Management Protocol), который может использоваться для управления и настройки устройств таких как сетевые хабы, серверы, принтеры, и т.д. и т.п. Может быть отключен, однако может потребоваться для запуска сервисов печати HP (hplip). | | squid | Демон прокси-сервера Squid. | | sshd | Прослушивает запросы secure shell от клиентов. SSH позволяет другим пользователям войти в систему по сети с другого компьютера и запустить приложения на вашем компьютере, обычно используется для удалённого администрирования. Это может быть потенциальной угрозой для безопасности. На рабочих станциях не требующих удалённого доступа желательно выключить его. | | sssd | SSSD (System Security Services Daemon) позволяет обращаться к удаленным механизмам аутентификации. Таким образом стирается грань меж сетевой и локальной аутентификацией и разрешает использование различных механизмов. Информацию о пользователях передаёт база данных, которая называется доменом и может быть источником данных для удаленной аутентификации. Разрешается использование нескольких механизмов, что позволяет нескольким серверам реализовывать различные пространства имен. Полученная информация предоставляется внешним приложениям при помощи стандартных интерфейсов NSS и PAM. | | | | | | SSSD выполняется как набор служб, которые независят от приложений их вызывающих, а поэтому приложениям необязательно инициировать к удаленным доменам собственные подключения, а также не требуется знать о том, какой именно демон/служба используется в этот момент. Локальное кэширование информации о группах и данных идентификации позволяет независимо от источника данных (LDAP, NIS, IPA, DB, Samba и т.п.) продолжать работу в автономном режиме, что в целом повышает производительность. SSSD может допускать использование нескольких поставщиков одного типа (например, LDAP). | | svnserve | Демон сервера svn. | | sysstat | Пакет Sysstat содержит утилиты для мониторинга быстродействия системы и используемых ресурсов. | | swapper | Копирует местный процесс в пространство swap для исправления физической страницы памяти для ядра. Также называется sched. | | syslogd | Системный процесс записи различных системных сообщений. | | syncd | Периодически синхронизирует с системной памятью установленные системные файлы. | | syslog-ng | Демон ведущий системные журналы. | | udev-post | Системный менеджер устройств, который используется udev. По умолчанию udev поддерживает многочисленное число правил, поведений и прав для устройств. С помощью этого сервиса можно безопасно управлять правилами. Рекомендуется оставить его включенным. | | vhand | Освобождает страницы памяти для использования другими процессами. Также известен как «page stealing daemon». | | vsftpd | vsftpd (Very Secure FTP Daemon - Очень Безопасный FTP Демон) — FTP-сервер поддерживающий IPv6 и SSL. | | | | | | По умолчанию vsftpd используется во многих UNIX-подобных операционных системах, также обслуживает официальные репозитории ftp.openbsd.org, ftp.freebsd.org, ftp.debian.org, ftp.redhat.com и используется на официальном FTP-сервере ядра Linux. | | webmin | Сервис управления системой через браузер (web-интерфейс). | | winbind | Сервис помогающий различать в сети имёна компьютеров под управлением Windows. Может применяться для управления учётными записями Windows с Linux аккаунтов. Обычно большинство пользователей в этом демоне не нуждается и могут оставить его выключенным. | | wpa_supplicant | Сервис нужен для работы с беспроводными картами, которые для соединения с точками доступа (VPN или Radius серверами) требуют WPA шифрования. Большинство пользователей могут его оставить выключенным. | | xfsd | Обслуживает X11 шрифты для удалённых клиентов. | | yam | служба обновления установленных в системе rpm-пакетов. Используется преимущественно в Fedora Core. | | ypbind | Сервис служит для NIS аутентификации по сети. Если NIS аутентификация неиспользуется, то можно выключить его. | | zvbid | Сервис, с помощью которого предоставляется доступ из V4L или V4L2 устройств к нескольким приложениям. Например карта для захвата Hauppage может использовать этот сервис, в остальных случаях его можно выключить. | ``` ``` ## Полезные команды | Команда | Назначение | | ---- | ---- | | du -sh /* | Объём занимаемого дискового пространства в указанной директории| | cat /etc/*release | Версия ОС| ```bash= du -k --max-depth=1 | sort -nr | awk \' BEGIN { split("KB,MB,GB,TB", Units, ","); } { u = 1; while ($1 >= 1024) { $1 = $1 / 1024; u += 1 } $1 = sprintf("%.1f %s", $1, Units[u]); print $0; } ' ```