Показаны сообщения с ярлыком хлам.... Показать все сообщения
Показаны сообщения с ярлыком хлам.... Показать все сообщения

четверг, 10 декабря 2009 г.

мысли вслух...

/*

...хоронили тёщу, порвали два баяна...

эта заметка сделана "для себя", чтобы как-то упорядочить ощущения от "общения" с гитарами где-то с конца 80-х годов прошлого столетия. за это время поменялось многое, не сказать, что всё в лучшую сторону. радует одно: в 80-х (в СССР) не было широкого доступа ни к информации, ни к инструментам (электрогитарам в частности). ноне - раздолье. да только вот вместо отсутствия информации как таковой имеем хорошо развитые техники по "оболваниванию" покупателя. "правда" - она ведь разная, есть белая, а есть красная. возможно лично Вы не согласитесь со многими тезисами этой заметки - Ваше право. в данном случае автор - сторона абсолютно не заинтересованная "материально", далёкая от музыкальной индустрии и изредка лишь тренькающая пару аккордов перед сном.

терминология

сингл/single - датчик с одной катушкой (как правило) по размерам подходящий для "фендерообразных" гитар ("стратов" и "теле")

спарка/humbucker - датчик из двух синглов (двух индукционных катушек), катушки которых намотаны в противоположных направлениях (reverse wound reverse polarity) и подключены последовательно (возможны варианты коммутации). изобретён/(запатентован) товарищем Seth Lover-ом/(компанией Gibson).

быки - два опорных винта, вкручивающихся в деку и "держащих" на себе все "машинки" типа Floyd Rose.

винтаж/vintage - в идеале это довольно старый инструмент (от 30-40 лет возраста), дошедший до нас (до нашего времени) в оригинальной комплектации. рынок "винтажных" инструментов переполнен мошенниками, леваком, да и сама концепция "винтажа" не предполагает активного использования, что ведёт к ухудшению качества инструмента (дерево не раскрывает свой потенциал). но ощущения от игры на инструменте скажем 1952-го года выпуска весьма своеобразны (есть у меня один такой...)

MS[R]P - Manufacturer Selling [Retail] Price - цена продажи в розницу со склада производителя

ghostbuilder - человек/компания, кто делает (как правило) отличные инструменты на заказ для известных мастеров и вешает на них шильдик от другой компании (которая инструмент хорошо сделать не может, но контракт с гитаристом на продвижение своего бренда уже таки подписала...). за примерами далего идти не надо: Joe Despagne (AKA JEM) сделал для Steve Vai-я его личные "JEM" гитарёшки; PBC Guitars делает американский custom shop для Ibanez-а; Kramer вообще не имел своих производственных мощностей и собирал из комплектующих (их "Made in USA" делались в Канаде компанией "Godin Guitar Company", "именные" инструменты от Kramer как правило ваял Том Андерсон, остальной ширпотреб - ESP, после чего и выяснялось, что "есть, Петька, нюансы..."); Epiphone - хрен поймёшь кто там в Китае реально делает для "эпифона", проще перечислить, кто НЕ делает... и т.д. и т.п...

самопал - так называемый мастеровой инструмент, непонятно кем сделанный (как правило Российского или восточноевропейского производства). в СССР свято верили, что самопалы, сделанные на продажу - говно это одно, а вот самопалы, сделанные мастерами "для себя, для души" - это СОВСЕМ другое дело. утверждение сие абсолютно корректно и справедливо...

винт - деформация грифа гитары, при готорой накладка с ладами выгибается на подобие лопасти винта самолёта (гриф "перекручивает")

хто здесь?!

электрогитара с одной стороны очень отличается от акустической, но с другой - по сути в "электричке" работают те же физические принципы, что и в "классике": звук формируется колебанием струны, на которое влияет акустический резонанс, резонанс твёрдого тела - самой гитары, резонанс/параметры звукоснимателя/(-лей), каскады усилителя/(преда) и особенности самого "кабинента" - параметры динамиков, акустические свойства "колонки". это накладывается на акустику помещения и попадает к нам в уши. влияет всё - от техники звукоизвлечения/(качества струн) и до... поэтому бытует вполне справедливое замечание, что звук электрогитары - это 50% сам инструмент и 50% - "комбик" (усилитель + "кабинет" - колонка с динамиками).

на сегодня существует несколько базовых форм/(комплектаций) электрогитар, закладывающих основу звука:

1) "гибсонообразные" (для простоты включим сюда всю "линейку" - Les Paul, SG, Flying V, Explorer)

2) "фендерообразные" (strat, tele, и множесво моделей на ту же тему от других производителей)

3) "полуакустические" (ES175, ES335 и прочая к ним - коротко именуются как "джазовые")

утверждение: чем богаче/лучше чистый звук у инструмента (хорошие гармоники, обертона, слабое магнитное поле датчика не препятствует естественному колебанию струн, датчик подобран по тональным характеристикам к инструменту и не мешает ему) - тем больше вероятность, что с исказителем (типа "distortion") добиться хорошего результата будет проблематично. и наоборот. при этом электрогитара с хорошим чистым звуком вполне способна удивить "воткнувшись" в ламповый предусилитель (или в полностью ламповый усилитель и пред). суть этого есть элементарная физика. использование цифровых исказителей позволяет как-то сгладить эту ситуацию ценой "убийства" оригинального звука инструмента. ещё один путь - это тщательный подбор датчиков к инструменту по тональным/резонансным характеристикам, использование (экранированных) "спарок", использование комбинированных схем съёма звука (т.е. пьезодатчик + спарка/сингл), использование различных по характеристикам датчиков, расположенных у грифа (чистый звук) и у нижнего порожка (для работы с исказителем).

нетрудно заметить, что вариаций на тему "стратов" и "телеков" в разы больше, чем прочих. это обусловлено как агрессивной политикой компании Gibson по судебному преследованию "пиратов" (а-ля Fernandes, Tokai, Ibanez, PRS, etc.), так и тем, что с 1925-го года в Gibson работали люди, типа Ллойда Лоуэра (Lloyd Loar), который сперва рассчитывал модель гитары математически, а потом лишь делал макет. такой подход оставляет очень мало места для "дизайнерских" изысков, зато способствует формированию "классических канонов" (ES175). вполне возможно, что данный подход (опора на математическую модель) обусловил и хроническую болезнь всех "гибсонов" - черезвычайно слабый гриф с тенденцией поломки в районе головки. бытует мнение, что компании Gibson стоит принудительно ломать все грифы прям на фабрике до момента покраски, потом клеить/чинить (прочность склеенного шва выше прочности исходного материала в разы), красить и продавать. ибо трещины (различимы невооружённым глазом) в районе порожка (нулевой лад) и на стыке с декой в новых инструментах абсолютная норма (к сожалению...), особенно ежели длительная транспортировка имела счастье приключиться. абсолютно аналогичная картина характерна и для "пиратских подделок".

форма инструмента, материал (тип используемой древесины, пластика, и т.п.), тип (магнитного) датчика ("сингл"/"спарка"/"пьезо"), способ и место его/(датчика) крепления, материал и конструкция нижнего порожка, способ крепления струны, угол наклона головки грифа, материал и тип ладов - всё влияет на звук в той или иной степени. даже тип (лакового) покрытия (возможен вариант "масляного" покрытия - обычно делается конопляным маслом), хотя это и не так сильно выражено, как в акустических инструментах или в скрипках. если с формой всё понятно и без объяснений (физика твёрдого тела отлично умеет искать/рассчитывать резонансные точки любой конструкции), то очерк по свойствам пород древесины, особенностям заготовки дерева (имеет значение не только время заготовки, но и "место") даже начинать не буду. нюансов тут предостаточно. опишу лишь кратко технологию заготовки дерева для изготовления "массовых" электрогитар:

1) покупается на рынке необработанная кубатура (стволы)
2) идёт распил на заготовки
3) заготовки засовывают в "микроволновку", где они "текут" - удаляются смолы, излишняя влага и т.п.

на этом подготовительный этап заканчивается и идёт сама сборка

4) после "микроволновки" заготовки засовывают в CNC "шайтан-машину" и она мигом вырезает деки, грифы и/или накладки на гриф (Anderson, Baker, Gibson, PRS, Fender, ESP, Ibanez, Washburn, Yamahaha и многие другие используют CNC. термин "ручная работа"/"handmade" для электрогитар деградировал - его зачастую используют некорректно. мне известна лишь одна компания, которая с момента своего основания в начале 20-го века не изменила техпроцесс и делает всё "по-старинке" вручную. от и до. это Eastman. точка. абзац.)
5) схожий набор "шайтан-машин" набивает лады, красит и т.д. и т.п.

собственно инструмент готов. если производителя жаба душит раскошеливаться на CNC - используются аналоги оборудования, применяющегося в мебельной промышленности ("станки с ЧПУ" - хз как это по английски будет). нетрудно догадаться, что себестоимость конечной продукции при описанном выше методе изготовления крайне мала, различия в звуке могут появиться при использовании датчиков с различными (резонансными) характеристиками. при использовании качественных комплектующих и надлежащем контроле качества за производством электрогитара (конечный Продукт) вполне способна удовлетворить потребности подавляющего большинства покупателей. спустя лет эдак 20-30 (особенно если на электрогитаре будут регулярно играть) дерево окончательно "дозреет" и инструмент "раскроется" полностью (опять же, если есть чему "дозревать" и "раскрываться" - зачастую трава остаётся травой, редко когда трава становится дровами, ну а шанс, что дрова вырастут во что-то приличное балует отнюдь не многих). после чего (если вы не горите желанием продать инструмент "винтажникам") рекомендуется сделать глобальное ТО, поменять датчики/лады/фурнитуру и пользовать дальше в своё удовольствие.

почем опиум для народа?

перечитайте ещё раз пару абзацев вверху. теперь откройте любой ценник/("прайс-лист", мать его) музыкального магазина. пройдитесь по списку. подумайте. ещё раз подумайте. ваши выводы?

для полной картины примем в рассчёт формулу ценообразования для РФ:

Цена(РФ) = (цена Покупки + Цена Доставки) * 1.15 (Таможенная Пошлина) * 1.18 (НДС) + Таможенное Оформление (мизер) + Маржа Продавца

при этом "цена Покупки" != MSRP, она зачастую значительно ниже, ибо для рынка РФ идёт подсос остатков на складах ("на тебе Боже, чего нам не гоже!"). суммы дисконта могут быть весьма значительными. MSRP - это так называемая "каталожная" цена. MSRP всегда выше, чем "Street Price" (уличная цена). а "цена Покупки" вполне может быть как на уровне, так и ниже именно "уличной цены".

формула по расчёту цены продажи на единицу продукции для производителя:

MSRP = Прямые расходы (материалы, труд, электроенергия) + Косвенные расходы (складские) + Затраты на Маркетинг + Административные Затраты + Маржа производителя

соответственно коммерчески успешный производитель электрогитар имеет "Маржу Производителя", которая позволяет противостоять инфляции (как минимум!) и в цену инструмента закладываются маркетинговые (реклама - двигатель торговли) и прочие накладные расходы. MSRP призвана регулировать уровень цен у дилеров/розницы и зачастую не имеет никакого отношения к реальной закупочной цене крупного дилера.

теперь можно огласить список "Барыг-чемпионов" - компаний, цена на инструменты которых ОЧЕНЬ сильно завышена (т.е. покупка инструментов этих брэндов оправдана только если вам деньги больше девать некуда или если вы решили реализовать свою детскую мечту и надеетесь, что она избавит вас от каких-то комплексов). оглашать будем без привязки к российским реалиям/дилерам - тут всё более-менее прозрачно.

на почётном первом месте наблюдаем беспощадную борьбу двух "толстых корпоративных котиков" - Gibson и ESP. выделить абсолютного чемпиона довольно сложно, ибо если в случае с "гибсоном" где-то 2/3 от розничной цены приходится на брэнд (цена репутации == воздух в нашем случае, ибо ничем не оправдана. ещё ни разу не слышал, чтобы кто-то добился компенсаций явного брака по их Lifetime Warranty. да и зачастую кажется, что новые "гибсона" топором вырезали из заготовок, даже наждачки на "обточку" пожалели...), то ESP (у ESP и Schecter один хозяин кстати - Hisatake Shibuya) имеет производственные мощности исключительно в Азии (Корея, Индонезия) и в качестве "целевой" аудитории избрала поклонников "тяжёлого металла" - что позволяет не заморачиваться с "чистым" звуком и откровенно гнать лажу на рынок ("Distortion"/"Metal Zone" всех уравняют на выходе).

imho: сколько этих ESP/LTD/Cort/(other crap) палок не смотрел - убого, особенно на фоне Fernandes/Burny или на фоне "американцев" Jackson/Charvell. визуально и "на ощупь" качество у ESP/LTD приличное (инструменты более "вылизаны", чем Gibson, хотя скажем честно - надо ОЧЕНЬ постараться, чтобы сделать инструмент хуже, чем родной "гипсон": накладка с ладами выступает за поверхность грифа - фигня! сколы и трещины на грифе/деке - фигня! сам гриф "винтом" - какая мелочь! лады и нижний порожек не отшлифованы - не парит никого...), но... не звучат и всё тут. даже модели со сквозным грифом не радуют.

самое весёлое - Gibson постоянно на протяжении последних лет эдак *дцати находится в состоянии, близком к банкротству. в конце 80-х (в 90-х) компанию по сути "вытащил" Slash, игравший на инструментах Криса Деррига (Kris Derrig) (к компании Gibson эти инструменты не имели никакого отношения, кроме своей формы корпуса). также многие утверждают, что Slash использовал/использует инструменты от "Макса" (MAX/Peter Barant), являющиеся репликами модели "Les Paul".

P.S.: не спешите обвинять автора в предвзятости - он прекрасно знает о чём тут идёт речь, ибо являлся как обладателем ESP (Eclipse custom), так и является собственником "стандарта" (который и в Африке стандарт). розничная цена на новые инструменты даже с учётом нормы прибыли производителя/дилеров - завышена в разы.

второе место среди Барыг отдадим славной компании PRS, ибо:

1) с ценообразованием наблюдаются такие же "проблемы", как и у компании Gibson.
2) оформление накладки на гриф с "драконом" - дело рук Ларри Сифеля из компании "Пёрлворкс", Балтимор (Larry Siffel, Pearlworks, Baltimore) при помощи CNC.
3) все инструменты у PRS сделаны при помощи CNC машин - с какого интересно тогда такие цены?

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

информация к размышлению:
в Китае на распродаже можно легко и непринуждённо купить "Squier Stratocaster" за USD $28.00 . дальше - сами, если есть желание.

что в имени тебе моём?! ты зацени груди объём!

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

Gibson Guitar Corporation (Gibson USA):
Epiphone, Baldwin, Garrison, Maestro, Wurlitzer, Tobias, Valley Arts Guitar, Slingerland, MaGIC, Gibson Amphitheatre, Hamilton, Chickering, Kramer, Steinberger, Electar, Aeolian, etc.

Fender Musical Instruments Corporation (FMIC):
Squier, Gretsch, Jackson Guitars, Charvel, Hamer, Tacoma, Guild Guitar Company, SWR, Sound Corporation, Brand X, Orpheum, Olympia, Heartfield, etc.

Washburn прикупил Parker-а и вроде как пользует те же корейские производственные мощности, что и ESP/Schecter/Cort, альянсы японских Gakki довольно "извилисты" и где-то 60% - 70% всего рынка электрогитар делает Samick.

окромя ентих "котиков" вовсю процветает ghostbuild (см. терминологию). эта каша и кутерьма низводит понятие "бренд" в ноль. можно найти за копейки какого-нибуть "китайца" с (!относительно!) хорошим деревом и нормальным качеством изготовления, попотеть над подбором датчиков и результат уделает боком легко и непринуждённо любой аналогичный/(схожий по типу) серийный ширпотреб (включая линейку "made in USA"). можно поймать момент завоза Burny, озаботиться наличием лампового комбика, перебрать всё и выбрать инструмент, который по самые гланды будет засаживать "оригинальным гипсонам" и "гипсонообразным" сородичам (толика везения таки должна присутствовать, но задача вполне решаема). ничего нового в данной ситуации нет. точно так же дело обстояло и в конце 70-х, когда Edward Van Halen за $130 USD прикупил "запчасти" (гриф и деку) у компании "Boogie Bodies", самостоятельно покрасил деку в белый цвет из аэрозольного баллончика и магнитной плёнкой наколбасил чёрные полоски. после чего на этой "гитаре" был записан альбомчик "Van Halen I". а посему - "не имей амати, а умей играти!"

ищите да обрящете...

допустим, что возможности позволяют и хочется чего-то особенного. imho - можно посмотреть в сторону мелкосерийного производства с элементами ручной работы: Baker, Quicksilver или присмотреться к Eastman - вряд ли пожалеете. не помешает побродить по сайтику г-на Романа, только учитывайте, что человек болен здоровым американским шовинизмом (он - патриот своей страны), поэтому пропускайте все его статьи через призму здравого смысла. с доставкой в РФ и растаможкой проблем нет никаких. сравнить цены можно с сетью Sweetwater. ориентироваться на Ebay не советую - там жулики и нет никакой гарантии, что вы покупаете именно то, что и ожидаете купить. впрочем полностью игнорировать Ebay не стоит. относитесь к нему как к справочному бюро. это некий индикатор упоминавшейся выше "уличной цены" на оборудование. не стоит забывать об "особенностях расейского рынка/менталитета", особенно если вы планируете перепродать инструмент через некоторое время. тогда на первый план выходит задача "сохранения стоимости". какие брэнды в этой стране не теряют в цене - вопрос интересный. рискну предположить, что либо те, которые и так стоят неприлично дёшево (до $100 USD), либо мелкосерийка с бирками "Made in Japan/USA". на китайцев/корейцев рассчитывать сложно - только в привязке к какому-либо брэнду. именно поэтому в заметке упомянута несколько раз компания Fernandes - она (помимо великолепной репутации/истории) разработала прекрасную "электрику" - sustainer и не менее прекрасные датчики для своих гитар. современные Ibanez-ы разочаровали. перенос производства/(субконтракт) в Корею на пользу звуку и качеству не пошёл. по мне так их линейка с 80-х и до начала 90-х (а то и до середины) загнёт и вложит аналогичным современным моделям по самое "не хочу". мнение это субъективно, если ваши ощущения говорят об обратном - спорить не стану. на вкус и цвет. "китаёзы" прогрессируют день ото дня. их подводят дерьмовая фурнитура/комплектующие и (!временное!) отсутствие хороших датчиков в их ценовом диапазоне. что ни говори, но себестоимость хорошего (действительно хорошего) электромагнитного датчика для китайского "no name" сегодня получается "как крыло самолёта" (относительно себестоимости остальной гитары), что есть серьёзное (!временное!) затруднение.

утро красит нежным цветом...

прогресс наметился и в нашей стране. пусть в свободной продаже и не появилась марка "Red Bear"/"Novik" (а хотелось бы, может спроса нет? странно), зато "выстрелил" г-н Ерасов. неплохо найти дилера, кто имеет несколько "комбиков"/усилителей и начать прослушивание с моделей, не отягчённых избытком тумблеров и крутилочек. ламповый усилитель должен давать надёжную основу звука. есть опция лампового перегруза - отлично. нет - не страшно. вся обработка - от задержек/реверберации и до ... - дело десятое.

г-н Шамрай продолжает прокладывать тернистый путь к звёздам. большому кораблю - большая дорога. удачи, творческих узбеков и самые наилучшие от чистого сердца. как звучит его нонешний custom shop - не знаю. выглядит многообещающе. первые модели под брэндом "Russtone" ("Shamray" отделился в 1998-ом согласно официальной версии) - это "спаси и сохрани мя, грешного..." (AFAIR). сейчас - совсем другое дело. не стыдно людям показать. зачем Russtone занимается галиматьёй с размещением заказов в Индонезии - не понятно, ну да это не моё дело. дай Бог памяти, но то ли "рустон", то ли "шамрай" (то ли оба) в "детстве" отличался слабым грифом. через некоторое непродолжительное время гриф вело "винтом". надеюсь, что подобное осталось лишь в воспоминаниях.

finita la comedia...

на звкуску - тёплые и добрые слова в адрес Peavey - за отличные комбики (как бывший владелец "50 Classic 2x12' Celestion" и бывший владелец "51/50 head"), нормальные цены и высокое качество продукции (у них и гитарёшки очень даже приятные во всех отношениях). про остальных "котиков" (или про "толстых корпоративных котиков") пусть расскажет кто другой - сам пока не сталкивался вплотную. ежели тема интересна - могу накатать чуток отсебятины по ламповым усилителям, датчикам и чему-нибудь ещё.

добро пожаловаться!
удачи...

*/

воскресенье, 1 ноября 2009 г.

vsftpd - создание файлопомойки

/*
... есть такое слово - samba...

цели:
* выкинуть "самбу"
* анонимусов в chroot и дать им все возможности для самореализации
* локальных/виртуальных лузеров тоже в chroot по домашним каталогам
* всё файло, что зальют аноны, должно иметь mode 0666
* все новые каталоги - mode 0777 (чтобы не парить мозг с правами/чисткой и одминить удалённо тем же ftp-клиентом)
* админов сервиса - в chroot не ставить (или ставить - на выбор, лучше конечно в chroot)

платформа - OpenBSD (ибо тут есть где развернуться), но должно работать везде. подробности о том, как установить и запустить vsftpd опустим. всем пользователям прочих фтп (особенно proftpd) пожелаем удачных обновлений и не скучать :). поехали...

* создаём chroot для анонимусов:
(Прим.: лучше загнать в ~/tmp/vsftpd/anon, а одминов сервиса - в ~/tmp/vsftpd)

> mkdir -p ~/tmp/vsftpd
> chmod 555 ~/tmp/vsftpd
> sudo echo 'anon_root=!ПОЛНЫЙ_ПУТЬ!/tmp/vsftpd' > /etc/vsftpd.conf
> mkdir -p ~/tmp/vsftpd/pub
> chmod 555 ~/tmp/vsftpd/pub
> mkdir -p ~/tmp/vsftpd/upload
> chmod 777 ~/tmp/vsftpd/upload

* добиваем /etc/vsftpd.conf

# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
#anonymous_enable=NO
anonymous_enable=YES
#
# Uncomment this to allow local users to log in.
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES
#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=000
anon_umask=000
chown_upload_mode=0666
file_open_mode=0666
#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
anon_upload_enable=YES
#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
anon_mkdir_write_enable=YES
anon_other_write_enable=YES

# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES
#
# Activate logging of uploads/downloads.
xferlog_enable=YES
dual_log_enable=YES
#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES
# You may override where the log file goes if you like. The default is shown
# below.
xferlog_file=/var/log/xferlog.log
vsftpd_log_file=/var/log/vsftpd.log
#
# If you want, you can have your log file in standard ftpd xferlog format.
# Note that the default log file location is /var/log/xferlog in this case.
xferlog_std_format=YES
# It is recommended that you define on your system a unique user which the
# ftp server can use as a totally isolated and unprivileged user.
nopriv_user=_vsftpd
ftp_username=anonftp
# You may specify a file of disallowed anonymous e-mail addresses. Apparently
# useful for combatting certain DoS attacks.
deny_email_enable=YES
# (default follows)
banned_email_file=/etc/vsftpd.banned_emails
#
# You may specify an explicit list of local users to chroot() to their home
# directory. If chroot_local_user is YES, then this list becomes a list of
# users to NOT chroot().
chroot_local_user=YES
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/ftpchroot
#
# You may activate the "-R" option to the builtin ls. This is disabled by
# default to avoid remote users being able to cause excessive I/O on large
# sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
# the presence of the "-R" option, so there is a strong case for enabling it.
ls_recurse_enable=YES
#
#
# If enabled, vsftpd will load a list of usernames from the filename
# given by userlist_file. If a user tries to log in using a name in this
# file, they will be denied before they are asked for a password.
# This may be useful in preventing clear text passwords being transmitted.
userlist_enable=YES
#
# This option is the name of the file loaded when the userlist_enable
# option is active.
userlist_file=/etc/ftpusers
#
# This option should be the name of a directory which is empty. Also,
# the directory should not be writable by the ftp user. This directory
# is used as a secure chroot() jail at times vsftpd does not require
# filesystem access.
secure_chroot_dir=/var/empty
#
# The minimum port to allocate for PASV style data connections.
# Can be used to specify a narrow port range to assist firewalling.
pasv_min_port=49152
#
# The maximum port to allocate for PASV style data connections.
# Can be used to specify a narrow port range to assist firewalling.
pasv_max_port=65535
#
# By default, numeric IDs are shown in the user and group fields of
# directory listings. You can get textual names by enabling this parameter.
# It is off by default for performance reasons.
text_userdb_names=YES
# When "listen" directive is enabled, vsftpd runs in standalone mode and
# listens on IPv4 sockets. This directive cannot be used in conjunction
# with the listen_ipv6 directive.
listen=YES


imho для новичков есть несколько моментов, заслуживающих внимания:

> sudo touch /etc/vsftpd.banned_emails
(иначе "не пойдёт!")

> sudo useradd -d !ПОЛНЫЙ_ПУТЬ!/tmp/vsftpd -s /sbin/nologin anonftp
(иначе в OpenBSD сервис не стартанёт, ибо ftp_username по-умолчанию не объявлен)

> sudo echo 'ИМЯ_ОДМИНА_СЕРВИСА' >> /etc/ftpchroot
(а все остальные гаврики встанут в chroot в своих домашних каталогах)

в "/etc/ftpusers" у нас список тех, кому доступ на ftp заказан. также у нас УЖЕ есть пользователь "_vsftpd" с шеллом "/sbin/nologin" и несуществующим домашним каталогом (требуется по nopriv_user параметру). ACHTUNG! при подобном раскладе все симлинки, "вылетающие" за chroot, идут лесом (и это правильно. в Linux используем конструкцию "mount --bind -o ro" для наполнения "~/tmp/vsftpd/pub", в OpenBSD аналога "mount --bind" нет, сосём заполняем вручную). в "~/tmp/vsftpd/pub" закидываем контент и пишем "~/tmp/vsftpd/README!" файл с общим набором правил пользования сервисом.

всё, база готова. но решение несколько не кошерно. можно (и нужно) одминов сервиса также загнать в chroot, дав им хомяка в ~/tmp, а лучше - скинув анона в ~/tmp/vsftpd/anon (и хомяк одминам в ~/tmp/vsftpd) - тогда все будут счастливо возиться в песочнице и ваш сон никто не потревожит.

на что можно обратить внимание:

anon_max_rate
The maximum data transfer rate permitted, in bytes
per second, for anonymous clients.
Default: 0 (unlimited)
local_max_rate
The maximum data transfer rate permitted, in bytes
per second, for local authenticated users.
Default: 0 (unlimited)
max_per_ip
If vsftpd is in standalone mode, this is the maxi-
mum number of clients which may be connected from
the same source internet address. A client will get
an error message if they go over this limit.
Default: 0 (unlimited)

очень нравятся настройки ниже - можно спокойно и DSA вломить:

ssl_enable=YES
# Should include both certificate and key
rsa_cert_file=/your/cert/file
force_local_logins_ssl=YES
force_local_data_ssl=YES
force_anon_data_ssl=YES
force_anon_logins_ssl=YES
ssl_ciphers=DES-CBC3-SHA

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

hide_file={*.mp3,.hidden,hide*,*.avi}

управление дисковыми квотами оставляем за OCью (эт элементарно).

собсно наше упражнение сукесфули комплитед, все новые каталоги получают mode 777 (непринуждённо удаляются одминами сервиса), новое файло, залитое анонами, mode 666, "самба" RIP.

удачи.

*/

суббота, 31 октября 2009 г.

OpenBSD - штрихи к портрету (misc.)

/*

Страна замечательная, томики законов сразу рассылают в публичные дома, чтобы любой желающий мог повертеть на ..ю за символическую сумму.
/ЛОР/

сильнее всего мешает отсутствие поддержки multibyte encoding (utf8), что уже реализовано в NetBSD и FreeBSD. ждём-с, а пока каждый "строит коммунизм в отдельно взятой стране". ничего сложного. рассмотрим на примере терминала Eterm:

1) ставим "vim" и "w3m" (это наши будущие редактор и просмотрщик файлов/каталогов по умолчанию)

2) собсно обозначаем наши благие намерения:

> echo 'export PAGER=/usr/local/bin/w3m' >> ~/.profile
> echo 'export EDITOR=/usr/local/bin/vim' >> ~/.profile

w3m нам нужен хотя бы для просмотра (в Eterm) примонтированных партиций, поскольку команда ":edit ++enc=utf-8" в vim-е прекрасно работает с файлами, но сбоит на каталогах. EFM (Enlightenment File Manager) справляется с отображением UTF-8 на ура (особенно если evas собран с fribidi). после определения переменной PAGER это значение используется и для просмотра man-ов, что гораздо удобнее, чем дефолт ("more").

3) отучаем "mc" использовать "mcview" (рихтуем "~/.mc/ini"):

use_internal_View=0

тут же можно избавиться и от "mcedit", заменив его на $EDITOR

use_internal_edit=0

4) читаем "каноны":

http://www.openbsd.ru/docs/howto-cyrillic.html

5) делаем alias для запуска Eterm в нужной нам конфигурации:

alias eterm="Eterm -F -*-fixed-medium-r-normal-*-15-*-*-*-*-*-koi8-r"

после чего вызываем терминал по только что указанному "паттерну":

> eterm

6) опционально читаем "man w3m" и учимся эффективно использовать этот замечательный консольный браузер.

к этому моменту имеем полностью русифицированную рабочую систему, осталось лишь навести лоск в соответствии с личными предпочтениями (используем Enlightenment-DR17). рихтуем "/etc/enlightenment/sysactions.conf":

action: halt /sbin/halt -p
action: reboot /sbin/reboot
action: suspend /usr/sbin/zzz
action: hibernate /usr/sbin/zzz
user: $USER allow: *

с suspend и hibernate поосторожнее, может и не заработать. ставим из пакетов всё, что относится к "xdg*" и добавляем в "~/.profile" требуемые переменные:

export XDG_CACHE_HOME=$HOME/.cache
export XDG_CONFIG_DIRS=/etc/xdg
export XDG_CONFIG_HOME=$HOME/.config
export XDG_DATA_DIRS=/usr/share:/usr/local/share:/usr/X11R6/share
export XDG_DATA_HOME=$HOME/.local/share

после чего не мудрствуя лукаво копируем из openSuSE весь каталог "/etc/xdg/menu" (кто самый смелый - может рисовать xml-ные "менюшки" руками, автор - слабак, не осилил...). теперь мы имеем нормальное XDG/FDO Applications-menu. мелочь - а приятно.

последний штрих - не стоит менять настройки окружения root-а. как показывает практика успешная миграция на OpenBSD-current (это когда тащим cvs-ом исходники и компиляем всё сами) возможна только при буквальном соблюдении "канонов". т.е. если вы не имеете желания разбираться, какого буя сборка падает при "gcc version 4.2.4", но всё путём для "gcc version 3.3.5 (propolice)" - то не трогайте рутовое окружение (а падает оно патамучта gcc4 из пакетов имеет Thread model: posix и "_atomic_lock.c" из "libpthread" да и прочие аналогичные вещи ещё никто не рихтовал. у gcc3 Thread model: single).

всем - удачи!

*/

среда, 28 октября 2009 г.

OpenBSD-4.6 - продолжение праздничного банкета

/*
- стоимость дебоша уже включена в счёт, сэр!

надеюсь, что скоро будет обновление EFL для OpenBSD в портах и пакетах. пока планируется "прыгнуть" на версию "0.16.999.061", веду переписку для "прыжка" на текущий svn или, как минимум, версию "0.16.999.062" с поддержкой "lua" для "edje". иначе смысл теряется за морем лишних слов.

с версии 4.2 никаких кардинальных улучшений с "iocharset" или файловыми системами не произошло, посему воткнуть флешку с русскими именами файлов безболезненно получится только если:
1) кодировка на флешке koi8-r или 8859-5
2) вы свершили подвиг, справшись с "русификацией" OpenBSD (консольку - отдельно, иксы - отдельно и для многих приложений тоже нужен "индивидуальный подход" - весьма полезное упражнение для многих современных пользователей Linux-а...)
посему если ваши Linux партиции отформатированы в ext2/ext3 - их можно прочесть, на ext2 можно даже что-то записать. без отключения журнала можно писать и на ext3 (вы любите играть в русскую рулетку по утрам для поднятия тонуса). одним словом - благодать! только вот с ntfs неувязочка... для монтирования надо проверить в диспетчере дисков Windows, чтобы на партиции не стояла галочка "Dynamic" (а она там практически стоит всегда), иначе лучше сразу купить альбом Сосо Павлиашвили.

не менее элегантно раздаются права на примонтированные файловые системы (что-то в этом есть и здравое). идёт наследование прав точки монтирования на всю партицию. т.е. если в "/mnt/ПАПКА" был открыт доступ на запись какому-то юзверю, то после монтирования фс в "/mnt/ПАПКА" эти права будут унаследованы всей партицией. дёшево и сердито.

нещадно туплю с pgp ключами для подписи своих писем. красивого решения пока не нашёл. дано:
* мой любимый ключ шифрования для Linux gpg с Elgamal алгоритмом
* mutt
* pgp5 в поставке OpenBSD (да-да-да! есть ещё pgp2 для совсем Ъ ребят, но оно умеет только RSA), что умеет только DSS, а об Elgamal ни сном ни духом
надо:
* импортировать в pgp5 ключ из gpg и заставить его воспринимать "как родного"
* вздрючить mutt на предмет подписи/шифрования сообщений требуемым ключом
и понеслось... экспортировал ключ из gpg (asc), пихаю его в pgp - облом, Validity - invalid, Trust - complete, а надо Validity - complete, Trust - ultimate. тупо копирую pubring и secring из gpg в pgp - pgp сыпется в корку, потом каким-то макаром заставляю родить:

Do you want to unset this key as axiomatic [y/N]? y
Keyrings updated.
ASSERTION FAILED at pgpRngRead.c line 3284:
(0) not true
ASSERTION FAILED at pgpRngRead.c line 3284:
(0) not true

и писец (Сосо Павлиашвили берёт очередной аккорд). ладно, сгенерил новую пару, забросил на сервер (pgp.mit.edu), а "mutt" загибает меня в позу и требует ласки и внимания... тут уж "сам дурак", ибо mutt умный и в своей поставке имеет шаблоны для "отношений" практически со всем, что шевелится. пример:

$ pkg_info -L mutt | grep pgp

/usr/local/bin/pgpewrap
/usr/local/bin/pgpring
/usr/local/share/examples/mutt/pgp2.rc
/usr/local/share/examples/mutt/pgp5.rc
/usr/local/share/examples/mutt/pgp6.rc

вот этот-то "pgp5.rc" шаблон я и забодался искать на просторах интернетов (сколько же хламья на этих-то просторах, зачем я это всё пишу...). привожу результат (часть для pgp):

линк на pastebin.com

оно работает. вроде именно так, как и хотелось.

пришлось компильнуть microdc2 для... гхм... коротания вечеров за просмотром мультиков (imho - идиотизм разрешать/проектировать файлообменники в локальных сетях с использованием DC[++] протокола) и прикрутил PyBookReader для чтения макулатуры (после распаковки сырцов надо gmake сделать - появится поддержка fb2 формата, если установлены все зависимости). браузер - Seamonkey (тут без вариантов), редакторы - Vim + SciTE, xchat, MPlayer, ffmpeg и "жизнь налаживается".

а то всё linux да linux....

P.S. а в вашем "линуксе" Evolution gpg-sign умеет?

понедельник, 14 сентября 2009 г.

Oblivion - или к чему приводит "потеря" любимой мышки...

/*
- тебе мама не говорила, что играть с компьютером вредно?!
- ...!

всё плохо. выкладывать полторы тонны за Logitech MX518 ломает, а подарки последнее время получаю только в виде "нагоняев" и неприятностей. на самом-то деле отвёртка и паяльник решают, а качество мышей Logitech - радует. ребята до сих пор делают продукты, где возможна починка механической поломки! эт вам не схемку перепаять, эт ноне покруче будет. несмотря на то, что весь интерфейс GUI переведён на "правую" кнопку - ухитрился "пробить" левую... (есть такая тема - q3 promode называется...). как раз релиз wine-1.1.29 подоспел и попался на глаза диск "Elder Scrolls IV - Oblivion - Золотое издание" - надо же посмотреть, кто прикупил "Id Software". на моё самоуверенное "щас побегаем..." молодёжь желала удачи и намекала, что "бегать" придётся долго... щенки! да этой халтуре до "DeusEx-1" (где бегать надо с умом и бегать долго...) - как из Альп и до Китая раком (с заходом попой вперёд во все трактиры и забегаловки, что встретятся по дороге)! поскольку игралось под wine-ом, то оценка всякой мути типа HDR и супер-пупер-шейдеров остаётся за бортом. рожи персонажей различить можно, этого хватит. никаких многотомных руководств не читал (оно мне надо, глаза портить?!) - wine ./Setup.exe и "Вперёд, за Родину, за Сталина!"

классическое начало: "попалсо, сцуко, ща те ввалят!" - и рядом не стоит с завязкой сюжета "KingPin"-а (эт на двигле от q2 шедевральное мочилово, в некоторых странах вроде как запрещена к распространению - "I'm gonna bury those motherfuckers..." запоминается надолго. первую "карту" "KingPin"-а осиливают немногие. если же переть сразу на последнем уровне сложности - то... внушает, ой как внушает...). тут начинается обычная слюнявая бодяга и пьяный мордобой, в котором поучаствовать как-то тяжеловато - лезут всякие под руку, панимаш. сказочка про "короля и трёх охранников в канализации" пробивает на откровенный ржач. капитана охраны тут же валят с полпинка какие-то хмыри в балахонах - эт мощно! мирные зверушки из "Сталкера" сдохли от зависти, увидев тутошних крысюков - тема потрошения крысиной тушки на предмет полакомиться мяском опять же не раскрыта. после чего казённым и штампованным гласом объявляют, что это был лишь фуфел и предлагают "переделать себя заново" с чистого листа с учётом типа набранного ёпыта. эта подлянка тормозит дело прям перед последней решёткой, за которой Свобода и толпы желающих выхватить люлей от именно тебя!

ладно, фтыкаем... рельсы (railgun) нет, рокета нет (о рокетджампах надо забыть...), распрыжки (которая с ускорением, с доворотом для большей дальности) нет, шафта нет, гранатомёта нет, двустволку тож не дают... скоты... что в остатке? нужно валить всех без оглядки, что патроны закончатся, и надо очень быстро бегать и прыгать, чтобы ни одна собака в тебя не попала, да и всё это "магическое" барахло чтобы побоку. т.е.: пришёл, дал всем в дыню и свалил с победой (или умотал на скорости света если комп не оценит благородные порывы раздать всем по самое не хочу). комп довольно сволочной противник. у него есть всё, а у тебя - "вместо сердца - пламенный мотор" и писулёк сквозь прорехи штанин проглядывает. тягаться с ним можно при одном условии - понять где косячит и дрючить его в хвост и в гриву. благо в Oblivion-е таких косяков - вагон с прицепом. люди мы не гордые, сообразили, что надоть делать свой собственный "класс" игрока, воткнули туда чего хотелось (хоть и не ясно было, совпадает ли моё "хочу" с тем, что Комп имеет за этот параметр) и "вперёд и с песней!".

дальнейшее проходило обыденно. всем встречным - люлей, если кто огрызается - люлей с мародёрством, если кто ну очень уж крут - бежим жопой вперёд зигзагами по кругу и отвешиваем всем, кто кидается в погоню (или пытаются стоя на месте тебя достать). тупо, банально, скучно. ни фантазии, ни шуток, ни веселья. рутина. бегу себе, помахивая мечом и упаковавшись в броню от Т-34, кто не спрятался - ССЗБ (Сам Себе Злобный Буратино). то ли дело "Serious Sam"! площадя, зверушки, веселье, дубинушки молодецкие - кнопку выстрела вроде одно время скотчем фиксировал в нажатом положении (проходил чисто на пистолетах и последнем уровне сложности веселья). как оказалось оружие в Oblivion-е подвержено износу - что в принципе прально, но износ, сцуко, реализован в этой игре способом, напоминающим "перректальное удаление аденоидов". ежели ты долбишь мечом по голой каменной стене - износа ни стене ни мечу не будет! а ежели ты режешь очередную "тушку" - то вот вам и износ! бред. но это всё семечки. оказалось, что есть такая чудная штуковина, как "ремонтный молоток" (sic!). т.е. есть некая хрень для починки изношенного оружия и есть навык "оружейника" для сего дела. оргазм. навык сей я отхватил "на халяву" как бонус к "тяжёлым доспехам" (эт отдельная песнь про разделение доспехов на "лёгкие" и "тяжёлые"). но каково же было изумление, когда сообщили, что после очередной починки мой "ремонтный молоток" СЛОМАЛСЯ! не, это 5. вы когда-нибудь видели сломанный молоток? а сломанный лом? или сломанную кувалду? прям как в анекдоте: "чел сдаёт подотчёт бухгалтеру за командировку в Москву: проживание - 40 рублей, питание - 30 рублей, шлюха - 50 рублей, билеты - 70 рублей. бух прибегает, кипя от возмущения, - Вано, ты так больше не пиши про шлюху, да?! пиши - канцтовары, там, краски, стройматериалы, да?! - хорошо, батоно, спасибо за науку. следующий отчёт Вано после очередной командировки в Москву: проживание - 40 рублей, питание - 30 рублей, билеты - 70 рублей, гвозди - 100 рублей, ремонт молотка - 150 рублей...". а уж сколько времени прошло прежде чем допёр, что этих "молотков" всегда есть у торговцев - не передать. откровенное кидалово при торговле - песнь отдельная (хотя по нашим сегодняшним меркам персонажей за прилавком надо к святым угодникам приравнивать). Oblivion - это сборище барыг, где надо вести "экспроприацию экспроприаторов" при любом удобном случае. хотя... было одно исключение. наткнулся совершенно случайно на барыгу расы Героя, но противоположного пола в каком-то захолустье. девочка была что надо, только вот увлекалась некрофилией на мою беду. так что ничего путного по-любому не вышло (итого: потрахаться всласть тут никому не светит - "в нашей стране секса нет! дети? да, дети есть..."). с детьми тоже какая-то напряжёнка. или их прячут или стерилизуют всех и вся. но пройти мимо постели всё же не удаётся. оказывается, с какого-то перепоя надо бросать раздачу "подарков" селянам и идти баиньки, иначе некоторые статуи "богов" посылают Героя нах с предложением силушки подкопить. и не важно, что ты уже эксперт по мордобою, маханию мечом, стрельбе, починке оружия и т.п. - надо дрыхать. как оказалось, спать тоже надо уметь... писец. при "правильном" режиме бодрости/активности бонусов обламывается на порядок больше. ога! "соблюдает дня режим - Джим! знает, спорт необходим - Джим! даже опытный пират будет встрече с ним не рад, потому, что пьёт пират - джин!" с бухлом кстати проблем нет. есть грыбочки, настойки, винище и куча других необходимых в хозявстве вещей.

попав в "параллельный" мирок Oblivion-а (что за вратами) наступает шок. большей халтуры мир не видел. теперь понятно, почему ребята купили "Id Software" - Doom рулит! любой, от первого и до третьего. даже мордобой не радует. imho - самое весёлое место в игре - эт когда главный злыдень (здоровая четверорукая туша изукрашенная татушками по самое ни-ни) выбирается с прихвостнями на главную площадь столицы. Мартина - в храм, сам - на улицу и "слева - рать, справа - рать, как приятно с похмелья мечом помахать!". эт да, достойный эпизод, но он такой один. ещё правда были какие-то мелочи типа жутко навороченных вампирюг в какой-то шахте (недалеко от Азуры или как-её-там - но вампирчиков было очень мало...). с логикой эта игрушка не дружит ни разу. хамоватые стражники в какой-то пырловке объявили меня "ворюгой", забрали подаренную "кирасу Кватча", содрали 40 целковых штрафа - надо было и им рыло начистить...

в результате Героя, спасителя Отечества и т.д. и т.п. хитрожопый канцлер похлопал по плечику и послал нах, пообещав через две недельки выделить какие-то доспехи из местной кузни (вот это по-нашему! узнаю подход своей Родины к награждению настоящих Героев!). абзац. осталось ещё одно незавершённое дело - как командор "ордена девяти" должен был оторвать башку какому-то хмырю, что обидел монашков и испохабил часовенку. скучно. муторно. не интересно. стёр игрушку. открыл в "gens" (эмулятор Sega) "Comix Zone" и получил массу положительных эмоций за короткое время. ведь делали же шедевры раньше, цепляет до сих пор. из современных запомнились единицы (играю редко и мало) - "HOMM V" (пройдена на уровне "Hero" за ... энное количество вечеров), "World of Goo", "Ждалкер" (уж сколько лет кормили обещаниями...). на компе стоят все "Герои", кроме четыёртых, "Марьяж", nehahra, Quake1-2-3, Heroes3-WoG, Cave Story и огромное количество игрух для Speccy, Sega, Nintendo и прочим "старым" игровым консолям. иногда тянет на тот же "DeusEx" (первый!) или "Max Paine", или в Doom2 побегать. всё это прекрасно работает на Linux с моей более чем скромной по современным меркам конфигурацией домашнего компа. "а в вашем сраном линупсе и поиграть не во что!"(c)/M$ Luser/ вот....

*/

воскресенье, 14 июня 2009 г.

Way Down

/*

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

*/

понедельник, 4 мая 2009 г.

qemu - работа с сетью

/*
материалов на данную тему в сети - море. эта заметка не претендует на оригинальность. пригодится - хорошо, а нет - так ещё лучше. по сути рассматривается частный случай создания виртуальных сетей с использованием qemu, где все "клиенты" друг друга видят, умеют общаться, делиться ресурсами и т.п.

терминология:
"гостевая" система - система, загруженная с использованием qemu/(под управлением qemu) (GUEST)
"домашняя" система - localhost (HOST)

проект qemu не стоит на месте, многие вещи меняются от версии к версии. нетерпеливые энтузиасты собирают эмулятор самостоятельно. шаблончик для сборки на Linux приведён ниже (для версии 0.10.3):

./configure --prefix=/usr --enable-system --enable-linux-user \
--audio-drv-list="oss alsa sdl esd" \
--audio-card-list="ac97 sb16 es1370" \
--enable-mixemu
make
sudo checkinstall


checkinstall генерит корректный пакет (спасибо всем, кто написал хороший Makefile).
ссылки на документацию о работе qemu с сетью:
официальное руководство. читать.
подробная инструкция от товарища "радиста" - может рассматриваться как некая общая "вводная".

осилив материал, можно узнать пару интересных вещей: slirp и vde (Virtual Distributed Ethernet). в теории vde должен упростить процедуру, изложенную ниже, путём соединения гостевой системы с сокетом, автосозданием "tap" интерфейса и установкой корректного FORWARD между всеми гостевыми системами. к сожалению готовых "рецептов" с использованием vde выдать пока не могу, ибо... если у кого работает эта схема - отпишитесь в комментариях или киньте ссылку на более подробные инструкции. использование же slirp не представляется целесообразным.

задача:
поднять несколько виртуальных машин с qemu и обеспечить не только их взаимодействие по "виртуальной сети" между собой, но и открыть им доступ к локальным сетевым ресурсам (интернет в том числе).

для её решения подойдёт практически любой дистрибутив Linux с установленными пакетами: iptables, qemu, kqemu, tunctl и bridge-utils. если вы долго и упорно настраивали iptables - то идея построения "моста" вам явно не понравится.

грузим необходимые модули ядра:

sudo modprobe -v tun
sudo modprobe -v kqemu
sudo chmod 666 /dev/net/tun
sudo chown `whoami` /dev/kqemu


последние две строки дают нам возможность не использовать рута для старта самого qemu, что кажется более логичным, чем "Запускать нужно от root'а, потому что иначе могут возникнуть проблемы с доступом к устройству /dev/net/tun ." угу, всё бросили и запустили от рута, хотя кому-то может так и легче.

запуск виртуальных машин довольно прост. стоит только запомнить, что каждой машине нужен отдельный "tap" интерфейс, соответственно имеет смысл помещать их в разные "подсети". например ("интерфейс tap" -> "локальный eth0, что мы потом поднимем в qemu"):
192.168.4.1 -> 192.168.4.100
192.168.5.1 -> 192.168.5.100
192.168.6.1 -> 192.168.6.100

использовать "глобальные" скрипты (/etc/qemu*) - не рекомендую, но это imho. каждый волен сам решать. если у вас не происходит присваивание уникальных MAC адресов "на лету" - то можете задать их вручную или поменять позже. простейший скриптец старта qemu:

#!/bin/sh
iface="tap0"
iface_addr="192.168.4.1"
user="`whoami`"
sudo modprobe tun
sudo modprobe kqemu
sleep 2
sudo chown $user /dev/kqemu
sudo tunctl -u $user -t $iface
sudo ifconfig $iface $iface_addr up
##sudo ifconfig $iface $iface_addr promisc up ## только для использования в "мостике" !!!
qemu -cdrom ./image.iso -boot d -hda ./disk.img -m 256 -kernel-kqemu -net nic,vlan=0 -net tap,vlan=0,ifname=$iface,script=no
sudo ifconfig $iface down
#EOF


приказ отдохнуть пару секунд после загрузки модуля kqemu (если он ещё не загружен) для вас может быть излишним. маска сети 255.255.255.0 пойдёт автоматом. в "гостевой" системе необходимо и достаточно поднять сетевой интерфейс с номером в пределах заданного сегмента и проставить дефолтный шлюз, равный $iface_addr. для примера с "tap0" некие шаблонные действа в "гостевой" системе:

ifconfig eth0 down
ifconfig eth0 192.168.4.100 up
route add default gw 192.168.4.1
echo 'nameserver 192.168.4.1' >> /etc/resolv.conf
echo 'nameserver ВАШ_ЛОКАЛЬНЫЙ_ДНС' >> /etc/resolv.conf
echo 'nameserver BACKUP_ДНС' >> /etc/resolv.conf


для того, чтобы открыть гостевым машинам доступ в локальную сеть можно воспользоваться "маскарадом". допустим, что ваш локальный сетевой интерфейс - eth0. если интернет идёт по интерфейсам типа dsl0, ppp0 - то "маскарадить" надо и их (если хочется выйти в сеть из qemu плюс ко всему придётся подправить правила для FORWARD). имеем три интерфейса для qemu - tap0, tap1 и tap2. шаблон ниже не предполагает использование "brctl" - "мостиков". мы культурно разрешаем обмен пакетами (FORWARD) между всеми участниками праздничного шоу (используем 2 цепочки - forward_int и forward_ext).

su -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -t filter -I INPUT 1 -i tap0 -j input_int
sudo iptables -t filter -I INPUT 1 -i tap1 -j input_int
sudo iptables -t filter -I INPUT 1 -i tap2 -j input_int
sudo iptables -t filter -A input_int -j ACCEPT
sudo iptables -t filter -I FORWARD 2 -i eth0 -j forward_ext
sudo iptables -t filter -I FORWARD 2 -i tap0 -j forward_int
sudo iptables -t filter -I FORWARD 2 -i tap1 -j forward_int
sudo iptables -t filter -I FORWARD 2 -i tap2 -j forward_int
sudo iptables -t filter -A forward_int -i tap0 -o eth0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_int -i tap1 -o eth0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_int -i tap2 -o eth0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_int -i tap0 -o tap1 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_int -i tap0 -o tap2 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_int -i tap1 -o tap0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_int -i tap1 -o tap2 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_int -i tap2 -o tap1 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_int -i tap2 -o tap0 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_ext -i eth0 -o tap0 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_ext -i eth0 -o tap1 -m state --state RELATED,ESTABLISHED -j ACCEPT
sudo iptables -t filter -A forward_ext -i eth0 -o tap2 -m state --state RELATED,ESTABLISHED -j ACCEPT


почему мы создаём FORWARD с номера 2? - потому, что первым правилом абсолютно корректно выставлять автоподстройку величины пакетов:

sudo iptables -t filter -I FORWARD 1 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu

теперь, когда у нас всё работает, все друг друга видят и пользуют ресурсы друг друга, настало время поиграть с "мостиками". идея крайне проста - "собирайтесь девки в кучу, я вам чучу отчебучу...". шаблонные действия примерно таковы: раскомментируем строку "sudo ifconfig $iface $iface_addr promisc up" (в скрипте вызова qemu) и закомментируем то, что было ранее. выгрузим все правила iptables, ибо основным интерфейсом становится бридж, и оне (енти правила) автоматом идуть далёко...

sudo ifconfig eth0 down
sudo ifconfig eth0 0.0.0.0 promisc up
sudo brctl addbr br0
sudo brctl addif br0 eth0 tap0 tap1 tap2
sudo brctl show
sudo dhclient br0 ## (или ручками настраиваем br0 как раньше был настроен eth0)


тихо матерясь переписываем правила всяких забавных софтинок типа "netams" для работы с "br0" и рихтуем iptables.

зачем нам это надо? чтобы где-то в два раза поднять пропускную способность сети для qemu. скорость аплоада в vsftpd доходила до 2.5 Mb/sec - это неплохо (у вас могут быть совершенно другие цифры!). да и возни в итоге поменьше, плюс получаем новую "игрушку" - brctl. а уж если vconfig ещё валяется рядом - то "гуляйте, Маша, воля ваша".

частный случай - объединить "мостиком" только "tap*" интерфейсы - в этом случае присваиваем руками адрес для "br0" и используем его вместо "tap*" для рихтовки таблиц маршрутизации.

P.S. не забываем о "командном" режиме работы (Ctl+Alt+2). могут пригодиться "host_net_add", "host_net_remove", "system_reset", "q"/"system_powerdown" и т.п.
*/

пятница, 19 декабря 2008 г.

чудище обло, озорно, огромно, стозевно и лаяй... (часть третья)

/*
часть третья, самая короткая... слил релиз, поставил. пофиксили создание initrd с автоконфигурацией, fetchmail+procmail забирают почту, wmmixer не сегфолтится, косяки со сборкой пакетов правда остались, иксы с драйвером nv ни к чёрту (превед ноутам со встроенной графикой от NVIDIA, в SOAD Linux мы это говно постараемся пофиксить), zypper без "--no-recommends" в сеть выпускать нельзя, даунгрейд версий пакетов без скачивания на локальный диск не прокатывает...

наконец-то столкнулся с тормозами и рывками при воспроизведении MPlayer-а. по всей видимости дело в ядре. может порою чуток для понимания с какого буя это происходит. вроде как ядра от Яна Энгельхардта (используемые в SOAD Linux) избавляют систему от этого досадного недоразумения (для 11.1 сборок пока нет).

файл /etc/zypp/locks появляется при использовании опции "taboo" или же "вручную". по большому счёту первый релиз, целиком подготовленный в OBS, на удивление удачен. релиз эволюционный, очень сбалансированный. стоит ли апдейтиться с 11.0? скорее всего нет. особенно если у вас уже подключены дополнительные специализированные репозитории и нет проблем с оборудованием. это - imho, ибо повторюсь, что от системы мне нужна только база - всё остальное ставлю из своего же репо. то есть всевозможные глюки кед/гнома/мыши и т.п. меня не касаются. в откликах на форуме кто-то недоволен, кто-то рад, но все сходятся в том, что новая схема управления дисками в гуях (она же и в ncurses) - говно. будет лучше, если одумаются и вернут всё как было. если субъективно - то "старая" 11.0 на ext3 винте, которую "и в хвост и в гриву" и много-много-много раз гораздо более "отзывчива" на какие-то мои действия, чем свежеустановленная на reiser3 11.1 (и это при том, что ext3 в Суське - тормозит страшно из-за "mount -o barrier=1" по умолчанию, для проверок контрольных сумм при записи журнала). отчасти это связано с использованием ядра г-на Энгельхардта, но также явно, что дело не только в нём.

огромная работа проведена по формированию новых специализированных репозиториев. хочется отметить фантастическую работу по:
Education
Mozilla
OpenOffice
и прочим, включая games и packman:).

вердиктъ - нормуль! мну ожидал намного более мрачной картины. но с 11.0 "слазить" не буду.

*/

среда, 17 декабря 2008 г.

чудище обло, озорно, огромно, стозевно и лаяй... (часть вторая)

/*

"терпенье и труд всё перетрут!" - веками утверждают уважаемые анонимные авторы и они, безусловно, правы. но давайте не будем забывать и оппозицию, нашедшую весомый аргумент для опровержения этой догмы:

"сидит милый на скамейке,
хуем долбит три копейки...
хочет сделать три рубля -
не выходит нихуя!"

другими словами терпенье и труд стоят затрачиваемых усилий только если есть хоть какой-то результат (желательно канечно же чтобы он оправдывал или превосходил ожидания).

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



нормуль, жить можно. теперь картинка с предупреждением. если хотите, чтобы установка версии 11.1 прошла нормально - снимите флажок, обведённый красным кружочком.



и сделайте как показано ниже:



это (IMHO, если никто не пофиксил в релизе) актуально, если у вас более одного винчестера в компе, и вы используете в биосе порядок загрузки этих винтов, отличный от дефолтного. вероятно, что и в других случаях это поможет предотвратить ошибку "Unable to create 'initrd' for your installed system". при конфиге "автоматом" идёт сбой в порядке именования винтов, после чего нормально проходит инсталляция, а в конце её довольный "дедушка Пиздец"(c) тихонько щёлкает пальцами и вежливо предлагает вам высказаться по этому поводу в багзилле компании Novell.

если раньше любимой страшилкой и пугалкой для народа можно было считать идиотскую фразу про феерические "тормоза YaST-а", то теперь наши политические противники могут с пеной у рта вопеть о тормозах самого установщика (чей интерфейс показан на картинках выше). эт да. что-то в этом есть. кроме того, новый стиль/метод/подход при экспертной работе с дисками (Custom Partitioning) бесит неимоверно. крайне неудобен, медлителен, непривычен. поэтому выбрать текстовый режим установки системы - самое оно. там все хоткеи сразу подсвечены (очень удобно) и тормозов нет и в помине.

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

1) впервые за 5 или сколько-там-лет связка 'fetchmail+procmail' не смогла забрать почту. логи:
> ~/bin/my_mail
fetchmail: ../sysdeps/posix/getaddrinfo.c:1463: rfc3484_sort: Assertion `src->results[i].native == -1 || src->results[i].native == a2_native' failed.
/home/sda/bin/my_mail: line 2: 4962 Aborted /usr/bin/fetchmail -av -m "/usr/bin/procmail -d %T"

если отбросить здравую идею, что это, блядь, явно происки врагов и шпиёнов - что прикажете думать?

2) есть spec файл, есть OBS, есть логи сборки, где нам сообщают, что пресловутый пакет "wicd" не может быть собран ПАТАМУЧТА.... (смотри первую заметку). есть тот же spec файл и свежеустановленный 11.1-RC1. сборка пакета обрывается на середине, оно "не всасывает" элементарную конструкцию:

%__install -Dm 755 %{SOURCE1} %{buildroot}%{_initrddir}/wicd

логи:
creating /var/tmp/wicd-1.5.6-build/etc/init.d
error: can't copy '/etc/init.d/wicd': doesn't exist or not a regular file
error: Bad exit status from /var/tmp/rpm-tmp.50878 (%install)

спишем на RC1?

3) zypper очень плохо себя ведёт. опцию "--no-recommends" надо вбивать руками, если вы не хотите превратить свою систему в первостатейную свалку. кроме того он отказался с ключом "force" произвести "даунгрейд" версии пакета (пробовал "зиппером" из своих репо поставить нормальный freetype2 без предварительного скачивания и конструкции вида 'rpm -Uhv --nodeps --force ./freet*.rpm' - неудачно...).

4) к вопросу о том, что новые проверки охраняют Лузера от говённых пакетов - полностью с этим согласен после того, как впервые на моей памяти апплет WindowMaker-а "wmmixer" (который, блядь, даже в OpenBSD работает на ура!) разродился сегфолтом, не осилив тяжкий процесс запуска...

примечание: "Ужесточение мер по проверке пакетов, это всётаки хорошо, меньше будет мусора в системе и кривых пакетов." /lexa/ - Лёха, ты не прав... ты очень круто тут не прав, если не понимаешь, что любое исключение в правилах (а таких исключений ноне в ветке 11.1 - море. достаточно лишь в whitelist-ы глянуть...) как-бы намекает на то, что само правило - хуёвое слегонца... до тех пор, пока для openSUSE существуют сторонние репозитории с которых народ ставит себе практически все мультимедиа прилады, и пока будут эти самые "исключения" из общих правил для всех - ситуация будет близка к маразму. посмотрите на OpenBSD - там партия сказала открытым текстом: "идите в жопу со своей виртуализацией и закрытыми спеками на железо!" - и все несогласные проследовали в указанном направлении. кроме того, тебя, Лёха, лишили возможности заценить работу очень крутого пакета - "wicd" - который во многих дистрибутивах используется как основное средство по управлению настройками сети. это не ты решил, что wicd - говно. так решил кто-то за тебя. а ты это схавал и поддакиваешь в догонку...

5) разительного отличия в "джентельменском наборе софта" по сравнению с веткой 11.0 (и даже 10.3) пока не заметил - полное тестирование со всеми феньками делать не охота, бо и так всё работает. оно конечно же приятственно свежую системку на отформатированный третий рейзер закатать - благодать. да, новый кернел, и чо? какое железо мне надо прикупить, чтобы оправдать апгрейд со старых проверенных, оттестированных версий? ладно, хер с ним, с железом, перееду, но мне что, для чтения почты самому fetchmail+procmail собирать? эх...

6) с иксами вопросов не возникло никаких (логин в третий ранлевел по умолчанию для любой новой системы многое "урезает" на корню. ну и естественно, что набор компиляторов, make, autotools, libtool и исходники ядра с симсами и хэдерами очень упрощают жизнь в подавляющем большинстве случаев). файло /etc/X11/xorg.conf обнаружено не было (это уже ни для кого не новость). карточка GF6600gt со свободным драйвером "nv" завесила Xorg с его дивными "внутренними" конфигами наглухо, тварь сдохла на конструкции "kill -9 `pgrep X `", после чего проприетарный драйвер NVIDIA 177.80 разрулил ситуацию ни капельки не напрягаясь (с чем его и поздравили боты в третьем квейке). ручками только дорисовал переключение раскладки клавиатуры.

вот вроде и всё на сегодня. иксы стартанули, раскладка что в иксах, что в консоли меняется, vim и urxvt стоят - нормуль. пожалуй сделаю из 11.1 тестовую помойку. нахапаю себе всё и сразу - и гном, и мышу, и кеды, и моно с биглем, и ещё одни кеды и всё-всё-всё что увижу. уёбкиты там всяческие, фаноны-маноны-флэшоны и прочую галиматью... потом форматну диск ещё раз и накачу из своего репо Ешку, Tracker, ROX, linuxdcpp (с мультипотоковой закачкой на ядре 707), SciTE, aria2, нормальный pidgin, xchm, jwm и пойду на ЛОР тупить о том, как это охуительно - убрать плазмоид из центра/середины второго амарока, ибо после этого амарок просто летает...

to be continued...

*/

вторник, 16 декабря 2008 г.

чудище обло, озорно, огромно, стозевно и лаяй... (часть первая)

/*
Disclaimer: all written below are just my thoughts and they are not intended to offend or hurt any one. may be this thoughts are the result of my stupidity. who knows... IMHO in and out Ladies and Gents!

заява типа: начальника, я - виноват, дурак, исправлюсь! только пожрать дай, а?!

заметка сия, братие, есть пасквиль гнустный, поклёп, донос и прообраз мыслишек, что умыслил под рождество Христово автор блога сего (стервец преизрядный и мерзавецъ) вывалить на благостныя тучныя поля сообщества openSUSE иноземного. токмо сомненья грызуть - надо ли? а посему ассоциативный ряд поручика Ржевского в цветочной лаке, рюхающего, что именно ему должно прикупить для Дамы, как никогда мне близок и понятен (для тех, кто запамятовал - "... э-э-э... м-м-м.. Могу ли я?.... Хочу ли я?... э-э-э... Говно ли я?...О! ... МАГНОЛИЯ!!!").

вот-вот увидит свет очередной релиз openSUSE - 11.1, которая наше фсио и всё такое. в кои-то веки решился на установку и тестирование RC1 - один херъ кроме базовой системы остальное собираю в своём OBS репо, что собственно и сподвигло на эксперимент.

оду восхваления нового релиза первым прокукарекал слэшдот (вроде как). моё же "знакомство" с ним началось с "изнанки". с того самого момента, как в OBS (OpenSUSE Build Service) подключил новые репозитории для ветки 11.1 и... магнолия... понятно, что мои спек-файлы далеки от идеала (были далеки до недавнего времени). ибо зрела задумка по минимальному использованию специфических rpm-макросов для более лёгкого портирования на другие дистрибутивы. с выходом 11.1 енто "рацпредложение" с треском провалилось. "учите матчасть, Шура, и пилите гири! они, Шура, золотые..."(c)(tm)

- Ну что, милок, оргазм?!
-... лучше....

это самое "лучше" было и у мну опосля взгляда на своё репо для 11.1. "шок! это - по-нашему!"(c)(tm). с момента ввода в строй OBS партия шла намеченным курсом на подготовку всех будущих релизов при помощи этой службы/(этого сервиса). результат перед нами - openSUSE-11.1 (по ссылке смогут пройти только те, кто имеет Novell account и доступ в OBS). все пакеты собраны в OBS. на первый взгляд - круть! можно без выкачивания сырцов ломануться и глянуть, кто собирал, как собирал, что и нахуя патчил и какие логи вылетели при компиляции пакета (то есть практически получить все сведения о пакете с минимальными усилиями в глаза его не видя). теперь давайте вспомним о сильных сторонах Суськи: качество, надёжность, поддержка официального дистрибутива 7/24, мейнтейнер/инженер Novell/SUSE за любым пакетом, эталонная "база" (glibc, kernel, cureutils и т.п.). токмо любая палка - о двух концах. вот второй-то "конец" взвился и вдарил по мейнтейнерам, чьи пакеты в "home:/" репозиториях не имеют отношения к официальной дистрибуции. для обеспечения упомянутого выше качества сборки (и не только) внутренние пресеты механизмов проверок Novell/SUSE автоматом скинули в OBS на всю ветку 11.1/Factory и в дополнение к rpmlint-у влепили brp проверки, которые в теории отключить никак нельзя. то бишь ноне в ветках 11.1/Factory действуют двое полицейских (rpmlint и brp). первый - "хороший", полностью контролируем мейнтейнером, можно при желании выключить ту или иную проверку или отключить их все. с brp на данный момент всё "гораздо, блядь, мрачней"(c)(tm). отключить/обойти brp по официальной версии низзя (на практике - мона, но требует нехуёвых познаний в механике OBS и специфике формата rpm как такового. как именно обходить - не скажу, шукайте сами, коли приспичило. причём не стану описывать способы обхода brp не потому, что жаль - отнюдь. просто подозреваю, что если эта информация будет растиражирована, то выебут не "манагеров", вломивших пресеты проверок без адаптации для всех разом и спровоцировавших тем самым приступ неуёмной любознательности, а каких-нить работяг, кто эти пресеты на коленке рисовал с верой в светлое будущее). официальная "версия" почему нам всем пиздец как нужен brp в дополнение к rpmlint-у в грубом переводе на великий и могучий звучит где-то так: "мы конвейром повышаем производительность труда!" они де способствуют улучшению качества собираемых пакетов, помогают предотвращать всевозможные ошибки и т.п. и т.д. из серии "взялся за грудь - так скажи что-нибудь!" разбор всех зашитых шаблонов brp займёт многовато времени, посему ограничусь "шедеврами коллекции" (сугубо на мой взгляд):

* Warning: This package installs an unknown D-BUS autostart/system service. Please contact security-team@suse.de: wicd.conf
error: Bad exit status from /var/tmp/rpm-tmp.1086 (%install)

пояснение: сборка пакетов "wicd", "exalt" и всех прочих, что устанавливают файло, не внесённое в "белый список" (эт типа список разрешённых файлов в каталоге /etc/dbus-1/system.d/ с конфигом политик hal+dbus+udev) идёт нахуй. такие пакеты openSUSE не нужны by default. как пионэр написал об этой досадной оплошности по указанному адресу. обещали разобраться. ждём-с. а некоторые индивидуумы (якобы сотрудники Novell/SUSE) вот в этом трэде форума объявили меня "господином соврамши-с". с другой стороны в каждой шутке есть доля шутки. может и правда такие пакеты нахуй никому, кроме меня/прочих мейнтейнеров, не нужны...

* ERROR: translation is neither enabled nor disabled for this file: /tmp/scite-1.77-build//usr/share/applications/SciTE.desktop

пояснение: теперь ошибка в содержании лаунчера приложения (.desktop файл, устанавливаемый как правило в $XDG_DATA_DIRS/applications/ и подхватываемый xdg-menu) может легко похерить компиляцию. с ветки 11.1 все подобные desktop файлы трэба скармливать на убой rpm макросу %suse_update_desktop_file и как "Отче Наш" учить не только группы rpm пакетов, но и freedesktop-овы спеки на desktop файло для меню. если кто-то думает, что чудо-макрос хитрым вывертом организует автоматический перевод/трансляцию на все локали, установленные в системе, где собираем пакет - "а вот хуй!"(c)(tm). он лишь скромненько так добавит в конец файла строку: "X-SuSE-translate=" (после знака равенства идёт значение булевой переменной true или false).

* wicd: "/usr/share/locale/no/LC_MESSAGES/wicd.mo" is not allowed anymore in SuSE Linux.
Please use nb or nb_NO (and nn for nynorsk)
see https://bugzilla.novell.com/show_bug.cgi?id=42748

пояснение: из разряда "no comments". достаточно пройти по ссылке выше и почитать перлы в багзилле и обратите внимание на дату создания самого багрепорта и его богатую историю.

этого кому-то показалось "маловато будет" и вколотили явное объявление только тех файлов и каталогов, которые специфичны для компилируемого пакета. "эт ты, Степан, мощно задвинул! внушает!" (Хрюн tm). проиллюстрируем. все любители в %files (секция спек-файла где перечисляют какие именно файлы должны входить в собираемый пакет) рисовать универсальный "глобальный" паттерн вида "/*" отныне идут нахуй без задержек и волокиты (что есть правильно по большому-то счёту). но если переводчики/локализаторы софтинки расстарались не на шутку и сделали адаптацию для локали, не учтённой в корневом пакете "filesystem" - то вам придётся декларировать отдельно как минимум два каталога: собсно локаль и локаль/LC_MESSAGES (меж тем файло локализации "локаль/LC_MESSAGES/пакет.mo" определяется макросом %find_land и вроде как уже учтено в составе пакета, ежели с этим макросом вы в друзьях).

%find_land - это отдельная песнь... его задача крайне проста: прошарить %{buildroot}%{_datadir}/locale на предмет '*.mo' файлов и составить их список для последующего включения в %files. удивлению не было предела, когда выяснилось, что имеет значение МЕСТО вызова этого макроса. если упростить до предела, то это чудо работает только если вызывать стоя в /usr/src/packages/BUILD/ (место куда по-умолчанию распаковывают исходники пакета для последующей сборки). "листья тополя падали с ясеня..."(c)

апофеозом этого праздника потихоньку становится моя переписка с openSUSE Security Team. паттерны проверок rpmlint-ом тоже ужесточили и подумалось мне - грешно проявлять самодеятельность. коли OBS настаивает связаться с Security Team - то нехер выёбываться. стучать - так стучать! по полной. достучался... (причём сижу щас и думаю, плюнуть или довести историю до образца эталонного маразма...). начало было весьма скромным:

E17.i586: E: permissions-file-setuid-bit (Badness: 10000) /usr/bin/enlightenment_sys is packaged with setuid/setgid bits (04555)
E17.i586: E: permissions-file-setuid-bit (Badness: 10000) /usr/lib/enlightenment/modules/cpufreq/linux-gnu-i686/freqset is packaged with setuid/setgid bits (04555)
Please remove the setuid/setgid bits or contact security@suse.de for review.

OBS просекла (проверка rpmlint-а), что указанные бинари идут с "суицидом" и не помечены в потрохах проверок как благонадёжные, а посему сборку надо резко и быстро прекращать. и тут я лоханулся. вместо тихого удушения rpmlint-ика (шоб и мявкать не смел, скотина) взял сдуру и настучал куда просили. аки патриот приложил подробные объяснения зачем и почему суидник тут нужон. приходит ответ (грубый перевод, всем желающим почитать оригинал - сюда): "используй то, что под рукою и не ищи себе другое!"(c) с указанием пользовать прогу "powersave" и механизм DBUS для реализации требуемого функционала без суида. в конце ссылки с орининалом ответа наглядно показано, что рекомендации в чистом виде не стоят и ломанного гроша, ибо "из коробки" не работают. они, как минимум, требуют рутового вмешательства для перехуяривания дефолтных политик на hal+udev+dbus (очень занятие нескучное кстати). не забываем, что если кто-то найдёт в том же hal-е ошибку переполнения буфера - то с тихой улыбкой вздрючит систему по самые гланды. глобальная разблядовка под юзера интерфейсов hal-а тоже как-то... хуёво выглядит со всех сторон. что-то подсказывает, что форсировать эту тему не стоит. сделаю вид, что подобным ответом вполне доволен.

переполненный до краёв положительными эмоциями, весь из себя такой позитивный и патриотичный, лью дивидишку с RC1, прожигаю wodim-ом (знаю, жесть и олдскул, но ни одной болванки пока не запорол таким макаром), тыкаю в кнопочки гламурного инсталлера и иду нахуй с ошибкой о невозможности создать initrd для только что установленной системы. плюс эдакое ненавязчивое предложение оформить баг в багзиллу... довыёбывался...

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

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

to be continued...

*/

среда, 18 июня 2008 г.

Давненько я не брал в руки карты...

/*

- Полковник был изрядной сукой и пасовал на трёх тузах.
- Начальник станции Жмеринка в такой ситуации вёл себя иначе.
- Я несу пику, и покойничек - пику...


В связи с выходом релиза wine-1.0 (ОН таки пришёл), решил проверить это чудо на старом добром академическом издании единственной карточной игры, в которую стоит играть. Ваш покорный слуга - лох педальный и последний раз брал в руки "инструмент" лет... дцать тому как. Для разминки - пульку до 50-ти с гибридными конвенциями, ограниченной геометрической прогрессией на распасах (с ужесточённым выходом) и повышающим коэффицентом 2 (то есть цена взятки на распасах - 2, 4, 8...8... с выходом только сыгранными играми). Гордиться особо не чем:










Сыграл отвратительно. Софтина как не умела, так и не умеет ловить дырявые мизера (если Партнёрами не Рентгены, там ловить нечего), интеллект при распасах где-то на уровне дебильного: "беру своё и уё!" За что её люблю - Дисциплинирует. Таких дивных по мерзоидности раскладов в реале практически не дождёшься никогда. Стимулирует довольно осторожный стиль игры с открытием пасти на торговле только если есть вариант сыграть мизер, ну или когда "Надо брать!" (как говаривала Машенька Защекова, хоть и была ну Очень порядочной девушкой...).

Эх, если следующие пара-тройка пулек пойдут также - поставлю в партнёрах Рентгенов и начну "выгребать" по полной программе...

*/

пятница, 18 января 2008 г.

Играть, играть, играть, играть!

/*
Как бы ни были хороши операционные системы для выполнения прикладных задач, но массовое распространение их предполагает "поддержку игровой индустрии". IMHO: популярность и "массовость" MS Windows более чем на половину обусловлена хорошими взаимоотношениями M$ и разработчиков игр. Огромный респект господам из ID Software, которые всю основную работу проводят в *nix системах и портируют затем полученный результат на прочие платформы. Открывая со временем доступ к исходникам своих игр, тем самым именно "двигая прогресс на своих плечах". Вся 3D индустрия по сути "обязана" работам ID. Пользователи Linux в настоящее время имеют в своём распоряжении wine (эмулятор Windows API), что делает доступным для них практически все игры, выпущенные "под M$". Для OpenBSD ситуация гораздо хуже - wine в портах весьма древний, да и generic ядро для десктопа не очень-то предназначено. Как дела у Free и Net BSD - не знаю, но вряд ли хуже, чем в OpenBSD. Это конечно же с учётом того, что можно собрать для этих платформ все Open Source OpenGL игры при наличии поддержки OpenGL в родных драйверах видеокарты или как результат проекта Mesa (сам же проект как мы видим можно считать детищем Кармака и в какой-то степени nVidia).

Очень интересная ситуация с поддержкой OpenGL складывается в Mac OS X. "Закрытое" проприетарное ядро (закрытая платформа по сути своей) не позволяет компании nVidia выпускать качественные драйвера для поддержки своего оборудования. Так что рассчитывать на получение преимуществ в играх на платформе Mac OS X не приходится (в то время как весь Quake, собранный из исходников в Linux, на том же железе показывает гораздо больше fps, чем под M$).

Но поговорить хотелось не о том. К счастью игровая индустрия началась задолго до появления 3D видео акселераторов и пожалуй стоит заикнуться, что многие отличные игры не имеют к платформе PC никакого отношения. Можно долго и аргументированно петь хвалебные оды современным и будущим 3D технологиям - но, как говорит одна моя знакомая, "не вставляет и всё тут" . Посему скажем огромное спасибо всем создателям эмуляторов игровых консолей, верой и правдой заменивших своих славных "железных" прародителей.

Призовое первое место отдаю Fuse - the Free Unix Spectrum Emulator. 12500 доступных игр (только не надо путать слово "доступный" и выражение "на халяву"), возможность портировать практически на все *nix/POSIX системы (если уже не портировано), отличная эмуляция железа реальных Speccy. Пример того, как именно надо делать эмуляторы. Огромное количество документации, дружное и сплочённое сообщество. С большим удовольствием почитываю на досуге книжки на Virtual TR-DOS. Можно пошариться в неплохом каталоге ссылок SPECCY.RU. Кому как, но звук загрузки игры с кассеты в память того же Speccy, Commodore или Atari вызывает такое ностальжи...

Второе и третье "призовые" места стоит поделить между эмулями SEGA и NES.

Gens - эмулятор SEGA, Sega Master System, Sega Genesis, Sega 32x. Великолепное качество эмуляции, замечательные игры. С огромным удовольствием и сегодня ломаю клавиатуру в "Comix Zone", "Ultimate Mortal Combat" и т.д. Назовите мне хоть одну современную игру уровня "Comix Zone". Не зря её на Wii портировали, очень грамотное решение.

snes9x, zsnes и прочие NES (Nintendo Entertainment System) эмуляторы, коих для каждой ОСьки понаделано немеряно. "Donkey Kong" того стоит.

На последнем месте - PlayStation Emulation for the PC, ePSXe эмуль PS - достойные эмуляторы Sony PlayStation. Всё вроде в них к месту, но... уже что-то "не то". Очень трудно описать словами, что какая-то часть "магии" безвозвратно теряется пропорционально "прогрессу" пустых 3D спецэффектов.

Играйте "классику", Господа!

среда, 5 декабря 2007 г.

забавные инвестиции...

Российская интернет-компания "СУП" полностью приобрела известный интернет-сервис LiveJournal

о-ля-ля! "Чуден Днепр при тихой погоде, когда вольно и плавно мчит сквозь леса и горы полные воды свои. Ни зашелохнет; ни прогремит" // Н.В. Гоголь. это чтоб уж точно и наверняка "не зашелохнуло" и "не прогремело". воистину, дела Твои... со скуки помереть точно не судьба!

можно по-разному относиться к подобным инициативам, но стоит помнить, что в стане нашего "старого друга" оплотом (last stand) Демократии остаётся лишь радио, а никак не газеты, журналы, тв и прочая публицистика. только вот с Госкомсвязьнадзором в наших "степях" не забалуешь, да и "демократия" у нас чуток иная (поправьте, ежели ошибаюсь)...

рекомендую ознакомиться с шикарнейшим трэдом на моём любимом форуме ("В Иране зобанели Гугол"):
http://unixinfo.ru/index.php?topic=301.0

ей-ей мы уже где-то "там же" по уровню актуальности информации в так называемых "ИА" (это - не имя Ослика из сказки про Винни-Пуха, это - сокращение термина "Информационное Агентство"). прав был Льюис Кэррол, глаголя в XIX веке устами Алисы: "...всё чудесатее и чудесатее..."