Особую прелесссть происшедшему придал тот факт, что дефолтовые настройки железки совпадают с подсетью, которую использует центральный офис - а задачка ставилась именно что настроить "работу-из-дома"...
понедельник, 01 ноября 2010
... столкнулся с железкой (ADSL-модем+router+DHCP-сервер+еще-чего-изволите), которая _не держит_ настроек после выключения питания. "Сюрприз-сюрприз!", ага. Бывает, оказывается и не такое.
Особую прелесссть происшедшему придал тот факт, что дефолтовые настройки железки совпадают с подсетью, которую использует центральный офис - а задачка ставилась именно что настроить "работу-из-дома"...
Особую прелесссть происшедшему придал тот факт, что дефолтовые настройки железки совпадают с подсетью, которую использует центральный офис - а задачка ставилась именно что настроить "работу-из-дома"...
пятница, 29 октября 2010
... хорошая, а иногда и ОЧЕНЬ хорошая штука. Во первых, он "кэширующий" т.е. запоминающий как позитивные, так и негативные ответы - т.е. при повторном обращении к ресурсу он не тратит ни твое, ни провайдерское
время. Во вторых, как правило он "более надежный" - в случае возникновения проблем его проще "перезапустить" или "пофиксить", чем, скажем, упавший провайдерский, да и "классическое" разрешение имен штука весьма и весьма надежная. Ну и в третьих - он собственный - и это тоже не маленький плюс %).
С другой стороны - провайдерские DNS-сервера штука тоже не бесполезная: "при прочих равных" условиях они находятся в "льготной" зоне тарификации, проблем с пингом до них как правило нет, кэш у них не мерянный - так что "при прочих равных" условиях ответ на "первый поиск" они дадут быстрее, ну и просто - некоторыененатуралы провайдерского роду-племени тупо режут доступ к другим серверам по 53 порту.
Впрочем, "одно другому не мешает" - и вполне можно использовать провайдерский (Или, например, Google Public DNS - 8.8.8.8 и 8.8.4.4 если кто не знал
) сервер совместно со своим, прописав его в качестве "dns-forwarder'a", получив, с одной стороны, "полкопеечную" экономию трафика + "четвертькопеечную" экономию по скорости разрешения имен и "повышенную надежность", с другой.
И все бы хорошо, но некоторыененатуралы провайдеры раздают DNS-серверы с кучей прочей-разной полезной информации через DHCP, после чего resolv.conf надо править ручками, ручками же править named.conf и делать rndc reload. Лениво, да. Впрочем - проект FreeBSD, как и Tefal - "всегда думает о нас!", и в 8.1 в rc.conf'е появилась опция named_auto_forward, которая:
- закидывает сервера из resolv.conf в /etc/namedb/auto_forward_conf, который инклудится в named.conf (Ручками, ага.).
- ставит на первое место в resolv.conf nameserver 127.0.0.1.
- чистит лишнее.
Казалось бы, ля-по-та, но... вот сидите вы в каком-нибудь ТЦ с нехреновой проходимостью народа, админ, "несколько ограниченный" адресным пространством ставит lease time в своем DHCP 10 минут (А то и меньше, да...), и? Ровно через 7 минут dhclient отправит запрос на продление аренды и... перезапишет resolv.conf со всеми нашими forwarder'ами. Или решите вы поднять на втором интерфейсе wifi - ifconfig wlan0 wlandev ... wlanmode sta mode 11g ssid ... country RU еще-что-то-там, dhclient wlan0 up и... см. выше.
Не-до-ра-бо-то-чка. В первом случае еще можно закинуть в dhclient.conf
interface "берем из того же rc.conf'а те, что с DHCP inside " {
supersede domain-name-servers;
}, но что делать во втором?doom'аю квакаю.

С другой стороны - провайдерские DNS-сервера штука тоже не бесполезная: "при прочих равных" условиях они находятся в "льготной" зоне тарификации, проблем с пингом до них как правило нет, кэш у них не мерянный - так что "при прочих равных" условиях ответ на "первый поиск" они дадут быстрее, ну и просто - некоторые
Впрочем, "одно другому не мешает" - и вполне можно использовать провайдерский (Или, например, Google Public DNS - 8.8.8.8 и 8.8.4.4 если кто не знал

И все бы хорошо, но некоторые
- закидывает сервера из resolv.conf в /etc/namedb/auto_forward_conf, который инклудится в named.conf (Ручками, ага.).
- ставит на первое место в resolv.conf nameserver 127.0.0.1.
- чистит лишнее.
Казалось бы, ля-по-та, но... вот сидите вы в каком-нибудь ТЦ с нехреновой проходимостью народа, админ, "несколько ограниченный" адресным пространством ставит lease time в своем DHCP 10 минут (А то и меньше, да...), и? Ровно через 7 минут dhclient отправит запрос на продление аренды и... перезапишет resolv.conf со всеми нашими forwarder'ами. Или решите вы поднять на втором интерфейсе wifi - ifconfig wlan0 wlandev ... wlanmode sta mode 11g ssid ... country RU еще-что-то-там, dhclient wlan0 up и... см. выше.
Не-до-ра-бо-то-чка. В первом случае еще можно закинуть в dhclient.conf
interface "берем из того же rc.conf'а те, что с DHCP inside " {
supersede domain-name-servers;
}, но что делать во втором?
четверг, 28 октября 2010
В очередной раз переделываю меню xfce, правлю .desktop-файлы с описанием программ - глаз сам-собой цепляется:
[Desktop Entry]
Encoding=UTF-8
Name=StarDict
Name[ar]=StarDict
Name[cs]=StarDict
Name[de]=StarDict
Name[fr]=StarDict
Name[ga]=StarDict
Name[hr]=StarDict
Name[hu]=StarDict
Name[ku]=StarDict
Name[mk]=StarDict
Name[nl]=StarDict
Name[pt_BR]=StarDict
Name[ru]=StarDict
Name[sk]=StarDict
Name[sv]=StarDict
Name[tr]=Stardict
Name[tt]=StarDict
Name[uk]=Зоряний словник :: StarDict
Name[vi]=StarDict
В остальные файлы даже заглядывать боюсь!
[Desktop Entry]
Encoding=UTF-8
Name=StarDict
Name[ar]=StarDict
Name[cs]=StarDict
Name[de]=StarDict
Name[fr]=StarDict
Name[ga]=StarDict
Name[hr]=StarDict
Name[hu]=StarDict
Name[ku]=StarDict
Name[mk]=StarDict
Name[nl]=StarDict
Name[pt_BR]=StarDict
Name[ru]=StarDict
Name[sk]=StarDict
Name[sv]=StarDict
Name[tr]=Stardict
Name[tt]=StarDict
Name[uk]=Зоряний словник :: StarDict
Name[vi]=StarDict
В остальные файлы даже заглядывать боюсь!
среда, 27 октября 2010
Скачал последнюю версию драйверов с офсайта. diff показал, что не стоило и возиться - то же самое.
Выпилил из родного Makefile'а uudecode (Ибо нафига? Сама firmware'а вроде как чистый бинарник...), поправил имена файлов + пути. Пересобрал ядро с device firmware
device wpi
device wpifw
device wlan
device wlan_amrr
device wlan_ccmp
Ребутнулся. На удивление - работать стало заметно стабильней - окружение находится максимум, "со второго ребута" - впрочем, 'could not configure bluetooth coexistence', неожиданный обрыв связи при неактивности (Есть мнение, что powersave надо еще и на точке доступа выпиливать, хотя...), и глухой висяк ноута с "последними словами" в логах - wpi: radio switch off я уже словил.
В общем, "есть можно - но на вкус гадость". Во что это все превратиться при добавлении software AP на USB'шной (!) DLINK'овской (!) DWA-125 поверх все той же FreeBSD заранее боюсь представлять. Никакой информации в рекомендованном в 'release notes' к 8.1 (Где поддержка этих самых RALINK'ов и появилась) man 4 run я так и не нашел, разработчик этого (Или не этого? Лень выяснять) run'а для openBSD о перспективе включения режима hostap отозвалсяматерно в стиле "это была ошибка, больше я ее не повторю", но фрюшники активно 'Call for testers (HOSTAP) run' - и судя по количеству комментов даже кого-то нашли... в общем, не было у Шамана забот, решил Шаман ими обзавестись...
Выпилил из родного Makefile'а uudecode (Ибо нафига? Сама firmware'а вроде как чистый бинарник...), поправил имена файлов + пути. Пересобрал ядро с device firmware
device wpi
device wpifw
device wlan
device wlan_amrr
device wlan_ccmp
Ребутнулся. На удивление - работать стало заметно стабильней - окружение находится максимум, "со второго ребута" - впрочем, 'could not configure bluetooth coexistence', неожиданный обрыв связи при неактивности (Есть мнение, что powersave надо еще и на точке доступа выпиливать, хотя...), и глухой висяк ноута с "последними словами" в логах - wpi: radio switch off я уже словил.
В общем, "есть можно - но на вкус гадость". Во что это все превратиться при добавлении software AP на USB'шной (!) DLINK'овской (!) DWA-125 поверх все той же FreeBSD заранее боюсь представлять. Никакой информации в рекомендованном в 'release notes' к 8.1 (Где поддержка этих самых RALINK'ов и появилась) man 4 run я так и не нашел, разработчик этого (Или не этого? Лень выяснять) run'а для openBSD о перспективе включения режима hostap отозвался
понедельник, 25 октября 2010
... точку доступа и как следует поигрался с беспроводной сетевкой на ноутбуке. Результат м-ммм... двусмысленный, впрочем - обо всем по порядку.
После загрузки (Ибо нефиг вкомпиливать всякое отключаемое в ядро) соответствующего (if_wpi, если кому интересно) модуля сетевка вполне определилась:
wpi0: mem 0xfa000000-0xfa000fff irq 18 at device 0.0 on pci8
wpi0: Driver Revision 20071127
wpi0: Hardware Revision (0x1)
но работать отказалась. man дал наводку, что ей, зарразе, окромя себя самой еще device firmware и собственно firmware в виде kernel-модуля wpifw нужны. ОК, не проблема - грузим то и другое с помощью kldload'a, создаем сетевуху через ifconfig (Да-да, это 8-ка, сынок!):
ifconfig wlan0 create wlandev wpi0 wlanmode sta mode 11g up
- в логах видим фигу. Вернее,
wpifw: You need to read the LICENSE file in /usr/share/doc/legal/intel_wpi/.
wpifw: If you agree with the license, set legal.intel_wpi.license_ack=1 in /boot/loader.conf.
Гхым. Странно, вообще-то, ну - надо, так надо!
Добавляем, ребутим, запускаем... вроде ок. wpi0 asssociated, wlan0 - no carrier, логично.
ifconfig wlan0 scan - висяк.
В логи - wpi0: could not configure bluetooth coexistence.
Л-ладно. Лезем в БИОС, отключаем блютус (Ибо, один хрен, не пользуемся).
Повторяем... тот же висяк.
В логи? wpi0: could not set power mode.
Ытить! kldunload if_wpi; kldload if_wpi; ifconfig ...
Сканирует! Ребут-повтор... авотхрен. Еще два разА... опять сканирует. Ребут, повтор... scan играет в партизана, а вот list scan все очень даже пишет.
Шо за нефиг? Не понятно. Гружу wlan_ccmp, запускаю wpa_supplicant - не может найти WPA-enabled точку доступа. Ребут, лоад-анлоад, wpa_supplicant -dd ... куча отладки и установленное соединение. Получаю с точки адрес, начинаю ее пинговать. Нормально... но на примерно 1400 пингах соединение рвется "без объяснения причин" - wlan0 associated, wpa_supplicant молчит, а пинги не идут. up/down, рестарт wpa_supplicant - еще полторы тысячи пингов. Мнда. Не весело. Продолжаю курить ifconfig, нахожу опцию '-powersave' и содинение пашет 6 часов без перерыва. Норм? Ну, вроде...
Запускаю утром - тут тебе и bluetooth coexistance, и power mode, и device timeout до кучи... Неее, нам такого не нужно.
Смотрим разработчика драйвера в man'ах: [email protected], лезем на сайт - damien.bergamini.free.fr - новые дрова есть, но - сюрприз-сюрприз! Для openbsd. Firmware ажно версии 3.2 супротив имеющейся в /usr/src/sys/contrib/dev/wpi/ iwlwifi-3945-2.14.4.fw.uu. Надо только собрать, ага. Качаем-распаковываем... ага, ага. Makefile'а нету. Берем родной из /usr/src/sys/modules/wpifw/, правим пути с именами файлов и с четвертой попытки что-то там даже собирается. Копируем, ребутим (На всякий случАй с poweroff'ом!) грузим... один хрен, не работает - или вернее, работает тем же манИром. Если удается завести - пашет без проблем, но запускается "с толкача" путем неведома Шаманства. Что характерно - на работе вполне себе с первого раза грузится и даже находит какие-то точки доступа.
В общем, будем еще посмотреть, да.
После загрузки (Ибо нефиг вкомпиливать всякое отключаемое в ядро) соответствующего (if_wpi, если кому интересно) модуля сетевка вполне определилась:
wpi0: mem 0xfa000000-0xfa000fff irq 18 at device 0.0 on pci8
wpi0: Driver Revision 20071127
wpi0: Hardware Revision (0x1)
но работать отказалась. man дал наводку, что ей, зарразе, окромя себя самой еще device firmware и собственно firmware в виде kernel-модуля wpifw нужны. ОК, не проблема - грузим то и другое с помощью kldload'a, создаем сетевуху через ifconfig (Да-да, это 8-ка, сынок!):
ifconfig wlan0 create wlandev wpi0 wlanmode sta mode 11g up
- в логах видим фигу. Вернее,
wpifw: You need to read the LICENSE file in /usr/share/doc/legal/intel_wpi/.
wpifw: If you agree with the license, set legal.intel_wpi.license_ack=1 in /boot/loader.conf.
Гхым. Странно, вообще-то, ну - надо, так надо!
Добавляем, ребутим, запускаем... вроде ок. wpi0 asssociated, wlan0 - no carrier, логично.
ifconfig wlan0 scan - висяк.
В логи - wpi0: could not configure bluetooth coexistence.
Л-ладно. Лезем в БИОС, отключаем блютус (Ибо, один хрен, не пользуемся).
Повторяем... тот же висяк.
В логи? wpi0: could not set power mode.
Ытить! kldunload if_wpi; kldload if_wpi; ifconfig ...
Сканирует! Ребут-повтор... авотхрен. Еще два разА... опять сканирует. Ребут, повтор... scan играет в партизана, а вот list scan все очень даже пишет.
Шо за нефиг? Не понятно. Гружу wlan_ccmp, запускаю wpa_supplicant - не может найти WPA-enabled точку доступа. Ребут, лоад-анлоад, wpa_supplicant -dd ... куча отладки и установленное соединение. Получаю с точки адрес, начинаю ее пинговать. Нормально... но на примерно 1400 пингах соединение рвется "без объяснения причин" - wlan0 associated, wpa_supplicant молчит, а пинги не идут. up/down, рестарт wpa_supplicant - еще полторы тысячи пингов. Мнда. Не весело. Продолжаю курить ifconfig, нахожу опцию '-powersave' и содинение пашет 6 часов без перерыва. Норм? Ну, вроде...
Запускаю утром - тут тебе и bluetooth coexistance, и power mode, и device timeout до кучи... Неее, нам такого не нужно.
Смотрим разработчика драйвера в man'ах: [email protected], лезем на сайт - damien.bergamini.free.fr - новые дрова есть, но - сюрприз-сюрприз! Для openbsd. Firmware ажно версии 3.2 супротив имеющейся в /usr/src/sys/contrib/dev/wpi/ iwlwifi-3945-2.14.4.fw.uu. Надо только собрать, ага. Качаем-распаковываем... ага, ага. Makefile'а нету. Берем родной из /usr/src/sys/modules/wpifw/, правим пути с именами файлов и с четвертой попытки что-то там даже собирается. Копируем, ребутим (На всякий случАй с poweroff'ом!) грузим... один хрен, не работает - или вернее, работает тем же манИром. Если удается завести - пашет без проблем, но запускается "с толкача" путем неведома Шаманства. Что характерно - на работе вполне себе с первого раза грузится и даже находит какие-то точки доступа.
В общем, будем еще посмотреть, да.
четверг, 21 октября 2010
Главное в кофе не сорт (Кофе бывает двух типов: "растворимый" читай - несъедобныйи "прочий"), оставим "сорта" гурманам - и не "крепкость" (Больше пяти ложек в турку один черт "не лезет", но и тогда каменный цветок "эспрессо" не получается
), и даже не набор специй (Гвоздика-корица-перец-кардамон-имбирь-сахар-чеснок-мням-ням-ням!), не-ееет, главное в кофе - тем-пе-ра-ту-ра!
Да-да, та самая неуловимая грань между "$@#$...!!!!!, обжегся!" и "тьфу, остыл!" способна превратить "вчерашние ополоски" в "напиток богов" и наоборот (Увы, куда чаще) - осталось только научиться её определять.
Думаю о приобретении термометра.

Да-да, та самая неуловимая грань между "$@#$...!!!!!, обжегся!" и "тьфу, остыл!" способна превратить "вчерашние ополоски" в "напиток богов" и наоборот (Увы, куда чаще) - осталось только научиться её определять.
Думаю о приобретении термометра.
вторник, 19 октября 2010
понедельник, 18 октября 2010
- читать всякую фигню: рекламные объявления, лицензионные соглашения, аннотации с выходными данными и пэ рэ. Привычка действительно дурная - не могу припомнить ситуаций, в которых она принесла реальную пользу, а времени не все это убито... Впрочем, речь не об этом.
Попалась мне тут на днях коробка с home and students 2010 офисом пр-ва M$ - делать было особо нечего, ну и...
Epic fail
Собственно, и вот за этомы вы платите деньги 
Попалась мне тут на днях коробка с home and students 2010 офисом пр-ва M$ - делать было особо нечего, ну и...
Epic fail
Собственно, и вот за это

вторник, 05 октября 2010
... FreeBSD 8.1 с обещанной 14ой версией ZFS уже вышла, ergo - надо пробовать реализацию ZFS acl. (get|set)facl работают, но особой радости не несут (Есть и есть. Работают и работают
) - расписывать с их помощью списки контроля доступа в работающих системах немалых размеров мало кому хочется, GUI'ёк бы прикрутить... Партия сказала "надо!" - народ ответил "Есть!" - вернее, была такая буква в smb.conf'е - Ны-ты А-Цы-Ель суппорт, вот. Была, да - вот только работала она с POSIX-acl, а в zfs у нас nfsv4, проверяем - закономерно НЕ работает. Смотрим в man - видим, что удивительно, фигу. Ни слова про zfs (Впрочем, и с чего бы? Тут нам samba'у описывают, а не BDSMSD'шную реализацию zfs
).
Странно, странно. Смотрим в сторону "соседей", которые с ZFS'ом живут мал-мала больше нас - как там это в солярке устроено? Ага. Они с ней работают с помощью модуля vfs_zfsacl. Удивительно, но такой модуль у нас есть. "Чужой", правда. Впрочем, сделать его "своим" судя по официальной wiki не так уж сложно:
cd /usr/ports/net/samba34
make extract
find ./work -exec sed -i "" "s/<sys\/acl.h>/<sunacl.h>/g" {} \;
make config
Ставим "с экспериментальными модулями", компилим... авотхрен. Остальные модули собрались, а vfs_zfsacl - нет. Гхым... смотрим в Makefile |grep zfsacl - а нету! Ну, нету - будет, находим в Makefile'е WANT_EXP_MODULES+= и добавляем vfs_zfsacl в конец списка. Чистим-едитим-собираем-ставим - ок.
Ковыряем smb.conf: WORKGROUP, REALM, security = ads и прочая-разное. Тривиально. Доходим до описания share'ы:
докидываем туда
vfs objects = zfsacl
nfs4:mode = special
nfs4:acedup = merge
nfs4:chown = yes
Если чо - "мопед не мой", я все это стырил из соляркиного конфига, без раскурёжки тамошних man'ов
Отключаем наследование acl (У zfs свои возможности)
inherit acls = no
Создаем zfs filesystem:
zfs create -o mountpoint=/путь пул/система
zfs set aclmode=passthrough пул/система
zfs set aclinherit=passthrough пул/система
Запускаем samba'у - ошибок нет, вроде работает.
Заходим с виндуёчков, лезем в свойства папки... система ругается на неправильный порядок следования опций и предлагает "все-все исправить", соглашаемся, докидываем права для доменных пользователей, применяем-сохраняем, смотрим getfacl'ом из консоли - ага. Применилось. Докидываем setfacl'ом нового пользователя с правами, проверяем из windows - тоже пашет. Уф!


Странно, странно. Смотрим в сторону "соседей", которые с ZFS'ом живут мал-мала больше нас - как там это в солярке устроено? Ага. Они с ней работают с помощью модуля vfs_zfsacl. Удивительно, но такой модуль у нас есть. "Чужой", правда. Впрочем, сделать его "своим" судя по официальной wiki не так уж сложно:
cd /usr/ports/net/samba34
make extract
find ./work -exec sed -i "" "s/<sys\/acl.h>/<sunacl.h>/g" {} \;
make config
Ставим "с экспериментальными модулями", компилим... авотхрен. Остальные модули собрались, а vfs_zfsacl - нет. Гхым... смотрим в Makefile |grep zfsacl - а нету! Ну, нету - будет, находим в Makefile'е WANT_EXP_MODULES+= и добавляем vfs_zfsacl в конец списка. Чистим-едитим-собираем-ставим - ок.
Ковыряем smb.conf: WORKGROUP, REALM, security = ads и прочая-разное. Тривиально. Доходим до описания share'ы:
докидываем туда
vfs objects = zfsacl
nfs4:mode = special
nfs4:acedup = merge
nfs4:chown = yes
Если чо - "мопед не мой", я все это стырил из соляркиного конфига, без раскурёжки тамошних man'ов

Отключаем наследование acl (У zfs свои возможности)
inherit acls = no
Создаем zfs filesystem:
zfs create -o mountpoint=/путь пул/система
zfs set aclmode=passthrough пул/система
zfs set aclinherit=passthrough пул/система
Запускаем samba'у - ошибок нет, вроде работает.
Заходим с виндуёчков, лезем в свойства папки... система ругается на неправильный порядок следования опций и предлагает "все-все исправить", соглашаемся, докидываем права для доменных пользователей, применяем-сохраняем, смотрим getfacl'ом из консоли - ага. Применилось. Докидываем setfacl'ом нового пользователя с правами, проверяем из windows - тоже пашет. Уф!
понедельник, 04 октября 2010
... "медленный газ", то ли GOOGLE покусал adobe, но внезапно! выяснилось, что Adobe Flash Player под эти самые ваши виндуёчки стал ставиться с помощью internet-installer'а - правда, в отличие от Chrome'а, adobe'вский установщик спустя минут пять долбежки в закрытый 80 порт догадался - proxy!, причем догадался не в смысле "прочитал IE-proxy settings", а православно(ТМ) спросил на этот счет меня. Еще через минуту долбежки в proxy с вдумчивым чтением "Proxy authentication required" новомодный инста(б)лятор допетрил до идеи спросить насчет имени пользователя и пароля - алилуйя! Правда "по дефолту" этот софтовыродок решил "обогатить" меня еще и McAfee вирус сканом, но от предложенной чести удалось отбоярится.
Еще одна внезапно! обнаруженная программистская тенденция - хроническоенеумениенежелание работать с _собственными_ программными продуктами предыдущих версий. Например, "мастер переноса файлов и параметров" из windows всемь сюрприз-сюрприз! вусмерть не хочет признавать продукты жизнедеятельности своего тезки из windows XP. Однак контора. Один программный продукт. Насквозь известный, _собственный же_ формат переноса. А - не умеет, и все тут. Мол, с помощью мастера создайте специяльную флешку, с этой флешкой придите на XP'шку, создайте файл для переноса, передайте его обратно... ну и кто они все после этого? На этом фоне ситуация с переносом history из этого вашего qip'чика в infium кажется просто детскими шалостями (Пааадууумаишь, стопицот версий отдельной программы для конвертации "х" в "у", экие, право, мелочи!). Какой, прости оссподи, ди-зай-нер придумал изменить формат хранения логов из plaintext'а в "куда-то еще" - Б-г весть, но - изменили. Впрочем... "не больно то и хотелось", ибо "богатство" встроенных средств обработки текстов вынь дос'я просто поражает воображение неподготовленного пользователя
Ну и последнее (Надеюсь!) понедельничное - пробовали ли вы организовать ротацию логов или там backup'ов в windows? И не пробуйте, моск целее будет. Простейшая операция "ищем все файлы старше n дней и удаяем" превращается... превращается... превращается... ну, вы поняли. Единственная найденная при беглом осмотре команда, "вроде как согласная" работать с датой создания файла - xcopy, занимается не удалением, а копированием файла, и все бы ничего (Копирнем в темпачок и вытрем по самую папОчку, коли нужно), но - дату ей нужно указать явным образом, а заниматься вычитанием n дней из элементов текущей даты в формате dd:mm:yy как-то... не хочется. В resource kit'е обнаружилась программка forfiles - "наш ответ find'у" с традиционно уежищным синтаксисом и "богатством возможностей", но установка этого самого kit'а на 2003+ да еще не дай Б-г x64 - опять же, нунафик... В общем, проще всего оказалось собрать cygwin с findutils'ами + выдрать из них собственно GNU'тый find + cygwin1.dll и решить раком стоящую задачу в привычном стиле:
find /путь -Btime 5d -delete
Не желающим вошкаться с cygwin'ом можно посоветовать глянуть в сторону unxutils (findutils в него входит, но о x64 придется забыть) или mingw (Бонусом - потенциальная возможность статической линковки в один exe-шник).
Еще одна внезапно! обнаруженная программистская тенденция - хроническое
Ну и последнее (Надеюсь!) понедельничное - пробовали ли вы организовать ротацию логов или там backup'ов в windows? И не пробуйте, моск целее будет. Простейшая операция "ищем все файлы старше n дней и удаяем" превращается... превращается... превращается... ну, вы поняли. Единственная найденная при беглом осмотре команда, "вроде как согласная" работать с датой создания файла - xcopy, занимается не удалением, а копированием файла, и все бы ничего (Копирнем в темпачок и вытрем по самую папОчку, коли нужно), но - дату ей нужно указать явным образом, а заниматься вычитанием n дней из элементов текущей даты в формате dd:mm:yy как-то... не хочется. В resource kit'е обнаружилась программка forfiles - "наш ответ find'у" с традиционно уежищным синтаксисом и "богатством возможностей", но установка этого самого kit'а на 2003+ да еще не дай Б-г x64 - опять же, нунафик... В общем, проще всего оказалось собрать cygwin с findutils'ами + выдрать из них собственно GNU'тый find + cygwin1.dll и решить раком стоящую задачу в привычном стиле:
find /путь -Btime 5d -delete
Не желающим вошкаться с cygwin'ом можно посоветовать глянуть в сторону unxutils (findutils в него входит, но о x64 придется забыть) или mingw (Бонусом - потенциальная возможность статической линковки в один exe-шник).
среда, 29 сентября 2010
... почти без проблем настроил bluetooth. Встроенный BT-адаптер ожидаемо (Черте-что-и-с-боку-бантик. В виндах работал с помощью toshiba bluetooth stack) не определился, а вот встроенный - заработал пусть и не с первого раза - косячило само определение USB-устройства, после того, как отключил от USB телефонную зарядку все пришло в норму. /etc/rc.d/bluetooth start ubt0 - не работал, пока я не скопировал /etc/defaults/bluetooth.device.conf и не раскоментировал в нем всякое-разное. Больше расхождений с handbook'ом не было.
понедельник, 27 сентября 2010
... через неделю.
В смысле, спустя два года успешного (Вроде как!) использования sysinternals suit'а я внезапно!обнаружил наличие в нем программы psexec, позволяющей "выполнять произвольный код на целевой машине"(Ц)
. Единственное, что несколько омрачает мою радость - аутентификация по пользователю-паролю, *nix'овый вариант с ssh + (r|d)sa key как-то того... кошерней правда его генерить-дистрибьютить надо.
P.S. Нет, не единственная. Еще "доставляет" гнусноубогость MS'овской консоли. Собираю cygwin.
В смысле, спустя два года успешного (Вроде как!) использования sysinternals suit'а я внезапно!обнаружил наличие в нем программы psexec, позволяющей "выполнять произвольный код на целевой машине"(Ц)

P.S. Нет, не единственная. Еще "доставляет" гнусноубогость MS'овской консоли. Собираю cygwin.
пятница, 24 сентября 2010
... или "я не люблю". Есть в современном windoсофтостроении несколько тенденций, которые мне ну оч-чень активно не нравятся, и эн-ная их часть "удачно" воплотилась в google chrome.
Вот например, скажите мне, что за ди-зай-нер придумал "online-installer'ы", а? Нет, я знаю, что не google'вцы (Первый раз столкнулся в исполнении MS при попытке установить net.framework), но все же? А что мне делать, если "вот прям щаз" интернета нет, м? А если эту м-мммуйнюшку надо воткнуть на стопицот компов сразу? От только нинада рассказывать про "кэш прокси", ибо нормальной (НЕ ntlm, и не "с помощью авторизатора") аутентификации на прозрачном прокси я почитай что и не видел, а с прокси классическими эти м-ммм... "продукты творчества" работать как правило не умеют (Видимо, basic-аутентификация Слишком Новая Технология, ага).
А эта "новая" политика обновлений? "Кручу-верчу, обмануть хочу", что-то там шуршу, туда-сюда посылаю, а потом упс! Перегрузись, и будет тебе "зашибись". Или не будет, ага. Не-ееет, нормальное ПО должно обновляться по требованию, ИЛИ уведомлять пользователя о выходе обновлений по _заданному пользователем-же_ расписанию (Желательно при этом еще и changelog показывать, да...), остальное - гнусная ересь. Жужель апдейтс её новой "политикой конфиденциальности" - "великое нестроение".
Дурная привычка пользоваться настроками ё-моё и вовсе, ни в какие ворота не лезет. Мало того, что ничего хорошего от этого самого осла ждать по определению не следует
, так и возможности это ограничивает очень и очень сильно. А что если я хочу потестировать настройки фильтра на прокси, для чего запускаю еще один экземпляр squid'а на нестандартном порту? А что если я хочу воспользоваться tor'ом? Анонимайзером? Баннер-фильтром (Для chrome'а вполне себе актуально)? "Ищите другой браузер".
Отсутствие (Или уже прикрутили?
) plugin'ов - скорее плюс (Все же браузер это именно _браузер_, а то, что некоторые девАчки умудряются сделать из IE или FF - приличными словами и не охарактеризуешь), но общая бедность настроек - никуда не годится. Кнопка "сделай мне зашибись" НЕ РАБОТАЕТ. Никогда. Люди - они разные, и потребности у них тоже того... различаются.
В общем, впечатление от подобного рода софтин - неплохо "поиграться дома", но"мы таких в коммунизм не возьмем!" в корпоративе подобному софту делать решительно нечего.
Вот например, скажите мне, что за ди-зай-нер придумал "online-installer'ы", а? Нет, я знаю, что не google'вцы (Первый раз столкнулся в исполнении MS при попытке установить net.framework), но все же? А что мне делать, если "вот прям щаз" интернета нет, м? А если эту м-мммуйнюшку надо воткнуть на стопицот компов сразу? От только нинада рассказывать про "кэш прокси", ибо нормальной (НЕ ntlm, и не "с помощью авторизатора") аутентификации на прозрачном прокси я почитай что и не видел, а с прокси классическими эти м-ммм... "продукты творчества" работать как правило не умеют (Видимо, basic-аутентификация Слишком Новая Технология, ага).
А эта "новая" политика обновлений? "Кручу-верчу, обмануть хочу", что-то там шуршу, туда-сюда посылаю, а потом упс! Перегрузись, и будет тебе "зашибись". Или не будет, ага. Не-ееет, нормальное ПО должно обновляться по требованию, ИЛИ уведомлять пользователя о выходе обновлений по _заданному пользователем-же_ расписанию (Желательно при этом еще и changelog показывать, да...), остальное - гнусная ересь. Жужель апдейт
Дурная привычка пользоваться настроками ё-моё и вовсе, ни в какие ворота не лезет. Мало того, что ничего хорошего от этого самого осла ждать по определению не следует

Отсутствие (Или уже прикрутили?

В общем, впечатление от подобного рода софтин - неплохо "поиграться дома", но
четверг, 23 сентября 2010
Или nmap как-то м-ммм... страннохреново работает. FreeBSD 7.3 i386, nmap 5.21:
nmap -sP 192.168.x.x/24 - выдает список хостов, сам себя не находит
sudo nmap -sP 192.168.x.x/24 - выдает только сам себя (Запуск от root'а - та же фигня)
sudo nmap -sP 192.168.x.x/24 -oN /dev/null - выдает список хостов, включая себя.
ОК, ставим nmap 5.31 из портов:
nmap -sP 192.168.x.x/24 - за две секунды выдает список хостов
sudo nmap -sP 192.168.x.x/24 - дает тот же список но за 30+ секунд
ЧТЯДТ?! Не запускать же его внутри скрипта, в самом деле, через sudo от имени обычного юзверя, а?
nmap -sP 192.168.x.x/24 - выдает список хостов, сам себя не находит
sudo nmap -sP 192.168.x.x/24 - выдает только сам себя (Запуск от root'а - та же фигня)
sudo nmap -sP 192.168.x.x/24 -oN /dev/null - выдает список хостов, включая себя.
ОК, ставим nmap 5.31 из портов:
nmap -sP 192.168.x.x/24 - за две секунды выдает список хостов
sudo nmap -sP 192.168.x.x/24 - дает тот же список но за 30+ секунд
ЧТЯДТ?! Не запускать же его внутри скрипта, в самом деле, через sudo от имени обычного юзверя, а?
пятница, 17 сентября 2010
Звонит девочка-менеджер из удаленного офиса одного из клиентов и просит проконсультировать по личному вопросу:
"У меня дома LCD-монитор накрылся, скорее всего - дроссель, он перед окончательной смертью так характерно свистел, а теперь подсветка не работает, но матрица жива - если фонариком сбоку подсветить - все видно. Что с ним можно сделать, а?"
"У меня дома LCD-монитор накрылся, скорее всего - дроссель, он перед окончательной смертью так характерно свистел, а теперь подсветка не работает, но матрица жива - если фонариком сбоку подсветить - все видно. Что с ним можно сделать, а?"
среда, 15 сентября 2010
... WSUS называется. "Свое казино с блэк-джеком и шлюхами", ага. Сервер обновлений windows для своей сети. Вещь можно сказать, незаменимая.
Вот только с прокси-с-аутентификацией работать не умеет, хоть и притворяется
. Возможность использовать прокси для синхронизации есть, и возможность эта даже работает, а вот собственно _закачка_ одобренных обновлений осуществляется "фоновой интеллектуальной службой передачи" a.k.a. BITS, которая настолько "интеллектуальна", что аутентифицироваться на проксюке не умеет. Сюрпри-иииз! Велосипед похож на настоящий, но не работает, с чем его и поздравляю. Пришлось рисовать отдельный экземпляр прокси с отключенной аутентификацией и ограничением доступа по source-адресу WSUS'а и destination url *().microsoft.com (Там туева хуча адресов, по которым он _может_ ломиться).
В очередной раз шлю лучи поноса по известному адресу.
Вот только с прокси-с-аутентификацией работать не умеет, хоть и притворяется

В очередной раз шлю лучи поноса по известному адресу.
понедельник, 13 сентября 2010
... browse.dat'а
"DC1" 408c9b0b "Domain controller for WORKGROUP" "WORKGROUP"
"IBM11-9" 40011203 "Штрахер" "WORKGROUP"
не второе поле - "код" (Вроде-как-уникальный, но хрен поймешь для чего нужный )), а третье - "комментарий", ради которого, вроде как, весь сыр-бор и загорелся. Как _задать_ его для каждого конкретного компа понятно ("Computer description" в Windows или server string ="" в samba'е), а вот как его _получить_? Вопро-оооос! Вдумчивая курежка man'ов к утилитам samba suit'а к результату не привела, гугль тоже не спас - пришлось воспользоваться Методом Научного Тыка. Description вполне себе выдает smbtree - но! берет он его как раз из browse.dat'а
, или с broadcast'а - о чем выше ). Smbclient + smbutil его вообще не видят. Зато rpcclient с параметром -c srvinfo host выдает нечто-то вроде:
IBM1-3 Wk Sv NT PtB Валентина Антоновна Каб-1 Комп-3
platform_id : 500
os version : 5.1
server type : 0x11003
что вполне потрошится тем же ex'ом (Sed + awk не знаю, и, как следствие, не люблю
) до нужного состояния.
"DC1" 408c9b0b "Domain controller for WORKGROUP" "WORKGROUP"
"IBM11-9" 40011203 "Штрахер" "WORKGROUP"
не второе поле - "код" (Вроде-как-уникальный, но хрен поймешь для чего нужный )), а третье - "комментарий", ради которого, вроде как, весь сыр-бор и загорелся. Как _задать_ его для каждого конкретного компа понятно ("Computer description" в Windows или server string ="" в samba'е), а вот как его _получить_? Вопро-оооос! Вдумчивая курежка man'ов к утилитам samba suit'а к результату не привела, гугль тоже не спас - пришлось воспользоваться Методом Научного Тыка. Description вполне себе выдает smbtree - но! берет он его как раз из browse.dat'а

IBM1-3 Wk Sv NT PtB Валентина Антоновна Каб-1 Комп-3
platform_id : 500
os version : 5.1
server type : 0x11003
что вполне потрошится тем же ex'ом (Sed + awk не знаю, и, как следствие, не люблю

пятница, 10 сентября 2010
... грабли тут же встаешь на другие, а? SAMBA PDC, master browser, local browser - все чин-чинарем, выборы выигрывает, клиентам светится, сетку выдает... первые 20 минут даже всю, а потом комп за компом из "сетевого окружения" исчезают. smbtree генерит список не то, чтобы полный - но более сущесвенный, нежели получают винды, nmblookup -b '*' показывает 3 компа, зато запущенный "по следам" nmap'a через тот же broadcast четко резолвит имена всех активных хостов в сети, browser.dat регулярно обновляется и содержит тот же список, что получают клиенты, dhcp+ddns настроены и работают, тот же nmap резолвит все и всех ). Гугль находит толпу (Ну хорошо, не "толпу" - "с пяток") страдальцев с той же бедой, но ответа не дает.
Постепенно прихожу к мысли заполнять browse.dat ручками по результату того же nmap'а, благо формат у него простой - но это какой-то совсем уж непотребный костыль выйдет...
Будем надеяться, что утро вечера поумнее, и понедельник будет не только "тяжелым", но и "результативным" днем!
Постепенно прихожу к мысли заполнять browse.dat ручками по результату того же nmap'а, благо формат у него простой - но это какой-то совсем уж непотребный костыль выйдет...

Будем надеяться, что утро вечера поумнее, и понедельник будет не только "тяжелым", но и "результативным" днем!
... что "явное лучше неявного"(С), не дождались рождения языка Python
, иначе не стали бы _неявным_ образом устанавливать значение allow-recursion в { localhost; localnet; };. А так - named запускается при старте системы, когда ни о каких ng*-интерфейсах (Создаются "по требованию", ага) еще и речи нет, о VPN-сети он нифига не знает, и рекурсивно запросы разрешать отказывается - nslookup-то справляется (МОЛЧА!), а вот gethostbyname уже не проходит.
Зато DIG с любимой BSD'шечки молчать отказывается, и честно заявляет, что за авторитетным ответом - вот по этому реффералу
- дальше man + vi named.conf + rndc reload и все ОК.

Зато DIG с любимой BSD'шечки молчать отказывается, и честно заявляет, что за авторитетным ответом - вот по этому реффералу

среда, 08 сентября 2010
Есть центральный офис. Есть филиальная сеть. Есть VPN. И есть м-ммм... разновсяческие провайдеры, в том числе и pptp'шники. В результате - есть локальная сетевуха со своим серым IP'шником, DNS'ами и "шлюзом по умолчанию" (Провайдеру, вестимо, лениво забивать route'ы для всех своих AC, список которых, к тому же может меняться - а DNS round-robin'ом выдает и все океюшки). Есть pptp-соединение до провайдера - опять таки, со своими DNS-серверами (Не спрашивайте меня "зачем"!) и своим шлюзом по умолчанию. И есть VPN-соединение до центрального офиса, опять же со своим DNS'ом и default gateway'ем (Хочется пустить I-net трафик филиальной сети через прозрачныйproxy центрального офиса с логгированием, фильтрацией, аутентификацией и прочими радостями жизни).
На выходе почему-то трабла - судя по всему не работает системный gethostbyname()/getaddrinfo() - сторонние программы не резолвят имена, а специализированные утилиты (Тот же nslookup) ответ дают. Метрики на маршрутах правильные (У VPN'а наименьшая, ага), dial-up connections в adapters&bindings на верху находятся, все пингуется-опрашивается-ходит, а gethostbyname как не работал, так и не работает
.
В качестве временного "костыля" поднял non-transparent proxy для удаленных офисов и докрутил браузеры - но как-то не радует меня данное решение. Куды бечь, на что смотреть - Б-г знает, мне пока не ведомо
.
На выходе почему-то трабла - судя по всему не работает системный gethostbyname()/getaddrinfo() - сторонние программы не резолвят имена, а специализированные утилиты (Тот же nslookup) ответ дают. Метрики на маршрутах правильные (У VPN'а наименьшая, ага), dial-up connections в adapters&bindings на верху находятся, все пингуется-опрашивается-ходит, а gethostbyname как не работал, так и не работает

В качестве временного "костыля" поднял non-transparent proxy для удаленных офисов и докрутил браузеры - но как-то не радует меня данное решение. Куды бечь, на что смотреть - Б-г знает, мне пока не ведомо
