1

I'm a life-long Windows developer switching over to Linux for the first time, and I'm starting off with Ubuntu to ease the learning curve.

My new laptop will primarily be a development machine: 6GB RAM, 320 GB HD. I'd like there to be 2 non-root users: (a) Development, which will always be me, and (b) Guest, for anyone else. I assume the root user is added by default, like System Administrator in Windows.

(1) I'd like to mount /home to its own partition, but how does this work if I have two user accounts (Development and Guest)? Are there 2 separate /home directories, or do they get shared? Is it possible to allocate more space for Development and only a tiny bit of space for Guest in GRUB2? How?!?!

(2) I'm assuming that its okay that all of my development tools (Eclipse & plugins, SVN, JUnit, ant, etc.) and Java will end up getting installed in non-/home directories such as /usr and /opt, but that my Eclipse/SVN workspace will live under my /home directory on a separate partition... any problems, issues, concerns with that?

(3) As far as partitioning schemes, nothing too complicated, but not plain Jane either:

  • Boot Partition, 512 MB, in case I want to install other OSes
  • Ubuntu & non-/home file system, 187.5 GB
  • Swap Partition, 12 GB = RAM x 2
  • /home Partition, 120 GB

I don't have any bulky media data (I don't have music or video libraries, this is a lean and mean dev machine) so having 320 GB is like winning the lottery and not knowing what to do with all this space. I figured I'd give a little extra space to the OS/FS partition since I'll be running JEE containers locally and doing a lot of file IO, logging and other memory-instensive operations.

Any issues, problems, concerns, suggestions?

(4) I was thinking about using ext4; seems to have good filestamping without any space ceiling for me to hit. Any other suggestions for a dev machine?

(5) I read somewhere that you need to be careful when you install software as the root user, but I can't remember why. What general caveats do I need to be aware of when doing things (installing packages, making system configurations, etc.) as root vs "Development" user?

Thanks!

1
  • 1
    your question is somewhat broad...perhaps split it up into several questions?
    – studiohack
    Dec 30, 2010 at 2:55

1 Answer 1

2
  1. There is only one /home; user's home directories are usually created under that (e.g. /home/dev and /home/guest). Also, quotas.

  2. Correct. No problems.

    • That's overkill for /boot, unless you intend on placing an entire live image in there to boot with e.g. MEMDISK. I'd cut it down to 200MB.
    • / should only need about 30-40GB; allocate some towards /srv instead, and do your staging in there.
  3. Unless you need to access it from Windows, ext4 is a good choice.

  4. Do as little as possible as root, but at the same time only ever do root-related things as root.

2
  • Thanks for the helpful feedback! To make sure I understand your recommendations, in #3 are you suggesting that I partition / and /serv separately? This would mean partitions for /boot, /, /srv, swap and /home, yes? Also, what typically goes in /srv? Thanks again!
    – Zac
    Dec 30, 2010 at 3:03
  • Correct. pathname.com/fhs/pub/… Dec 30, 2010 at 3:10

Not the answer you're looking for? Browse other questions tagged .