/bin
binaries, basic Linux commands are here
/boot
boot code, leave it be
/dev
all devices/hardware, all treated as a stream
/etc
config files & resources, only root user can modify
/home
user account info & personal files
/lib
shared library files essential for binaries
/lost+found
stray files that can be recovered after a crash
/media
mount points for removable media
/mnt
mount points
/opt
optional & larger application packages
/proc
virtual files for various system processes
/root
root user's home directory
/sbin
essential system binaries reserved for the root user
/selinux
security-enhanced Linux
/srv
site-specific data
/sys
virtual filesystem, similar to /proc
/tmp
temporary files
/usr
user applications, subdirectories for user-installed commands, kernel source, documentation, config files, man pages, etc.
/usr/share
config files and graphics for numerous user applications
/usr/src
source code for some system stuff, including the Linux kernel
/usr/include
headers for c/c++ and some other development essentials
/usr/lib
library files for the whole system. you may find lib, lib32 and lib64 for different architectures
/usr/local
programs installed by the user manually
/usr/bin
non-system essential programs and commands
/var
variable files such as logs, cache, email
well when you read a normal file such as a
.txt
it should always end. I consider any file that is constantly getting read from or written to a stream, like a kernel log file in/var
that "file" is always getting written to whenever a kernel action happens. so in/dev
these block devices are always gathering information from the hardware(although incomprehensible to humans), try this commandsudo cat /dev/sda
you should see a constant stream of information coming from your hard drive(That is assuming /dev/sda exists).