Найти всех пользователей с UID больше заданного

Опять же, полезный однострочник, для выковыривания списка реальных пользовательских учеток в Linux.
Как правило, в зависимости от дистрибутива, пользовательские аккаунты создаются с UID выше определнного (500, 1000). Те UID что меньше — как правило системные. Данный однострочник выводит пользовательские, с UID выше 500:

cat /etc/passwd| awk -F ":" '$3 > 500 {print $0}'

grep — сравнение двух файлов и вывод несовпадающих строк

Нашел архиполезную опцию grep.

Задача: сравнить два текстовых файла-списка, и выдать все строки, которые присутствуют только в одном из файлов.

Решение: grep -f ./file1 -vFx ./file2

Получаем на выходе все строки из файла file2, которых нет в file1. Строки которые есть в file1 не выводятся, соответственно.

Mac OS X Mountain Lion: Решение проблемы WiFi на MacBook Air 2011

Как и многие, столкнулся с неприятной проблемой, после обновления своего Air 2011 года до Mountain Lion.
Ноут перестал подключаться к сетям WiFi. Даже если подключение происходило, на иконке WiFi подключения горел желтый восклицательный знак, типа нет соединения с Интернет. Хотя соединение на самом деле было. Однако, связь рвалась каждые 10 минут, при том что точка доступа стояла рядом не столе. В общем не работа, а бардак.
Решение странное. Было обнаружено на одном из забугорных форумов. Объяснить почему это работает, я на данный момент не берусь. Слава Богу работает… Собственно решение: Читать далее

Массовое обновление serial в зонах DNS bind.

Сегодня быстрый пост. Из серии, чтобы не забыть.
Недавно переживали перенос ДНС. Перенос был достаточно сложный, с консолидацией трех ДНС серверов в один и переезд с bind на PowerDNS. Но сейчас не об этом. Просто однострочник на sed для обновления serial в большом количестве зон bind:

sed 's/[0-9]\{10\}/2012071400/g' ./*

Данный однострочник заменит все 10-ти значные числа, на текущий номер зоны, который, напомню, по стандарту должен состоять из 10 цифр.
4 цифты — год, 2 цифры — месяц, 2 цифры день и последние две цифры номер изменения за день.
Есть подводный камень в использовании sed на FreeBSD. По умолчанию, с BSD поставляется BSD-sed, что логично, ибо BSD. Но большинство примеров в сети могут не работать или работать неправильно, ибо написаны под GNU версию SED. Решается установкой из портов gsed. Как вариант, можно попробовать изучить 2 версии sed, GNU и BSD вариант, но лично я особого смысла не вижу.

cd /usr/ports/textproc/gsed
make && make install

Ну, и соответсвенно запускается

gsed 's/[0-9]\{10\}/2012071400/g' ./*

Вот такая вот заметочка…

Установка eAccelerator на Debian Squeeze

В репозиториях Debian отсутствует eAccelerator, по религиозным лицензионным соображениям. Официально рекомендуется использовать APC, однако eAccelerator привычнее мне и клиентосам. Будем ставить. Ниже изложен вест процесс. Читать далее

ProFTPd на FreeBSD: Login failed

Столкнулся с проблемкой при установке ProFTPd на FreeBSD.

При логине с вреным паролем выдавало Login failed.
Решение проблемы неочевидное. ProFTPd требует чтобы пользовательские shells, назначенные в /etc/passwd, были перечислены в /etc/shells, иначе — Login failed.
Таким образом, если вы, как грамотный товарищь, используете /sbin/nologin в качестве пользовательской оболочки для FTP юзеров — вы должны выполнить:

echo "/sbin/nologin" >> /etc/shells

И будет всм счастье!

Спасибо.

Настройка PPTP VPN сервер под CentOS с поддержкой iPhone & iPad

Есть у меня подписка на полезный online-tv сервис NetFlix. Сервис позволяет смотреть массу фильмов онлайн с большого количества устройств, PC, PS3, Android, iPad/iPhone — все бы ничего, но сервис работает только для их Соединенных Штатов. Отсюда возникла необходимость быстренько настроить PPTP VPN сервер на американьском VPSе. Ключевой особенностью, явлеется то, что для корректной работы с iPhone/iPad требуется несколько неочевидных настроек. Итак, поехали.
Читать далее

Как локально смонтировать каталог из fstab с опцией bind

Встал вопрос локального монтирования каталога в другой каталог, в пределах одной файловой системы. Бывает полезно, если програма/демон не умеет ходить по символическим ссылкам. Из консоли это делается так:

mount -o bind /home/user/dir /home/user/other_dir

Для того чтобы автоматически монтировать каталог при старте через fstab добавьте следующую строку в /etc/fstab:

/home/user/dir      /home/user/other_dir    none      bind     0      0

Быстрая очистка swap в Linux & FreeBSD

Бывает что система уходит своп, разной степени глубины. Перезапуск демонов помогает освободить память, но не всегда очищает swap полностью, и nagios или иная система мониторинга продолжает нервинчать по поводу того что истсема свопится. Очистить своп, при условии, что свободной памяти больше чем занятого свопа можно выполнив от root следуюущие команды:

swapoff -a && swapon -a

Таким образом вы отключаете все задействованные в системе своп разделы или файлы, заставляя ОС перетянуть все данные в RAM, и включаете обратно, получив на выходе девстенно чистый swap.