вторник, 20 сентября 2011 г.

Windows 2008 R2 ошибка – 0x800F0818


Симптомы у нее простые:
  1. В Server Manager при открытии не отображаются установленные Roles и Features-ы
  2. Внизу слева висит ошибка при нажатии на нее выводится вот такое окно.
    0x800F0818

Решение

  1. С сайта Microsoft скачиваем инструмент под названием  Microsoft Update Readiness Tool.
  2. Запускаем. Дожидаемся окончания установки.
  3. Открываем папку C:\Windows\logs\CBS и ищем в ней файл Checksur.log
    В моем случай лог выглядит следующим образом (красным цветом отмечено самое интересное)
    Checking System Update Readiness.Binary Version 6.1.7601.21645Package Version 12.02011-05-27 11:12
    Checking Windows Servicing Packages
    Checking Package Manifests and Catalogs(f) CBS MUM Corrupt 0×00000000servicing\Packages\Package_for_KB2416400_RTM~31bf3856ad364e35~amd64~~6.1.1.2.mumExpected file name Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7600.16385.mum does not match the actual file name(fix) CBS MUM Corrupt CBS File Replaced Package_for_KB2416400_RTM~31bf3856ad364e35~amd64~~6.1.1.2.mum from Cabinet: C:\Windows\CheckSur\v1.0\windows6.1-servicing-x64-apr29.cab.(fix) CBS Paired File CBS File also Replaced Package_for_KB2416400_RTM~31bf3856ad364e35~amd64~~6.1.1.2.cat from Cabinet: C:\Windows\CheckSur\v1.0\windows6.1-servicing-x64-apr29.cab.
    Checking Package Watchlist
    Checking Component Watchlist
    Checking Packages
    Checking Component Store
    Summary:Seconds executed: 1274 Found 1 errors Fixed 1 errors  CBS MUM Corrupt Total count: 1  Fixed: CBS MUM Corrupt.  Total count: 1  Fixed: CBS Paired File.  Total count: 1(w) Unable to get system disk properties 0x0000045D IOCTL_STORAGE_QUERY_PROPERTY Disk Cache
  4. При изучении файла выяснилось что отсутствует один файл Package_for_KB2416400_RTM~31bf3856ad364e35~amd64~~6.1.1.2.mum
  5. Следующим шагом требуется получить владельца на папкуc:\Windows\Servicing\Packages
    Выполняем команду
    takeown /F c:\Windows\Servicing\Packages /D y /R
    Теперь получаем право Full Control
    cacls c:\Windows\Servicing\Packages /E /T /C /G "Domain\UserName":F
  6. Загружаем пакет KB2416400
  7. Распаковываем его командой
    expand -F:* Windows6.1-KB2416400-x64.msu D:\temp\
  8. Ищем CAB-файл и распаковываем его.
    expand -F:* Windows6.1-KB2416400-x64.cab d:\temp\KB2416400
  9. Ищем нужный нам файлpackage_for_kb2416400_rtm_bf~31bf3856ad364e35~amd64~~6.1.1.2.mum
  10. И копируем его в папку c:\Windows\Servicing\Packages
По аналогии поступаем со всеми найденными ошибками.
После выполнения всех перечисленных действий перезагрузки не требуется.

Взято с 
http://blog.wadmin.ru/

среда, 3 августа 2011 г.

Подключится к MySQL удаленно

Не знаю зачем, но меня попросили сделать так что бы по порту 3306 можно было подключиться удаленно к серверу MySQL.
ну это не проблема конечно. Сначала надо было открыть этот порт на сервере, сделать это достаточно легко, одной командой:

/sbin/iptables -A INPUT -i eth0 -p tcp --destination-port 3306 -j ACCEPT

ну естественно надо подправить свой интерфейс)
после, тому юзеру что будет подключаться удаленно надо дать права, на подключение с определенного адреса

GRANT ALL PRIVILEGES ON your_db.* TO user@"192.168.0.2" 
IDENTIFIED BY 'password';

Либо с любого адреса

GRANT ALL PRIVILEGES ON your_db.* TO user@"%" 
IDENTIFIED BY 'password';

где  your_db - база к которой юзер имеет теперь полные привилегии, user - имя юзера, password - пароль юзера.
и конечно же в  /etc/mysql/my.cnf закоментить bind-address = 127.0.0.1

Вот впрочем и все, при помощи любых редакторов можно подключаться удаленно к серверу БД и что-то там делать =)

и к заключению скажу, безопасность тут теперь просто в заднице)))))

четверг, 19 мая 2011 г.

Второе NetBIOS имя Windows 2008 r2

Недавно понадобилось мне повесить второе NetBIOS имя на сервак с Форточками 2008
все оказалось очень простым.
Нажимаем Пуск-выполнить, туда regedit
Появляется редактор реестра
Следуем дальше System\CurrenControlSet\Services\LanmanServer\Parameters
Здесь добавляем REG_SZ string с названием OptionalNames. А в его значение пишем наше имя.
но оно не отработает если мы не сделаем еще кое чего.
сюда же добавляем REG_DWORD с названием DisableStrictNameChecking и в его значении ставим 1.
делаем ребут.
и все) вот вам счастье)

четверг, 5 мая 2011 г.

Статический resolv.conf

Была такая проблемка: записывал нужный DNS в resolv.conf а после обновления адреса он сбивался, и устанавливался такой какой DHCP выдавал, непорядок)
поэтому в фаил /etc/dhclient.conf внес пару строк


interface "em0"{
prepend domain-name-servers 8.8.8.8;
}


после этого все было прекрасно)

среда, 4 мая 2011 г.

Меняем шел на Bash

Чтоб поменять shell например на bash:
chsh -s /usr/local/bin/bash

вторник, 19 октября 2010 г.

Установка почтового сервера Ubuntu Postfix

Недавно нашел отличные статейки по сабжу
практически все так и было


https://docs.google.com/document/edit?id=1AVUYHVSMCTRQiK9d4zDzng0SbC8OKjX6xqECEj3icpk&hl=ru

https://docs.google.com/document/edit?id=1kC55c8-aOTrIUAaBkCiccbKKXiHRCSdUr10EiAOR1Yc&hl=ru

Только несколько замечаний
когда создаешь новый домен то надо ему создать папку, а лучше скопировать одну из уже созданных, и дать uid при помощи sudo chown -R vmail  /home/vmail/ вот так вот все просто оказалось)))

воскресенье, 29 августа 2010 г.

Редактирование Hosts win 7

недавно мне пришлось именно этот фаил отредактировать, немного плясок и вуалля

  • Запускаем explorer и выходим в каталог %systemroot%\system32\drivers\etc\ (где %systemroot% – каталог, куда установлена ОС).
  • Делаем ярлык (ссылку) на Рабочем столе на файл hosts в этом каталоге (перетаскивается файл hosts на Рабочий стол с одновременным нажатием клавиши Alt.
  • Меняем свойства новоиспеченного ярлыка. В строку «назначение» (target) добавляем в начало notepad.exe). Жмем пока Ok.
  • Снова выходит на редактирование свойств ярлыка. Строка «target» теперь выглядит так:
C:\Windows\System32\notepad.exe C:\Windows\System32\drivers\etc\hosts
  • Выходим в дополнительные навтройки (Advanced…). Устанавливаем – Запускать от имени Администратора.
  • Все. Жмем Ok.

вторник, 10 августа 2010 г.

Cisco 2980 прошивка, смена BOOT

И так, подключились мы к Циске
Первым делом:
Console>enable

Теперь с нашего сервера загрузим нужные прошивки командой
copy tftp flash
он попросит ввести адрес сервера, и имя того что заливаем, в данном случае нам нужны новые загрузчик и прошивка, это download/cat4000-promupgrade.6-1-5.bin и download/cat4000-k9.8-4-11-GLX.bin.

так, по одному мы их загрузили, теперь смотрим boot и добавляем в него наш новый загрузчик

set boot config-register boot system

set boot system flash bootflash:cat4000-promupgrade.6-1-5.bin prepend

советую сразу же добавить еще и нашу новую прошивку

set boot system flash bootflash:cat4000-k9.8-4-11-GLX.bin

ну вот мы сделали что надо.
теперь делаем reset

начинает загружаться, видим что он что-то переписывает, загружает, делает проверки
все, загрузились
теперь чистим boot
clear boot system flash bootflash:...

и удаляем все не нужное, в конце в буте у нас должно остаться
Console> (enable) show boot
BOOT variable = bootflash:cat4000-k9.8-4-11-GLX.bin,1;

удаляем с флешки всё не нужное
del bootflash:...

естественно оставляем cat4000-k9.8-4-11-GLX.bin
и что б это все удалилось с флешки делаем команду squeeze bootflash:
таким образом мы очистили флешку, и пере-установили загрузчик с прошивкой.

И в самом конце сделаем set boot config-register boot bootflash для того что б автоматом загружалась система

понедельник, 5 июля 2010 г.

OpenWRT поверх DD-Wrt

cd /tmp
wget http://backfire.openwrt.org/10.03/brcm-2.4/openwrt-brcm-2.4-squashfs.trx
mtd write openwrt-brcm-2.4-squashfs.trx linux && reboot



3 строчки, а столько радости))))

понедельник, 14 июня 2010 г.

Allied at-8000s Прошивка

Allied at-8000s  


Прошивка.
Несколько способов, первый не проверен полностью, второй вдоль и поперек.
Все по очереди:
Первый:
1) подключаемся через терминал, желательно с винды, hiper terminal;
2) скачиваем прошивку 2.0.0.
3) при помощи команды console# copy startup-config tftp://....  копируем на tftp сервер наш рабочий конфиг;
4) командой Copy tftp://192.168.13.3/ats94-30030.ros image копируем прошивку в наши образы на свитче (то что 30030-пусть не пугает, так оно и должно быть);
5) проверяем каким по умолчанию образ у нас стоит Show bootvar если не наш меняем при помощи команды Boot sys image-y;
6) пускаем в ребут;
7) так же поступаем с прошивкой 30038;

Второй:
1) подключаемся через терминал, желательно с винды, hiper terminal;
2) скачиваем прошивку 3.0.0.38
3) при помощи команды console# copy startup-config tftp://....  копируем на tftp сервер наш рабочий конфиг;
4) командой Copy tftp://192.168.13.3/ats94-interim.ros image копируем прошивку в наши образы на свитче (то что 30030-пусть не пугает, так оно и должно быть);
5) проверяем каким по умолчанию образ у нас стоит Show bootvar если не наш меняем при помощи команды Boot sys image-y;
6) пускаем в ребут;
7) теперь наш любимый свитчек запросит (через пару минут прогрузки) загрузить через Xmodem фаил прошивки, а так как мы сидим в hiper terminal мы открываем 
   
И видим окошко ниже, выбираем наш файл под название ats94-30038.ros



Оно все само загрузит и установит.
После всех этих операций устанавливаем IP адрес
и выкачиваем при помощи команды copy  tftp://.... startup-config наш заранее сохраненный конфиг.

На этом все.

четверг, 3 июня 2010 г.

DHCP-Relay: Procurve and ISC-DHCP-Server

И вот мой ненавистный DHCP
задача стояла на коммутаторе HP ProCurve установить ретранслятор, и на некоторые порты разрешить ранг, а на другие запретить, в определенной подсети.
Для настройки сервера можно добавить

   class "ports-hp" {
       match if binary-to-ascii (10, 8, "", suffix( option
agent.circuit-id, 1)) = "21" # -  в кавычках номер порта
       or binary-to-ascii (10, 8, "", suffix( option
agent.circuit-id, 1)) = "30"
       or binary-to-ascii (10, 8, "", suffix( option
agent.circuit-id, 1)) = "31"
       or binary-to-ascii (10, 8, "", suffix( option
agent.circuit-id, 1)) = "22"
       and binary-to-ascii (16, 8, ":", suffix ( option
agent.remote-id, 6))= "0:11:85:42:99:0"; # -  в кавычках МАК
коммутатора( возможна тут же привязка к маку хоста, IP коммутатора, и
к VLAN  )
   }
   pool {
       range 192.168.3.64 192.168.3.79;
       max-lease-time 300;
       allow members of "ports-hp";
   }

Для работы коммутатора как ретранслятором надо


sw(config)# dhcp-relay
Включить ip routing (на коммутаторе включается функциональность 3го уровня):
sw(config)# ip routing
режим вставки option 82
sw(config)# dhcp-relay option 82
[validate] | drop [validate] | keep>   [ip | mac]
задать хелпер адресс
sw(config)# vlan 3
sw(vlan-1)# ip helper-address 192.168.13.28


Впрочем вот, все надо объяснять, а это сейчас мне не хочется)
успехов!

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

Сброс и восстановление пароля Cisco Catalyst 3550

И так, пришлось мне как-то сбросить пароли с 8 таких штучек, оказалось все не так сложно.
начнем
1)вставить шнур консоли в комп и в свитч
2)отключить питание от свитча
3)зажать кнопку MODE и включить питание, отпустить кнопку только после того как погаснет индикатор первого порта Fast Ethernet

это сделано!
идем к компьютеру на котором мы видим какие-то сведения о системе и


switch:
теперь по шагам:
1)вводим
 
switch: flash_init

 что бы инициализировать систему флеша;
2)загружаем вспомогательные файлы, то есть вводим 

switch: load_helper

3)отображаем содержимое 

switch: dir flash:
4)Переименуем фаил конфигурации 
switch: rename flash:config.text flash:config.text.old
5)загружаем систему

switch: boot

и нам конечно предложат запустить авто установку, выбираем нет!
6)входим в режим EXEC

Switch> enable

7)Возвращаем имя конфигу обратно

Switch# rename flash:config.text.old flash:config.text
8)загружаем этот конфиг 
Switch# copy flash:config.text system:running-config
на вопросы просто нажимаем ентер
9)заходим в режим глобальной конфигурации

Switch# configure terminal

10)и меняем пароль

Switch (config)# enable secret password

11) теперь возвращаемся в режим EXEC и вводим

Switch# copy running-config startup-config

Все теперь мы можем заходить в консоль набирая свой пароль, который на этот рас не забудем)

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

Vlan freebsd

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

ifconfig vlan4 create
после даем на команду, на какой вилан будет у нас откликаться сия интерфейс

ifconfig vlan4 vlan 4 vlandev fxp0
как видим, 4-й вилан на интерфейсе fxp0
все оказалось проще простого)
ну и в конце повесим на него адрес

ifconfig vlan4 192.168.0.1/24
и для того что бы наш любимый интерфейс загружался автоматом в /etc/rc.local добавим 


cloned_interfaces="vlan4"
ifconfig_vlan3="inet 192.168.0.1 netmask 255.255.255.0 vlan 4 vlandev fxp0"
Ну вот теперь точно все)

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

Траффик

Тут я подумал почему б не посмотреть загрузку своего канала в линуксе
и мне на глаза попалась программка iftop
установить проще простого:


sudo apt-get install iftop

показывает неплохо, но в реальном времени.

тоже похожая штука, но по моднее iptraf установка такая же, ну вообще не плохо

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

Запрет ssh

Тут мне только что пришла идея что стоит некоторым пользователям закрыть доступ по ssh
не задавайте вопросов зачем) вот так захотелось... что я сделал для этого:
есть у нас пользователь vasia и я его очень не люблю как админа) я ему делаю такую пакость
в фаил




/etc/ssh/sshd_config

дописываю такие строки

match user vasia PasswordAuthentication no
KbdInteractiveAuthentication no

после этих строк Вася очень нервничает, но что делать, плохой он человек)
успехов вам в закрытии консоли от нежелательных пользователей!

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

Простой BASH скрипт для BACKUP

Вот мне довелось написать малюсенький скриптик чисто для себя и чисто для своего домашнего сервера.

задачи стояли самые простые:
1-сделать бекап баз данных и сайта;
2-удалять бекапы которые уже устарели.

вот собственно скрипт:

#!/bin/bash
filename=`date +%d_%m_%y`.tar.bz2
cd /var/backup
tar cvpjf $filename /var/www/ /var/lib/mysql
countday=10
day=`date +%d`
let "delday = day - countday"
dday=`echo $delday`
dfilename=`printf $dday`_`date +%m_%y`.tar.bz2
rm /var/backup/$dfilename


И конечно же краткое объяснение что и к чему)
буду объяснять построчно:
1-ну с этого начинается баш скрипт, рассказывать нечего
2-этой переменной мы присваиваем значение такое, каким хотим видеть название архива(бекапа). В данном случае это дата бекапа.
3-здесь мы идем в директорию куда хотим сохранять бекапы
4-здесь мы создаем архив тех папок, которых нам нужны бекапы(пишем их через пробел)
5-здесь присваивается значение сколько дней храниться наш бекап
6-10 -это строки что удаляют старые бекапы

Вот впрочем все....
успешных бекапов

и конечно же совсем забыл)
в /etc/crontab добавляем строчку
30 4    * * *   root    /(НАШ СКРИПТ)

где 30 - мин
4-часы
звездочки означают что в любой день в любой месяц
вот теперь все)

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

Q in Q Catalyst


Q-in-Q, так же это называют dot1q tunneling, это система двойного тегирования вланов. То есть, допустим у нас есть канал на некую техплощадку, на которой подключены клиенты, клиенты должны быть изолированы друг от друга с помощью vlan, но транспорт не позволяет обеспечить нужное количество вланов на каждого клиента, а владельцы транспорта дают один влан и как говорится крутись как хочешь. Вот для таких случаев замечательно подходит dot1q тунелирование, когда внутрь одного влана на входе упаковываются вланы, а на выходе транспорта распаковываются. Остается добавить, что не все виды коммутаторов поддерживают Q-in-Q, среди коммутаторов Cisco поддерживают Q-in-Q 35хх, 37xx, 45xx. Среди продуктов D-Link поддерживает Des-3825, тут Q-in-Q называется Double Vlan. И все коммутаторы производства ExtremeNetworks, они называют эту технологию vMan.

Схема коммутации для создания Q-in-Q будет выглядеть так:
net
На сервере (он является маршрутизатором для клиентов) терминируются все клиентские вланы(11,12, 13, 14, 15), порт GigabitEthernet 1/0/1 Switch 1, находится в режиме транка, и имеет такую конфигурацию:
interface GigabitEthernet1/0/1  switchport trunk encapsulation dot1q  switchport trunk allowed vlan 11-15  switchport mode trunk  speed nonegotiate  no cdp enable  spanning-tree bpdufilter enable  spanning-tree bpduguard enable !
Порт GigabitEthernet1/0/2 соенденен со Switch 2 порт GigabitEthernet1/0/1, нужно это для того, что бы отдать пакеты в порт который будет заворачивать весь трафик в Q-in-Q и имеет такую конфигурацию:
interface GigabitEthernet1/0/2  switchport trunk encapsulation dot1q  switchport trunk allowed vlan 11-15  switchport mode trunk  speed nonegotiate  no cdp enable  spanning-tree bpdufilter enable  spanning-tree bpduguard enable !
Порт Switch2 GigabitEthernet1/0/1 находится в режиме Q-in-Q, то есть все приходящие пакеты инкапсулирует во влан 10, и для всех устройств находящихся далее по цепочке виден только один влан, в нашем случае влан 10. А конфигурация порта GigabitEthernet1/0/1 на втором свитче будет такая:
configure terminal
interface GigabitEthernet1/0/1
description -== Q-IN-Q ==-
switchport access vlan 10
switchport mode dot1q-tunnel
switchport nonegotiate no mdix auto no cdp 
enable spanning-tree bpdufilter 
enable spanning-tree 
bpduguard enable
Теперь все приходящее на этот порт будет упаковываться внутрь 10-го влана и соответственно выходить через порт GigabitEthernet1/0/28, его настройки будут такие:
interface GigabitEthernet1/0/28  switchport trunk encapsulation dot1q  switchport trunk allowed vlan 10  switchport mode trunk  speed nonegotiate  no cdp enable  spanning-tree bpdufilter enable  spanning-tree bpduguard enable !
Далее идет оборудование компании предоставляющей транспорт до нашей техплощадки, на схеме это все оборудование обозначено как некое облако, о содержимом которого мы ничего не знаем, да и знать нам не надо.
На удаленной техплощадке наш влан приходит в порт GigabitEthernet1/0/28 Switch3 с конфигурацией идентичной настроенной на Switch 2 порт GigabitEthernet1/0/28.
interface GigabitEthernet1/0/28  switchport trunk encapsulation dot1q  switchport trunk allowed vlan 10  switchport mode trunk  speed nonegotiate  no cdp enable  spanning-tree bpdufilter enable  spanning-tree bpduguard enable !
Трафик приходит на порт GigabitEthernet1/0/28 Switch3 имеющий двойной тег, то есть Q-in-Qшный, теперь его надо распаковать, соответственно порт GigabitEthernet1/0/1 находится в режиме Q-in-Q. Настройки его такие:
interface GigabitEthernet1/0/1 description -== Q-IN-Q ==- switchport access vlan 10 switchport mode dot1q-tunnel switchport nonegotiate no mdix auto no cdp enable spanning-tree bpdufilter enable spanning-tree bpduguard enable
Остался последний свитч Switch4, в который и включаются все клиенты. Со Switch3 он соенденен через порт GigabitEthernet1/0/1 со своей стороны и в GigabitEthernet1/0/1 на Switch3.
Настройки GigabitEthernet1/0/1 на Switch4 такие:
interface GigabitEthernet1/0/1  switchport trunk encapsulation dot1q  switchport trunk allowed vlan 11-15  switchport mode trunk  speed nonegotiate  no cdp enable  spanning-tree bpdufilter enable  spanning-tree bpduguard enable
А настройки клиентских портов будут, для первого клиента во влан 11, порт GigabitEthernet1/0/2:
interface GigabitEthernet1/0/2  description -== FirstClient ==-  switchport access vlan 11  switchport mode access
второго, подключенного в GigabitEthernet1/0/3, и ходящего по 12 влану, такие:
interface GigabitEthernet1/0/2  description -== SecondClient ==-  switchport access vlan 12  switchport mode access
Ну и так далее, идентично для остальных клиентов.
На этом настройка закончена. Остается только добавить, что схему можно немного упростить физически, построив ее на основе 2 свичей вместо 4-х, для этого необходимо соорудить так называемый Q-in-Q Loop. Об этом я расскажу несколько позднее. И совсем необязательно применять для терминации клиентов равнозначные свитчи, им хватит и свитча попроще, но Q-in-Q прийдется строить все равно на базе как минимум Cisco Catalyst 35xx. Причем функция Q-in-Q в них не документирована, но работает.