What would you expect a junior to know about Debian (or unix in general)?

tl;dr: Sorry about the crappy tl;dr... Skim over it instead of reading if you want.

Very broad question, with a lot of scope I know, but this is what I am going off as well. Learn a command line editor. I suggest vi because almost every system has vi or vim on it, and not every system has emacs. You might not ever use vi, and use another editor instead. You still need to know the basics of vi.

Here are 3 vi commands you need to know and remember:

":wq" = write changes to disk and quit.

":q" = just quit and prompt to save changes to disk.

":q!" Quit! Abandon changes and quit.

There are a few modes you need to know. press "i" key to get into insert mode. "a" will give you append mode. "ESC" key to get back in normal mode.

and the "d" key. I think vi starts out in some kind of delete or edit mode. pressing d when in this mode will delete things when you press another key to tell it what to delete. "dd" deletes a line. I think "dw" deletes a word. "dh" deletes to the left. "dk" deletes up. Probably no need to remember each dd command as long as you can remember to look them up if you need them. Also google for "vi cheat sheet" and maybe print it out.

Maybe choose vi or emacs for an editor and start learning it as the year goes. I wouldn't expect you to start learning one before you start working and can see if my advice makes any sense when you have more info to go on.

Really, except for any programming related differences, I think you have an adequate knowledge that you won't have much trouble rolling with it.

Also, unless you told them you are a Linux guru, they already know your knowledge of Debian is very limited because it is like that with everyone unless they say, "I spent X years working in a linux environment." Especially college students, because they haven't had a lot of experience yet.

There is a Filesystem Heirarchy Standard (FHS) and that is what is responsible for the structured layout of the directory tree of the root filesystem. Memorize or understand, either is fine, and both is even better. :)

/usr/lib/ are libraries. /etc/ is system config files. I don't know about a lot of things going on in /proc/ but some things I do know. I know good way to describe some aspects of /proc/ is to compare it to the windows registry.

Read the man page for ldconfig. Have a look at the file /etc/ld.so.conf

Where are the linux kernel headers usually at on a linux system?

glibc exists https://en.wikipedia.org/wiki/Glibc https://en.wikipedia.org/wiki/UClibc also exists.

https://en.wikipedia.org/wiki/GNU_Binutils also exists.

You've installed debian inside of a virtual machine or have it running on a spare computer by now, right? Virtualbox is nice. you might want to boot http://elivecd.org just for the fun of it. You also might want to check out the distro, grml http://grml.org Those are opposite sides of the spectrum and both are based on debian. Spending 30 minutes running each within the next month might be very enlightening and tremendously valuable to quickly learn a large amount of information about being in the linux system environment and kinda reveal the guts and fleshing out of that environment or something. That is probably really good advice there. Doing it again your 2nd month should be more beneficial than the first time. Give yourself some braindead task to perform like write a hello world in java using only open source tools or something and be sure to spend 5 or 10 minutes just exploring. Do not open a browser. :) Another task might be to locate a file on the filesystem. Another task might be to see how bad you can screw the system up on the command line without deleting anything before it stops running. Next might be how fast you can get it to stop running using a different method. :)

GCC and GDB exist. LLVM exists and hopefully you aren't using that. Oh, and be aware of bash-scripting. That exists.

Skim over these VERY quickly if you want, and be aware they are old and some stuff is outdated: http://tldp.org/HOWTO/Bash-Prog-Intro-HOWTO.html http://tldp.org/HOWTO/Bash-Prompt-HOWTO/index.html http://tldp.org/HOWTO/DOS-Win-to-Linux-HOWTO.html

You might search for "programming" on this page and skim fast as hell for anything interesting: http://tldp.org/HOWTO/HOWTO-INDEX/howtos.html

You're prepared enough already and you already got the job. Enjoy playing around with linux between now and your first day. Congratulations on landing a job!

/r/debian Thread