5 ms·
I love Solaris (except Oracle Solaris 11, which I really dislike!), and I love illumos and SmartOS even more. I grew up on Solaris - my first ever UNIX was a S
by Annatar 10y ago
I love Solaris (except Oracle Solaris 11, which I really dislike!), and I love illumos and SmartOS even more.
I grew up on Solaris - my first ever UNIX was a Solaris 2.5.1 system on a SPARCStation 20. I've been running Solaris on intel since my first Pentium 90 workstation on Solaris 2.5.1.
Since I know how to build and package software for Solaris, I have everything I could ever want or need on it.
It's a comfortable system, and it's elegant, once one fully understands all of its capabilities. And it's extremely reliable and high performance, especially on intel based processors.
For some context, I am forced to work on Linux and I spend my entire working day working on it. Compared to reliability of Solaris and ease of use, I have grown to dislike Linux in the extreme. If you are thinking, "but that is insane, Linux is so great, how is that possible!", remember that I grew up on UNIX, so I have different criteria for what is comfortable and reliable (even in terms of development) than your average Linux user or Linux system administrator does. I dislike the GNU tools and user land (with very few notable exceptions) because I'm used to AT&T System V tools and that is how I expect the tools to behave; GNU tool chain usually frustrates me to no end. Working with Linux frustrates me to no end (I do professional development and system engineering on it).
For example: --some-long-option comes to mind, or lack of proper manual pages ("see the texinfo page"), lack of backwards compatibility support, tar -z (tar is a tape archiver, not a compressor!), and so on, and so on... I miss my ZFS, I miss my mdb, I miss my dbx, I miss my SMF, I miss my fmadm, I miss the simple and effective handling of storage area network logical units, I miss the fiberchannel stack which actually works... I don't have any of those issues on illumos based systems, but it drives the point home:
the last thing I want is yet another Linux based computer. I have enough of that as it is at work - almost 71,000 servers, 49% of them running Linux, and it sucks.
- schoen 10y ago> tar -z (tar is a tape archiver, not a compressor!) Did you not want -z to exist at all (so you would pipe through gzip separately), or not want it to be a magical default? GNU changed the -z handling at some point in the last decade (so that it autodetects whether input is compressed upon extraction and decompresses it without being told to), so now tar -xzf foo.tar.gz and tar -xf foo.tar.gz both work, where previously the second one would have failed because tar wouldn't have tried to decompress. Is that change what you're bothered by (it's pretty counterintuitive to me!), or did you just not want compression built into tar at all? GNU tar now includes flag-based support for -j (bzip2), -J (xz), --lzip, --lzma, --lzop, -z (gzip), and -Z (compress).
- Annatar 10y agoI do not want -z at all, ever; -z has no business in a tape archiver, as it goes against the core UNIX philosophy of "do one thing, and do it well" [McIlroy]. Implementing UNIX tools inside of other UNIX tools is not how UNIX works; that might be acceptable on Windows, but it sucks on UNIX. For example, xz -dvc archive.tar.xz | tar xf - works everywhere as is, including Linux, while tar xzf archive.tar.xz will not work on systems which do not use GNU tar or where GNU tar is not linked with libz, libarchive and liblzma. GNU way is broken, because it is the Windows way, and Windows is busted.
- schoen 10y agoAnother example might be "sort -u" (because you can get the same result from "sort | uniq"). There seems to have been a pattern where people decided that if "foo | bar" (or "bar | foo") is a common enough idiom, they could or should create "foo -b" to mimic it.
- justinsaccount 10y agoExcept that `sort -u` enables an optimization for dealing with a large number of duplicate lines.
- figgis 10y ago>For example: --some-long-option comes to mind, or lack of proper manual pages ("see the texinfo page"), What are you even talking about here? man/info works wonderfully, if I want more readable information a terminal sure as hell isn't going to give it to me easier than searching a wiki. And solaris absolutely had problems with documentation on their larger packages. > lack of backwards compatibility support Hardly even a real issue if you actually maintain your damn systems more than once every half decade. >tar -z (tar is a tape archiver, not a compressor!) ... It still is a tape archiver AND a compresser AND a 100 different but completely valid and usable things. ZFS absolutely is usable. Why do you enjoy DBX over GDB? SMF? One would think you would love and embrace systemd. FibreChannel stack that works? https://wiki.archlinux.org/index.php/InfiniBand https://wiki.archlinux.org/index.php/InfiniBand I can't refute all that you have said here since I am not familiar with all of it. But, have you considered you are just doing it the wrong/difficult way?
- Annatar 10y agoManual pages on traditional UNIX systems are extremely detailed and contain lots of good, usable examples, and Solaris / illumos based operating systems really shine in this area. People who grew up on a real UNIX expect to find comprehensive, high quality documentation in the manual pages in a terminal session. This feature was driven hard by enterprise customers and professional system administrators in times when wikis did not exist, and even today the quality of the content in some arbitrary wiki written by someone on the internet when they felt like it is dubious in comparison to manual pages written by people with formal education in engineering and technical writing! Like I wrote before, on UNIX we have different expectations in different areas than what people are used to and accept as given on Linux. The focus is different on UNIX. Apropos dbx versus gdb: dbx has a 1,000 page manual, and makes it really easy to step through assembler code while listing the original source. How many pages of documentation does gdb have again? On top of that, gdb doesn't even fully support my OS, I don't think gdb properly supports anything that is not Linux... hmmm, that reminds me an awful lot of Microsoft Windows monoculture. systemd versus SMF: systemd is a shoddy copy of SMF with a Windows twist, trying to replace every service in the system. Unlike SMF, which is part of the fault management architecture, which is part of self-healing technology, systemd has no such concept, self-healing and a contract filesystem is science fiction for systemd. SMF watches over services, but it doesn't try to replace them; "do one thing, and do it well." InfiniBand is a different technology than fiberchannel.