Windows 7 - Install USB with grub4dos [SOLVED].

Решил законспектировать здесь способ установки Windows 7 с загрузочной USB флеш 4Гб. Проверено на Lenovo T410.

  1. Готовим USB Flash размером не менее 4Гб.
  2. Форматируем в FAT32.
  3. Скачиваем последнюю версию установщика grug4dos в MBR: http://download.gna.org/grubutil/ На момент написания заметки это grubinst-1.1-bin-w32-2008-01-01.zip. Распаковываем архив и запускаем grubinst_gui.exe. В появившемся окне выбираем в поле “Disk” интересующую USB Flash, далее “Install“. После этого откроектся окно cmd и в случае успеха будет видно следующее:
    The MBR/BS has been successfully installed
    Press <ENTER> to continue ...
    
  4. Скачиваем последнюю версию загрузчика: http://code.google.com/p/grub4dos-chenall/downloads/list Выбираем наиболее свежий (верхний), но без слов “TestOnly” и “Featured“. На момент написания заметки это grub4dos-0.4.6a-2014-01-17.7. Раскрываем архив и копируем из него файл grldr в корень USB Flash.
  5. Создаем также в корне текстовый файл menu.lst. Ниже его самое стандартное содержимое пока без пункта установки Windows:
    # Поиск и загрузка Windows NT/2000/XP.
    title Find and load NTLDR of Windows NT/2K/XP
    find --set-root --ignore-floppies --ignore-cd /ntldr
    map () (hd0)
    map (hd0) ()
    map --rehook
    find --set-root --ignore-floppies --ignore-cd /ntldr
    chainloader /ntldr
    
    # Поиск и загрузка Windows Vista/7/8.
    title Find and load BOOTMGR of Windows VISTA/7/8
    find --set-root --ignore-floppies --ignore-cd /bootmgr
    map () (hd0)
    map (hd0) ()
    map --rehook
    find --set-root --ignore-floppies --ignore-cd /bootmgr
    chainloader /bootmgr
    
    # Командная строка GRUB.
    title GRUB CLI
    commandline
    
    # Вернуться в DOS. Выяснить почему не работает.
    title back to dos
    quit
    
    # Перезагрузка.
    title Reboot
    reboot
    
    # Выключение.
    title Shutdown
    halt
    
  6. Создаем каталог “Boot“, в который следует положить .ISO файл нужного дистрибутива Windows 7. В моем случае это был “en_windows_7_ultimate_with_sp1_x64_dvd_u_677332.iso“.
  7. Далее воспользуемся уже созданным способом установки используя драйвер FiraDisk (ссылка на блог автора). А именно:
  8. Добавляем в файл menu.lst пункт для установки Windows:
    title Windows 7 SP1 (x64, Eng)
    set MYISO=en_windows_7_ultimate_with_sp1_x64_dvd_u_677332.iso
    map --mem (md)0x800+4 (99)
    map /Boot/%MYISO% (0xff)
    checkrange 0x80 read 0x8280 && map (hd0) (hd1)
    checkrange 0x80 read 0x8280 && map (hd1) (hd0)
    map --hook
    write (99) [FiraDisk]nStartOptions=cdrom,vmem=find:/Boot/%MYISO%;n�
    chainloader (0xff)/BOOTMGR || chainloader (0xff)
    
  9. Можно грузиться и проверять.

Возможные проблемы:

  • Ошибка “Error 60: File for drive emulation must be in one contiguous disk area.” говорит о том, что .ISO файл записан непоследовательно. Самый простой способ решить проблему такой: заново отформатировать USB Flash, затем поместить самые большие файлы первыми (т.е. .ISO файл) и только после этого все оставшееся. Для проверки также можно воспользоваться утилитой RMPrepUSB (есть Portable версия), запустить RMPREPUSB.exe, далее “Drive” > “Make All Files on Drive Contiguous (Ctrl+F2)“.

Lenovo T410 - Sound issue (stereo switching to mono) in Windows 7 32/64bit [SOLVED].

В который раз встречаю неприятную проблему со звуком (переключается в моно) на Lenovo T410 с Conexant 20585 SmartAudioHD на Windows 7 32/64bit. Просто чтобы не забыть привожу ссылку на решение и само решение:

  1. Right click in the traybar “Speaker” icon > “Playback devices”.
  2. Select “Speakers” > hit “Properties”.
  3. Go to tab “Enhancements”.
  4. Check the “Disable all enhancements” checkbox > hit “Apply” > hit “Ok”.

Cisco - “No space left on device” can be hardware problem.

Во время работы с Cisco 2600XM при попытке залить на Flash из IOSа со стороннего TFTP сервера файл значительного размера получил сообщение о нехватке места, несмотря на то, что доступен бОльший размер:

~
!!!!!!!!!!!!!!!!!!!!!!!!
%Error copying flash:c2600-adventerprisek9_ivs-mz.124-15.T14.bin (No space left on device)

Посмотрел ошибки:

Router#show flash: err 

System flash directory:
File  Length   Name/status
  1   16825580  c2600-adventerprisek9-mz.124-10a.bin [deleted] 
[16825644 bytes used, 32981716 available, 49807360 total]
49152K bytes of processor board System flash (Read/Write)

   Chip    Bank    Code      Size      Name                erase  write
    1      1       8917      8192KB    INTEL 28F640J3      0      0    
    2      1       8917      8192KB    INTEL 28F640J3      0      0    
    1      2       8918      16384KB    INTEL 28F128J3      0      206  
    2      2       8918      16384KB    INTEL 28F128J3      0      207  
Router#

Решил, что это баг конкретного IOSа. Решил попробовать из rommon. Получил несколько другую ошибку:

rommon 1 > IP_ADDRESS=10.0.0.2
rommon 2 > IP_SUBNET_MASK=255.0.0.0
rommon 3 > DEFAULT_GATEWAY=10.0.0.1
rommon 4 > TFTP_SERVER=10.0.0.1
rommon 5 > TFTP_FILE=c2600-adventerprisek9-mz.124-15.T14.bin
rommon 6 > tftpdnld
 
          IP_ADDRESS: 10.0.0.2
      IP_SUBNET_MASK: 255.0.0.0
     DEFAULT_GATEWAY: 10.0.0.1
         TFTP_SERVER: 10.0.0.1
           TFTP_FILE: c2600-adventerprisek9-mz.124-15.T14.bin
 
Invoke this command for disaster recovery only.
WARNING: all existing data in all partitions on flash will be lost!
Do you wish to continue? y/n:  [n]:  y

Receiving c2600-adventerprisek9-mz.124-15.T14.bin from 10.0.0.1
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
LINES OMITTED
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.................... [TIMED OUT]
TFTP: Operation terminated.
rommon 7 >

Решил, что проблема из-за TFTP сервера в виде Cisco. Попробовал TFTPD. Результат ниже:

~
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!
File reception completed.
Copying file c2600-spservicesk9-mz.124-21.bin to flash.
Erasing flash at 0x62fc0000
program flash location 0x61000000
program_flash: location 0x61000800 wrote 0xf2cdbafd,contains 0xf2cd32d4
program flash failure at location 0x61000800 - aborting

rommon 28 >

Так как Flash в c2600XM представляет собой впаеные чипы на 2х8MB + опциональный модуль на 16 или 32MB, решил залить IOS размером меньше 16MB, если пройдет успешно, значит дело в дополнительном модуле. Маленький IOS залился успешно:

~
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!!!!
File reception completed.
Copying file c2600-ipbase-mz.123-6e.bin to flash.
Erasing flash at 0x62fc0000
program flash location 0x608d0000
rommon 33 > dir flash:
         File size           Checksum   File name
   9283676 bytes (0x8da85c)   0x0776    c2600-ipbase-mz.123-6e.bin
rommon 34 >

После замены опционального модуля удалось успешно залить IOS максимального размера. Вывод - проблема с железом (Flash модулем MEM2600XM-32FS).

PuTTY vs SecureCRT.

Ох уж это противостояние двух терминальных программ… Конечно есть и другие, но для Telnet/SSH/Serial подключений идеальны только эти две. Я многие годы работал в основном в PuTTY от Simon Tatham, так как это бесплатное кроссплатформенное ПО, однако с недавнего времени решил перейти на SecureCRT® от VanDyke Software® по простой причине - не смотря на то, что к PuTTY уже давно есть различные Connection Manager-ы (приводить не буду, их действительно много), каждый их них имеет свои изъяны, к примеру, трудно получить правильное название закладки (сессии), что очень важно когда открыто много сессий к одному устройству по различным портам.

Что радует в SecureCRT® из коробки:

  1. Правильное название закладок.
  2. Alt+1, Alt+2, Alt+3,… - переход к нужной закладке (сессии).
  3. Ctrl+TAB - Переключает на следующую закладку вправо. Можно назначить так как удобно Вам в “Options” > “Session options…” > “Terminal” > “Emulation” > “Map a Key…” > нужное кнопкосочетание > “Menu Function” > “MENU_TAB_NEXT”

Toll Fraud Enhancements in 15.1(2)T and CUCME 8.1.

Несмотря на то, что фича появилась давным давно, я до сих пор вижу по форумам, что люди сталкиваются с проблемами, вызванными работой функции “toll-fraud prevention feature”, которая была введена впервые в IOS 15.1(2)T, т.е. начиная с CUCME 8.1.

При загрузке маршрутизатора в консоли можно видеть следующее сообщение:

 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 !!Following voice command is   enabled:                    !!
 !!  voice service   voip                                   !!
 !!   ip address   trusted   authenticate                   !!
 !!                                                         !!
 !!The command enables the ip   address authentication      !!
 !!on incoming H.323 or SIP trunk   calls for toll fraud    !!
 !!prevention supports.                                     !!
 !!                                                         !!
 !!Please use "show ip   address trusted list" command      !!
 !!to display a list of valid ip   addresses for incoming   !!
 !!H.323 or SIP trunk calls.                                !!
 !!                                                         !!
 !!Additional valid ip addresses   can be added via the     !!
 !!following command   line:                                !!
 !!  voice service   voip                                   !!
 !!   ip address   trusted   list                           !!
 !!    ipv4   <ipv4-address> [<ipv4   network-mask>]        !!
 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Чтобы просто не пользоваться этим можно или разрешить все, или выключить фичу, или добавить только нужные адреса.

Разрешить все адреса:

 voice service voip
  ip address trusted list
   ipv4 0.0.0.0 0.0.0.0

Отключить функцию:

 voice service voip
  no ip address trusted authenticate

Более подробно можно почитать в тысячи мест. Ниже наиболее интересные ссылки:

P.S. Предположения относительно причины проблем были верными - тред на certification.ru. Именно поэтому и была написана эта заметка.

Update

Сегодня в очередной раз заказчик встретился с этой проблемой при входящих из вне звонках SIP. Сначала смотрели сигнализацию, потом пиры, потом посмотрели версию софта и настройки CUBE… Выглядело это так:

Router#show call history voice com
  A/O FAX T Codec       type        Peer Address       IP R: disc-cause
        94 ANS     T0     g711ulaw    VOIP        P9222311002  192.168.100.125:16726   D15
        95 ANS     T0     g711ulaw    VOIP        P9222311002  192.168.100.125:16862   D15
Router#

Disc-cause D15 (HEX) = 21 (DEC) = call-reject.

На нормальный INVITE с SDP железка отвечала "403 Forbidden", "Reason: Q.850;cause=21":

Dec 10 11:10:25.425: //95/F9AA4D008466/SIP/Msg/ccsipDisplayMsg:
Sent:
SIP/2.0 403 Forbidden
Via: SIP/2.0/UDP 192.168.100.125:5060;branch=z9hG4bKC3E31361
From: ;tag=75AA7328-B1D
To: ;tag=154FDD8-D6C
Date: Wed, 10 Dec 2014 11:10:25 GMT
Call-ID: F9AF2ED8-7F9311E4-846C82EB-1C52C6C7@192.168.100.125
Timestamp: 1418209825
CSeq: 101 INVITE
Allow-Events: telephone-event
Server: Cisco-SIPGateway/IOS-12.x
Reason: Q.850;cause=21
Content-Length: 0

Потом поняли в чем дело:

Router#sh run | s voice service voip
voice service voip
 address-hiding
 allow-connections sip to sip
 redirect ip2ip
 sip
  min-se 90 session-expires 90
Router#
Router#show ver | i bin
System image file is "flash:c2800nm-adventerprisek9-mz.151-3.T.bin"
Router#

Как-то так...

Admin area