2

I just recently got a new laptop with Windows 10. I will use it mostly for gaming or simple tasks. However, I am looking to possibly dual boot Ubuntu on it for personal programming purposes (I absolutely hate doing development on Windows and didn't want to buy a Mac just for it). I have a 1TB SSD on this laptop, but since I use it mostly for gaming I don't want to blindly allocate a ton of space for Ubuntu. I have two questions about this:

1) How much space do I need to allocate for the Ubuntu partition if I'm using Ubuntu for development purposes? Related to that, would I be able to basically store all of my files on the drive that isn't partitioned for Ubuntu while just having any packages or tools necessary installed on the Ubuntu partition?

2) Is it possible to instead install Ubuntu on a USB 3.1 drive and when I want to do coding I can boot that and do everything off that? Ideally, to me, this is my preferred solution because then I don't need to use up any of the SSD space on the laptop, but I have no idea if this is feasible.

Thank you in advance for any help you can give!

  • 1
    You say that, but I searched for it so I could post a link or flag it as a duplicate and I couldn't find any information newer than 5 years old specific to his question.

    SeventhRain, welcome to the board! Try to ask one question per post if you can, the idea is to have old questions be references for other users :)

    – Rabbit May 26 '20 at 17:41
  • 2
    Thank you, I will keep that in mind in the future! – SeventhRain May 26 '20 at 17:45

2 Answers2

4

The first thing you need to understand is that Ubuntu is very different from Windows. The filesystem is different, installing software is different, security is different, installing and reinstalling is different, etc.

  1. Deeply-ingrained Windows habits will cause problems and break things. You must be open to learning new techniques and habits.

  2. Dual-boot requires good backups from the start. You never know when a Windows update or a user typo will wipe all your partitions. If you lack a good backup strategy, you're not ready to start dual-booting.

  3. Reinstalling Ubuntu is very easy. There's no product key to preserve, no system-restore partition, and no need for a swap partition or separate data partition (though you can have those if you want). Lots of folks change their minds (or really muck things up) and reinstall Ubuntu a few times during their first year.

  4. You can install Ubuntu to a USB stick. Be sure to use USB 3.0 hardware and ports, or you will notice lag. USB sticks have a limited number of write cycles, so it will only last a few months or years of modest use.

Advice: Create a single 300-500GB partition for Ubuntu. No separate data or swap partitions. Nothing fancy -- stick to the installer defaults. Make your first install successful instead of perfect. Try it for a couple weeks -- gain enough experience to have a preference. Then repartition and reinstall as complex a system as you wish.

Advice: Since you have 1TB to work with, consider using a Virtual Machine for Ubuntu. Or WSL. It's much easier and less risky. Then you don't need muck about with partitioning and you can install multiple OS (and multiple versions of OS) for your development and testing.

user535733
  • 62,253
  • 1
    Thank you for the help! 300-500GB is a lot, and my biggest concern when it comes to dual booting for development purposes.

    With regards to WSL, I've tried that a few times in the past and have run into too many problems. I'd much rather work off a straight Ubuntu install, hence why I'm looking into dual booting.

    – SeventhRain May 26 '20 at 17:50
  • 2
    Most developers I know have not dual-booted for years. It's too limiting. They use VMs. If somebody reports a bug in Ubuntu 16.04, the developer spins up a clean 16.04 VM, duplicates the bug, tests the patch, then throws the VM away. The bare-metal OS is used to host the VMs and the basic applications. Often development takes place in a VM so you can use simpler tools. – user535733 May 26 '20 at 17:56
  • 1
    Yeah, you make a good point. How is a VM speed-wise if I'm using it as a main source for my programming environment? – SeventhRain May 26 '20 at 17:58
  • 2
    It depends upon what you are programming, what kind of VM, and what kind of hardware. The easiest way to find out is to simply try it and see. I run Windows 10 in a VM on fairly low-end hardware -- it won't run action games well, but for everything else it's mighty fast. – user535733 May 26 '20 at 17:59
  • That does make it a little bit scary sounding, I've had Ubuntu since Jaunty and I know nothing about computers but everything I've ever broken I've been able to fix with the help of the people here and on the UbuntuForums and, fortunately, Windows has never broken anything on me or caused my Ubuntu any troubles. – Rabbit May 26 '20 at 18:46
3

2) Is it possible to instead install Ubuntu on a USB 3.1 drive and when I want to do coding I can boot that and do everything off that? Yes, but it will be very slow compared to an internal SSD or HDD, and more likely to fail than either an internal HDD or SSD. It's easy to manage a dual boot system with Ubuntu and Windows 10 on the same internal drive. If you must do this, get a USB flash drive which does not stick out of the PC very far, e.g. from Western Digital or Buy More, and create a LiveUSB using Rufus with Persistence .

1) How much space do I need to allocate for the Ubuntu partition if I'm using Ubuntu for development purposes? Until Ubuntu's addition of Snaps and change to Snap-based installs on many packages, 30GB was the typical advice here for an Ubuntu install; now, 50GB or more is good to start. Please note it's easy to adjust later, especially if you let the Ubiquity installer used by Ubuntu create a swap file instead of manually overriding it to make a swap partition.

Related to that, would I be able to basically store all of my files on the drive that isn't partitioned for Ubuntu while just having any packages or tools necessary installed on the Ubuntu partition? Yes. Ubuntu knows how to read and write into NTFS partitions. However you've got to completely shut down Windows, not Hibernate it, and not use Fast Start.

K7AAY
  • 17,202
  • 1
    Thank you so much for the help. I was afraid that the USB solution would be too slow, which is why I wasn't sure it was even feasible. Sounds like the dual boot solution is the best way to go. 50GB isn't too bad and it's great to know that I can adjust it if needed. I'll look into all of these links you mentioned. – SeventhRain May 26 '20 at 17:49
  • 1
    You can also buy the non-spendy USB 3.1 flash drive and install Ubuntu onto it; I just think it's unacceptably slow, whereas it may be AOK to you. Everything user535733 wrote below is 100% true, especially their #2 point. Always back up then verify the backup matches the source (file checksums are great for this) and then make a second backup to a different destination and verify that. Their #6 is also an excellent idea; VirtualBox is Open Source, free, and popular for that. https://www.wikihow.com/Install-VirtualBox You've got another question? Make another post and we've got answers! – K7AAY May 26 '20 at 17:52
  • 1
    I might also look into doing it on a VM. My original hesitation with that was speed. – SeventhRain May 26 '20 at 17:56
  • 1
    Not such a problem if you have adequate RAM. You also have the choice of alternate Desktop Environments of Ubuntu, AKA 'flavours' http://ubuntu.com/download/flavours  https://itsfoss.com/which-ubuntu-install/ – K7AAY May 26 '20 at 17:59