Огнетушитель в серверной
Работа / 30.07.2010

Совсем недавно у нас проходил аудит ИТ инфраструктуры.  Проверяли если не все то многое. Ну  и разумеется проверяющая комиссия посетила нашу серверную. Не знаю рассказывал я о ней или нет, но наша серверная, можно сказать. почти новая. Сделано в ней все не просто нормально, а по различным стандартам.  Так вот стоит в этой серверной, огнеупорная, бронированная дверь, а в самой серверной СГПТ — система газового пожаротушения. В общем если что загорит, то под давлением несколько атмосфер помещение заполнится специальным газом и пожар потухнет. Разумеется при этом надо экстренно эвакуироваться, в течении 60 секунд. Так вот к чему я веду. Задает комиссия вопрос, а где у вас в серверной огнетушитель?: Как мне было отреагировать на этот запрос? Тушить с огнетушителем пожар при срабатывающем пиропатроне и подаче газа? Любому просто оторвет уши. Написано на двери что надо эвакуироваться, значит надо. Оказалось что я неправ и должен быть этот несчастный огнетушитель. Нет я конечно принес из соседнего помещения огнетушитель. Оказалось у него срок годности истек давно. 🙂 впрочем и у активированного угля, йода и валидола в аптечке этот срок годности истек тоже… Вот и думай потом к чему все эти проверки..

Сравнение текстовых файлов
Разное / 30.07.2010

Многие вещи можно сделать более простыми путями, или как я обычно говорю что для любой задачи нужен оптимальный инструмент. Вот к примеру мне понадобилось разбить один большой текстовик на сотни файлов по количеству строк. Вроде тривиальная задача, а в сети предлагается для этого куча вариантов и в основном они заключаются в скачивании  того или иного софта. Ая нашел на одном форуме прекрасную конструкцию, один bat из 5 строк,  который сделал все как мне надо. Batники  это сила! И вот мне опять понадобилось сравнить два больших текста.  Вроде как ничего сложного. А вот стандартная утилита comp не подошла, total commanderпод рукой не оказалось, linux с его diff тоже. Что делать? Нашел в сети Онлайн утилиту для сравнения текстовых фрагментов (diff) . Оказалось реально как раз то что мне нужно. Сравнил две портянки, нашел изменения и все поправил. А я вот помню на свом старом рабочем месте ставил пакет утилит которые добавляли к стандартным командам  windows, то что есть в Линуксе. Всяческие awk, grep, tail. Очень полезная штука была. Надо найти и опять поставить, вот только не помню как называлась.

День системного администратора
Ит , Праздник / 29.07.2010

Спешу поздравить себя и всех моих коллег с самым профессиональным праздником Днем Системного Администратора. Как то я описывал этот праздник в сборнике всех айтишных праздников, однако хотелось бы остановиться на нем поподробнее. Первый раз этот праздник отметили айтишники одной небольшой компании, собравшись вместе на пикнике. И пришелся он на последнюю пятницу июля 1999 года. Системный администратор этой компании посчитал что неплохо  было бы выделить день для того что бы отпраздновать несуществующий тогда День системного администратора. Сказано сделано и с легкой руки одного человека, это начинание охватило всю планету. 🙂 Традиции празднования этого праздника еще не совсем сложились, но в общем, не отличаются от всех остальных традиций сисадминов: побольше пива и интернет побыстрее и будет всем счастье.  А если это счастье будет наблюдаться на полянке за шашлычком, то тогда это будет самый настоящий день сисадмина :). Кстати, коллеги. обязательно посетите в этот день серверную и поставьте в шкаф с серверами блюдечко с молоком и ваши сервера целый год не будут глючить, ломаться и тормозить.  

Быстрые клавиши для Windows — ускоряем работу с Windows

Попросили меня сегодня настроить ноутбук. Делать пришлось в наколеночном положении, в полевых условиях. Естественно почти неработающий трекпад и отсутствие мыши. Впрочем меня это не остановило, т.к. я еще со времен учебы в институе впитал в себя мудрость одного преподавателя: Работать надо руками 🙂 Зачем нам мышь?  Ведь есть быстрые клавиши, т.е. комбинации клавиш кторые выполняют те или иные действия гораздо быстрее чем если делать это мышкой. Элементарное желание скопировать и вставить кусок текста? тот человек что просил настроить ноутбук не знал что можно делать это  парой CTRL+C  CTRL+V. Пришлось дать ему краткую инструкцию по таким удобностям Windows: Windows  или Ctrl + Escape  открытие меню Пуск Windows+ D — показ всего рабочего стола Windows+ Тab — переключение между значками на панели задач. Windows+ М — свернуть все окна. Windows+ Shift+M — восстановить свёрнутые окна. Windows+Е — Мой компьютер. Windows+ F — найти папку или файл. Ctrl+Windows+F — поиск компьютеров в сети. Windows+L — блокировка компьютера Windows+R — диалог Пуск —  Выполнить. Ctrl + Shift + Escape  — Вызов диспетчера задач — гораздо удобнее и быстрее, чем любым другим способом. Shift + F10  — Отображение контекстного меню текущего объекта, на ноутбуках часто этой клавиши нет. Windows   + E  — Запуск проводника. Windows   + B  — Передать…

Скрипт — список неактивных компьютеров в домене

Появилась у меня необходимость получить из домена список компьютеров которые были неактивны месяц и более. В общем те что давно не эксплуатируются, а из домена выведены не были. Порывшись в своих запасниках скриптов нашел  старый VBS который выполняет нужную функцию: On Error Resume Next DomainString=Inputbox(«Введите имя домена»,»Проверка активных компьютеров»,»Имя домена») if DomainString=»» then wscript.echo «Имя домена не введено или сценарий отменен.» wscript.quit end if numDays=InputBox(«Введите число дней, определяющее порог неактивности» & «учетных записей»,»Проверка активных компьютеров»,»XX») if numDays=»» then wscript.echo «Число дней не задано или сценарий отменен.» wscript.quit end if Set fs=WScript.CreateObject(«Scripting.FileSystemObject») Set f=fs.OpenTextFile(«donefs.txt»,2,True) Set DomainObj = GetObject(«WinNT://»&DomainString) if err.number<>0 then wscript.echo «Ошибка соединения с » & DomainString wscript.quit end if DomainObj.Filter = Array(«computer») rem Wscript.echo «Учетные записи домена » & DomainString & » старше » & numDays & » дней.» For each Computer in DomainObj Set Account = GetObject(«WinNT://» & DomainString & «/» & Computer.Name &  «$») RefreshTime = FormatNumber((Account.get(«PasswordAge»))/86400,0) If CInt(RefreshTime) >= CInt(numDays) Then f.WriteLine  Computer.Name & » ; » &  RefreshTime & » дней.» End If Next set DomainObj=Nothing set Shell=Nothing Собственно скрипт очень простой, берет из AD выборку компьютеров и проверяет когда последний раз изменялся PasswordAge.  Если больше указанного количества дней то выводит в текстовый файлик. Разумеется введенный параметр…