BSD Virtual Guest [closed] - virtualization

Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 11 years ago.
Improve this question
So I am a big fan of VMs, actually got experience enough to switch my development box to a linux distro. At this point I would like to get more experience with BSD and hope to do this with a VM. So the question I have is what configuration is correct?
BSD...
List item
FreeBSD
OpenBSD
PC-BSD (I know it is FreeBSD with a KDE, but might be simpler to get started with)
Which Virtual Machine is best for these guests (on a linux host)
List item
VMWare Workstation (have a license for 7)
Virtualbox 4
QEmu
Other?
Any suggestions from experts would be great. I was able to get FreeBSD and PC-BSD installed on virtualbox 4, however I get horrible resolution that I can't seem to fix.

I found the 'right virtual machine' requires some tinkering. VirtualBox ran Plan9 really slowly, qemu+kvm ran it hundreds of times faster. qemu+kvm also ran an Ubuntu guest at what felt like faster-than-hardware (at least for booting :) but I've read accounts from people that say the exact opposite, that VirtualBox outpaced qemu+kvm. Test them both :) that way you get the experience, and can know which one is more usable for your environments.
As for the BSDs, I ran OpenBSD for years and really liked it. You probably can't go wrong with FreeBSD. Learning both wouldn't be a bad idea -- they have different feature sets and excel at different tasks.
Don't let KDE in PC-BSD sway you too much, the different KDE things ought to be available in all their ports trees. Or try life without KDE or Gnome for a while.

I run FreeBSD 8-STABLE guests in VirtualBox 4.0.4, running on Windows (XP & 7) systems. It works, but there are some caveats. Seamless mode (which you might use with Linuxen) doesn't work, and it takes some configuring to get things set up exactly right. See http://wiki.freebsd.org/VirtualBox for the settings you need.
I played with virtualized PC-BSD, and it worked about the same as FreeBSD, since it is FreeBSD. PC-BSD has some nice features for the newbie to take some of the pain out of installing software.
I have also tried NetBSD as a VirtualBox guest. It "works" (for some definitions of work), but you have to launch the VM with something along the line of "vboxsdl.exe --nopatm --startvm [machine]". This worked for me on one Windows box but not on another. I didn't get around to seeing if X works.
I have not tried OpenBSD, but I seem to recall there being images out there, so it should work to some degree.
I don't have experience with other virtualization software, so can't help you there.

Related

Why cant all applications run on one single OS? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 2 years ago.
Improve this question
Before tools like docker and VMs, bare metal servers were used to deploy and host applications. but tools like docker and VM allow us to have more than one OS on the same machine, compared to bare metal server which only allows us to have one OS.
Why is this an issue? Why cant all application run on a single server? why do some apps need a separate/different server?
Applications are code, which have been compiled to execute on a certain system.
Different OS's
Some OS's have different way of doing things and when we code we have to take that into consideration.
For instance in windows paths look like this c:\this\is\a\path and in linux they may look like this /this/is/a/path. Now if my application is just working with paths I could make my application work on any platform. But I would need to consider how I compile it and what language I run it in, or if its written in a translated language such as python or node.js then I need to ensure that I have written the code in a OS agnostic way. For instance I could reference paths using an OS agnostic way by joining the folders together and not trying to second guess what OS the machine is running on.
If I compile my code from C# but I want it to run on any machine will it check the OS at run time and then alter the way it checks for Paths etc...?
Also an experience I had, where in my web application I had to check if a file was an image, I was using a library which would apperently only work on windows, so when I deployed my docker container to my ubuntu machine I had a run time exception that I had a library missing. It was System.Draw or something. So even once you have your app containerized that may not neccessarily be problem solved 🤣
This is just an example with Paths, but that's just an example. Some .NET Framework applications require the machine has special run times installed on it, and these (someone correct me if I'm wrong) wouldn't install on linux, so then the code wouldn't run.
.NET CORE and Docker
With the advent of .NET Core this is the direction we are trying to move in. For instance .NET Core is supposed to be runable on any platform.
Also with Docker, docker containers wrap everything that is required to run an application into one package, so it doesn't care what your registry settings look like, it doesn't care if your missing the library or that library everything the app needs to run is bundled in with the container. This means if it runs a certain way on system A, then you can expect it will run the same way on system B.
Architecture
Also we have the issue of 32 and 64 bit architecture. This is basically the rawest level of how information gets processed on the machine. When the code is compiled it is compiled into assembly which your CPU then processes. Depending on whether you have a 32/64 bit machine or OS, this will affect whether the OS and CPU will be able to run the instructions. Yes I believe that 32 bit code can run on a 64 bit machine, but not vice versa. Also if you have an old windows game which uses a 16 bit installer, good luck trying to get that to run 😃. I think I did manage to get an old windows game running in ubuntu in 64 bit. It was a 32 bit game, but the installer was a 16 bit installer.
I'm not expecting this answer will win any awards, but might do as a nice place holder until someone provides a better answer 😀
Compiled Languages
Objective C/ Swift - Will this only work on apple devices? ()
.NET Framework - will mostly work on windows devices, although some code may work on linx via mono
Java - This is actually cross platform and runs on the Java Run Time, I'm not sure if what it compiles down to is the same for all machines, or whether it has to be compiled into something different for each platform
c++ Is compiled and what you compile on one OS will not work on another OS.
Interpreted languages
Python runs on any machine, atlthough if you want your script or code to be platform agnostic you have to take care
bash although primarily unix I have seen better support for this on windows lately, I strongly doubt that every script written for unix would run first time on windows without a hitch
php runs on unix based systems and windows. I'm not sure how much care is requrired to keep this code OS agnostic, although I have a feeling some care may be required.

OpenBSD Unsupported Video Signal [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 5 years ago.
Improve this question
Spent a couple hours this evening on the #openbsd irc channel troubleshooting a display issue. Couldn't figure this one out though we had fun trying!
Specs:
USB Stick and Openbsd 6.2 Image
Known good,
Openbsd image installed successfully from this USB, to a virtual env on a separate device, using these instructions
Desktop computer
Motherboard, 64bit Intel processor
On-board graphics only
Currently running Ubuntu 16.04.03 Server
BIOS (legacy enabled) set to boot USB first
Monitor
40" Toshiba LCD TV Model 40UX600U
Symptoms
Start computer on Ubuntu server, displays just fine, no issues
Boot to Openbsd USB stick, bios screen runs, self check passes then monitor displays "Unsupported Video Signal". This is not an Openbsd message, but rather from the monitor itself.
Done so far
Cleanly formatted USB (under supervision)
Installed from USB to virtual env on separate device, no issues, loads Openbsd just fine.
Boot computer to Ubuntu, display works perfect
Boot computer to Openbsd USB, display shows error message above.
Unplug and replug VGA cable
Power off, power on monitor
Suspicions
- Pg. 88 of the Toshiba monitor manual shows a table of Acceptable Signal Formats for PC IN. My hunch is the graphics driver is incompatible with this monitor.
Questions
Is there anything I can do to make this monitor work with a new Openbsd 6.2 install?
How can I check Openbsd monitor compatibility before embarking next time?
Ubuntu has KMS support for the nVidia graphics card but OpenBSD only has support for the old UMS driver. The OpenBSD kernel (probably, I'm not sure) is using 640x480 as resolution and the Linux kernel is using the highest resolution supported by your monitor.
You have two options to "fix" the problem. Install OpenBSD on another computer or with a different monitor (you can also use a laptop with a USB<->HDD adapter), when the installer ask if you want graphics support (or something like that, I don't remember), reply yes. Finish the installation and reboot. Then move the HDD to the original computer and power on the machine. You will see the same message but at some point the system will run xenodm (a graphical launcher for X11 sessions, like xdm), then the monitor will work fine. Unfortunately, you can't see the console messages.
Don't change xorg.conf, your problem is not only related to the monitor. Another option (quite better, imho) is to buy a cheap used ATI graphics card and just install OpenBSD. The ATI graphics cards are fully supported (except the newest ones) and have KMS support. You will only see the message during two or three seconds and after of that, you will see the console. Maybe you will need run the installer on a different computer or with a different monitor, but everything will work fine after of that.
Anyway, OpenBSD uses only a standard mode for the basic console. It doesn't make weird unsupported things. So, probably your monitor has some kind of problem with the lowest VGA resolution/frequency. The problem is that the OpenBSD kernel can't change to a higher resolution during the boot process because it doesn't support the nVidia cards at the kernel level. It uses a userland driver for the nVidia cards, like the Linux/BSD/Unix traditionally used to use.
If you have an old (like 10 years or so) Linux LiveCD/installer, try to run it on your computer. You will see the same problem.

Vagrant and Red Hat Enterprise Licensing [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
This question does not appear to be about a specific programming problem, a software algorithm, or software tools primarily used by programmers. If you believe the question would be on-topic on another Stack Exchange site, you can leave a comment to explain where the question may be able to be answered.
Closed 6 years ago.
Improve this question
Our team is starting to use Vagrant for development on Mac OS X machines so we can better simulate our Red Hat Enterprise Linux production environment. Our operations group says our Red Hat License only covers instances being run on our VMWare cluster. How do other people deal with RHEL licensing using Vagrant?
We were in the same situation and decided to use CentOS on our developer boxes. https://www.centos.org/
I downloaded basic rhel server I found online and built a vagrant box with Packer for use in Vagrant/Test Kitchen. I'm forced to use various other repositories (CentOS/EPEL/RPMFusion etc) instead of the RHN repos which I don't have access to without licensing. I actually wrote a small chef cookbook to write all the custom /etc/yum.repos.d/*.repo files after initial install. It definitely works for a dev environment. If you have access to different ISOs then you can built whatever versions of rhel that you need with Packer.
http://dtucker.co.uk/hack/creating-a-vagrant-base-box-for-rhel-with-bento.html
https://github.com/xacaxulu/packer-boxes/blob/master/README.md <----a box to use if you want.
Have you tried this?
https://access.redhat.com/downloads/content/293/ver=1/rhel---7/1.0.0/x86_64/product-downloads
Have you also checked the developer subscriptions?
https://access.redhat.com/support/offerings/developer/
There is a blog specifying how to use vagrant with RHEL... but I can't post 3 links :(
Here is a proposal (I am using this approach since I am also working with rhel vagrant boxes for running ansible scripts)
Create a red hat developers account here (click on register).
Download an rhel vagrant box from here (you will have to log in with your previously created account.
Fire up your box and ssh into it.
Follow these instructions to register your vm

What O/S do you prefer for web development, and why? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I consider myself fairly versatile when it comes to O/S selection. I have used DOS/Windows PC's all my life, switched my main laptop to Mac two years ago, and have used numerous flavors of Unix/Linux/BSD while studying for my Comp.Sci. degree.
However, as I'm trying to improve my development environment, I'm starting to wonder if I'd be better off scrapping the Macbook for a PC with a different O/S flavor (to support a different set of tools and IDEs).
What O/S do you prefer for (web) development, and why? (prefer answers from people who have real-world experience coding on multiple platforms)
(Note: I am aware of this question discussing client vs. server O/S - what I'm interested is the whole development environment, and not limited to the 'Windows crowd')
It's really going to depend on the type of web development you want to do. If you are doing PHP (or LAMP, Perl, Python, Ruby), then Linux is probably the best way to go. If you are looking at doing .Net development, then Windows would be your best bet. I think if you're on Java, then Windows or Linux would be equally good.
For LAMP development on Linux, you are probably best going with Netbeans or Eclipse for your IDE. Personally I prefer Netbeans, but it depends on which you are more comfortable with. If you want to pay for an IDE, Zend is one of the better options. As far as distros go, any popular distro should be fine. I hear Ubuntu is pretty popular although my personal favourite is Mandriva.
You don't need to scrap your Macbook to use different operating systems. Many developers run multiple OSs without giving up the Macbook experience.
I prefer my Macbook and despise the fact that I have to go to work and use a Windows environment (I keep hitting the ALT key looking for COMMAND!). Ruby and rails development is easier because most of the developers are using OSX and therefore any help you need is tailored for your development environment, it just doesn't work as smoothly or as fast on Windows.
I haven't run into anything I've got in my work environment (Emacs, IntelliJ etc.) that I can't get for Mac and it even looks a whole lot better. Ubuntu even looks better and is a lot more reliable than any Windows system I've ever used.
If you're locked into the .Net world, then Windows is really the only choice.
Otherwise, the "big name" web environments (Apache, Tomcat, Spring, Glassfish, Rails, JBoss, Grails, Weblogic, ...) are all commonly deployed on some flavor of *nix. A Linux-based laptop gets you max geek cred; OSX gets you a full-fledged Unix environment with a very polished UI and less do-it-yourself maintenance.
If you're doing Java, then Eclipse, NetBeans, and IntelliJ will run on all of the above (Windows, Linux, Max), so you can choose based on what else you want to have in your environment.
I got 3 systems,
Windows XP, Windows 7 RC, Ubuntu 9.04
Windows Vista
Mac OS X
Mac OS X would be my choise, since you can get good enivroment to work on. I got Adobe Create Suit and Textmate, they aren't free. Free alternatives GIMP/Inkscape and many free text editors are available for mac.
LINUX is fine but Adobe suit doesn't work on it, you have to use GIMP and Inkscape, obviously they are nowhere near Adobe Photoshop and Illustrator. Although if you aren't interested in using Adobe CS you can use Ubuntu distro which is easier than other LINUX distro and quiet popular, so you won't have any problem finding solution. Eclipse would be my text editor if I use LINUX.
Windows is another good choise if you are familier with Windows but risk of losing important files which took you hours to develop ;-) , you know its main problem is Virus and spywares. If you can get decent Anti-Virus (like free Avast ect) you can live with it.
In my opinion, there is "nearly" no reason to choose Linux over OSX for web development. OSX is unix'ish, so you can run almost any server on OSX almost the same way as on Linux.
One big reason to choose OSX is the accessibility and comfort. I do not know any other operating systems that are nearly as enjoyable to work with, as OSX.
And no, I'm not an Apple fanboy. :)

What is the preferred operating system for web programmers, client or server? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Which OS do you prefer to program on? Client or Server
There is a school of though that if you are doing (mostly) web programming (or other server based code), you should use a server OS for your dev machine, since that's closer to the environment where your app will be running.
Update: I should add, this is really directed to the Windows crowd
OK, I know you're mainly talking about windows but...
I used to develop on windows for deployment on *nix servers. Sure there were lots of gotchas with this way of working, but you just kind of get used to it.
In October 2005 I switched to Linux, initially as an experiment, but I never went back. There was a steep learning curve. I thought I knew *nix pretty well after 10 years of dealing with it, but I knew nothing compared with the amount I learned using it on my desktop machine.
Workflow has been so much smoother developing and deploying to similar platforms.
More recently, we have even started to pick servers running Ubuntu server, so that they most closely match our Ubuntu desktop development machines.
If you are talking about the difference between a desktop and a server edition, I'd guess you needn't worry about it. If you're developing on one OS for deployment on another, I'd consider changing your desktop platform.
There is a school of though that if you are doing (mostly) web programming (or other server based code), you should use a server OS for your dev machine
I think that applies more to 'system programmers' rather than web 'application programmers'. Why? There is definitely great value in knowing the platform intimately, like one would get in living with the OS, etc. day in and day out. But not everyone can or should need to go there.
While my main production environment is RHEL4, Linux just does not work for me on the desktop--in fact, it drives me crazy. I find working on OSX close enough, though. And I just love working on my Mac rather than an XP box.
I'm doing the Java thing, and the "write once, run everywhere" hype actually works for me. :)
Update: I should add, this is really directed to the Windows crowd
Minute late, bit short ;) Maybe you should edit the title too...
It seems like the question is more about whether to use the server or client version of the same OS. So my answer is this: the client should be just fine. You can develop and test web applications of many flavors on client versions of Windows, OS X, and Linux. OS X and Linux obviously make Apache-based apps a little easier by coming with Apache pre-installed, but a download of XAMPP or WAMPP can quickly turn a Windows box into a solid development platform for LAMP applications, as well.
And if you're doing ASP.NET, your development tools (if you're using something in the Visual Studio line) have test server mechanisms built in.
So unless you have some other need for wanting the server version, I would stick with the client. It's less money, and you really don't need the server version.
The client vs. server OS issue is only relevant on MS platforms. And even there it depends on what you're developing for.
As far as I understand for Sharepoint development you need a server OS to run your code
If you're just doing vanilla ASP.Net stuff then it's mostly personal taste.
Edit
As Tyler commented, you can run MOSS/WSS on Vista but it's not supported. Or you could develop on a client OS and run sharepoint on a server OS in a VM.
Regardless of the operating system you're actually talking about, it shouldn't matter. Most applications you might write won't need to worry about the differences (if there indeed are any). Only in rare cases might you use some specific functionality that might only be available on a "server" edition of your OS.
There are other considerations, for example Windows server editions are tuned by default to give less priority and attention to desktop programs, and more attention to things like the file cache. Personally, I would always choose a "client" edition of my chosen OS.
Personally I use Windows Vista but that's because it's what I like and I can use it well. But in all honesty it doesn't matter, your OS should be something you are comfortable in and has the tools you need to be productive.
I would say your test environment is the one you need to have as close to your production environment as possible. I write in RoR on Vista but test it in a Linux VM setup the same as my web server and at work we have a Win2k3 server with IIS6 installed to test our .Net sites on but I develop on Vista using IIS7.
I use Windows Server 2003 set up as a workstation.This is the guide i have used for several years. Really like it.
This is going to be a bit of a weird answer but I'm a big fan of Windows 2008 and Hyper-V, as a workstation (I know). Essentially I'll only install Office like software on my workstation and all the development will be in Virtual Machines.
Assuming there's no Win2k8/Hyper-V availiable I'd gladly settle for some old WinXP (but w/Virtual PC).
Hyper-V allows you to get great performance out of any .VHD VM that you run. Both Virtual PC and Virtual Server are free (as in beer) and you can set up a ton of infrastructure that allows you to re-purpose virtual machines (ie. Base Machines, Differencing Disks, Undo Disks). The .VHDs are also interchangeable so you can re-host a previously enjoyed .VHD for other developers to enjoy on some virtual server, OR they can take a copy of it, rename the virtual machine and enjoy your ready-to-go environment with some Virtual PC!
This is awesome for bringing team members up to speed (environment wise) in less than 10 min. YOu can also use it to VERY QUICKLY provision machines that would otherwise take days to setup/configure.
Never mind the much better ability to test from different OS', or be able to roll back changes using Undo disks, VMs are a life saver! Start virtualizing people!
For some of the great benefits of Virtual Machines/Differencing Disks consider this post by Andrew Connell.