понедельник, 20 декабря 2010 г.

Документирование ИТ-стратегии

Объем и содержание документа ИТ стратегии должен быть таким,чтобы у владельцев/руководства хватило терпения дочитать его до конца и понять. Причему меня сложилось убеждение, что его сразу нужно готовить в виде презентации.
В этом документе обязательно должны быть:
1. Основные положения из бизнес-стратегии: описание организации, ее позиция в отрасли и на рынке, направление развития.
2. Взгляд бизнеса на ИТ (топ-менеджмент, руководители бизнес подразделени, пользователи) - что бизнес ожидает от ИТ
3. Укрупненные бизнес требования к ИТ с точки зрения всех трех групп
4. Краткое описание текущего состояния ИТ (детальное выносим в приложение) AS IS
5. Описание возможностей ИТ сточки зрения управления ИТ (IT governance), способов доставки (delivery), архитектуры предприятия (Enterprise architecture - технологии, приложения, информация, бизнес-процессы)
6. Уточнение бизнес требовний с определением подходов, как они будут решаться в разрезах IT Govenance, Delivery, Enterprise architecture.
7. Перечень альтернатив по каждому из уточненых бизнес-требований
8. Обоснование выбора альтернатив в терминах цены и выгод
9. Требования к IT Govenance, Delivery, Enterprise architecture исходя из выбранных альтернатив
10. Модели IT Govenance, Delivery, Enterprise architecture TO BE
11. Список стратегичеких инициатив с кратким описанием, включающем оценку сроков и затрат
12. Сводный план проектов (roadmap)

среда, 13 октября 2010 г.

Автозапуск фаервола в Debian

создаем: /etc/init.d/rc.firewall
выдаем ему права: chmod u+x /etc/init.d/rc.firewall
и прописываем в автозагрузку, исполняя: update-rc.d rc.firewall defaults

вторник, 28 сентября 2010 г.

Как удалить LJTiME

Заходите в "Профиль - Настройки - Вид". Там убираете галку опции "Я хотел бы использовать сервисы, разработанные для русскоязычных пользователей". Сохраняете.

четверг, 15 июля 2010 г.

Запуск Tor на Linux/BSD/Unix

Инструкция по установке Tor на Linux/BSD/Unix "Запуск Tor на Linux/BSD/Unix"

среда, 26 мая 2010 г.

Букварь: Манипуляции с текстом

cat file_originale | [operation: sed, grep, awk, grep и т.п.] > result.txt - общий синтаксис выполнения действий по обработке содержимого файла и вывода результата в новый
cat file_originale | [operazione: sed, grep, awk, grepи т.п.] >> result.txt - общий синтаксис выполнения действий по обработке содержимого файла и вывода результата в существующий файл. Если файл не существует, он будет создан
grep Aug /var/log/messages - из файла '/var/log/messages' отобрать и вывести на стандартное устройство вывода строки, содержащие "Aug"
grep ^Aug /var/log/messages - из файла '/var/log/messages' отобрать и вывести на стандартное устройство вывода строки, начинающиеся на "Aug"
grep [0-9] /var/log/messages - из файла '/var/log/messages' отобрать и вывести на стандартное устройство вывода строки, содержащие цифры
grep Aug -R /var/log/* - отобрать и вывести на стандартное устройство вывода строки, содержащие "Aug", во всех файлах, находящихся в директории /var/log и ниже
sed 's/stringa1/stringa2/g' example.txt - в файле example.txt заменить "string1" на "string2", результат вывести на стандартное устройство вывода.
sed '/^$/d' example.txt - удалить пустые строки из файла example.txt
sed '/ *#/d; /^$/d' example.txt - удалить пустые строки и комментарии из файла example.txt
echo 'esempio' | tr '[:lower:]' '[:upper:]' - преобразовать символы из нижнего регистра в верхний
sed -e '1d' result.txt - удалить первую строку из файла example.txt
sed -n '/string1/p' - отобразить только строки содержашие "string1"
sed -e 's/ *$//' example.txt - удалить пустые символы в в конце каждой строки
sed -e 's/string1//g' example.txt - удалить строку "string1" из текста не изменяя всего остального
sed -n '1,8p;5q' example.txt - взять из файла с первой по восьмую строки и из них вывести первые пять
sed -n '5p;5q' example.txt - вывести пятую строку
sed -e 's/0*/0/g' example.txt - заменить последовательность из любого количества нулей одним нулём
cat -n file1 - пронумеровать строки при выводе содержимого файла
cat example.txt | awk 'NR%2==1' - при выводе содержимого файла, не выводить чётные строки файла
echo a b c | awk '{print $1}' - вывести первую колонку. Разделение, по-умолчанию, по пробелу/пробелам или символу/символам табуляции
echo a b c | awk '{print $1,$3}' - вывести первую и треью колонки. Разделение, по-умолчанию, по проблелу/пробелам или символу/символам табуляции
paste file1 file2 - объединить содержимое file1 и file2 в виде таблицы: строка 1 из file1 = строка 1 колонка 1-n, строка 1 из file2 = строка 1 колонка n+1-m
paste -d '+' file1 file2 - объединить содержимое file1 и file2 в виде таблицы с разделителем "+"
sort file1 file2 - отсортировать содержимое двух файлов
sort file1 file2 | uniq - отсортировать содержимое двух файлов, не отображая повторов
sort file1 file2 | uniq -u - отсортировать содержимое двух файлов, отображая только уникальные строки (строки, встречающиеся в обоих файлах, не выводятся на стандартное устройство вывода)
sort file1 file2 | uniq -d - отсортировать содержимое двух файлов, отображая только повторяющиеся строки
comm -1 file1 file2 - сравнить содержимое двух файлов, не отображая строки принадлежащие файлу 'file1'
comm -2 file1 file2 - сравнить содержимое двух файлов, не отображая строки принадлежащие файлу 'file2'
comm -3 file1 file2 - сравнить содержимое двух файлов, удаляя строки встречающиеся в обоих файлах

четверг, 20 мая 2010 г.

Установка Wi-Fi на Asus Eee 1201N под Ubuntu 10.04

Из "каробки" Wi-Fi не захотел работать на свеже приобретенном Asus Eee 1201T

Для лечения потреборвалось 4 шага

1. Подключиться к Интрернету через LAN
2. Скачать deb-файл с https://launchpad.net/~matt-price/+archive/mattprice/+packages
3. Установить
4. Перезагрузиться

среда, 28 апреля 2010 г.

Букварь: Управление RPM-пакетами

rpm -ivh package_name.rpm - установить пакет с выводом сообщений и прогресс-бара
rpm -ivh --nodeps package_name.rpm - установить пакет с выводом сообщений и прогресс-бара без контроля зависимостей
rpm -U package_name.rpm - обновить пакет без изменений конфигурационных файлов, в случае отсутствия пакета, он будет установлен
rpm -F package_name.rpm - обновить пакет только если он установлен
rpm -e package_name.rpm - удалить пакет
rpm -qa - отобразить список всех пакетов, установленных в системе
rpm -qa | grep exim - среди всех пакетов, установленных в системе, найти пакет содержащий в своём имени "exim"
rpm -qi package_name - вывести информацию о конкрентном пакете
rpm -qg "System Environment/Daemons" - отобразить пакеты входящие в группу пакетов
rpm -ql package_name - вывести список файлов, входящих в пакет
rpm -qc package_name - вывести список конфигурационных файлов, входящих в пакет
rpm -q package_name --whatrequires - вывести список пакетов, необходимых для установки конкретного пакета по зависимостям
rpm -q package_name --scripts - отобразит скрипты, запускаемые при установке/удалении пакета
rpm -q package_name --changelog - вывести историю ревизий пакета
rpm -qf /etc/httpd/conf/httpd.conf - проверить какому пакету принадлежит указанный файл. Указывать следует полный путь и имя файла.
rpm -qp package.rpm -l - отображает список файлов, входящих в пакет, но ещё не установленных в систему
rpm --import /media/cdrom/RPM-GPG-KEY - ипортировать публичный ключ цифровой подписи
rpm --checksig package.rpm - проверит подпись пакета
rpm -qa gpg-pubkey - проверить целостность установленного содержимого пакета
rpm -V package_name - проверить размер, полномочия, тип, владельца, группу, MD5-сумму и дату последнего изменеия пакета
rpm -Va - проверить содержимое всех пакеты установленные в систему. Выполняйте с осторожностью!
rpm -Vp package_name.rpm - проверить пакет, который ещё не установлен в систему
rpm2cpio package_name.rpm | cpio --extract --make-directories *bin* - извлечь из пакета файлы содержащие в своём имени bin
rpm -ivh /usr/src/redhat/RPMS/`arch`/package_name.rpm - установить пакет, собранный из исходных кодов
rpmbuild --rebuild package_name.src.rpm - собрать пакет из исходных кодов

пятница, 9 апреля 2010 г.

Букварь: Архивирование и сжатие файлов

bunzip2 filename.bz2 - разжимает файл 'filename.gz'
gunzip filename.gz / gzip filename / bzip2 filename - сжимает файл 'filename'
gzip -9 filename - сжать файл filename с максимальным сжатием
rar a filename.rar addfile - создать rar-архив 'filename.rar' и включить в него файл addfile
rar a filename.rar addfile1 addfile2 dirname - создать rar-архив 'filename.rar' и включить в него addfile1, addfile2 и dirname
rar x filename.rar - распаковать rar-архив
unrar x filename.rar / tar -cvf archive.tar filename - создать tar-архив archive.tar, содержащий файл filename
tar -cvf archive.tar filename filename2 dirname - создать tar-архив archive.tar, содержащий файл filename, filename2 и dirname
tar -tf archive.tar - показать содержимое архива
tar -xvf archive.tar - распаковать архив
tar -xvf archive.tar -C /tmp - распаковать архив в /tmp
tar -cvfj archive.tar.bz2 dirname - создать архив и сжать его с помощью bzip2
tar -xvfj archive.tar.bz2 - разжать архив и распаковать его
tar -cvfz archive.tar.gz dirname - создать архив и сжать его с помощью gzip
tar -xvfz archive.tar.gz - разжать архив и распаковать его
zip filename.zip filename - создать сжатый zip-архив
zip -r filename.zip filename filename2 dirname - создать сжатый zip-архив и со включением в него нескольких файлов и/или директорий
unzip file1.zip - разжать и распаковать zip-архив

вторник, 6 апреля 2010 г.

Букварь: Специальные атрибуты файлов

chattr +a file - открывать файл на запись только в режиме добавления
chattr +c file - позволить ядру автоматически сжимать/разжимать содержимое файла.
chattr +d file - указфвает утилите dump игнорировать данный файл во время выполнения backup'а
chattr +i file - делает файл недоступным для любых изменений: редактирование, удаление, перемещение, создание линков.
chattr +s file - делает удаление файла безопасным, выставленный атрибут говорит, что при удалении файла, место, занимаемое файлом на диске заполняется нулями, что усложняет возможность восстановления данных.
chattr +S file - указывает, что, при сохранении изменений, будет произведена синхронизация, как при выполнении команды sync
chattr +u file - указывает, что при удалении файла содержимое его будет сохранено и при необходимости пользователь сможет его восстановить
lsattr - показывает атрибуты файлов

четверг, 1 апреля 2010 г.

Букварь: Выставление/изменение полномочий на файлы

ls -lh - просмотр полномочий на файлы и директории в текущей директории
ls /tmp | pr -T5 -W$COLUMNS - вывести содержимое директории /tmp и разделить вывод на пять колонок
chmod ugo+rwx directory - добавить полномочия на директорию directory ugo(User Group Other)+rwx(Read Write eXecute) - всем полные права. ugo можно заменить на а (All)
chmod go-rwx directory - отобрать у группы и всех остальных все полномочия на директорию.
chown user file - назначить владельцем файла file пользователя user
chown -R user directory - назначить рекурсивно владельцем директории directory пользователя user
chgrp group file - сменить группу-владельца файла file на group
chown user:group file - сменить владельца и группу владельца файла file
find / -perm -u+s - найти, начиная от корня, все файлы с выставленным SUID
chmod u+s /bin/bfile - назначить SUID-бит файлу /bin/bfile. Это даёт возможность любому пользователю запускать на выполнение файл с полномочиями владельца файла.
chmod u-s /bin/bfile - снять SUID-бит с файла /bin/bfile.
chmod g+s /opt/pub - назначить SGID-бит директории /opt/pub.
chmod g-s /opt/pub - снять SGID-бит с директории /opt/pub.
chmod o+t /opt/pub - назначить стики-бит директории /opt/pub. Позволяет удалять файлы только владельцам
chmod o-t /opt/pub - снять стики-бит с директории /opt/pub

четверг, 25 марта 2010 г.

Как примонтировать образ QEMU диска

mount -o loop,offset=32256 qemu_image.img /mnt/qemu_image

Для общего решения хорошо подходит утилита kpartx (Create device maps from partition tables)

Skype API для Pidgin

Skype API Plugin для Pidgin позволяет при запущенном Скайпе показывать контакты в Pidgin и отправлять через него сообщения людям зарегистрированным в Skype.

Установка возможно через deb пакет или простым копированием libskype[64].o в директорию /usr/lib/purple-2/ или ~/.purple/plugins

вторник, 23 марта 2010 г.

Букварь: Пользователи и группы

useradd -c "Revolution" -g admin -d /home/user -s /bin/bash user - создать пользователя user, назначить ему в качестве домашнего каталога /home/user, в качестве коммандной оболочки /bin/bash, включить его в группу admin и добавить комментарий Revolution
useradd user - создать пользователя user
userdel -r user - удалить пользователя user и его домашний каталог
usermod -c "FTP User" -g system -d /ftp/user -s /bin/nologin user - изменить атрибуты пользователя
groupadd group_name - создать новую группу с именем group_name
groupdel group_name - удалить группу group_name
groupmod -n new_group_name old_group_name -переименовать группу old_group_name в new_group_name
passwd - сменить свой пароль
passwd user - сменить пароль пользователя user1 (только root)
chage -E 2012-12-31 user - установить дату окончания действия учётной записи пользователя user
pwck - проверить корректность системных файлов учётных записей. Проверяются файлы /etc/passwd и /etc/shadow
grpck - проверяет корректность системных файлов учётных записей. Проверяется файл/etc/group
newgrp [-] group_name - изменяет первичную группу текущего пользователя. Если указать "-", ситуация будет идентичной той, в которой пользователь вышeл из системы и снова вошёл. Если не указывать группу, первичная группа будет назначена из /etc/passwd

пятница, 12 марта 2010 г.

Букварь: Дисковое пространство

df -h - отображает информацию о смонтированных разделах с отображением общего, доступного и используемого пространства.
ls -lSr - выдаёт список файлов и директорий рекурсивно с сортировкой по возрастанию размера.
du -sh dir - подсчитывает и выводит размер, занимаемый директорией 'dir'.
du -sk * | sort -rn - отображает размер и имена файлов и директорий, с сортировкой по размеру
rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n - показывает размер используемого дискового пространства, занимаемое файлами rpm-пакета, с сортировкой по размеру.
dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n - показывает размер используемого дискового пространства, занимаемое файлами deb-пакета, с сортировкой по размеру

четверг, 11 марта 2010 г.

Букварь: Монтирование файловых систем

mount /dev/sda1 /mnt - монтирует раздел 'sda1' в точку монтирования '/mnt'.
umount /dev/sda1 или umount /mnt - размонтирует раздел 'sda1'.
fuser -km /mnt/sda1 - принудительное размонтирование раздела. Применяется в случае, когда раздел занят каким-либо пользователем
umount -n /mnt/sda1 - выполнить размонтитрование без занесения информации в /etc/mtab. Полезно когда файл имеет атрибуты "только чтение" или недостаточно места на диске
mount /dev/fd0 /mnt/floppy - монтировать флоппи-диск
mount /dev/cdrom /mnt/cdrom - монтировать CD или DVD
mount -o loop file.iso /mnt - смонтировать ISO-образ
mount -t vfat /dev/sdb1 /mnt - монтировать файловую систему Windows FAT32
mount -t smbfs -o username=user,password=pass //winclient/share /mnt/share - монтировать сетевую файловую систему Windows (SMB/CIFS)
mount -o bind /home/user/dir /var/ftp/user - "монтирует" директорию в директорию (binding). Полезна, например, для предоставления содержимого пользовательской директории через ftp при работе ftp-сервера в "песочнице" (chroot), когда симлинки сделать невозможно. Выполнение данной команды сделает копию содержимого /home/user/dir в /var/ftp/user

среда, 10 марта 2010 г.

Букварь: Поиск файлов

find / -name file - найти файлы и директории с именем file. Поиск начать с корневой директории (/)
find / -user user - найти файл и директорию принадлежащие пользователю user. Поиск начать с корневой директории (/)
find /home/user -name "*.gz" - Найти все файлы и директории, имена которых оканчиваются на '. gz'. Поиск начать с '/ home/user'
find /usr -type f -atime +10 - найти все файлы в '/usr', время последнего обращения к которым более 10 дней
find /usr -type f -mtime -10 - найти все файлы в '/usr', созданные или изменённые в течении последних 10 дней
find / -name *.deb -exec chmod 755 '{}' \; - найти все фалы и директории, имена которых оканчиваются на '.deb', и изменить права доступа к ним
find / -xdev -name "*.deb" - найти все фалы и директории, имена которых оканчиваются на '.deb', игнорируя съёмные носители, такие как cdrom, floppy и т.п.
whereis top - показывает размещение бинарных файлов, исходных кодов и руководств, относящихся к файлу 'top'
which top - отображает полный путь к файлу 'top'
locate "shutdown" - найти все файлы, содержащие в имени 'shutdown'. База файлов создается командой 'updatedb'

вторник, 9 марта 2010 г.

Букварь: Файлы и директории

cd /home - перейти в директорию '/home'
cd ~user - перейти в домашнюю директорию пользователя user
cd - - перейти в директорию, в которой находились до перехода в текущую директорию
cd .. - перейти в директорию уровнем выше
cd - перейти в домашнюю директорию
cp -a dir1 dir2 - копировать директорию dir1 в директорию dir2
cp -a /tmp/dir1 . - копировать директорию dir1 со всем содержимым в текущую директорию
cp dir/* . - копировать все файлы директории dir в текущую директорию
cp file1 file2 - скопировать файл file1 в файл file2
ln file1 lnk1 - создать "жёсткую" (физическую) ссылку на файл или директорию
ln -s file1 lnk1* - создать символическую ссылку на файл или директорию
ls *[0-9]* - показать файлы и директории содержащие в имени цифры
ls -a - показать скрытые файлы и директории в текущей директории
ls -F - отобразить содержимое текущей директории с добавлением к именам символов, храктеризующих тип
ls -l - показать детализированное представление файлов и директорий в текущей директории
lstree - показать дерево файлов и директорий, начиная от корня (/)
ls - отобразить содержимое текущей директории
mkdir dir1 dir2 - создать две директории одновременно
mkdir dir1 - создать директорию с именем 'dir1'
mkdir -p /tmp/dir1/dir2 - создать дерево директорий
mv dir1 new_dir - переименовать или переместить файл или директорию
pwd - показать текущую директорию
rmdir dir1 - удалить директорию с именем 'dir1'
rm -f file1 - удалить файл с именем 'file1'
rm -rf dir1 dir2 - удалить две директории и рекурсивно их содержимое
touch -t 0712250000 fileditest - модифицировать дату и время создания файла, при его отсутствии, создать файл с указанными датой и временем (YYMMDDhhmm)

пятница, 5 марта 2010 г.

Букварь: Остановка системы

init 0
telinit 0
shutdown -h now
- остановить систему

shutdown -r now
reboot
- перегрузить систему

shutdown -h hours:minutes & - запланировать остановку системы на указанное время
shutdown -c - отменить запланированную по расписанию остановку системы

logout - выйти из системы

четверг, 4 марта 2010 г.

Букварь: Системная информация

uname -m - отобразить архитектуру компьютера
uname -r - отобразить используемую версию ядра
dmidecode -q - показать аппаратные системные компоненты - (SMBIOS / DMI)
hdparm -i /dev/hda - вывести характеристики жесткого диска
hdparm -tT /dev/sda - протестировать производительность чтения данных с жесткого диска
cat /proc/cpuinfo - отобразить информацию о процессоре
cat /proc/interrupts - показать прерывания
cat /proc/meminfo - проверить использование памяти
cat /proc/swaps - показать файл(ы) подкачки
cat /proc/version - вывести версию ядра
cat /proc/net/dev - показать сетевые интерфейсы и статистику по ним
cat /proc/mounts - отобразить смонтированные файловые системы
lspci -tv - показать в виде дерева PCI устройства
lsusb -tv - показать в виде дерева USB устройства
date - вывести системную дату
cal 2010 - вывести таблицу-календарь 2010-го года
date 031519002010.00 - установить системные дату и время ММДДЧЧммГГГГ.СС (МесяцДеньЧасМинутыГод.Секунды)
clock -w - сохранить системное время в BIOS

среда, 3 марта 2010 г.

В настройках Pidgin отсутствует опция смены сочетания клавиш для отправки сообщений. Лечится это выполнением в терминале команды:
cat << EOF >> ~/.gtkrc-2.0
binding "my-bindings"
{
bind "Return" { "insert-at-cursor" ("\n") }
bind "Return" { "message_send" () }
}
widget "*pidgin_conv_entry" binding "my-bindings"
EOF
После этого необходимо перегрузить Pidgin.

вторник, 2 марта 2010 г.

Lighttpd и Centos

lighttpd (также «lighty», «лайти») — веб-сервер, разрабатываемый с расчётом на быстроту и защищённость, а также соответствие стандартам. (с) http://ru.wikipedia.org

Устанавливаем репозитарий RPMForge в котором доступен lighttpd
для i386:
# rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
# rpm -Uvh http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
для x86_64:
rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
rpm -Uvh http://apt.sw.be/redhat/el5/en/x86_64/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm
Устанавливаем lighttpd
# yum install lighttpd

Добавляем в автоматическую загрузку
# chkconfig lighttpd on

Пути по умолчанию:
директория для web-сайтов:  /srv/www/lighttpd/
конфиг: /etc/lighttpd/lighttpd.conf
логи: /var/log/lighttpd/

четверг, 18 февраля 2010 г.

Pidgin - горячие клавиши

Файл настройки горячих клавиш находится в ~/.purple/accels
Какой пункт за что отвечает можно понять воспользовавшись гаданием и эрудицией

пятница, 12 февраля 2010 г.

Посмотреть модель материнской платы в Linux

dd if=/dev/mem bs=64k skip=15 count=1 | strings | less
В первых строчках будут упоминаться данные материнской платы.

Может есть средство и красивее

пятница, 29 января 2010 г.

Удалённая трассировка с помощью wireshark

Для просмотра дампа интерфейса на удаленной машине делаем так:
ssh root@11.11.11.11 "tcpdump -i eth0 -w - -s 0" | /usr/bin/wireshark -k -i -

среда, 20 января 2010 г.

Рекомендуемые значения для normal burst и burst max.

CAR embodies a rate-limiting feature for policing traffic.
When policing traffic with CAR, Cisco recommends the following values for the normal and extended burst parameters:
normal burst = configured rate * (1 byte)/(8 bits) * 1.5 seconds
extended burst = 2 * normal burst