Последние записи.

Цветной терминал в OpenSolaris

Сделаем цветной терминал подобный в Linux Mint (я взял оттуда же код и немного подправил его). Открываем в OpenSolaris файл ~/.bashrc . Стираем там всё что есть и вставляем код, сохраняем и готово. Вот мой файл bashrc http://denfromengl.ru/blog/wp-content/uploads/2010/11/opensolaris_bashrc.txt


Запускаем терминал, вот что должно получиться:

Монтируем ntfs в OpenSolaris 2009.06

Монтируем раздел ntfs в OpenSolaris 2009.06 с помощью ntfs-3g. Скачиваем ntfs-3g отсюда http://sunware.programist.ru/packs/index.htm

(либо отсюда http://denfromengl.ru/blog/wp-content/uploads/2010/01/snwntfs-3g-tar.bz2). Распаковываем, в архиве три пакета, вначале устанавливаем SUNWfusefs, затем — SUNWlibfuse и уже последним следует устанавливать SNWntfs-3g.pkg . Затем потребуется утилита prtpart. Скачиваем отсюда http://www.belenix.org/binfiles/FSWpart.tar.gz , распаковываем и устанавливаем.

Здесь и далее все действия от имени суперпользователя. Найдем наш диск:

# /usr/bin/prtpart

Available disk devices:/dev/rdsk/c8d0p0
/dev/rdsk/c10d0p0Use /usr/bin/prtpart <disk device> to get partition details
Use /usr/bin/prtpart -help for usage help

Два диска. Смотрим первый из них:

# /usr/bin/prtpart /dev/rdsk/c8d0p0

Fdisk information for device /dev/rdsk/c8d0p0Block Size : 512 bytes
Controller : ide
Disk : cmdk
Capacity : 111 GB# start block # nblocks startCylSecHd endCylSecHd OSType
1: 0000016065 0234420480 1/ 1/ 0 ff/ff/fe Solaris x86

Не наш. Смотрим второй:

# /usr/bin/prtpart /dev/rdsk/c10d0p0


Fdisk information for device /dev/rdsk/c10d0p0Block Size : 512 bytes
Controller : ide
Disk : cmdk
Capacity : 232 GB# start block # nblocks startCylSecHd endCylSecHd OSType
1: 0000000063 0209712447 0/ 1/ 1 ff/ff/fe IFS: NTFS
2: 0209712510 0001558305 ff/ff/fe ff/ff/fe Linux swap
3: 0211270815 0238051170 ff/ff/fe ff/ff/fe Linux native
4: 0449321985 0039070080 ff/ff/fe ff/ff/fe Linux native

Вот он и есть. Смотрим подробнее:

# /usr/bin/prtpart /dev/rdsk/c10d0p0 -ldevs 

** NOTE **
/dev/dsk/c10d0p0 — Physical device referring to entire physical disk
/dev/dsk/c10d0p1 — p4 — Physical devices referring to the 4 primary partitions
/dev/dsk/c10d0p5 ... — Virtual devices referring to logical partitionsVirtual device names can be used to access EXT2 and NTFS on logical partitions/dev/dsk/c10d0p1 IFS: NTFS
/dev/dsk/c10d0p2 Linux swap
/dev/dsk/c10d0p3 Linux native
/dev/dsk/c10d0p4 Linux native

Монтируем:

# ntfs-3g /dev/dsk/c10d0p1 /mnt

Драйвер позволяет производить операции чтения и записи.

Добавляем локальный репозиторий в OpenSolaris 2009.06

Сначала скачиваем образ репозитория отсюда   ftp://ftp.df.lth.se/pub/opensolaris/iso/2009/06/ у меня это : osol-repo-0906-p01.iso и osol-repo-0906-p02.iso  , можно скачать один osol-repo-0906-full.iso

Монтируем первый образ :

# lofiadm -a /export/home/den/iso/osol-repo-0906-p01.iso /dev/lofi/1
# mount -F hsfs /dev/lofi/1 /mnt 

Синхронизируем (копируем) :

# rsync -aP /mnt/repo /var/pkg/

Пройдет не менее получаса.  Далее отмонтируем образ:

# umount /mnt
# lofiadm -d /dev/lofi/1

... и примонтируем второй так же

# lofiadm -a /export/home/den/iso/osol-repo-0906-p02.iso /dev/lofi/1
# mount -F hsfs /dev/lofi/1 /mnt 

Синхронизируем (копируем) :

# rsync -aP /mnt/repo /var/pkg/

Включаем сервер хранения

# svcadm enable application/pkg/server 

Установим значение каталога

# svccfg -s application/pkg/server setprop \
> pkg/inst_root=/var/pkg/repo/

Установим значение порта, у меня 9000 :

# svccfg -s application/pkg/server setprop pkg/port=9000 

Далее возможно и не надо, но на всякий случай :

# cp /var/pkg/repo/cfg_cache /etc/0906_cfg_cache
# svccfg -s application/pkg/server setprop \
> /etc/0906_cfg_cache

Обновляем, перезапускаем...

# svcadm refresh application/pkg/server
# svcadm restart application/pkg/server

Смотрим в браузере что есть :
http://localhost:9000


Добавляем в «Диспетчер пакетов» и обновляем список пакетов. Основной репозиторий Opensolaris.org можно отключить чтоб не тянуло лишний трафик.

Монтируем ZFS в Debian 5.0.3 lenny

Задача примонтировать домашнюю директорию Соляриса в Линуксе. Что мы имеем: Debian 5.0.3 lenny и раздел с ZFS на которой стоит OpenSolaris 2009.06.

Будем всё это делать с помощью zfs-fuse. Скачиваем исходники с сайта http://rudd-o.com/new-projects/zfs/ последняя версия на момент написания статьи  была 0.6.0. Распаковываем архив, у меня например ~/source/zfs-fuse-0.6.0.

Устанавливаем дополнительные программы:

# apt-get install fuse-utils libfuse-dev libfuse2 scons libaio1 libaio-dev

переходим вкаталог с нашей программой

$ cd ~/source/zfs-fuse-0.6.0/src

далее

$ scons
# scons install

Если всё установилось нормально, запускаем программу:

# zfs-fuse & 

Смотрим что есть

# zpool import  

pool: rpool

id: 9950776746572433239

state: ONLINE

status: The pool was last accessed by another system.

action: The pool can be imported using its name or numeric identifier and the '-f' flag.

see: http://www.sun.com/msg/ZFS-8000-EY

config:

rpool ONLINE

hda5 ONLINE

Импортируем

# zpool import -f rpool 

Аварийный останов

Не обращаем внимания. Смотрим что есть:

# zfs list

NAME USED AVAIL REFER MOUNTPOINT

rpool 13,0G 96,2G 84K /rpool

rpool/ROOT 5,90G 96,2G 19K legacy

rpool/ROOT/BE1 5,15M 96,2G 5,10G /

rpool/ROOT/be4 39,7M 96,2G 5,10G /

rpool/ROOT/be5 140M 96,2G 5,10G /

rpool/ROOT/beSecond 5,56G 96,2G 5,09G /

rpool/ROOT/opensolaris 162M 96,2G 3,35G /

rpool/dump 511M 96,2G 511M —

rpool/export 6,13G 96,2G 21K /export

rpool/export/home 6,13G 96,2G 22K /export/home

rpool/export/home/Zone1 59K 96,2G 21K /export/home/Zone1

rpool/export/home/Zone1/ROOT 38K 96,2G 19K legacy

rpool/export/home/Zone1/ROOT/zbe 19K 96,2G 19K legacy

rpool/export/home/den 6,13G 96,2G 4,86G /export/home/den

rpool/swap 512M 96,5G 278M —

Собственно монтируем

# zfs mount rpool
# zfs mount rpool/export/home/den

Смотрим что получилось в корневой директории

 # ls -n / | grep export

drwxr-xr-x 3 0 0 72 Сен 25 21:51 export

Получилось. Домашняя директория  Solaris примонтирована. Можно выполнять операции чтения и записи, с правами root разумеется.


SkyLink в OpenSolaris 2009.06

Что мы имеем : Opensolaris 2009.06 , модем AnyData ADU-310A подключенный к SkyLink, хотя по идее должен заработать любой CDMA модем. Найдем наше устройство, вводим в терминале:

$ prtconf -v

Команда выдаст большой список. Для удобства перенаправим вывод в файл, например так:

$ prtconf -v > ~/file.txt

затем откроем файл:

$ gedit ~/file.txt

найдем приблизительно такие строки : value=’AnyDATA CDMA Products’ name=’usb-vendor-name’ type=string items=1 value=’AnyDATA Corporation’

...

value='usb16d5,6501.0' + 'usb16d5,6501' + 'usb,device'

Затем подгружаем драйвер

# update_drv -a -i "usb16d5,6501" usbsacm

Делаем ссылку:

# ln -s /dev/term/1 /dev/evdo

Далее создаем два файла :

/etc/ppp/peers/evdo :

nodetach
evdo
230400
noauth
passive
defaultroute
usepeerdns
noccp
novj
novjccomp
nobsdcomp
nodeflate
user "mobile"
password "internet"
show-password
crtscts
connect '/usr/bin/chat -V -t15 -f /etc/ppp/evdo-chat'


/etc/ppp/evdo-chat :

'' ''
'' 'ATZ'
'OK' 'ATI'
'OK' 'ATDT#777'
'CONNECT' 'ATO'

Затем копируем:

# cp /etc/nsswitch.dns /etc/nsswitch.conf

запускаем

# pppd call evdo

После первого запуска  интернет не будет работать. Для этого нужно разъединиться по Ctrl+c , затем вытащить и снова вставить модем. У нас появляется файл /etc/ppp/resolv.conf , его нужно скопировать :

# cp /etc/ppp/resolv.conf /etc/resolv.conf 

Готово.