Hacker News new | past | comments | ask | show | jobs | submit login
Rosetta Stone for Unix (bhami.com)
99 points by kissgyorgy on Mar 29, 2015 | hide | past | web | favorite | 26 comments

as someone who worked in an hpux and solaris (and a little AIX) shop, writing code with a fair number of system calls on these systems, brings back memories and not good ones.

Subtle differences in the way everything was done. slight difference like: the max size of a udp packet was slightly smaller on hpux (or was it solaris) such that things would break in unexpected ways. The gzip or tar params where all slightly off... You got used to it but it was a pain.

This reminds me why linux was ascendant. I'm not sure its better but much more consistent.

The gzip parameters should be identical, since all implementations are the GNU one. The compress program, on the other hand…

EDIT: My information was obsolete – apparently some BSD’s reimplemented gzip. I stand corrected.

The BSDs have their own gzip. I know this because it rejected some files that were fine according to the official version...

unless different OSes provide different versions.

More consistent perhaps - though tremendously inconsistent between distributions, and versions of a given distribution, in an absolute sense...

I read somewhere that Bill Gates said in the 80s that Unix has a versions/forks problem which will remain with it forever. If that is true then it's one bloody successful prediction.

Given that things are inconsistent across distributions, that's basically the same as being inconsistent between Solaris and AIX.

One inconsistency I've been very annoyed by over the years is the differences in ps. I ended up making a .cshrc that contained aliases to work around them. I'd check which OS I was using and alias a command to call ps with the arguments I used regularly. I used to work often on Irix, Solaris, and Linux and it was a pain to remember which arguments I needed. This was especially true on ssh connections where I didn't always remember which OS a particular machine ran.

I'd like to see an updated subset with rhel/ubuntu/debian and systemd.


"unique id useful for licensing" => Linux "/sbin/ifconfig eth0"


This sort of thing can lead to ridiculous problems.

MATLAB R2013b on Mac OS tried to do something similar. However, it sometimes decided that my hostid was the MAC address of my Ethernet interface, and sometimes my wireless interface (in which case it would reject the license). In the end I resorted to obtaining two license files and manually switching them when necessary.

TI licenses some of their products based on your MAC address. In the past I've had problems getting their products to accept licenses unless I had an eth0 interface on my Linux system. As in, I had to rename my eth1 interface to eth0 to get it to work at all.

This has been enormously useful, and inspired me to create one for performance metrics (from the USE method): http://www.brendangregg.com/USEmethod/use-rosetta.html

Some parts may be a bit out of date. I mean, I do still have a box with ReiserFS on it, so I guess it's OK that's included, but ext4 is left out...

Definitely - Reiserfs for the win. Great FS for tons of small files like email, news.. ok, when you really think of it, only multimedia and database files tend to be 'large'. Everything else tends to be rather small. Btrfs is far too unreliable. I've been using Reiserfs on hundreds of servers for 16 years and the last time I can remember having any trouble with it was in 2001... great FS. Too bad distros are killing it off, but when the author's in prison, it's a bit understandable.

Just goes to show that UNIX eco-system is not as portable as many youngsters think of it.

As far as I know, UNIX isn't really a standard. POSIX is, with varying degrees of compliance from these OSes.

It absolutely is, and has been for a long time. I find it very hard to keep track of the various standards, but things got a lot simpler with v3 of the Single Unix Specification, which is the same as POSIX 2001[0].

The problem is that SUS and POSIX only define a subset of what's wanted by most modern software and a subset of the tools people need to interacting with the system. It's a double-edged sword, though: if we always stuck to what was common to all Unix-like systems, we wouldn't have lots of important OS features.

[0] http://en.wikipedia.org/wiki/Single_UNIX_Specification#2001:...

> [I]f we always stuck to what was common to all Unix-like systems, we wouldn't have lots of important OS features.

Like seriously....It ain't even funny.



While correct, POSIX is supposed to mirror UNIX, but only does so partially and like ANSI C, leaves room for implementation specific behaviours and extensions.

So in the end, the situation isn't much better, if the goal is to reach as much UNIX like systems as possible.

Just a comment: This page is awesome and I have used the crap out of it in the past.

Once, I printed a lot of it on a large format printer so I would have it handy while administering a mixed Unix shop. HP/UX, IRIX, Solaris, Linux...

This is very out of date, OS X hasn't used Netinfo Manager since 10.4.


Actually, the Rosetta stone is a historical artifact which had the same text written in several languages.


So this link does qualify as a sort of Rosetta Stone.

The Rosetta Stone is a stone, found near Rosetta, Egypt, with an inscription in three scripts (Ancient Egyptian hieroglyphs, Demotic, and Ancient Greek), which led to the modern decipherment of the hieroglyphs.

Congratulations, language software company, you have better SEO than a 2200-year-old stone carving.

Your comment depressed me.

Take a look at this: https://en.wikipedia.org/wiki/Rosetta_Stone

We need one of these for The Web. That'd be a truly revolutionary contribution to the mass-communications zeitgeist: how to communicate to your social sphere, effectively, using email. How to do it with RSS, how to do it with The Web. How to stop doing it with Facebook, et al.

Applications are open for YC Winter 2020

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact