5

I am Kris Kay. I am a student at a local technical school and next year they will be introducing the Pi as a tool to use with UNIX.

My task is to install and run UNIX on the device. What is the best way for me to do this?

I know this question is sounds like a joke to you all but I'm I am very excited to get started. Thanks for your time!

  • 1
    Welcome to the Pi Exchange community. You have actually asked a very good question indeed! I edited you question a bit because this not just one of "those forums" - We respect every question with upvotes and every downvote can be converted to upvote after an edit. I hope you find what you are looking for here. – Piotr Kula Apr 8 '14 at 8:42
10

This question is actually hard to answer, not because it is technically difficult, but for the lack of language precision that might be buried in it. I will answer it in two parts.

Part 1

Raspberry Pi has a hand of different Linux distributions that can be ran on it, some are easier to install, some not so much. The "default" one, or at least the one that gets installed the most, is Raspbian, which is pretty simple to install and run.

You can find the files and the "supported" distros in the Downloads link. The NOOBS image is the easiest way to go, it will allow you to choose what you want in a interactive way. It has most of the Linux distros AND RISC OS, which isn't Linux. Nor UNIX.

But the issue here (and that's the language or concept lack of precision part) Linux is also NOT UNIX.

Part 2

There are two UNIX-derivatives, which many consider real UNIX, that have working ports for the Raspberry Pi: NetBSD and FreeBSD. As a clarification, UNIX is a Copyright and needs permission to be used. As so, even these two aren't allowed to use the Copyrighted UNIX logo. You may also check NetBSD's statement about this which states the Copyright issue clearer, and check goldielock's answers and the comments at the end of this answer to decide that for yourself. Once upon a time, a real UNIX was considered something that shared UNIX code, inherited UNIX code or contributed to UNIX code. You can find the remains of that in FreeBSD's explanation.

I love them both, but not particularly for their easyness-to-install. I haven't tried the Raspberry Pi ports, but the regular PC-Intel ports are very hard to install for someone with little or no UNIX/hardware/partitioning knowledge.

You can check them out in their specific ports-page: NetBSD Raspberry Pi port and FreeBSD Raspberry Pi port.

Conclusion

If the person that assigned you the task is a UNIX-savvy teacher, you might go with the FreeBSD or NetBSD (which one you get installed first), because they might be considered closer to the historical UNIX. The Linux distros, RISC OS and Plan 9 are not. Else, just go with NOOBS and pick some of the readily available ones. I would go with Raspbian, but that's my personal preference.

And also, read goldilocks answer for another view on what is UNIX and what is not.

  • "True unix" is just a made up term, although it might be taken to refer either to the actual historical UNIX (which no longer exists) or to contemporary systems which are officially compliant with the Single UNIX specification -- which Net- and Free- BSD are not. If it is simply a political term you have made up to distinguish BSD from Linux, then it amounts to a prejudicial self definition: "According to me, BSD is truly a UNIX but linux is not". According to the people who own the trademark, neither of them is. – goldilocks Apr 8 '14 at 13:39
  • From a trademark view, you are most definitely correct. From a code and inheritance point of view, I still back my view. It is not without controversy, but not having UNIX code was, at some point, one of the main arguments pro and counter Linux. I am pretty sure this is a newer or more (or less) precise of the endless discussions of the past about this. I think I will let readers decide, and cite an interesting reference about it, the FreeBSD FAQ entry. – Marco Poli Apr 8 '14 at 15:40
  • It's reductive to say that standards compliance is "just about trademarks"; the point of having a governing body (which holds the trademark) is so that there can be a universally accepted standard, as there is with programming languages, etc. I'm sure this is an endless debate. WRT to "code inheritance", adherence to a specification is adherence to a specification, whether you did by inheriting bits and pieces from a previous source (as per BSD) or by creating it from scratch (as per linux). However, I would not try to argue that BSD is less compliant than linux, because I don't know. – goldilocks Apr 8 '14 at 15:52
  • Also: if the OP is at a technical school, I would imagine they are concerned with UNIX as it exists currently (a standard governed by the Open Group) more than its various historical variants and branches. But perhaps not. I've nothing against BSD, just pointing out that is would be wrong to tell people linux is not also an acceptably "unix-like" OS, if this makes life easier for them. The school itself has the final word on that, obviously. – goldilocks Apr 8 '14 at 15:53
4

In case it is not clear, there is no such operating system today as UNIX and there has not been for a long time. Instead, UNIX is an operating system standard that includes a number of different existing OS's.

To "officially qualify" as a UNIX -- that is, to be counted as such by the people who own the UNIX trademark -- a system must pass a compliance test of the Single Unix Specification. You can find a list of systems in this category on that page under "Registered UNIX systems". None of them, AFAIK, are available for the raspberry pi, nor are any of them open source, so there is no way to compile them for the pi either (which in any case would be a pretty daunting task).

However, as noted at the end of that list, the "unix-like" systems, BSD and linux, are non-compliant primarily because they are never officially tested. These tests are not free (I'd guess they are at least well into 5 digits USD), and they need to be repeated for each release and kernel modification. In the case of linux, I believe this would apply to each distribution separately. This would amount to many dozens of such tests per year -- probably more that the current total, just for linux. Since the testing is also not instantaneous, it would also hamper the rapid release model used by the linux kernel developers.

In short, the difference between the official UNIX's (which include, e.g., Apple's OSX) and the unofficial "unix-like" OS's, linux and BSD, is perhaps more about a business model than anything else. This is not to say that any given linux or BSD would pass the compliance, since, for the reasons just discussed, this is not a particular goal. It is probably not a completely desirable one from a design standpoint either.

However, most people would consider BSD and linux very "unix-like" and both of them are available for the pi. I would check with your school what they consider to qualify here -- it is very unlikely that they only include the officially registered ones since those would cost the school itself an amount of money disproportionate to their actual use value. I.e., they almost certainly include BSD and linux, particularly if your task involves the raspberry pi, since as mentioned there is no possibility of installing an official UNIX there.

2

AFAIK there is no Unix for the Pi, although you could try to port FreeBSD to the Pi.

I presume, from your question, you have little experience, so just install Raspbian which is a Raspberry Pi customized version of GNU/Linix, and learn this.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.