Перейти к содержимому

2

Если при помощи gcc вы пытаетесь собрать какой-либо проект под Solaris 10 SPARC и на заведомо собирающемся проекте (например, под Solaris 10 x86) и при этом получаете собщение об ошибке наподобии этого:

In file included from /usr/include/sys/signal.h:34,
from /usr/include/signal.h:26,
from indexer.c:68:
/usr/include/sys/siginfo.h:259: error: parse error before "ctid_t"
/usr/include/sys/siginfo.h:292: error: parse error before '}' token
/usr/include/sys/siginfo.h:294: error: parse error before '}' token
/usr/include/sys/siginfo.h:390: error: parse error before "ctid_t"
/usr/include/sys/siginfo.h:392: error: conflicting types for `__proc'
/usr/include/sys/siginfo.h:261: error: previous declaration of `__proc'
/usr/include/sys/siginfo.h:398: error: conflicting types for `__fault'
/usr/include/sys/siginfo.h:267: error: previous declaration of `__fault'

То скорее всего у вас компилятор gcc установлен от другой версии Solaris (например, от Solaris 9).

131

С почти годовым опозданием компания Sun объявила о выходе программы BrandZ (ранее именовавшеся Project Janus), позволяющей выполнять Linux-приложения под управлением Solaris 10.

Возможности BrandZ позволяют запускать такие операционные системы как различные версии Linux, FreeBSD или даже Apple Darwin. На данный момент поддерживается Linux CentOS, вскором времени добавятся Fedora и Red Hat. Также вскорости ожидается появление тезнологии BrandZ в коммерческой версии Solaris 10 по наименовнаием Solaris Containers for Linux Applications.

//Silicon.fr

4

Когда я в конференции ru.unix.solaris поинтересовался чем можно считать трафик, то мне предложили на выбор несколько вариантов. От подсчёта с помощью правил файрвола, до установки gnu-программ. Учитывая, что Solaris поддерживает библиотеку pcap, теоретически можно использовать любые системы учёта трафика построенные на её основе. Но хотелось использовать родные средства Solaris’а. И они есть – extended accounting. Вообще-то, extended accounting это отдельная песня. Это очень мощное средство позволяющее учитывать используемые ресурсы позадачно и попроцессно. А в составе системы поддержки QoS и учитывать трафик. В начале меня несколько насторожил тот факт, что для поднятия учёта надо поднимать и систему QoS, но, подумав, понял, в этом есть определённый смысл. Например, хотя бы в том, что если мы что-то и продаём, то это должно быть определённого качества. 🙂
...читать далее "Опыт установки Solaris’а. Система учёта трафика."

8

Из всех шеллов мне нравится bash. Это дело личных пристрастий. Кому-то нравится ksh, кому-то zsh, кому-то ещё что-то. Не важно. Но bash идёт в составе пэкаджей для Solaris’а и устанавливается по умолчанию. И меня это порадовало. Как говорится одной проблемой меньше.

Теперь пробуем добавить нового пользователя. А то всё время входить root’ом, как-то даже и не привычно. Я знаю два варианта как легко добавить пользователя в Solaris’е. Один через утилиту системного администрирования идущую в составе OpenWindow. Второй – командой useradd. Ни каких «подводных камней» в обоих случаях я не встретил. Кроме этого, советую обратить внимание и на утилиту passmgmt.

И вот всплыла неожиданная вещь. Когда я захожу обычным юзером, то все настройки, в том числе и установка переменной PATH прописываются в ~/.bash_profile. Но если я потом ввожу su и получаю права суперюзера, то значение этой переменной сбрасывается. Что ж, это очень даже логично с точки зрения безопасности. Но немного не удобно. Долго я искал, как сделать так чтоб значение этой переменной при входе через su было таким, каким нужно мне. И man su мне таки помог: /etc/default/su. В этом файле прописываете нужные вам пути в переменную SUPATH и получаете удовольствие.

Следующим камнем преткновения оказалось отсутствие такой приятной командочки из FreeBSD как locate. Пришлось сперва с помощью catman собрать базу для apropos, а уж затемс его помощью, найти аналог locate: whereis и его друга – which.

Далее. Мне нужен любимый текстовый редактор joe. И оказывается он есть на http://www.sunfreeware.com/indexintel10.html. Прекрасно! Выкачиваем его от-туда и ставим. Хм, а как установить пэкадж? Легко! man pkgadd – классический ответ юниксоида. 🙂 Там чётко сказано, что надо сначала его разархивировать, а потом установить с помощью ключика –d. Очень хорошо. Доставляю ещё несколько любимых программ. Кстати, pkginfo очень даже полезная вещь. Особенно в комплекте с grep’ом.

Кстати, Solaris по умолчанию ставит кучу gnu-программ. И устанавливает он их в директорию /usr/sfw/bin.

Теперь надо бы скомпилировать какую-нибудь ба-а-альшую программу.

В одном из указанных выше источниках я прочитал, что идущий в составе Solaris’а gcc несколько странный и мол надо его сразу пересобрать из исходников. Я поддался на уговоры и пересобрал его. По-моему, я зря это делал. Всё же надо было для начала проверить, как отработает «штатный», устанавливаемый при инсталляции. Тем не менее, если вы всё же пересобрали его, то перед установкой свежей версии желательно не забыть удалить (pkgrm) старый вместе со всеми сопутствующими библиотеками.

Переходим непосредственно к компиляции. И вот тут настали первые грабли.

По началу, на небольших программах, всё шло хорошо. Но когда дело дошло до postgres’а, то тут всё и застопорилось. Конфигурационный скрипт ругался, что, мол, у него явно какие-то проблемы с путями к нужным библиотекам. Ну, такое мы проходили, и ldconfig нам поможет. А вот и нет! Не помогло. Нет такой программы. Зато нашлась другая – crle. И после прописывания необходимых путей всё заработало. У меня дефолтовый путь к библиотекам выглядит так: /lib:/usr/lib:/local/lib:
/usr/local/lib:/usr/local/pgsql/lib:/usr/sfw/lib
.

Следующими граблями оказался perl. Собственно, не сам perl, а то, что некоторые системные утилиты заточены под использование штатного perl 5.6.1. А собранный и установленный мной 5.8.7 не содержит кое-каких библиотек специфичных для Solaris’а. И, например, kstat просто отказался работать. Мне пока не удалось переустановить нужные библиотеки под новый perl. Но в этом случае помогает, то, что многие утилиты содержат явную ссылку на запуск интерпретатора perl’а из определённой директории: /usr/perl5/bin. Я просто слинковал в неё нужную версию perl’а и всё заработало. Понятно, что нормальной такую ситуацию назвать нельзя, но пока отложим её до лучших времён.

3

Тем кто знаком с Юниксом установка Solaris’а не покажется сложной. Собственно говоря, и тем кто с Юниксом не знаком она тоже не покажется сложной. Он становится с минимумом обычных вопросов – по-моему, Windows XP их больше задаёт при установке. В общем, не буду останавливаться на этом моменте. У Sun всегда была прекрасная документация.

Единственно остановлюсь на загрузке X’ов. Мне не удалось «сэкономить» на хороший монитор, поэтому, я использовал старенький Compaq 1024. По-моему, он старше моего сына на несколько лет. Так вот, почему-то мне не удалось запустить X’ы с количеством цветов в 64К. Миллион монитор не держит, а 64К не даёт запустить сервер. Приходится мириться с 256 цветами. Благо, что я чаще не за консолью этого сервера сижу, а захожу на него удалённым терминалом. Так что я отложил решение этой проблемки на будущее.

Как обычно, важным момент в любом деле является определение, а зачем, собственно, это нужно? Одну причину я уже называл. Это «заточка» поискового движка DataparkSearch под Solaris. Но лично для меня, это попутное дело. Мне очень интересно посмотреть можно ли Solaris’ом заменить FreeBSD. Т.е. раньше, с моей точки зрения, Solaris позиционировался как платформа для баз данных, каких-то мощных приложений требовательных к ресурсам и надёжности. Вот и надо посмотреть, а не ошибался ли я. Вот отсюда и начнём плясать. Значит так. Во-первых, функции роутера, файрвола и сборщика статистики по трафику. Во-вторых, приложения: почтовый сервер, веб-сервер, dns-сервер, сервер баз данных и файл-сервер. В-третьих, надо выяснить, насколько управляем сам сервер под управлением Solaris’а. Например, просто ли заменить сетевую карту и какие при этом надо сделать пассы руками; что требуется для обновления самой операционки; можно ли, в случае появления первых признаков «умирания» винта сделать его копию а-ля dump|restore? И т.д.

Понятно, что выяснить это в короткий промежуток времени просто невозможно. К сожалению, я работаю на действующем предприятии и на меня наложены определённые обязанности, которые надо выполнять. Так что получение ответов процесс длительный. Ну и Бог с ними – лишь бы они появлялись эти ответы.

Но для получения ответов нужна хоть какая-то начальная информация. Что ж, гугл в зубы и вперёд! Вообще-то, если у вас всё нормально с английским, то гугл вам не нужен, а нужен вам http://www.sun.com/software/solaris/support.jsp. Из русскоязычных ресурсов я нашёл вот такую страничку http://www.opennet.ru/docs/133.shtml. Информация на ней несколько устаревшая, но для понимания некоторых деталей очень даже ни чего. Кроме этого есть ещё ряд интересных мест:
http://docs.sun.com/app/docs/coll/47.16
http://www.opensolaris.org
http://faqs.org.ru/os/unix/solaris_faq.htm
http://www.sunfreeware.com/indexintel10.html
Причём, если постараться можно найти и побольше. И не надо забывать, что есть ещё и конференции, например, ru.unix.solaris.
Кстати, если пришлёте ваши или найденные вами ресурсы по Solaris’у, то буду признателен.

С продукцией фирмы Sun я познакомился давно. Даже можно сказать, очень давно. Году эдак в 1991. Это были сановские сервера купленные заводом «Красный котельщик» (г.Таганрог). Если мне не изменяет память, то там тоже стоял Solaris. Хотя, могу и ошибаться. Собственно, от того знакомства осталось ощущение прикольности загрузки с ленточного устройства и не тривиальный процесс разбивки диска с использованием специального калькулятора.

Так получилось, что мне не удалось тогда плотно поработать с этим Юниксом. Сперва OS/2 (IBM), потом FreeBSD и всё это на платформе x86. Затем я уехал из Таганрога, и до 2001 года о продукции Sun’а только читал в компьютерных изданиях. И вдруг, Sun выпускает версию Solaris’а для интеловской платформы. Это было что-то! Как только я об этом узнал, то сразу выкачал все доступные диски и поставил это «счастье» на имеющейся свободной машине. Машина была что-то типа PII-200 с 64 метрами на борту. Понятно, что ни чего хорошего из этой попытки не вышло. Да, операционка работала. Да, это был Solaris от Sun’а. Да, это было «чиста круто». Но это было и тормознуто. По сравнению с летающей на таком железе FreeBSD, Solaris – ползал. И я опять со вздохом отложил его в сторону. Но мне его хотелось! 🙂

И вот Sun объявляет о выпуске 10-ой версии Solaris’а. Честно говоря, сам момент выхода этой версии я прошляпил, поэтому, и не могу точно сказать, когда она вышла. То ли в конце 2004, то ли в начале 2005. Кому интересно, могут найти нужную информацию самостоятельно. Интересней другое. В одном периодическом издании я прочитал, что Sun выпустила новые сервера на базе процессоров amd и, внимание!, стоимостью от 800 долларов! Оба-на! Я её возжелал! Поиметь на своей ферме машину с гордой лэйбой Sun – предел мечтаний! Бог с ней, что это amd, а не SPARC – это Sun! Но как говорится, быстро сказка сказывается, да не быстро дело делается. Обманули журналисты, самым наглым образом обманули. Может где-то они и видели эти машины по 800 баков, но мне их соглашались продать, в лучшем случае, за 1900. Всё… Облом подкрался и выиграл. Зато остался вновь вспыхнувший интерес. Тем более, что в этот момент мне удалось на «сэкономленные» средства собрать машинку на интеловской мамке и целероновском проце в 2,2 ГГц. Вот и решил я поставить на неё 10-ку. Не сановский сервер, зато Solaris. 🙂 Тем более, что возник и практический интерес к этой операционке. Захотелось на ней собрать и проверить работоспособность одного open-source продукта – поискового движка DataparkSearch.

Необходимое уточнение. Всё ниже изложенное, это лично моё мнение и мои пристрастия. Я ни коим образом их ни кому не навязываю. Более того, все нападки типа «имярек» лучше чем «имярек» будут оставаться без внимания. Хотя я допускаю, что в случае действительно аргументированного объяснения чем одно лучше другого я могу и принять эту точку зрения во внимание. Это во-первых.

Во-вторых. Весь мой предыдущий опыт основан на эксплуатации FreeBSD. Несколько попыток честно подружиться с Линуксом закончились откатом на Фрю. Хотя мне приходилось и обслуживать «боевые» системы под Линуксом и я знаю много действительно толковых и серьёзных людей его эксплуатирующих, но всё же мой опыт, это опыт FreeBSD. Так что через призму Фри я и рассматриваю Solaris.

В-третьих. Прошу не рассматривать эти мои заметки как ликбез по юниксам. Это всё же ближе к людям давно использующим в своей работе юникс и просто желающие ознакомиться с чужим опытом в установке Solaris’а.

11

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

Sun открывает код Solaris для увеличения числа его пользователей и противостоя росту Linux и Windows в дата-центрах. Первая часть кода, утилита улучшения производительности приложений D-Trace, была выпущена ранее в этом году.

На ежекартальной встрече с журналистами компания Sun заявила об 1,3 млн. зарегистрированых скачиваний операционной системы Solaris 10. Хотя компания довольна темпом скачивания, трудно с точность сказать, что пользователи делают с операционной системой. Компания надеется, что пользователи рассматривают Solaris как одну из альтернатив для платформы x86.

//Computerworld

Вот поставил тут Solaris 8 для Intel (вот жизнь довела-то, а :-))). Делюсь.

Инсталляция.

Инсталятор неплохой. Вообщем, простое железо (P-233 MMX, три сетевухи 2 ISA 3Com (которые, кстати, ASPLinuxу так и не суждено было увидеть, 1 PCI Intel видео PCI Ati) нашлось и поставилось без проблем.

Графическая оболочка.

По умолчанию как таковая отсутствует. Точнее сказать присутствует так называемая CDE. Правда у меня, с учетом того, что на дворе 2002 год назвать GUI а'ля Windows 3.1 графической оболочкой как-то язык не поворачивается. Вид тошнотворный, работать неудобно.

Однако ж, поддерживает русский язык. Почти весь. За исключением буквы "Э". На исправление бага Sun конкретно забила. В инете можно найти инфу о том, какие байтики примерно и где нужно искать и на что править, так как в разных патчах они лежат в разных местах. Однако, овчинка явно не стоит выделки. На сайте Sun доступен для скачивания Компаньон СД, на котором можно найти KDE. Поставить его несложно. Но поддержки русского там вообще в помине нет. Либо я его не нашел. В свете нижесказаного про GUI вообще лучше забыть.

"Фирменные" утилиты администрирования.

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

Найти удалось следующее:

  1. В CDE имеет место быть утилита Admintool. Редкий отстой. функциональность никакая - типа добавить пользователя, группу софт и т.п., но глючная. Например, окно добавления/редактирования пользователей выглядит "пустым" хотя там на самом деле что-то есть - если чего-то поводить и нажать ентер будет ругаться что не все ввели.
  2. Еще есть Solaris Mamagement Console. Грузится полчаса. Без преувеличений (Хотел бы я посмотреть на скорость Microsoft Management Console на P-233 MMX Ж). Похоже, написана на джаве. Подсоединяется к локальному серверу. На сколько я понимаю, что-то типа Microsoft Management Console - то есть универсальной среды управления, для которой вендоры пишут свою начинку. Функциональность устанавливаемой по умолчанию "начинки" нулевая. Добавить юзера - всё, больше оно ни на что не годится. Если постучаться по порту, на котором слушает сервис браузером, можно увидеть картинку, которая радостно сообщит, что если через пару лет вы подключитесь сюда опять, то может быть когда-нибудь сможете чем то управлять через браузер. Очень круто. Насколько я понял, это ублюдочное порождение технологии WBEM (Web Based Enterprise Management) которую Sun позиционирует как объектную модель, на которой третьи фирмы понапишут всякого рулезного софта. Но я вообще-то хотел бы увидеть административный софт, а не платформу для его разработки.

Короче, единственные утилиты администрирования от Sun, которые можно применять в работе под Solaris 8 for Intel, - это любимые командлайновые ifconfig, useradd, passwd, pkgadd и т.п. И более ничего. Ну конечно, юниксоиду более ни чего и не нужно. Не спорю. Но все же коммерческий юних. Могли бы сваять что-нибудь типа scoadmin что ли...

Безопасность.

Это есть отдельная песня. После установки сервера по умолчанию, он начинает светиться в мир наверное сотней разнообразных дырявых сервисов, которые надо прибивать. Апач, правда, не стартует, хотя соответствующий скрипт запуска лежит в соответствующем rc3.d. По-моему, из-за ошибки в скрипте не стартует. После создания нужного софтлинка и он тоже начинает работать. (Случайно заметил - софтлинк вообще для другого был как бы нужен, хотя может что и гоняю). В конфе по соларису прочел плач какого-то начинающего, который вопрошал, что ему делать с насквозь дырявым сендмылом, которое поставляется в комплекте и остаётся таким же дырявым после установки всех патчей. На что ему ответили, что надо скачать свежие исходники с sendmail.org и откомпилить под Solaris. Видимо с реакцией на дыры в софте у Sun всё в порядке :-)))

Софт.

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

Так что касабельно софта - Solaris 8 CD1,2, компаньон CD и всё. Ну и тот софт, который коммерческие вендоры спортировали/скомпилили под Solaris для Intel. Чего они, вообщем-то, делать особо не торопятся, ограничиваясь поддержкой SPARC. Да и сам Sun, судя по всему, не очень поощряет свой продукт для Intel полезным коммерческим софтом, который есть на SPARC. А чему удивляться?

 

Таким образом, на мой взгляд, Solaris для Intel не способен конкурировать с Linux и FreeBSD в применении ни как интернет-сервер, ни как рабочая станция пользователя.