5:40 I normally delete lost+found on every volume I create. fsck will automatically recreate it if it actually needs to put something in it. And actually, that becomes a useful feature, because if you ever see that directory reappear, then you know you should look in it to see what has been put in there!
9:43 The reason being, of course, so that /root remains accessible even if the /home directory is located on a separate volume which is not currently mounted.
11:47 /var is for data written by system processes. /var/cache and /var/tmp are for stuff that, while the system might prefer they were preserved, it would be no great calamity if they were lost. But /var/lib is for stuff you really want to keep -- for example, DBMSes like MySQL and PostgreSQL keep their database files here. And /var/mail is where users’ mailboxes are kept, unless the MTA is configured to use maildir, in which case these are kept in the users’ home directories.
bro i get that you are passionate about linux, but if you are going to make a thousand comments maybe make it on one tread only like replying to your comment.
Dont listen him mate, your comments are valuable resource for me. You made this video three times as good. If you have something good to write and some knowlodge to share, do it with no hesitation. There will be always someone like me who will like it.
11:39 Worth mentioning also /usr/share, which is where non-machine-code (architecture-independent) files go. For example, icons, fonts, documentation and so on. Thus, this directory can be shared between OS installations running on completely different processor architectures.
You might want to also speak of file systems, as in ext(2,3,4), reiserfs, ntfs, fat32, and so forth. I'd go so far as nfs, as that too is a filesystem, within the realm of GNU/Linux. Omitting these confuses newcomers who do not know about them, yet. +10 for teaching that everything is a file.
I intend to cover partitioning, file system formats, lvm, and so on, but in a separate video. This was about all I could fit in this video. Stay tuned!
9:21 A couple of other ones I find useful are /proc/«pid»/fd, which is a directory containing symlinks to currently-open files, and /proc/«pid»/fdinfo, which contains one file corresponding to each open file, which tells you the current position for reading or writing. This can be used to monitor the progress of file copy operations, for example.
If you want to start using linux, but don't want to be bothered much, MX-Linux is a distribution wich behaves much like a cross between windows and android. It's great for if you don't want to buy win10 but your new CPU can't run win7, or if you want to use an older computer that got XP which is now unsafe for internet. You can also play games on linux using Steam, or you could use Vine to emulate windows under linux. This is good for running windows XP without being instantly wanna-cry'd. If you got a decent sized USB-drive, you can run MX-Linux off that, or just boot from an usb for installing to your hard-drive. - On the other hand if you want to use your usb-linux to hack stuff, use Kali Linux instead, wich comes bundled with the latest hacking tools like wireshark and such... :) Linux today is far simpler than getting windows98 to run smoothly ever was.
You need to use a desktop linux distribution... go for it NOW... it's delightful... stop gaming, grow up, do something valuable with your time, learn python... Nah, just kidding... keep gaming hard 😋🤣🤣🤣
@@Gaspar.Albertengo I game on both linux and windows, but I only use windows for what is unsupported since it sucks, it's terrible how where the administrator accounts can't administrate shit, it's your own computer but you're even gatekeeped from deleting non-system files, not mentioning other nonsensical 'features' that should be unlocked or disabled by default
8:45 Remember, none of those files are real: they are all made up by the kernel to present information to you (and get information back, for those that are writable). procfs is effectively a “kernel management API”.
0:43 Using backslashes was a mistake on Windows’ part. When subdirectories were added in MS-DOS 2.0, they decided that they couldn’t use slashes because those were for command-line options. DOS 1.0 borrowed from CP/M, which was in turn heavily influenced by DEC operating systems. Whereas by the time of DOS 2.0, Unix had become the popular paradigm to copy. So DOS/Windows has ended up with elements of both, which don’t fit together very well.
3:54 worth mentioning that /dev/urandom is actually seeded from /dev/random , which in turn is fed by real sources of entropy on your system that the kernel is able to recognize. So the latter can be considered a source of “true” random numbers, while the former is a source of “pseudo” random numbers. To be extra paranoid, you may insist on reading from /dev/random, though if you try to read too much, that may run out of randomness and block your read until it can find more, whereas /dev/urandom will never block.
11:06 The things in /usr are considered to be less essential to core OS functions. In olden times when disks were smaller, /usr was typically a separate volume. But the system could still boot and let an admin perform essential maintenance tasks without /usr mounted. Thus, executables in /usr/bin could depend on shared libraries in /lib and /usr/lib, while those in /bin could only depend on libraries in /lib, with no dependencies on /usr/lib allowed. These days, the /usr separation is considered more of an anachronism--just plain unnecessary. Some distros are even moving to have stuff in /bin and /lib just symlink to /usr/bin and /usr/lib!
On some distros /usr is what you use to manually overwrite things provided by the package manager etc. So if you need to modify a package and don't want it to be overwritten by updates you can put it in /usr or /usr/local
11:24 That “overriding” depends entirely on the ordering of directories in your PATH environment variable. It is usual to place /usr/local/bin before /usr/bin before /bin, it is true. And correspondingly the ordering of search directories for shared libraries in /etc/ld.so.conf{,.d}. While the latter is a systemwide setting, the PATH is something every user can configure themself.
9:48 On older Unix systems, the home directory for the root user was indeed just “/”. I think it was Linux that introduced the separate “/root” directory for this purpose, to avoid cluttering “/” with all of root’s dotfiles and other private stuff. (And also to keep them inaccessible to ordinary users.)
Very helpful info. Enjoyed it! In another video I watched I remember that it was specifically mentioned that the name of the /usr folder comes from the name Universal System Resources(s) and is not an abbreviation for USeR.
Used Ubuntu for 3 months in 2019, now using Ubuntu for almost half year. Saw this video at least three times. Each time I remember/understand everything better. Funny thing that practice... Thank you!
You have no idea how helpful your videos are. I have to deal with a strange Debian variant running on a Lenovo NAS that offers features like a MySQL server, but with their configuration and binary files scattered around in non-standard file locations, placed there by proprietary installers supplied by Lenovo. They don’t release updates often, so updating anything is risky, or a pain at least. Your video restored my memory about the common Linux file system, and helped sort out a couple of things. Thanks!
Great job. I am quite recent to Linux but finally made the switch and now I just cannot touch Windows OS anymore. By the way, I really enjoy videos. Keep them coming!!
5:36 Actually, my /lib64 doesn’t contain very much, just a couple of symlinks. I think /lib32 just contains libraries for “compatibility” packages on a 64-bit system. On my Debian system, most of the shared libraries in /lib are actually in /lib/x86_64-linux-gnu. This will be part of the “multiarch” system, which allows machines running entirely different processor architectures (including non-Intel-compatible ones) to share OS installation volumes.
I've been using Linux every day for about 4 years and I didn't know most of this stuff. I guess I'll keep watching your videos, maybe I'll learn something ;)
6:45 If I were going to permanently add a new drive to my system, then I would choose another mount point for it. For example, typically this would be for extra user files. So I would create a mount point “/home/extra”, and mount it there. Or maybe you might prefer “/extra”, it’s up to you.
Exactly. The current Linux Filesystem Hierarchy standard (LFS 2.3 from 2014) says the following about /mnt: "This directory is provided so that the system administrator may temporarily mount a filesystem as needed. The content of this directory is a local issue and should not affect the manner in which any program is run. This directory must not be used by installation programs: a suitable temporary directory not in use by the system must be used instead." Mounting something unexpected under /mnt will cause trouble when a sys admin who does not know about such nonstandard behaviour mounts something on /mnt
4:06 May be more accurate to say that it is true of all software installed systemwide, whether from the standard repos or from third-party sources. Per-user configs are kept in per-user areas. I think in the BSD world, the convention is to put the config files for the latter in /usr/local/etc.
12:11 And don’t forget the (anachronistically-named) “wtmp”, which is a record of user logins and system reboots.
Před 5 lety
I just came across your video about the things you can do in Linux, that you can't do in Windows, and to be honest. I love your videos. Before I forget, good luck with everything you do. ;)
8:56 According to the proc(5) man page linux.die.net/man/5/proc , the first number is the system uptime in seconds, the second is the time in seconds accumulated by the idle process. Or should that be “processes”? Like me, your second number is several times the first number. In my case the factor is about 7.5, yours is about 5.7. I have a quad-core i7 with two hardware threads on each core, so 8 logical CPUs; am I right in guessing yours is a 6-core machine?
I work for like 20 years with Linux, 99.9% servers, but these videos still learn me little details. Always good to learn more. I remember my first time in Linux, Corel Linux, but after installing i had no idea what to do with it and i didn’t know a single command, so 30 minutes later the Windows setup was running again lol.
2:31 I don’t think those symlinks are very important -- they’re probably there for “legacy” reasons. grub goes by the entries in grub.cfg, and you will notice these list *all* your kernels, usually just defaulting to the latest one.
2:03 Note that grub.cfg should not be hand-edited, at least on Debian derivatives. On those distros, it is auto-generated from files in /etc/grub.d -- it is those you should edit if you want to make manual changes. Then run update-grub(8).
8:11 /proc is more for per-process information, and some system configuration information (/proc/sys). Information that the kernel knows about your hardware (and anything about it that you can tweak) will be found in /sys.
Note about /tmp: There are distros who don't delete the directory after a reboot, but after a certain time. I think there are even some distros who do a combination of both.
I went from Windows to Linux (mint) . One of my problems was knowing where to put my files. I didn't know where to look for things. Linux mint can be be used like windows that is, you can get around without having to use the command line. I ended up going back to windows because a couple of programs that use quite a bit did not run on linux. Linux was not bad at all I just couldn't find documentation on what everything was and where things go.
Great video man, keep it up with the good content!! Can you make a video explaining shared pbjects and how to use and creating them when compiling C programs?
I can't believe I haven't run across any documentation that points this out about /usr but you hit on it. Originally /usr was the user folder on the Unix system. Later, discs got bigger and one thing lead to another and now even /usr can be available from an initram. So why have /usr/bin and /bin as separate folders at all? Well, I think it is best to think of /usr as userspace. This was typically what was done for a long time. /bin were system tools and /usr/bin were more or less userspace tools. We can set our systems up however we want of course, but I think it is kind of bad for to just have a symlink between /bin and /usr/bin. same for sbin lib etc. It is the same separation as /usr and /usr/local -- where /usr is system wide and /usr/local is for local use.....it is an abstract theory though, so of course, we can set our systems up however we want to....
Hey EM, love watching your vids and learning new things. Just wanted to drop in some feedback, not sure if others are experiencing this but it seems CZcams might be cutting off a little bit of your videos around the edges, making it tricky to see some of the text and stuff on the screens. Maybe there's a way to add a bit of blank space/margins?
Hey thank you Engineet Man for these videos on Linux. Im going to use these for teaching my students to learn more on linux systems. So u know your videos will be my inspiration to teach others, I hope this satisfies U :))
Man, I just want so much to go there and change that file system to something that makes sense. Root being something like "system", "programs" and "home/users". Maybe even set up an separate "programs" directory in /home for programs that are only installed for the specific user. It would only make sense. And don't get me even started in absolute mess that is /usr. Can't you separate that dir to something like "resources" and "programs". Resources containing stuff like /lib that many programs can use and under programs you have apps directories by name containing all the files apps has. Sure, package manager handles this stuff, but it doesn't make sense to have convoluted directory structure anyway. And changing things now would have quite a bit problems, but when other option is keeping things as is forever so why not do it now. There's never really going to be good moment to do it anyways. It just would be really nice if it was intuitive and made sense. Overhaul is needed anyway as there are stuff like /usr/games and /opt that are pretty much totally redundant.
Everything that already has a standard label is well known for what it normally contains (some distros modify a bit). So, your suggestion about "system" won't fly because there are actually many parts to a system... the processor resources in /proc, the library resources in /usr Programs can be anywhere although I generally install system apps in /opt but many times because of permissions they're installed in /home instead. And, /home// is where everything specific to that particular User is stored... personal files, personal settings, etc. Assuming the distro you're using has a solid history, there should be consistency where everything is installed in your system.
:) /usr has nothing to do with any "user" and actually is an abbreviation for "system resources" which is why you'll find things like libraries and other re-usable code. Otherwise, pretty cool and likely helpful to many...
This is great, I use 2 linux boxes for firewall and telephone, (pfsense and FreePBX) I gotta get better with them. I also need to capture and save Disk images of old industrial hardware and DD is apparently the way to get this done. At the moment I use a hardware clone device and that requires drives. Saving files would work better for this.
If you need a simple solution, try CloneZilla which lets you clone hard drives and partitions to other hard drives or to image files on local hard drives or even remotely (like SFTP).
@@positivemelon7578 I am aware of clonezilla, but other folks in my circle of tech that know more than I tell me , essentially, "real men use dd" . So its a challenge thing. :)
In my opinion the directory named "/root" should-be/should-have-been renamed to "rootu" (for root user) or possibly even "default" (although that might not be too good) to eliminate confusion between the root directory and the directory named "/root". I guess people can get away with saying "slash root", but still it is not the most clear or intuitive.
Do you have a video on useful Linux commands, useful shortcuts, introduction to Linux commands and navigation, converting from Windows to Linux, etc? Thanks!
Excellent information! Very useful. But... could you indicate where and how should I install my own program? I've ended up installing it in the user's home directory 🤷♂️
X11 is the window system while i3 is one of many window managers. Most distributions of GNU/Linux will use X11 as the window system but the window manager is the user's preference.
Do you have any videos on user permissions and how to manage users? Also in Ubuntu, whenever I run something in sudo it ask for my password every time and it's annoying. How can I change that?
Hello Engineer MaN !!! sorry about that offtopic but i have one specific question and I will be happy if you can answer ... In linux there is a tool named HTOP.. not long ago i see another one almost the same but for HDD I/O operations
Where softwares are being installed in linux? for example, if i installed Libre office, where its files gonna be installed? in windows default path would be in C:\programs\libre. how about linux?
3:48 If you are running a recent Intel-compatible processor, you probably do have a physical random-number generator en.wikipedia.org/wiki/RdRand . But the question is, can you trust it?
The trouble is, the rules for case-conversion vary by writing system and even by language. Linux/Unix basically avoids the whole issue by insisting on case-sensitivity. Yes, it has its drawbacks, but it simplifies some things.
Unix pre-dates MS-DOS and the Apple operating systems that decided to ignore case. When people say it is confusing I ask them if they understand the difference between these sentences: I helped my uncle Jack off a horse. I helped my uncle jack off a horse.
So lets say I have my linux OS installed for like a few years or something and my versions of the kernel are piling up. Is there a reliable/safe way to start deleting old kernels? They always generate some type of error situation in the logs and Im worried this eventually will cause filesystem and boot problems.
If naming convention for harddrives is: 1st harddrive = sda, 2nd harrdive = sdb, 3rd harddrive = sdc, etc (see 3:00) What happens if I have more than 26 harddrives? nothing to add after sdz? :D
Semantics for sure, but useful to anyone new to the linux/unix/etc. space who's about to ask a question on a distro's forums and is about to use the word "folder(s)" haha. --Longtime users will probably give you shit for this.
5:40 I normally delete lost+found on every volume I create. fsck will automatically recreate it if it actually needs to put something in it.
And actually, that becomes a useful feature, because if you ever see that directory reappear, then you know you should look in it to see what has been put in there!
Instructions not understood, can I get the "Linux File System for aliens"
9:43 The reason being, of course, so that /root remains accessible even if the /home directory is located on a separate volume which is not currently mounted.
11:47 /var is for data written by system processes. /var/cache and /var/tmp are for stuff that, while the system might prefer they were preserved, it would be no great calamity if they were lost. But /var/lib is for stuff you really want to keep -- for example, DBMSes like MySQL and PostgreSQL keep their database files here. And /var/mail is where users’ mailboxes are kept, unless the MTA is configured to use maildir, in which case these are kept in the users’ home directories.
bro i get that you are passionate about linux, but if you are going to make a thousand comments maybe make it on one tread only like replying to your comment.
Dont listen him mate, your comments are valuable resource for me. You made this video three times as good. If you have something good to write and some knowlodge to share, do it with no hesitation. There will be always someone like me who will like it.
Same here, really appreciate your comments. A lot of what you've commented I've written down in some notes I'm taking while learning Linux
11:39 Worth mentioning also /usr/share, which is where non-machine-code (architecture-independent) files go. For example, icons, fonts, documentation and so on. Thus, this directory can be shared between OS installations running on completely different processor architectures.
You might want to also speak of file systems, as in ext(2,3,4), reiserfs, ntfs, fat32, and so forth. I'd go so far as nfs, as that too is a filesystem, within the realm of GNU/Linux. Omitting these confuses newcomers who do not know about them, yet.
+10 for teaching that everything is a file.
Those are filesystem formats. Linux has a whole range of them, including ones optimized for working directly at the raw layer of SSDs.
I intend to cover partitioning, file system formats, lvm, and so on, but in a separate video. This was about all I could fit in this video. Stay tuned!
9:21 A couple of other ones I find useful are /proc/«pid»/fd, which is a directory containing symlinks to currently-open files, and /proc/«pid»/fdinfo, which contains one file corresponding to each open file, which tells you the current position for reading or writing. This can be used to monitor the progress of file copy operations, for example.
never used linux in my life, but it's Engineer Man so I gotta watch.
Change that to never knowingly used Linux, 'cause everything from your car to your router is probably a linux system.
If you want to start using linux, but don't want to be bothered much, MX-Linux is a distribution wich behaves much like a cross between windows and android. It's great for if you don't want to buy win10 but your new CPU can't run win7, or if you want to use an older computer that got XP which is now unsafe for internet. You can also play games on linux using Steam, or you could use Vine to emulate windows under linux. This is good for running windows XP without being instantly wanna-cry'd. If you got a decent sized USB-drive, you can run MX-Linux off that, or just boot from an usb for installing to your hard-drive. - On the other hand if you want to use your usb-linux to hack stuff, use Kali Linux instead, wich comes bundled with the latest hacking tools like wireshark and such... :) Linux today is far simpler than getting windows98 to run smoothly ever was.
You need to use a desktop linux distribution... go for it NOW... it's delightful... stop gaming, grow up, do something valuable with your time, learn python...
Nah, just kidding... keep gaming hard 😋🤣🤣🤣
@@Gaspar.Albertengo
>stops gaming hard
>learns python
>glances at godot gdscript
>makes game
>games hard
mfw
@@Gaspar.Albertengo I game on both linux and windows, but I only use windows for what is unsupported since it sucks, it's terrible how where the administrator accounts can't administrate shit, it's your own computer but you're even gatekeeped from deleting non-system files, not mentioning other nonsensical 'features' that should be unlocked or disabled by default
8:45 Remember, none of those files are real: they are all made up by the kernel to present information to you (and get information back, for those that are writable). procfs is effectively a “kernel management API”.
0:43 Using backslashes was a mistake on Windows’ part. When subdirectories were added in MS-DOS 2.0, they decided that they couldn’t use slashes because those were for command-line options.
DOS 1.0 borrowed from CP/M, which was in turn heavily influenced by DEC operating systems. Whereas by the time of DOS 2.0, Unix had become the popular paradigm to copy. So DOS/Windows has ended up with elements of both, which don’t fit together very well.
3:54 worth mentioning that /dev/urandom is actually seeded from /dev/random , which in turn is fed by real sources of entropy on your system that the kernel is able to recognize. So the latter can be considered a source of “true” random numbers, while the former is a source of “pseudo” random numbers. To be extra paranoid, you may insist on reading from /dev/random, though if you try to read too much, that may run out of randomness and block your read until it can find more, whereas /dev/urandom will never block.
No computer software can produce truely random. It's all pseudo random 😉
@@MurkleQ How would you tell?
11:06 The things in /usr are considered to be less essential to core OS functions. In olden times when disks were smaller, /usr was typically a separate volume. But the system could still boot and let an admin perform essential maintenance tasks without /usr mounted. Thus, executables in /usr/bin could depend on shared libraries in /lib and /usr/lib, while those in /bin could only depend on libraries in /lib, with no dependencies on /usr/lib allowed.
These days, the /usr separation is considered more of an anachronism--just plain unnecessary. Some distros are even moving to have stuff in /bin and /lib just symlink to /usr/bin and /usr/lib!
That is good context.
stands for unix system resources I believe
@@JonasBostoen Please, not that nonsense again.
@@JonasBostoen What I heard was universal system resources.
On some distros /usr is what you use to manually overwrite things provided by the package manager etc. So if you need to modify a package and don't want it to be overwritten by updates you can put it in /usr or /usr/local
There's also the Linux FHS (filesystem hierarchy standard) document which is pretty useful
10:48 Fun fact: /tmp is writable by anybody, but it has a special provision to prevent one user from wiping out another user’s files. What is it?
That would be the t sticky bit. Good note.
@@EngineerMan You 2 rlly should do videos together :D
11:24 That “overriding” depends entirely on the ordering of directories in your PATH environment variable. It is usual to place /usr/local/bin before /usr/bin before /bin, it is true. And correspondingly the ordering of search directories for shared libraries in /etc/ld.so.conf{,.d}. While the latter is a systemwide setting, the PATH is something every user can configure themself.
Lawrence you seem very knowledgeable.
Yess! I'd love a video from you Lawrence
Once again wonderful tutorial for linux beginners - You explained everything very well and made it easy to understand... thanks for the great vids!
9:48 On older Unix systems, the home directory for the root user was indeed just “/”. I think it was Linux that introduced the separate “/root” directory for this purpose, to avoid cluttering “/” with all of root’s dotfiles and other private stuff. (And also to keep them inaccessible to ordinary users.)
You will
Thank you for taking your time to share your knowledge
Very helpful info. Enjoyed it!
In another video I watched I remember that it was specifically mentioned that the name of the /usr folder comes from the name Universal System Resources(s) and is not an abbreviation for USeR.
Used Ubuntu for 3 months in 2019, now using Ubuntu for almost half year. Saw this video at least three times. Each time I remember/understand everything better. Funny thing that practice... Thank you!
As someone jumping into linux, and who always considered anything outside of the home directory to be rather daunting, this was super helpful!!
You have no idea how helpful your videos are. I have to deal with a strange Debian variant running on a Lenovo NAS that offers features like a MySQL server, but with their configuration and binary files scattered around in non-standard file locations, placed there by proprietary installers supplied by Lenovo. They don’t release updates often, so updating anything is risky, or a pain at least. Your video restored my memory about the common Linux file system, and helped sort out a couple of things. Thanks!
Great job. I am quite recent to Linux but finally made the switch and now I just cannot touch Windows OS anymore. By the way, I really enjoy videos. Keep them coming!!
thats a great explanation.. this is really helpful, everything in one video .... i have been binge watching all your videos since yesterday....
5:36 Actually, my /lib64 doesn’t contain very much, just a couple of symlinks. I think /lib32 just contains libraries for “compatibility” packages on a 64-bit system. On my Debian system, most of the shared libraries in /lib are actually in /lib/x86_64-linux-gnu. This will be part of the “multiarch” system, which allows machines running entirely different processor architectures (including non-Intel-compatible ones) to share OS installation volumes.
I've been using Linux every day for about 4 years and I didn't know most of this stuff. I guess I'll keep watching your videos, maybe I'll learn something ;)
6:45 If I were going to permanently add a new drive to my system, then I would choose another mount point for it. For example, typically this would be for extra user files. So I would create a mount point “/home/extra”, and mount it there. Or maybe you might prefer “/extra”, it’s up to you.
@MJS That’s used for hot-pluggable/removable drives, as pointed out in the video. Best to stay away to avoid potential conflicts.
@MJS What distro? Doesn’t exist on my Debian system.
Such distros as Fedora and Arch Linux use /run/media/{user}/{label}
6:20 /mnt is meant as a *temporary* mount point.
Exactly. The current Linux Filesystem Hierarchy standard (LFS 2.3 from 2014) says the following about /mnt:
"This directory is provided so that the system administrator may temporarily mount a filesystem as needed. The
content of this directory is a local issue and should not affect the manner in which any program is run.
This directory must not be used by installation programs: a suitable temporary directory not in use by the system
must be used instead."
Mounting something unexpected under /mnt will cause trouble when a sys admin who does not know about such nonstandard behaviour mounts something on /mnt
4:06 May be more accurate to say that it is true of all software installed systemwide, whether from the standard repos or from third-party sources. Per-user configs are kept in per-user areas.
I think in the BSD world, the convention is to put the config files for the latter in /usr/local/etc.
Actually usually config files (for nginx, php, etc.) for packages installed using the pkg package manager will be located in /usr/share/etc.
@@positivemelon7578 Which distro? Debian doesn’t use “pkg”.
I recently started using GNU\Linux and this helped me out a lot. Thank you!
12:11 And don’t forget the (anachronistically-named) “wtmp”, which is a record of user logins and system reboots.
I just came across your video about the things you can do in Linux, that you can't do in Windows, and to be honest. I love your videos. Before I forget, good luck with everything you do. ;)
8:56 According to the proc(5) man page linux.die.net/man/5/proc , the first number is the system uptime in seconds, the second is the time in seconds accumulated by the idle process. Or should that be “processes”? Like me, your second number is several times the first number. In my case the factor is about 7.5, yours is about 5.7. I have a quad-core i7 with two hardware threads on each core, so 8 logical CPUs; am I right in guessing yours is a 6-core machine?
I am using linux for years, but still enjoy watching your videos about it. Thanks for them!
I work for like 20 years with Linux, 99.9% servers, but these videos still learn me little details. Always good to learn more. I remember my first time in Linux, Corel Linux, but after installing i had no idea what to do with it and i didn’t know a single command, so 30 minutes later the Windows setup was running again lol.
Nice!
Only 30 minutes?
Great video! The file system became so much clearer now...I would love to see more Linux entry level videos!
2:31 I don’t think those symlinks are very important -- they’re probably there for “legacy” reasons. grub goes by the entries in grub.cfg, and you will notice these list *all* your kernels, usually just defaulting to the latest one.
2:03 Note that grub.cfg should not be hand-edited, at least on Debian derivatives. On those distros, it is auto-generated from files in /etc/grub.d -- it is those you should edit if you want to make manual changes. Then run update-grub(8).
8:11 /proc is more for per-process information, and some system configuration information (/proc/sys). Information that the kernel knows about your hardware (and anything about it that you can tweak) will be found in /sys.
Note about /tmp: There are distros who don't delete the directory after a reboot, but after a certain time. I think there are even some distros who do a combination of both.
There are so many twisty passages in Linux that videos like this are really helpful. Thanks!
It wouldn't be Linux without some twisty passages :)
@@EngineerMan Yep. Part of its charm, and fun.
I went from Windows to Linux (mint) . One of my problems was knowing where to put my files. I didn't know where to look for things. Linux mint can be be used like windows that is, you can get around without having to use the command line. I ended up going back to windows because a couple of programs that use quite a bit did not run on linux. Linux was not bad at all I just couldn't find documentation on what everything was and where things go.
same here...
Your videos are great, its nice to watch and listen. Great job!
Also worth noting that /boot is actually just a mountpoint for the UEFI boot partition (which contains the bootloader(s)).
That would hide the files in that directory. Not a good thing to do.
Great video man, keep it up with the good content!! Can you make a video explaining shared pbjects and how to use and creating them when compiling C programs?
Great video! I'd like to see a video about your desktop enviroment (XFCE?),how do you tweak it and why you chose it
I can't believe I haven't run across any documentation that points this out about /usr but you hit on it. Originally /usr was the user folder on the Unix system. Later, discs got bigger and one thing lead to another and now even /usr can be available from an initram. So why have /usr/bin and /bin as separate folders at all? Well, I think it is best to think of /usr as userspace. This was typically what was done for a long time. /bin were system tools and /usr/bin were more or less userspace tools. We can set our systems up however we want of course, but I think it is kind of bad for to just have a symlink between /bin and /usr/bin. same for sbin lib etc. It is the same separation as /usr and /usr/local -- where /usr is system wide and /usr/local is for local use.....it is an abstract theory though, so of course, we can set our systems up however we want to....
Hey EM, love watching your vids and learning new things. Just wanted to drop in some feedback, not sure if others are experiencing this but it seems CZcams might be cutting off a little bit of your videos around the edges, making it tricky to see some of the text and stuff on the screens. Maybe there's a way to add a bit of blank space/margins?
Hey thank you Engineet Man for these videos on Linux. Im going to use these for teaching my students to learn more on linux systems. So u know your videos will be my inspiration to teach others, I hope this satisfies U :))
That satisfies me a great deal, really good to hear them being put to good use!
It's good some one has a sense putting all together like u, and can share it. Keep up the good work ! it helps me and others :)
Man, I just want so much to go there and change that file system to something that makes sense. Root being something like "system", "programs" and "home/users". Maybe even set up an separate "programs" directory in /home for programs that are only installed for the specific user. It would only make sense.
And don't get me even started in absolute mess that is /usr. Can't you separate that dir to something like "resources" and "programs". Resources containing stuff like /lib that many programs can use and under programs you have apps directories by name containing all the files apps has.
Sure, package manager handles this stuff, but it doesn't make sense to have convoluted directory structure anyway. And changing things now would have quite a bit problems, but when other option is keeping things as is forever so why not do it now. There's never really going to be good moment to do it anyways.
It just would be really nice if it was intuitive and made sense. Overhaul is needed anyway as there are stuff like /usr/games and /opt that are pretty much totally redundant.
Everything that already has a standard label is well known for what it normally contains (some distros modify a bit).
So, your suggestion about "system" won't fly because there are actually many parts to a system... the processor resources in /proc, the library resources in /usr
Programs can be anywhere although I generally install system apps in /opt but many times because of permissions they're installed in /home instead.
And, /home// is where everything specific to that particular User is stored... personal files, personal settings, etc.
Assuming the distro you're using has a solid history, there should be consistency where everything is installed in your system.
this is awesome information, thank you!
I like your new formats of videos
Compact and clear explanation. Love it!
I thought you were going to describe how the file system actually works. But this is good info.
One of the best videos on this topic..Kudos!
Nice job of explaining the best file system out there!
:)
/usr has nothing to do with any "user" and actually is an abbreviation for "system resources" which is why you'll find things like libraries and other re-usable code.
Otherwise, pretty cool and likely helpful to many...
Great overview. Thanks!
Nah just decided to subscribe because it's engineering man, great content bro.
That was really helpful, thank you :)
This channel is making me miss my Linux laptop...
Waiting for the same but for snails
Awesome video man, very informative.
It's not nice preventing Marky from watching this video.
You know, that Mark.
This is great, I use 2 linux boxes for firewall and telephone, (pfsense and FreePBX) I gotta get better with them. I also need to capture and save Disk images of old industrial hardware and DD is apparently the way to get this done. At the moment I use a hardware clone device and that requires drives. Saving files would work better for this.
If you need a simple solution, try CloneZilla which lets you clone hard drives and partitions to other hard drives or to image files on local hard drives or even remotely (like SFTP).
@@positivemelon7578 I am aware of clonezilla, but other folks in my circle of tech that know more than I tell me , essentially, "real men use dd" . So its a challenge thing. :)
On my system (Arch Linux) /bin are /sbin are actually symlinked to /usr/bin
Amazing how much you can learn about Linux in 11 minutes! Great video.
/usr could also be called User System Resources
Straightforward, I like it
I love to watch your video. From where i can see your full linux tutorial?
thank you short and sweet and to the point!
great video, right on the money!
Super helpful
Why doesn't youtube show his upload I got here with discord....
It's the little bell icon next to subscribe. By default, you get "occasional" notifications. Click the bell once to receive all notifications.
@@EngineerMan yes but i got the discord notification and so i went to your youtube profile to check and it didn't show up....
Huh, bizarre. Not sure.
In my opinion the directory named "/root" should-be/should-have-been renamed to "rootu" (for root user) or possibly even "default" (although that might not be too good) to eliminate confusion between the root directory and the directory named "/root".
I guess people can get away with saying "slash root", but still it is not the most clear or intuitive.
Do you have a video on useful Linux commands, useful shortcuts, introduction to Linux commands and navigation, converting from Windows to Linux, etc? Thanks!
I have both of those, just check my latest two videos before this one.
Oh, for humans?
Darn
Excellent information! Very useful. But... could you indicate where and how should I install my own program? I've ended up installing it in the user's home directory 🤷♂️
Very helpful
Thank you so much for your videos.
Great content! Thank you.
Great information. Thanx
Really nice video :)
1:52 What are those “abi” and “retpoline” files in your /boot directory? My Debian installation doesn’t have them.
retpoline was introduced when spectre/meltdown exploits etc came, it's a security measure and it prevents speculative execution etc
Keep up the good work, sir!
Wow this was a great video thanks, I understand it a lot better now.
„x11, thats your window manager“ xd (while i dont know what it actually is i am pretty confident that my window manager is i3)
What?
Is this to run windows10?
X11 is the window system while i3 is one of many window managers. Most distributions of GNU/Linux will use X11 as the window system but the window manager is the user's preference.
Do you have any videos on user permissions and how to manage users? Also in Ubuntu, whenever I run something in sudo it ask for my password every time and it's annoying. How can I change that?
Hello Engineer MaN !!! sorry about that offtopic but i have one specific question and I will be happy if you can answer ... In linux there is a tool named HTOP.. not long ago i see another one almost the same but for HDD I/O operations
Where softwares are being installed in linux? for example, if i installed Libre office, where its files gonna be installed? in windows default path would be in C:\programs\libre. how about linux?
What distro do you use primarily? I use Manjaro. Will most of this tutorial relate to my system overall?
3:48 If you are running a recent Intel-compatible processor, you probably do have a physical random-number generator en.wikipedia.org/wiki/RdRand .
But the question is, can you trust it?
This is a great video, thanks!!!
I still do not like case sensitive nature of linux/unix file system.
/etc; /Etc; /eTC; /ETc;
and so on...
Dont use uppercase in filenames
The trouble is, the rules for case-conversion vary by writing system and even by language. Linux/Unix basically avoids the whole issue by insisting on case-sensitivity. Yes, it has its drawbacks, but it simplifies some things.
Unix pre-dates MS-DOS and the Apple operating systems that decided to ignore case.
When people say it is confusing I ask them if they understand the difference between these sentences:
I helped my uncle Jack off a horse.
I helped my uncle jack off a horse.
So lets say I have my linux OS installed for like a few years or something and my versions of the kernel are piling up. Is there a reliable/safe way to start deleting old kernels? They always generate some type of error situation in the logs and Im worried this eventually will cause filesystem and boot problems.
If naming convention for harddrives is:
1st harddrive = sda, 2nd harrdive = sdb, 3rd harddrive = sdc, etc (see 3:00)
What happens if I have more than 26 harddrives?
nothing to add after sdz? :D
sdaa :)
"Folders" in Windows.... Directories in everything else.
Linux 101.
Semantics for sure, but useful to anyone new to the linux/unix/etc. space who's about to ask a question on a distro's forums and is about to use the word "folder(s)" haha. --Longtime users will probably give you shit for this.
Great video Thanks
Thanks for the video. What is the porpuses of /usr/local and /usr/share.
Is there some reason why you _cd_ into the folders instead of simply _ls -l [/foldername]_ or is it just habit?