Setting up a Drupal environment on Ubuntu
So, Ubuntu doesn't come with LAMP out of the box but it's super easy to set up with sudo apt-get ubuntu command. The basics of setting up a lamp environment are beyond the scope on an answer here, but there are plenty of tutorials on how to do it and robust community of Ubuntu users for questions.

Based on what you're describing, I would recommend using ubuntu desktop rather than server on your VM. This will give you a GUI interface which will be a little more familiar than trying to run Unix commands through your terminal on the VM, which will require further setup of your windows box.

Once you've set your VM up the basics you will need are: Mysql (or your db of choice), php, and Apache (or your web server of choice). You can download and install all of these free, but you'll do most of this from the command I mentioned above, so I would school up if you're not comfortable Ubuntu LAMP set up. There are many tutorials on how to turn Ubuntu into a wed dev machine, pick and choose what you find useful.

You'll have to set up the Mysql server and most of the programs manually before you have a set up you can install drupal on. 

To answer your two questions:


No, you don't need any tools that you didn't mention, although depending on your set up and being new to Unix environments I would look into GUI tools like Mysql workbench.
Ubuntu Desktop and Server have a designated html folder it will be in 
 /var/www/html


Where it gets tricky for someone who isn't familiar with the environment is that you need to configure your folder and file permissions  for the /var/www/html folder. It has to be owned and readable to the apache or your webserver user.

This here is a good tutorial, it will get you where you need to go once you have a working LAMP server on your dev machine.Ubuntu Drupal

So, from here you have to ssh into your virtual machine or use the GUI interface to set your drupal install. This is the same as on windows:


Get a copy of Drupal Core in your web root folder.
create a drupal database, database user
point your site to the db with settings.php in your sites folder.
Run the install.php script in your web browser.
drupal and profit.


You mentioned using a lot of Drupal dev tools. You'll have to configure those yourself, but you'll have to either do it on the VM (and work natively on VM) or configure your windows drush to connect to your VM like you would a remote server. This is all good practice but, beyond the scope of a single post.