Архив автора: admin

Подготовка образов HDD с DOS для IPMI

Как удаленно прошить BIOS системной платы или контроллер через IPMI?
В большинстве случаев для этого нужен DOS, но некоторые контроллеры нужно шить в EFI shell. При наличии физического доступа к серверу всегда есть дежурная флешка с DOS. Для удаленного способа нам придется подготовить образ загрузочного HDD с DOS, это проще и удобнее, чем готовить ISO-образ. IPMI в современных платах Supermicro может использовать в качестве Virtual Media образы HDD.
Тривиальная задача, но начинающих администраторов может поставить в тупик. Для начала нам понадобится дистрибутив MSDOS (некоторые платы не шьются под FreeDOS) и любой гипервизор. В данном случае будем использовать VirtualBox, но подойдет, естественно, любой, где запускается DOS и с которым вам удобно работать. Версию MSDOS лучше всего взять с поддержкой длинных имен, например 7.1.

Создаем ВМ с диском, достаточным для размещения образа BIOS. Размер образа для современных плат Supermicro X9 — 16МиБ, можно создать диск с небольшим запасом — 20МиБ. Добавляем установочный ISO c DOS.

Уверен, что с такой увлекательной и сложной задачей, как установка DOS вы можете справиться самостоятельно. Финальная задача — получить удобный способ работы с образом: добавлять/убирать из него файлы с прошивками. IMHO, это удобно делать в Linux. Для начала нужно конвертировать образ диска из формата VDI в простой «сырой» образ:

VBoxManage clonehd -format RAW dos.vdi dos.raw

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

[root@stand ~]# parted dos.img
GNU Parted 2.1
Using /root/dos.img
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) unit B
(parted) print
Model:  (file)
Disk /root/dos.img: 20971520B
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number Start End Size Type File system Flags
1 32256B 20643839B 20611584B primary fat16 boot

(parted)

Нужное смещение — 32256 байт. Можно монтировать:

mkdir /mnt/disk1
mount -o loop,offset=32256 -t vfat dos.img /mnt/disk1

Копируем прошивки и еще какие-нибудь полезности (например, VC или NC, прописываем автозапуск в autoexec.bat), размонтируем образ, и можно грузиться:

При большом количестве администрируемых серверов можно грузить образы при помощи PXELinux, благо он поддерживает загрузку сжатых через gzip образов.

Автор: Dmitry Nosachev

Ельцин и питон

В доке питона по sqlite3 обнаружил Ельцина

import sqlite3

con = sqlite3.connect(":memory:")
cur = con.cursor()
cur.execute("create table people (name_last, age)")

who = "Yeltsin"
age = 72

# This is the qmark style:
cur.execute("insert into people values (?, ?)", (who, age))

# And this is the named style:
cur.execute("select * from people where name_last=:who and age=:age", {"who": who, "age": age})

print cur.fetchone()


Судя по дате создания модуля sqlite — это именно Борис

Ссылка


https://docs.python.org/2/library/sqlite3.html#cursor-objects

Автор: Евгений Курочкин

Особенности гастроэнтерологии

Гастроэнтерологией называют процесс диагностирования, излечения и профилактики разнообразных недугов желудочного тракта, пищевода, кишечника, желчного пузыря, двенадцатиперстной кишки, поджелудочной железы или печени. Кроме всего прочего, в этой отрасли можно выделить гепатологию. Она является неким самостоятельным направлением, которое в свою очередь изучает болезни путей, выводящих желчь и заболевания печени. В современных медицинских клиниках вам смогут помочь в излечении органов пищеварения. Доктора-гастроэнтерологи, обладающие большим опытом, используя инновационные диагностические методы, смогут не только выявить соответствующие заболевания еще на ранних стадиях, но и произвести их действенное лечение. Учтите, что любой человек буквально с самых ранних лет нуждается время от времени в консультации доктора-гастроэнтеролога. К подобным болезням может привести множество разнообразных факторов. Среди них особенно выделяется неправильный образ жизни, стрессы, плохая питьевая вода, злоупотребление различной вредной продукцией, включая и фаст-фуд. Все эти аспекты очень серьезно сказываются на состоянии желудочно-кишечного тракта. При подобных недугах общее состояние здоровья также ухудшается. Наблюдается нездоровое состояние кожи, волосы становятся тусклыми, ногти — ломкими. Зачастую все эти симптомы проявляются при язве или гастрите. Для того, чтобы предупредить все эти недуги, необходимо правильно питаться и пить чистую воду. С целью того, чтобы вы могли получить кристально чистую воду, вам стоит использовать фильтры Эквилибриум отзывы о которых говорят сами за себя. С их применением вы сможете произвести комплексную глубокую очистку воды. При этом всем не стоит забывать и о том, что даже при правильном образе жизни и употреблении исключительно полезных продуктов, подобные болезни все равно могут появиться. По этим причинам своевременное посещение врача играет большое значение. Кроме того, что он сможет диагностировать конкретное заболевание при появившихся симптомах, в том числе он может обнаружить болезнь при бессимптомном состоянии. Если же у вас отмечаются самые первые симптомы болезней желудочно-кишечного тракта, вам нужно в самое ближайшее время посетить доктора. Это очень важно для того, чтобы подобные болезни не смогли перерасти в хронические трудноизлечимые формы.

приватные атрибуты в python

Ну нет приватных членов в питоне, ну нет…
Не надо писать С++/Java подобный код:

class C(object):
    def __init__(self):
        self.__name = ‘default’

def set_name(self, name):

        self.__name = name

def get_name(self):

        return self.__name

Пробуем
Читать

Опубликованно в разделе Python прикрепленные теги Дата публикации автор: .

ограничение lambda

Ограничение на использование лямбда-выражений

lambda x, y: assert x==y

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

Можно режить конкретную проблему

def assert_eq(x, y): 
    assert x == y

f = lambda x, y: assert_eq(x, y)


Но особого смысла в этом нет, т.к. мы лямбдой просто вызываем новую функцию assert_eq


Ссылки



Автор: Евгений Курочкин

Если HASP License Manager не раздает лицензии

Ковырялись мы тут с переводом сервера 1C на Linux. Почти все проблемные места были закрыты. Но тут снова перестали браться лицензии с ключа. Начали вспоминать, что могли сломать (до этого-то работало), перезапускать что попало, менять версии драйверов hasp — всё было без толку. И hasp прокинулся на виртуальную машину, и его драйвера стартанули, и соединение между менеджером лицензий и драйверами активна. А оказалось всё очень просто. При конфигурационном файле по-умолчанию клиент 1С ищет сервер лицензий broadcast-ом:

[NH_TCPIP]

;;NH_SERVER_ADDR = , ; IP addresses of all the NetHASP 

; License Managers you want to search.

; Unlimited addresses and multiple

; lines are possible.

; Possible address format examples:

;  IP address:      192.114.176.65

;  Local Hostname:  ftp.aladdin.co.il

;;NH_PORT_NUMBER = ; Set the TCP/IP port number. This is

; optional. The default number is 475.

;;NH_TCPIP_METHOD = TCP or UDP ; Send a TCP packet or UDP packet

; Default:  UDP

;;NH_USE_BROADCAST = Enabled or Disabled; Use TCPI/IP Broadcast mechanism.

; Default:  Enabled

Даже если указать конкретный NH_SERVER_ADDR. Он просто брал лицензию с соседнего сервера. Ну и в купе с тем, что сервер лицензий не обращается к ключу и не показывает его до первого обращения к нему от клиента, в AKS Monitor он (ключик) не отображается. Отключив широковещательный поиск сервера и указав IP-адрес необходимого нам, получаем желаемый результат. 

Автор: Василий Иванов
Дата публикации: 2014-05-18T14:18:00.000-07:00