środa, 2 listopada 2011

OpenIndiana and ntfs-3g

Update:
I have patch ready to change unhelpful on OpenIndiana, SmartOS and other illumos distributions mention of modprobe to suggest:
/usr/sbin/add_drv -m 'fuse 0666 root sys' fuse
Still have to find out, why the heck link was not created in the first place. :/


----------------------------------
I recently had to use ntfs formatted USB drive under OpenIndiana and run into a small problem.
I shamelessly used gparted to find which device maps to my usb disk. Then had following session with ntfs-3g binary:

ntfs-3g /dev/dsk/c2t0d0p1 /mnt/
The disk contains an unclean file system (0, 0).
The file system wasn't safely closed on Windows. Fixing.
fuse: device not found, try 'modprobe fuse' first

Both fuse and ntfs-3g are installed from repositories:
sfe                                   origin   online   http://pkg.openindiana.org/sfe/
sfe-encumbered                        origin   online   http://pkg.openindiana.org/sfe-encumbered/


After some digging around and asking on IRC I decided that either no one had this problem or no one bothered to post solution. modinfo showed me that fuse module is loaded, after all:

258 fffffffff7edd000   e680 290   1  fuse (fuse driver)
258 fffffffff7edd000   e680  28   1  fuse (filesystem for fuse)


However ntfs-3g itself didn't say anything useful. It also suggested to use modproble, which is just ridiculous on OpenIndiana. I decided to truss it.


open64("/dev/fuse", O_RDWR)       Err#2 ENOENT


One clue closed I downloaded spec file for fuse from http://pkgbuild.sourceforge.net/spec-files-extra/ and checked for %post step:

%post
( retval=0;
  /usr/sbin/add_drv -m 'fuse 0666 root sys' fuse || retval=1;
  [ "$retval" = 0 ] && ln -s /devices/pseudo/fuse@0:fuse /dev/fuse || retval=1;
  exit $retval
)


I did check if /devices/pseudo/fuse exists (it did) and then created /dev/fuse link to it. Then ntfs-3g worked like a charm.

Cheers!

ZFS is ten

ZFS turned ten years old. There is short but nice blog post about it. One thing worth noting is, how long it takes  a feature from initial implementation to first introduction to operating system. Four years before inclusion in OpenSolaris project and then in Solaris 10 in 2006 IIRC.

http://blog.delphix.com/matt/2011/11/01/zfs-10-year-anniversary/

wtorek, 13 września 2011

OpenIndiana 151a release

OpenIndiana project has just released stable 151a release.
Follow download link for the goodness. There are also instructions for upgrading from previous OpenIndiana releases and from OpenSolaris.

środa, 23 lutego 2011

illumos based OpenIndiana

Update 26.02.2011.
There is also a USB image. You can use it, quite conveniently, with dd tool on Linux or with OpenSolaris USB Live creator on Windows written some time ago by Hiroshi Chonan.
To write it to USB stick with dd, you have to prepend a special header, which you can download here. Just do:
wget http://dlc.openindiana.org/isos/2G.header
wget http://dlc.openindiana.org/isos/148/oi-dev-148a-x86-20110223-1.usb
cat 2G.header oi-dev-148a-x86-20110223-1.usb >> oi-dev-148a-x86-20110223-1-header-prepended.usb
dd if=./oi-dev-148a-x86-20110223-1-header-prepended.usb of=/path/to/your/usb/device (ie. /dev/sdb)


Of course, with OpenSolaris based distributions, you can use /usr/bin/usbcopy from pkg:/install/distribution-constructor

Cheers!
-------------------
And so it happened. OpenIndiana has now published illumos based authority and isos.
Authority: http://pkg.openindiana.org/dev-il/ - based on illumos changeset fe7962c08d1d; the latest changeset in illumos repository.
Isos: http://dlc.openindiana.org/isos/148/oi-dev-148a-x86-20110223-1.iso

wtorek, 18 stycznia 2011

Illumost testing build

UPDATE: Installation instructions corrected. Thanx aszeszo for that. :)
Last week I've built packages from illumos sources, changeset cac385f011a3. Project OpenIndiana was kind to set up a repository with packages that you can use to upgrade your OpenIndiana system:

http://pkg.openindiana.org/illumos-experimental/
General instructions follow:

pkg set-publisher --non-sticky openindiana.org
pkg set-publisher -P -O http://pkg.openindiana.org/illumos-experimental/ on-nightly
pkg uninstall entire
pkg image-update -v --be-name illumos-1
Enjoy.


środa, 20 października 2010

find and symlinks

A pearl of wisdom from today problems: find does not automatically descend into symlinks to directories. You have to ask it to, by using -follow. It turns out that trivia is not widely known at this site.
This has today surfaced with filesystem hierarchy resembling below:

drwxr-xr-x /usr/local/bin/Testing
lrwxrwxrwx /opt/Testing -> /usr/local/bin/Testing


It translates into: /usr/locla/bin/Testing is a directory and /opt/Testing is a symbolic link to this directory. Within this directory lies a file test.t.
A developer was bewildered why, when he cds into /opt/Testing, following find the file:

find . -name test.t


and following does not:

find /opt/ -name test.t


Reason is simple. find, by default, will not follow symlinks to directories. There is an option for that: -follow.

poniedziałek, 13 września 2010

Closed crypto removed from illumos - FLAG DAY

Hi

I paste e-mail from Garrett, which constitutes a flag day for everyone building illumos nightly. Please, read it carefully, as it explains itself nicely:

With my integration of "6 Need open kcfd", there is actually no more
kcfd or signed crypto tarballs. (The necessary code for thread
management is in the kernel kcf. You'll notice new kernel LWPs called
"kcfpoold" in ps -eLf output.) Also, all vestiges of FIPS-140 support
are removed.

This represents a flag day for everyone building illumos.

You must do a full nightly across thsi flag day -- incrementals *will*
break.

You must not have a crypto tarball. (One less thing to download from
Oracle.. yay!)

You *MUST* use the version of nightly in the latest source. It is a
syntax error to try to use the old nightly -- it won't work unless you
have the old crypto tarball, and if you do, the result will not be
functional!

To recap:

* remove crypto tarball if present.
* use nightly from source tree
* do a full clobber build.

Thank you.

- Garrett

How to build illumos guide has been updated to follow this change. Enjoy!