Skip to content


Windows 7 и два маршрута по умолчанию

В Windows 7 мне несколько раз приходилось наблюдать следующую странность. По DHCP сетевые настройки клиент нормально получает. Но Интернет не работает и команда ipconfig /all показывает 2 маршрута по-умолчанию: один правильный, а второй - 0.0.0.0. При пинге куда либо сообщение "Ответ от xx.xx.xx.xx: заданный узел недоступен", где xx.xx.xx.xx --- адрес этого же компьютера. Причиной такого безобразия чаще всего является софт по имени bonjour, который без спросу устанавливается с некоторыми программами от Adobe (Creative Suite, Acrobat и др.)

Восстановить нормальную работу Интернет помогает следующий workaround: зайти в свойства подключения, снять галочку с "Протокол Интернет версии 4", нажать "OK", "Закрыть". Затем повторить операцию, поставив галочку на место. После этого всё чудесным образом начинает работать, но до следующей перезагрузки.

Чтобы решить проблему раз и навсегда, следует проделать следующее:

  1. Найти поиском (Win-F) файл mDNSResponder.exe, запомнить имя директории, где он находится. Обычно это "C:\Program Files\Bonjour\"
  2. Нажать Ctrl-Shift-Esc, в открывшемся окне диспетчера задач найти процесс mDNSResponder.exe и прибить его
  3. Открыть коммандную строку (Win-R) и набрать там
    "C:\Program Files\Bonjour\mDNSResponder.exe" -remove
    sc stop "Bonjour Service"
    sc delete "Bonjour Service"
  4. Зайти "Проводником" или любым другим файл-менеджером в каталог из п.1 (C:\Program Files\Bonjour) и переименовать файл mdnsNSP.dll, например, обозвав его mdnsNSP.txt
  5. Скачать программу LSP-Fix (http://cexx.org/lspfix.htm), запустить, установить галочку "I know what I'm doing", выделить mdnsnsp.dll слева и нажать кнопку ">>", чтобы mdnsnsp.dll переместилось в правое окно, затем нажать кнопку "Finish"
  6. Перезагрузить компьютер и удалить директорию C:\Program Files\Bonjour

Posted in Howto, Windows.

Tagged with .


Альтернативное электрическое оборудование увеличит сроки эксплуатации каким угодно домашним электроприборам

Каждому, без сомнений, приятно ощущать себя непосредственным человеком, который не зависит ни от каких ситуаций, особенно, если они связаны с бытовыми условиями. Если расценивать назревшую проблему с регулярными перебоями в электроснабжении, которые имеют под собой разные основания, то станет эффективным и порой обязательным приобретение вспомогательных источников питания.

Самыми широко используемыми в домашнем хозяйстве электрическими приборами выступают электростанции и стабилизаторы.

Электростанции выделяют бензиновые и дизельные, среди которых - аварийные, стационарные, переносные и сварочные.

Стационарные и переносные генераторы по мощности напряжения классифицируются от 600 Вт до 15 кВт и выполняются для бытового и промышленного использования. Диапазон их функционирования очень обширен, а в сочетании с двигателем и иными вспомогательными техническими составными частями может служить как генераторная установка.

Генератор или электростанцию выбрать очень легко: для этого необходимо всего лишь учесть соответствующие параметры и требования к подобной технике - например, мощность и предполагаемое расположение при эксплуатации. В таком случае каждому сразу будет понятно, подойдет ли стационарное устройство в качестве дополнительного источника или все же требуется передвижное.

Чтобы рассчитать наибольшую мощность, нам достаточно сделать такие вычисления: суммировать мощности всех электрических приборов, которые в одно и то же время подключены к электростанции и добавить к итоговому результату 15-20% запасного резерва. Самым приемлемым решением обычно будет то, при котором вы выберете электростанцию мощностью 10-20 кВт, которая поможет забыть о перебоях с электроэнергией в загородном доме.

Кроме того, существуют трехфазные генераторы, которые как правило используют для тех помещений, где проведена трехфазная сеть, для остальных случаев применяются традиционные однофазные генераторы.

Для беспрепятственного обеспечения электроэнергией в домах, офисных помещениях и даже малых заводах, специалисты советуют использовать синхронные генераторы. От асинхронных они отличаются меньшей точностью и не поддерживают объем сетевого электропитания.

Еще один тип дополнительного электрооборудования называется электрический стабилизатор, его основным плюсом является способность удерживать конкретные параметры электрической цепи. В большинстве случаев применяются стабилизаторы тока и напряжения.

Стабилизаторы - довольно необходимое оборудование, потому что с помощью них осуществляется предотвращение и защита любого типа домашней электротехники от повреждений. Обывателям стабилизатор знаком по таким названиям, как трансформатор или нормализатор напряжения, как раз он позволяет сгладить резкие скачки напряжения в сети и уберечь устройства от преждевременного выхода из строя. Это дает возможность продлить период использования любого электроприбора и понизить затраты на электроэнергию.

Posted in Misc.


пщщпдуюсщь?

Часто вам приходится набирать в строке адреса броузера что-то вроде "пщщпдуюсщь"? Это фраза "google.com", набранная в русской раскладке. Согласно статистике, такие опечатки встречаются очень часто. Другие распространённые варианты --- нщгегиуюсщь, нфюкг, нфтвучюкг. Такое бывает когда при наборе текста взгляд сосредоточен на клавиатуре. Решение проблемы --- освоить "слепой десятипальцевый метод" набор текста, например с помощью тренажёра "Соло на клавиатуре", или поставить специальную программу --- автоматический переключатель раскладок, такую как Punto Switcher. Первое решение, конечно, намного более трудоёмкое, требует усидчивости и большого терпения. Но результаты того стоят --- скорость набора текста повышается в разы, а значит, и эффективность работы за компьютером в целом.

Posted in Misc.


Создание rpm-пакета

Иногда бывает, что на поиск нужной RPM-ки уходит времени больше, чем на создание своей из исходников. Например, RPM-пакет pptpd 1.3.4 более недоступен по ссылке, которая была в посте об установке pptpd. А мне он как раз понадобился при настройке очередного VPN-сервера. Выход как всегда есть. Рассмотрим на примере pptpd создание rpm-пакета на основе исходных текстов, запакованных в классический tarball с раширением .tar.gz.

  1. Качаем tarball отсюда: http://sourceforge.net/projects/poptop/files/
  2. Устанавливаем пакет rpm-build:
    [root@server]# yum install rpm-build
    Setting up Install Process
    Resolving Dependencies
    --> Running transaction check
    ---> Package rpm-build.i386 0:4.4.2.3-20.el5_5.1 set to be updated
    --> Processing Dependency: elfutils for package: rpm-build
    --> Running transaction check
    ---> Package elfutils.i386 0:0.137-3.el5 set to be updated
    --> Processing Dependency: elfutils-libs-i386 = 0.137-3.el5 for package: elfutils
    --> Processing Dependency: libdw.so.1(ELFUTILS_0.127) for package: elfutils
    --> Processing Dependency: libdw.so.1(ELFUTILS_0.122) for package: elfutils
    --> Processing Dependency: libasm.so.1 for package: elfutils
    --> Processing Dependency: libdw.so.1(ELFUTILS_0.130) for package: elfutils
    --> Processing Dependency: libdw.so.1 for package: elfutils
    --> Processing Dependency: libasm.so.1(ELFUTILS_1.0) for package: elfutils
    --> Processing Dependency: libdw.so.1(ELFUTILS_0.126) for package: elfutils
    --> Running transaction check
    ---> Package elfutils-libs.i386 0:0.137-3.el5 set to be updated
    --> Finished Dependency Resolution
    Dependencies Resolved
    ===================================================================
     Package     Arch    Version         Repository  Size
    ===================================================================
    Installing:
     rpm-build      i386   4.4.2.3-20.el5_5.1   updates    302 k
    Installing for dependencies:
     elfutils       i386   0.137-3.el5          base       228 k
     elfutils-libs  i386   0.137-3.el5          base       193 k
    Transaction Summary
    ===================================================================
    Install       3 Package(s)
    Upgrade       0 Package(s)
     
    Total download size: 723 k
    Is this ok [y/N]: y
    Downloading Packages:
    (1/3): elfutils-libs-0.137-3.el5.i386.rpm               | 193 kB   00:00
    (2/3): elfutils-0.137-3.el5.i386.rpm                    | 228 kB   00:00
    (3/3): rpm-build-4.4.2.3-20.el5_5.1.i386.rpm            | 302 kB   00:00
     
    Total                                            842 kB/s | 723 kB 00:00
    Running rpm_check_debug
    Running Transaction Test
    Finished Transaction Test
    Transaction Test Succeeded
    Running Transaction
      Installing     : elfutils-libs                                1/3
      Installing     : elfutils                                     2/3
      Installing     : rpm-build                                    3/3
    Installed:
      rpm-build.i386 0:4.4.2.3-20.el5_5.1
    Dependency Installed:
      elfutils.i386 0:0.137-3.el5  elfutils-libs.i386 0:0.137-3.el5
    Complete!

    Возможно, также еще потребуется С-компилятор, такой как gcc (если еще не установлен).

  3. Собираем пакет:
    [root@server]# rpmbuild -tb /tmp/pptpd-1.3.4.tar.gz
  4. Находим вновьсозданную rpm-ку:
    [root@server]# ls -l /usr/src/redhat/RPMS/i386/
    -rw-r--r-- 1 root root 84570 Nov  5 22:18 pptpd-1.3.4-1.i386.rpm
  5. Устанавливаем:
    [root@server]# rpm -ivh /usr/src/redhat/RPMS/i386/pptpd-1.3.4-1.i386.rpm

Если пакет собирается обычным юзером, не обладающим привилегиями суперпользователя, то доступа на запись в директорию /usr/src/redhat у него, ясное дело, нет. В этой ситуации можно явно указать rpmbuild-у рабочие директории следующим образом:

WD=$HOME/tmp/rpmtop
[ ! -d $WD ] && mkdir -p $WD
mkdir -p $WD/{SOURCES,BUILD,SPECS,SRPMS,RPMS/`uname -m`}
echo "%_topdir $WD" >> $HOME/.rpmmacros

Во 3-ей строке команда "uname -m" вернёт конкретную, используемую Вами архитектуру. В большинстве случаев это “i386”. У меня - “x86_64”.

Можно также собирать rpm-пакет из src.rpm. Например, мне как-то нужно было поставить на кучу серверов сразу с CentOS x86_64 пакет tinyproxy. В том пакете, который мне удалось найти в известных мне репозиториях (EPEL, RPMForge), был кривой init-скрипт, в котором был неправильно указан путь к бинарнику (/usr/bin/tinyproxy вместо /usr/sbin/tinyproxy) и путь к pid-файлу, что приводило к невозможности запустить сервис штатными средствами без доработки напильником стартового скрипта /etc/init.d/tinyproxy на каждом сервере. К тому же, конфиг-файл по умолчанию меня несколько не устраивал, поэтому я решил всё это один раз подредактировать и создать свою RPM-ку, которую потом простым скриптом можно было сразу проинсталлировать на все сервера. Далее я нашёл tinyproxy-1.8.2-1.fc14.src.rpm и распаковал его:

# rpm2cpio < tinyproxy-1.8.2-1.fc14.src.rpm | cpio -i
430 blocks
# ls -la
total 488
drwxrwxr-x  2 avz avz   4096 Apr 13 13:13 .
drwx------ 10 avz avz   4096 Apr 13 13:13 ..
-rw-r--r--  1 avz avz 214619 Apr 12 14:51 tinyproxy-1.8.2-1.fc14.src.rpm
-rw-rw-r--  1 avz avz 202931 Apr 13 13:13 tinyproxy-1.8.2.tar.bz2
-rw-r--r--  1 avz avz  10147 Apr 13 13:13 tinyproxy.conf
-rw-r--r--  1 avz avz   1906 Apr 13 13:13 tinyproxy.init
-rw-r--r--  1 avz avz    252 Apr 13 13:13 tinyproxy.logrotate
-rw-r--r--  1 avz avz   4109 Apr 13 13:13 tinyproxy.spec

Теперь редактируем файлы tinyproxy.init и tinyproxy.conf (при необходимости). В файл tinyproxy.spec в раздел changelog пишем чего же мы такого ценного привнесли своими изменениями (это необязательно, просто правило хорошего тона) и собственно собираем rpm-ку:

# mv tinyproxy-1.8.2.tar.bz2 tinyproxy.conf tinyproxy.init tinyproxy.logrotate /usr/src/redhat/SOURCES
# rpmbuild -ba tinyproxy.spec

Если всё прошло успешно (нет ошибок от make), то сможем наблюдать появление правильной RPM-ки, которую и можно ставить на все сервера сразу:

# ls /usr/src/redhat/RPMS/`uname -m`/tin*
/usr/src/redhat/RPMS/x86_64/tinyproxy-1.8.2-1.x86_64.rpm

Ключик -ba, кстати, также создаёт и src.rpm в директории /usr/src/redhat/SRPMS --- может пригодиться при последующих пересборках. Если же make выдаёт ошибки, то надо разбираться и чинить. В моём случае, например, пришлось установить пакет docbook-style-xsl, потому что без него man-файлы почему-то не создавались в процессе сборки.

Posted in *nix, Howto.

Tagged with , , , .