[Linux] Просмотр логов в режиме реального времени

Просмотр в режиме реального времени состояния системного лога:

tail -f /var/log/syslog

А вот так можно посмотреть, скажем, access-лог сайта:

tail -f /var/www/httpd-logs/site.comaccess.log

[macOS] Индикаторы мониторинга системы для MenuBar

После того, как перешел на Mac OS, стал остро ощущать нехватку вывода различной системной информации в виде индикаторов, размещенных в MenuBar. К примеру, мне важно видеть, сколько оперативной памяти используется в данный момент, какова нагрузка процессора и скорость передаваемого сетевого трафика. Решить эту задачу смогла отличная бесплатная утилита мониторинга MenuMeters (текущая версия — 1.6.1), которая после установки прописывается в системных настройках Mac OS.

Настройки MenuMeters поделены на четыре раздела: CPU, Disk, Memory и Network. Естественно, можно выводить индикаторы в Menu Bar по каждому из представленных разделов. Настройки весьма гибкие и позволяют, к примеру, выводить не только числовые показатели, но и отображать их в виде графиков; можно задавать интервал обновления данных; доступно задавать пользовательский цвет конкретному индикатору и др.

MenuMetersMenubar

[macOS] Самопроизвольный выход из спящего режима

После покупки iMac я перестал выключать компьютер, а вместо этого использую режим сна. Все бы хорошо, но иногда компьютер сам произвольно выходил из сна. Лежу вечером, засыпаю, и тут бабах — вспышка! Что это??? Смотрю — монитор засветился, компьютер ожил. Мммм… Встаю, подхожу к столу, нащупываю кнопку «Power», жму. Mac вновь уходит в сон, а через какое-то время и я туда же. Сплю, потом что-то меня разбудило. С трудом открываю сонные глаза — опять этот свет! Опять иду к нему…

В общем, проблема была скорее всего в том, что в настройках «Экономия энергии» стояла галочка «Выводить из режима сна для доступа к сети». После того, как я ее снял, Mac больше сам уже не выходил из сна.

А если все же выйдет, то можно прибегнуть к детальному поиску виноватого в этом:

syslog |grep -i "Wake reason = "

Будет выведен код, который в данном случае указывает на причину выхода устройства из спящего режима. Подробнее о кодах можно почитать в этой статье.

[macOS] Установка неподдерживаемого сканера

Сегодня занялся подключением своего принтера и сканера к новому iMac’у. С подключением и настройкой принтера проблем не возникла (все таки он у меня еще довольно современный и в составе Mac OS X есть необходимые драйвера), а вот со сканером Epson Perfection 660 (модель 6650) пришлось повозиться. При подключении к компьютеру он никаким образом не опознавался. Гугление показало, что для таких ситуаций, когда ни в составе OC, ни на сайте производителя нет соответствующих драйверов, можно воспользоваться решением под названием SANE (переводится побуквенно как Scanner Access Now Easy).

И так, что нужно: зайти на страницу загрузки, и поочередно загрузить, а затем установить следующие бинарные файлы: libusb, SANE backends, TWAIN SANE Interface и SANE Preference Pane.

После чего нужно зайти в «Системные настройки» и убедиться, что появился пункт «SANE» (если нет, то, возможно, потребуется перезайти в систему). Щелкаем по пункту «SANE», и на вкладке «Драйвера» убеждаемся, что драйвер «snapscan» активен (если нет, то делаем его таковым).

Теперь идем на сайт Epson и загружаем Win-драйвер. В архиве находим файл «TAIL_061.BIN» и копируем его в директорию /usr/local/share/sane/snapscan.

Теперь в терминале выполняем команду:

sudo nano /usr/local/etc/sane.d/snapscan.conf

и указываем путь до нашего драйвера:

# firmware upload is needed by the scanner
firmware /usr/local/share/sane/snapscan/TAIL_061.BIN

Если сканер уже был до этого подключен к компьютеру, то перетыкаем USB-кабель и следующей командой проверяем, что сканер обнаружился:

sane-find-scanner

Она мне показала следующее:

...
found USB scanner (vendor=0x04b8 [EPSON], product=0x0114 [EPSON Scanner]) at libusb:001:004-04b8-0114-ff-ff
...

Отлично, сканер обнаружен и готов к работе.

Теперь осталось найти программу для сканирования. Я, лично, воспользовался VueScan, который без проблем при старте подключился к сканеру и был готов начать свою непосредственную работу.

GRUB: Выбор приоритета загрузки ОС

На дня потребовалось сделать так, чтобы на ноутбуке с двумя ОС (Ubuntu и Windows) по умолчанию загружалась именно Windows.

Что для это нужно: во время показа GRUB-экрана сосчитать количество отображаемых строчек (в моем случае их было пять) и вычистить от этого числа единицу (т.е. получаем четверку). Далее загрузиться в Ubuntu и в терминале ввести:

sudo nano /etc/default/grub

Изменить значение GRUB_DEFAULT=0 на 4.

После чего нужно обновить GRUB:

sudo update-grub

Команды a2enmod / a2dismod и a2ensite / a2dissite

Несколько полезных команд Apache:

a2enmod {modname} – подключение модуля (например «a2enmod rewrite» – подключает mod_rewrite)
a2dismod {modname} – отключение модуля (например «a2dismod rewrite» – отключает mod_rewrite)

Сами же модули находятся в следующих директориях:

/etc/apache2/mods-available – доступные модули
/etc/apache2/mods-enabled – задействованные модули (содержит ссылки на модули из директории ‘mods-available’)

a2ensite {vhost_conf_name} – подключает виртуальный хост (например «a2ensite default»)
a2dissite {vhost_conf_name} – отключает виртуальный хост (например «a2dissite default»)

[macOS] Освобождение неактивной памяти

Чтобы освободить память от неактивных данных, которые после закрытия программы резервируются на некоторое время (для ускорения последующего запуска такой программы), то достаточно в терминале ввести команду purge.

[macOS] Про режимы гибернации

Существует три режима гибернации:

hibernatemode 0 — режим сна (все данные сохраняются в оперативной памяти)
hibernatemode 25 — гибернация (все данные сохраняются на диске)
hibernatemode 3 — комбинация режимов 0 и 25 (т.е. данные сохраняются и на диск, и в память)

По умолчанию для декстопных компьютеров задействован режим 0, а для ноутбуков — режим 3.

Посмотреть текущий режим можно с помощью следующей команды:

pmset -g | grep hibernatemode

Изменение режима гибернации:

sudo pmset -a hibernatemode CODE

Сам файл гибернации располагается по следующему пути: /private/var/vm/sleepimage

[macOS] Добавление PATH Environment

Добавить переменные среды в MacOS можно следующим способом: в домашней директории пользователя есть скрытый файл .profile, куда как раз таки и необходимо записать переменные.

Открывает этот файл в редакторе:

nano ~/.profile

Добавляем переменную (к примеру, путь до Android SDK):

export PATH=$PATH:~/Application/AndroidSDK/tools

Сохраняем, закрываем, и выполняем следующую команду, чтобы значения данного файла были прочитаны:

source ~/.profile

Проверяем:

echo $PATH