Ive been watching almost all his vids since I stumbled upon that channel. I not a software engineer, I never code in my life, I understand nothing. But somehow in coming back :p
In this particular case, I only came for the punchlines. About the only thing I learned from the video was that I didn't know the logos for a lot of distros.
You totally missed an opportunity for that classic linux joke: $ love love not found $ happiness happiness not found $ kill you must specify whom to kill
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
@@hclyricsme too, it was good to actually understand everything for a change. Only thing I didn't know about was "stat", which is crazy, but I guess I never needed to use it to set up a VM...
for those curious about the "sudo rm -rf /" command: - "rm" removes a file (or directory with a flag) - "-r" is recursive, meaning if you target a folder with rm it will remove everything in its subfolders too - "-f" is force, makes rm work without confirmation - "/" is the target path, which is the root directory of your entire computer - "sudo" gives you elevated permissions, lets you do things you wouldn't normally be allowed to do, like write to system folders so "sudo rm -rf /" will remove the root directory of your computer, recursively delete everything inside it, with elevated privileges and no confirmation prompts. it basically bricks your machine because it removes important system files.
@@mz00956 yeah, it can't really touch your BIOS so you can still boot from other devices. But / includes every device that was mounted so you better unplug that install USB before you run it!
@@mz00956 i think in some cases system firmware can be mounted as rw causing your whole computer to get bricked though most distros require the --no-preserve-root as a safeguard to prevent rm rf / from being used accidentally, so running it will usually not actually do anything, but if you do add the flag... expect things to break (don't do it outside a vm)
This channel is awesome man. I’m a 33 year old math teacher who never learned this stuff in school. I’ve always been the person to ask “why” And allot of the coding stuff out there just goes into how to use the coding language without going into how it actually interacts with the hard drive and how it literally works. So this is fantastic.
I found this channel in the middle of my first year of java computer science and I didn't understand it one bit, I've now switched to mechanical engineering and still do not understand it one bit, yet I still watch every upload. You're truly a content wizard Mr. Ship.
Yes, Linux desktop doubled to 4% in the past 2 years, but mobile is 4x the usage of desktop for web visits. Let's add in the other Linux uses found in daily life: streaming devices. TVs, routers, Iot. voice assistants, vehicles, point of sale/ pin pads, .... Linux is the dominate OS in the consumer space and server space.
4:10 Correction, as you can read in the title of the manpage: "touch" simply changes file timestamps. Though this has the side effect of creating an empty file if the path given isn't an existing file, so it often gets used to create new files.
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
Dude. You need to be a Computer Science Lecturer at University. The concepts in this video are well explained and, easy to understand. This is coming from a developer with almost 4 years of experience and a graduate of Computer Science.
"Lectures" don't get paid to lecture. They are employed to research, followed by help post-grad research, then their LAST priority is lecturing. Universities make money off students failing. Source:- BSc with a handful of post-grad papers (Security and HCI)
On that chown stuff, when he said the stuff about 7s, it can be kind of cryptic where those numbers come from. The idea is that 7 in binary is 111. Those 3 ones are rwx (read/write/execute), the 1 means that they're all turned on. A 000 would be all turned off, or another example is 6, which in binary is 110, so read & write are turned on, but execute is turned off. Read-only is 4, which in binary is 100, so only the read bit is turned on.
8:14 Correction. The "usr" directory stands for "UNIX System Resources" or "UNIX Source Repository", it's a common misconception that it means "user". Also, the /bin and /lib directories are meant to be for binaries and libraries required for the system to boot, while the /usr counterparts like /usr/bin and /usr/lib are meant for programs that aren't that necessary that every user on the system should have access too. There is also directories in /usr/local that are usually things that are more manually installed while it still should be accessible to everyone. There is also the ~/.local directory which is meant as the same as /usr/local but for things that should only be accessible to that one user since it's in that users home directory.
Most distros have /bin, /lib{,32,64}, and /sbin be symlinks to /usr/*. Plus most often when distros compile software, they set the prefix to /usr, and bindir is either /bin or /sbin, so installed programs get put in /usr/bin or /usr/sbin. The LSB/FHS can be picky where certain apps go, like chroot should be put in /usr/sbin instead of /usr/bin. For the regular user, though, it really doesn't matter. Does help where the binaries actually are if you're in a pinch and don't want to rely on using PATH to launch something. I manually install many things and just put em all in /usr/bin, unless the project is big and has different library versions that make removals difficult -- then I put the package in /opt. Rust is one of them, but also Java.
This entire thing is a massive retcon. The directories actually mean "Hey Dennis we're out of space on this PDP-11 disk, mount another disk somewhere" and anything else is made up rubbish.
I'm 4 years using linux right now, and I didn't knew the existence of stat command. Always you can learn new staff from this channel. Thanks for the nice video!!!
@@jgarbo3541 u're right. Sorry for that. I should have said GNU Linux, cause most of the tools I use every day are part of the GNU. Thanks for the correction!
Learning and using nixos (linux distro) recently just blew my mind. Having an entire system configured in a git trackable file and easily revert to any state in time is just amazing.
The project being on the verge of collapse aside, it's just a gimmick, albeit an interesting one. No documentation, abhorrent language, gorillion poorly built packages, many dev issues due to symlink dredge filesystem, and is just pure trash for desktop for anything nontrivial. Interesting for servers though, for what it's worth. Will stick to Gentoo
@@aarholodian can confirm as an arch user gentoo is the only other wiki I have to frequent. The real reason to use any distro is how well it's wiki is maintained
What I truly love from this channel is how it presents condensed knowledge in a clear, short way. Many times I know 99% of what is presented in the video but not as organised and precise as it is. Plus a 1% more knowledge is always what makes a difference :)
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
Is there a way to do this? If you just want to do simple things, like make a powerpoint, write an excel spreadsheet, or type up a normal word document without anything fancy going on, libreoffice is more than up to the job. It is cluncier, it is true, but it works, and it is free and easy to install. If you need MS office, that is tricky. Maybe you can get it to work with wine, but that is a big if.
This is why fireship is the best online educator / content creator, he taught everything that there is to know about linux and shell commands in just a 12 min video when others are selling month long courses.
the month log courses go in depth and this form of quick video info is designed to make you believe you're learning a lot but you're not. very surface level info. I knew 90% of this stuff already an I just barely began my IT/technology studies 2 years ago.
3:28 The shell does not "provide a layer of protection between userspace and the kernel". The shell is just a regular userspace application that provides more or less convenient ways for users to launch applications and navigate the filesystem.
me too, no regrets. 20+ years with Linux as my daily driver since Microsoft convinced me with their double page magazine ads bashing (pun intended) Linux. If Linux is so bad why is there WSL?
Theres alot in here youll rarely need to use (ie. whoami) Figuring out how to move around the files system and manage files is the only requirement to learn at the beginning (cd=change directory, ls= list files, cp = copy, mkdir= make a new directory, vi/nano = write some files, rm= remove a file, mv= move a file). Then as you find the need to do other things, you can add them to your toolbelt over time.
If you rarely use linux in the server side, you can take it easy and just use GUI in general, most programmers don't even need to use linux if they have dedicated sysadmin/devops team
I’m not sure if it’s because I already took the classes, but your explanations are so much more concise and easy to pick up on. When I was learning Linux and these other subtopics in college, I was so lost for a good while lol. New CS students are blessed to have resources like this.
@@adityaanuragi6916 touch is a terminal command to create a new file. You say touch new-file.ext this will create new-file.ext in the current directory. Joke is Epstein and touching underage kid. If you don't know about it. Welcome to the internet
I am preparing for the LPIC-1 exam and watch this video over and over. Each time I understand a little more. Keeps all the information in a meaningful context. Great work!
Yeah, it sounds funny, but actually the terminal is a graphical user interface to the shell, providing an experience similar to using a serial terminal or the console, but in a graphical window.
@@agh0x01 Though technically the console is also graphical in a way, just much more limited as it's restricted to outputting characters (albeit in a font of your choice, and these days usually with colour).
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
Don't forget that there are stable distroes and unstable where you can set up and modify everything you want, and the last one requires more time and dedication.
Fun fact: The GNU project was born in 1983 while the Linux kernel was born in 1991, in fact GNU lacked the kernel and Hurd was created. Hurd was the initial kernel of GNU and unlike Linux it was a microkernel, it still exists but development is at a standstill and there are a couple of older distros that use this kernel.
@@ryelor123 Linus Trovalds open sourced his OS so the world can use it for free and now many critical infrastructures run Linux Both Richard Stallman and Linus Trovalds great person and way better than Bill Gates ofc
you are awesome. I came to recap my linux skills after a small gap. it was so funny, informative. harsh truth: i learnt more in 10 minutes than 3 month college lecture...
5:55 a few comments. 1: Use "#!/usr/bin/env bash" not "#!/bin/bash". 2: if using shebang and invoking the file as a program, you need to set the executable flag "chmod +x ./file". 3: you don't need the shebang if you intent to invoke the file by specifying the shell first eg. "bash ./file" I use arch btw
@@pepejw "#!/bin/bash" is not a standard. Bash might be installed in another directory (on %99 of the distro it will be in "bin/bash"). "#!/usr/bin/env bash" will run bash no matter where it is.
This was actually ridiculously informative. Wow. Great video fireship. Been getting into Linux and thought I’d know most if not all but there were definitely a few I didn’t know about. Keep doing this!
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
The "hi mom" echo reminded me of your post about your mom and hit a soft spot. I know she would be proud of her AI robot son. Thank you for the video and I hope you are well.
You can learn vim by opening vim, then using the tutorial. It won't turn your vim setup into NVChad, but you will know how to use vim and neovim. I use Arch btw
I have been an Arch Linux user for over 15 years. It is difficult to install anything else once you get used to it. That control it gives is priceless!
I switched to linux last month from windows. The only issues I had so far was my 2070 not really supporting hardware encode/decode in browsers and discord, so I upgraded to a 7900XTX which fixed that, and that SteamVR sucks in linux forcing me to dual boot windows for when I want to play VR. Loving it so far.
noob, I have no issues using a graphics card or steamvr, git good, the issue isn't the computer, it is what lies between the chair and the monitor (or virtual reality glasses in your case)
@@o1-preview sure thing bud - nvidia definitely supports va-api and steam vr definitely isn’t missing half its (admittedly some more superfluous than others) features. To say they both work perfectly is just pure BS.
@@o1-preview I've been using it on servers for over a decade and a half however, and have ran it on desktop many years ago but it wasn't in the position for gaming that it is now so ended up switching back. Unfortunately its weird individuals like yourself with some bizarre OS based superiority complex that help put the majority of people off of switching.
@@trotskiftw I dont care about others switching at all. I don't think linux is better than other operational systems. I have no idea how you can have all that experience and still be a noob at it.. i have none of the issues you claim to have and also no wish to help your noobish self. I'm guessing you are either a troll or not the brightest.. btw, I've seen devs/sysadmins/devops/pentesters/devops with 20 years of experience that were worse than interns.. might be your case
lemme tell you that no matter what you think your life goal is fireship, you have already accomplished it. people (including me) frickin love you man. your channel is so awesome and is just perfect. you make me laugh and learn at the same time. seriously you are so wonderful, I hope you live the rest of your days in total peace knowing you have accomplished alot in this lifetime!!!
@@o1-preview well I just pluged a drawing tablet inside of my nixos laptop and everything worked flawlessly (the tactile of the tablet worked, the pen too and eraser/press hardness) WHILE on my windows 10 desktop I have to install drivers
you know why I gave up setting up arch linux or any other linux? That's right, Wifi. No matter how many commands I use...it still couldn't find "wlan0" when entering "iwctl" and "device list". 💀💀💀 I gave up
@@EvelynIsDeprecated meh, not really. It's just stripped down and has android specific modules & drivers with some optimizations & power management enhancements for mobile ARM devices; the core functionality is mostly untouched. It is the level just above the kernel where the majority of the differences live.
@@commander3494 Android 14 (AOSP) is Linux kernel 5.10 to 6.1, and Android 15 (AOSP Experimental) is 6.1 to 6.6(for now). Major version bumps traditionally only happen with major Android releases and depend on mainline Linux LTS kernels. Granted, Android 11 to 13 broke out of the norm. Google is also planning to ship a major 6.1 kernel upgrade to all its Tensor-powered Pixel phones, regardless of the Android version they are running.
The picture at 17. ext4 - 2:16 is a bit misleading, the Filesystem Hierarchy Standard (FHS) isn't tied to the filesystem itself (be it ext4, xfs, btrfs or zfs). As a couple other comments mentioned: RHEL/CentOS 7 was the last version using yum, since then dnf is used as a package manager. On halfway recent versions "rm -rf /" does nothing, you have to add a star symbol after the slash or explicity add "--no-preserve-root" for it to work.
just wanted to point out, and am sorry for being pedantic. about the cat | sort | uniq. its ok to use cat as a learning tool. I get it. But in a memory constrained system, might want to not use cat at all. depending of what you are doing, might want to use awk. But if its a single column, can use uniq first, then sort. and not use cat at all. all of these commands can operate files. or just standard input. that's the point of pipes. but you dont need to occupy extra memory with cat with sort OR uniq can read files just as well. so instead of piping 3 commands, you just use 2. and again, based on the use case, maybe changing order could also save on memory.
4:09 10 years of using Unix-like systems and this is the moment I learn that "touch" is meant to change the file timestamps and the creation of the file is not the primary usage (at least in the manual)
The cool thing about the Linux is that you can use a "man touch" command to print out a useful help that will not indicate the usual use case of the "touch" command till a second paragraph of the description and it will do so in a such convoluted way that no one will understand it.
Try out the full course for free, then use code LINUX30 to take 30% off if you upgrade fireship.io/courses/linux
Nope
@@නරකChad response
@@නරක Joke's on you, I'm doing it
JK I'm poor, Learn Linux TV TH-cam Tutorials instead for me
why not LINUX69 and 69% off???
Daemon
Opening fireship's videos are always like:
Come for information
Stay for the punchlines
Or develop an existential crisis as a developer. You never know 😂
Ive been watching almost all his vids since I stumbled upon that channel.
I not a software engineer, I never code in my life, I understand nothing. But somehow in coming back :p
In this particular case, I only came for the punchlines. About the only thing I learned from the video was that I didn't know the logos for a lot of distros.
I'm in the trades and I watch for the memes.
@@matthieuleon310same here lol
"if you have few years to spare you can learn Vim and if you have no life at all you could try emacs", damn that got me
i like vscode
i use vscode with the vim plugin 😎
(and im an arch user btw)
@@jonathansung8197 so, why not a neovim? ;-)
and if you have few years but want to end it all, use Neovim
I like vim so much. I wish all inputs in my operating system/apps/browser, etc would support it
1. UNIX - 0:45
2. POSIX - 0:52
3. MINIX - 1:07
4. Linus Torvalds - 1:13
5. Linux - 1:15
6. FOSS - 1:18
7. GPL - 1:20
8. kernel - 1:30
9. C language - 1:33
10. bootloader - 1:40
11. RAM - 1:43
12. init - 1:46
13. user space - 1:54
14. memory management - 2:02
15. virtual memory - 2:04
16. virtual file system - 2:12
17. ext4 - 2:16
18. drivers - 2:22
19. protection ring - 2:28
20. syscalls - 2:45
21. glibc - 2:59
22. unistd.h - 3:03
23. GNU - 3:07
24. Richard Stallman - 3:14
25. coreutils - 3:16
26. terminal - 3:24
27. shell - 3:28
28. bash - 3:37
29. echo - 3:41
30. argument - 3:42
31. stdout - 3:46
32. touch - 4:01
33. man - 4:08
34. ls - 4:18
35. cat - 4:24
36. stat - 4:33
37. timestamps - 4:36
38. flags - 4:43
39. combined flags - 4:54
40. rm - 4:59
41. output redirection - 5:06
42. input redirection - 5:13
43. pipes - 5:17
44. sort - 5:28
45. uniq - 5:31
46. bash script - 5:39
47. vim - 5:45
48. emacs - 5:48
49. nano - 5:50
50. #! shebang - 5:55
51. stdin - 6:02
52. whoami - 6:44
53. uid - 6:50
54. root - 6:56
55. substitute user - 7:04
56. superuser do - 7:06
57. groups - 7:17
58. file system - 7:23
59. /home - 7:27
60. mkdir - 7:32
61. cd - 7:33
62. pwd - 7:35
63. / - 7:41
64. /boot - 7:48
65. /dev - 7:51
66. /etc - 7:53
67. /var - 7:55
68. /bin - 7:59
69. /sbin - 8:01
70. /usr - 8:11
71. PATH - 8:20
72. env var - 8:23
73. export - 8:38
74. .bashrc & .bash_profile - 8:45
75. PS1 - 8:54
76. symbolic permissions - 9:11
77. read, write, execute - 9:20
78. octal permissions - 9:29
79. principle of least perivilege - 9:40
80. chmod - 9:46
81. chown - 9:54
82. chgrp - 9:56
83. ps - 10:07
84. PID - 10:11
85. htop - 10:14
86. daemon - 10:19
87. cronjob - 10:33
88. SIGTERM - 10:42
89. SIGKILL - 10:47
90. grep - 10:57
91. sed - 11:00
92. gzip - 11:01
93. tar - 11:03
94. distro - 11:08
95. package managers - 11:24
96. release schedule - 11:29
97. desktop env - 11:39
98. slackware - 11:50
99. debian - 11:54
100. redhat - 11:58
101. arch - 12:03
Did you use some tool (maybe AI) to do that? Just curious. Also appreciated!
appreciate this a lot.
100 linux ninjutsu signs
Thank you, may you live long n prosper
nice pfp
You totally missed an opportunity for that classic linux joke:
$ love
love not found
$ happiness
happiness not found
$ kill
you must specify whom to kill
thats about the level of humour i expect from linux users
@@tihan86lmao
does not work if you have love-lua installed 😢
i tried forgetting that and it just showed me a blank screen on love...
Actually there's a program called love and it is a game engine
haha i love le jokes i can find on le front page of le reddit XDD
Happy to be on the 4% (BTW)
Found the Arch user
ubuntu server all day baby!!!
i use arch btw :3
Im using Neovim
same, arch user btw
The Greatest Thumbnail That's Ever Lived
8 likes and no reply let me fix it
I never expected THE GREATEST TECHNITION THAT EVER LIVED to be here
I never expected the greatest technician that's ever lived to comment on a Linux video, but it's great to see TH-camrs you in this comment section.
I never expected THE GREATEST TECHNICIAN THAT EVER LIVED would be here.
@@Rullino32Can you imagine anyone bold enough to call himself "Greatest Technician to ever live" would use Windows or Mac os.
This video cured my Linux imposter syndrome. I recognized and understood way more than I thought I would. Another Fireship banger, for sure.
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
@@kamrandoesstuff Who let Richard in here??
@@hclyricsme too, it was good to actually understand everything for a change. Only thing I didn't know about was "stat", which is crazy, but I guess I never needed to use it to set up a VM...
Did you also feel the need to copy paste your comments multiple times?
@@kamrandoesstuff
Just started watching it for the same reason... let's see.
for those curious about the "sudo rm -rf /" command:
- "rm" removes a file (or directory with a flag)
- "-r" is recursive, meaning if you target a folder with rm it will remove everything in its subfolders too
- "-f" is force, makes rm work without confirmation
- "/" is the target path, which is the root directory of your entire computer
- "sudo" gives you elevated permissions, lets you do things you wouldn't normally be allowed to do, like write to system folders
so "sudo rm -rf /" will remove the root directory of your computer, recursively delete everything inside it, with elevated privileges and no confirmation prompts. it basically bricks your machine because it removes important system files.
It just bricks the OS right? So after reinstalling Linux you can use your pc again. (Without your files obviously)
@@mz00956 yeah, it can't really touch your BIOS so you can still boot from other devices. But / includes every device that was mounted so you better unplug that install USB before you run it!
@@mz00956 i think in some cases system firmware can be mounted as rw causing your whole computer to get bricked
though most distros require the --no-preserve-root as a safeguard to prevent rm rf / from being used accidentally, so running it will usually not actually do anything, but if you do add the flag... expect things to break (don't do it outside a vm)
Most modern distros will not let you remove the /. To make it work, run it as: sudo rm -Rf /*
@@SteveStavropoulos --no-preserve-root too iirc
This channel is awesome man. I’m a 33 year old math teacher who never learned this stuff in school. I’ve always been the person to ask “why” And allot of the coding stuff out there just goes into how to use the coding language without going into how it actually interacts with the hard drive and how it literally works. So this is fantastic.
I found this channel in the middle of my first year of java computer science and I didn't understand it one bit, I've now switched to mechanical engineering and still do not understand it one bit, yet I still watch every upload. You're truly a content wizard Mr. Ship.
Learn physics now
I am going to alias “sudo” to “daddy”
plsdaddy rm -rf /
Nooo... 😂
or please
@@dislikepineapplesdaddy please
+1😂
In your 96% figure, I think you grossly underestimated the number of people watching this video on their Android devices.
Yes, Linux desktop doubled to 4% in the past 2 years, but mobile is 4x the usage
of desktop for web visits. Let's add in the other Linux uses found in daily life: streaming devices. TVs, routers, Iot. voice assistants, vehicles, point of sale/ pin pads, .... Linux is the dominate OS in the consumer space and server space.
🤓👆
@@paulsorensen8489 Free and open source is being used to steal our will to live through capitalism. If that ain't dystopian, I'm not sure what is.
@@paulsorensen8489 sure is but I think he was talking about running a Linux OS as your desktop
Good for you, now ditch your windows PC, unless you're on a mac.
4:10 Correction, as you can read in the title of the manpage: "touch" simply changes file timestamps. Though this has the side effect of creating an empty file if the path given isn't an existing file, so it often gets used to create new files.
MS should have aliased "New-Item" to "touch", it feels intuitive even when it's being used incorrectly.
😅😢
_Ohhhhhh_ that makes sense! I never thought to question the link between this "touch" and the "touch" in Rails.
@@Lewdiculous That a command in Powershell?
@@wisteela Yep
@@wisteela I think it's aliased by default to "ni"!
Been using Linux since 2001. And today it's my daily driver. I was in grade 11 when I was introduced to Linux. Now I'm a DevOps Analyst.
What does an Analyst do in DevOps? Sounds fun
i am in grade 11 without linux
I was in 9th, also 2001. Also my daily driver. I'm a SCADA engineer.
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
@@kamrandoesstuffMost linux users do know this, it’s simply a shorthand; no need to be pedantic
Dude.
You need to be a Computer Science Lecturer at University.
The concepts in this video are well explained and, easy to understand.
This is coming from a developer with almost 4 years of experience and a graduate of Computer Science.
he would be wasted upon such a trivial job
"Lectures" don't get paid to lecture. They are employed to research, followed by help post-grad research, then their LAST priority is lecturing.
Universities make money off students failing.
Source:- BSc with a handful of post-grad papers (Security and HCI)
@@kaydog890 "Source:" lmao
On that chown stuff, when he said the stuff about 7s, it can be kind of cryptic where those numbers come from. The idea is that 7 in binary is 111. Those 3 ones are rwx (read/write/execute), the 1 means that they're all turned on. A 000 would be all turned off, or another example is 6, which in binary is 110, so read & write are turned on, but execute is turned off. Read-only is 4, which in binary is 100, so only the read bit is turned on.
I learned it that way so it is the default in my head... until I get to sticky bits
8:14 Correction. The "usr" directory stands for "UNIX System Resources" or "UNIX Source Repository", it's a common misconception that it means "user".
Also, the /bin and /lib directories are meant to be for binaries and libraries required for the system to boot, while the /usr counterparts like /usr/bin and /usr/lib are meant for programs that aren't that necessary that every user on the system should have access too. There is also directories in /usr/local that are usually things that are more manually installed while it still should be accessible to everyone. There is also the ~/.local directory which is meant as the same as /usr/local but for things that should only be accessible to that one user since it's in that users home directory.
There is also /opt which software can use to /opt out of the correct file system structure.
Most distros have /bin, /lib{,32,64}, and /sbin be symlinks to /usr/*. Plus most often when distros compile software, they set the prefix to /usr, and bindir is either /bin or /sbin, so installed programs get put in /usr/bin or /usr/sbin. The LSB/FHS can be picky where certain apps go, like chroot should be put in /usr/sbin instead of /usr/bin. For the regular user, though, it really doesn't matter. Does help where the binaries actually are if you're in a pinch and don't want to rely on using PATH to launch something. I manually install many things and just put em all in /usr/bin, unless the project is big and has different library versions that make removals difficult -- then I put the package in /opt. Rust is one of them, but also Java.
It’s not a misconception, ‘user’ was the original meaning. The others are very recent backronyms, and frankly quite terrible ones! 😆
Shut up nerd
This entire thing is a massive retcon. The directories actually mean "Hey Dennis we're out of space on this PDP-11 disk, mount another disk somewhere" and anything else is made up rubbish.
This is like everything I learned in my Linux course last semester in like 10 mins.
The greatest issue with colleges is that they need to cater to the slowest people in class.
I'm 4 years using linux right now, and I didn't knew the existence of stat command. Always you can learn new staff from this channel. Thanks for the nice video!!!
stat is not Linux; it's Unix. RTFM!
@@jgarbo3541 u're right. Sorry for that. I should have said GNU Linux, cause most of the tools I use every day are part of the GNU. Thanks for the correction!
6+ years as a Linux user. I didn't know about stat either 😅
6:42 What a transition 🤯
What a **sponsor blocked**
Yupp genius 🔥
@@Rustmilian😂😂
I think this is your best video yet, and I've followed you for years. Very entertaining and informative. Well done.
7:07 “This is an IQ test” lmao
I wish there was a way to know how many people failed the test.
I am sure someone will.
But they won't be able to connect and tell us for a while.
Doesn't this command prevent deleting / without a special flag to ignore such warnings?
@@dogyX3--no-preserve-root
There's also a randomizer obfuscated version 🎉
@@Ba-gb4br Will it still rm everything with just / and not /*
Learning and using nixos (linux distro) recently just blew my mind. Having an entire system configured in a git trackable file and easily revert to any state in time is just amazing.
Absolutely based and nix pilled
Welcome to the club, and good luck learning Nix
You clearly don't know what's been going on behind the scenes with NixOS.
The project being on the verge of collapse aside, it's just a gimmick, albeit an interesting one. No documentation, abhorrent language, gorillion poorly built packages, many dev issues due to symlink dredge filesystem, and is just pure trash for desktop for anything nontrivial. Interesting for servers though, for what it's worth. Will stick to Gentoo
You can even track your config file in other version control systems! Git isn’t a requirement for Nix :)
@@aarholodian can confirm as an arch user gentoo is the only other wiki I have to frequent.
The real reason to use any distro is how well it's wiki is maintained
What I truly love from this channel is how it presents condensed knowledge in a clear, short way. Many times I know 99% of what is presented in the video but not as organised and precise as it is. Plus a 1% more knowledge is always what makes a difference :)
bro can you not make a 12 minute video that sums up a year of college. thanks
It's not fireship's fault that your professor is incompetent.
So, I take it you went to a for-profit college?
A year?! I learned to love Slackware in three months when I was in high school. Also, I’m dumb for loving Slackware.
everyone replying here is a headarse. No this video does not teach you everything a college OS class does
@@krishp1104 I think they’re being being sarcastic
statistically, all fireship viewers have tried linux
nah, I'm sure that with all the AI vids, there has to be some that haven't
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
@@kamrandoesstuff womp womp
@@kamrandoesstuff Richard stallman Botnet ☝🏻
@@kamrandoesstuff then what exactly is linux
Hi, does anyone know how to get Office safely on my Linux?
My recommendation is that you don't download it from any site.
@@Melissalove44 Exactly, it's better and check if you want at BNH Software, it never fails hahahaha
@@Mo-Thoughx Well I think so
I will try thanks
Is there a way to do this? If you just want to do simple things, like make a powerpoint, write an excel spreadsheet, or type up a normal word document without anything fancy going on, libreoffice is more than up to the job. It is cluncier, it is true, but it works, and it is free and easy to install. If you need MS office, that is tricky. Maybe you can get it to work with wine, but that is a big if.
Debian forever!!!
... though my first distro was Yggdrasil.
Bikefag kek
Debian on my servers, NixOS on my desktop; Two WILDLY different beasts, but I love them both... NixOS is not for the faint of heart, though.
heh, nice distro kiddo. I use Guix btw.
Also, neat to see you here.
Wait I didn't expect you here xD
This is why fireship is the best online educator / content creator, he taught everything that there is to know about linux and shell commands in just a 12 min video when others are selling month long courses.
the month log courses go in depth and this form of quick video info is designed to make you believe you're learning a lot but you're not. very surface level info. I knew 90% of this stuff already an I just barely began my IT/technology studies 2 years ago.
@@cristianpiano2170 cool story
@@Super61abetter than your story.
truly this is everything, can't think of anything else
3:28 The shell does not "provide a layer of protection between userspace and the kernel". The shell is just a regular userspace application that provides more or less convenient ways for users to launch applications and navigate the filesystem.
I always dreamt of saying this on this channel and finally:
I use Arch Btw.
Me too btw
I use nixos btw
@@researchandthinkprimarily NixOS seems really cool ! I'm thinking of switching to give it a try (I use arch btw 😄)
me too, no regrets. 20+ years with Linux as my daily driver since Microsoft convinced me with their double page magazine ads bashing (pun intended) Linux. If Linux is so bad why is there WSL?
Arch user here! Btw!
I am new to Linux ,and my brain feels fried and rewired at the same time after watching this.
Theres alot in here youll rarely need to use (ie. whoami) Figuring out how to move around the files system and manage files is the only requirement to learn at the beginning (cd=change directory, ls= list files, cp = copy, mkdir= make a new directory, vi/nano = write some files, rm= remove a file, mv= move a file). Then as you find the need to do other things, you can add them to your toolbelt over time.
apropos is also very useful. And never forget man.
I felt the same too
If you rarely use linux in the server side, you can take it easy and just use GUI in general, most programmers don't even need to use linux if they have dedicated sysadmin/devops team
@@traveller23e lol so true, tho i once forgot apropos and was trying to think of apropos
I’m not sure if it’s because I already took the classes, but your explanations are so much more concise and easy to pick up on. When I was learning Linux and these other subtopics in college, I was so lost for a good while lol.
New CS students are blessed to have resources like this.
4:21 epstein flight log 💀
I don't use Linux could you pls explain it to me
@@adityaanuragi6916it's a reference to a leaked document featuring numerous names of celebrities having paid a visit to the infamous epstein island
@@adityaanuragi6916 it's not a linux reference 💀
@@adityaanuragi6916 touch is a terminal command to create a new file.
You say touch new-file.ext
this will create new-file.ext in the current directory.
Joke is Epstein and touching underage kid. If you don't know about it. Welcome to the internet
@@adityaanuragi6916 list of people who went to a kiddy diddling island
0:02 I think this is false, for your audience the percentage should be higher.
Well you can't go into his yt studio dashboard so no, this is in fact true.
@@new_simsons 4.03% is the percentage of people using Linux. People following a tech channel are more likely to use Linux than the average person.
It's more dramatic that way.
I am preparing for the LPIC-1 exam and watch this video over and over. Each time I understand a little more. Keeps all the information in a meaningful context. Great work!
3:21 "open up the terminal which is a graphical user interface"
🤣
I mean, the actual terminal application is graphical, just not the actual interfacing with the underlying operating system.
Yeah, it sounds funny, but actually the terminal is a graphical user interface to the shell, providing an experience similar to using a serial terminal or the console, but in a graphical window.
Missed opportunities to talk about ttys right after
@@agh0x01 Though technically the console is also graphical in a way, just much more limited as it's restricted to outputting characters (albeit in a font of your choice, and these days usually with colour).
@@traveller23e on a modern PC using framebuffer console, yes, but on other hardware types, you might really be limited to character mode.
Everytime I watch a intro/beginner's guide video for linux/bash cmds, there's something new I haven't used before
I've been using linux for over a decade l, and only recently learned about sl and cowsay. I was such a n00b 😔🥴
It's always great to find videos that can be saved in a playlist.🎉
Casually creates the best linux tutorial ever
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
You released this video at the perfect time for me given that I switched to Linux earlier this week lmao
😂 it's like being late for a party wher everyone is heading home already
Which distro are you using?
It's going to be a glorious ride! Enjoy!
Don't forget that there are stable distroes and unstable where you can set up and modify everything you want, and the last one requires more time and dedication.
Me too 😂
This was low-key a really good explanation of a lot of stuff that I either didn't know or struggled to figure out on my own.
5:40 "If you have a few years to spare, you could try Vim. Or if you have no life at all, you could try Emacs..."
I feel like I've been violated! :D
doomed
The patriarch of the emacs church is here
I love Vim 😅
You have been violated, dt
Vim's not even that hard, and you can customize it with .vimrc to enable mouse usage and a ton of other nifty tricks.
Fun fact: The GNU project was born in 1983 while the Linux kernel was born in 1991, in fact GNU lacked the kernel and Hurd was created.
Hurd was the initial kernel of GNU and unlike Linux it was a microkernel, it still exists but development is at a standstill and there are a couple of older distros that use this kernel.
This. I feel bad for Stallman since Torvalds is kind of a disgusting person. I wish linux was never invented and GNU existed without it.
@@ryelor123 Linus Trovalds open sourced his OS so the world can use it for free and now many critical infrastructures run Linux
Both Richard Stallman and Linus Trovalds great person and way better than Bill Gates ofc
@@ryelor123 I bet Torvalds is very sorry that he can't cater to your sensibilities. Or not.
you are awesome.
I came to recap my linux skills after a small gap.
it was so funny, informative.
harsh truth:
i learnt more in 10 minutes
than 3 month college lecture...
5:55 a few comments. 1: Use "#!/usr/bin/env bash" not "#!/bin/bash". 2: if using shebang and invoking the file as a program, you need to set the executable flag "chmod +x ./file". 3: you don't need the shebang if you intent to invoke the file by specifying the shell first eg. "bash ./file"
I use arch btw
*HE'S GOT A VIDEO COURSE!! IF HE'S GETTING IT WRONG, WHAT HOPE IS THERE?????*
why use /usr/bin/env?
@@pepejw "#!/bin/bash" is not a standard. Bash might be installed in another directory (on %99 of the distro it will be in "bin/bash").
"#!/usr/bin/env bash" will run bash no matter where it is.
If you use shezow you get a real spiffy costume and makeover.
Corrects the video with a pendantic minor point. Adds “I use arch btw”.
Yea that tracks. You arch users are a breed aren’t you.
This was actually ridiculously informative. Wow. Great video fireship. Been getting into Linux and thought I’d know most if not all but there were definitely a few I didn’t know about. Keep doing this!
I’d just like to interject for a moment. What you’re refering to as Linux, is in fact, GNU/LInux, or as I’ve recently taken to calling it, GNU plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning GNU system made useful by the GNU corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
Using nano inside the vscode terminal is next-level
As part of the 4%, I think linux is superior for a lot of stuff, btw I use linux mint.
Mint supremacy
I am also in the 4% and I use manjaro Linux
@@thedevilkinggaming8575
>manjaro
Kek
@@thedevilkinggaming8575 imagine using a distro that can't remember to update their site's ssl cert
@@thedevilkinggaming8575buuu, pitchforks for manjaro
The "hi mom" echo reminded me of your post about your mom and hit a soft spot. I know she would be proud of her AI robot son. Thank you for the video and I hope you are well.
Me too. Used to watch every video even though she had no idea what was explained. Sounds like a great mom.
By using Linux, You will know the CORE of any Operating system. By using any OS besides linux, You just blindly enjoy something. Life is a choice. 😊
Fireship 10 minute video .. the end is near
I want to become a Blockchain developer working on AI for IoT mesh networks to be applied for drones and virtual reality.
Can't wait for Fireship 45 minute video essays.
@@Kawka1122 VC wet dream
You can learn vim by opening vim, then using the tutorial. It won't turn your vim setup into NVChad, but you will know how to use vim and neovim. I use Arch btw
I love how straight to point he talks and doesn’t beat around the bush wish my college teacher was like this
As a long time GNU/Linux user, I learned a thing or two. Thanks!
Seeing Jeff printing "hi mom!" in his videos feels very different now
thank you for all the information i have been using linux for 5 yrs love it
2:35 We don't speak about Ring 2
we don't speak about Ring -2
Yeah, The Ring didn't really need a sequel
Ring 2: The Ringening
the ring who shall not be named
6:08 don't forget to chmod +x to the script file to make it executables.
Pretty sure you can execute anything with bash without a problem
`bash my_script.sh`
I have been an Arch Linux user for over 15 years. It is difficult to install anything else once you get used to it. That control it gives is priceless!
4:16 Whose flight log??
nice video ,also i use arch btw
Mannnnn we techies thank whoever is behind the fireship turorials. Very informative
I'll never forget going to the book store to get the CD with Linux on it the first week it was released.
I switched to linux last month from windows. The only issues I had so far was my 2070 not really supporting hardware encode/decode in browsers and discord, so I upgraded to a 7900XTX which fixed that, and that SteamVR sucks in linux forcing me to dual boot windows for when I want to play VR. Loving it so far.
noob, I have no issues using a graphics card or steamvr, git good, the issue isn't the computer, it is what lies between the chair and the monitor (or virtual reality glasses in your case)
@@o1-preview sure thing bud - nvidia definitely supports va-api and steam vr definitely isn’t missing half its (admittedly some more superfluous than others) features. To say they both work perfectly is just pure BS.
@@trotskiftw git gud noob, you've been on linux for a month
@@o1-preview I've been using it on servers for over a decade and a half however, and have ran it on desktop many years ago but it wasn't in the position for gaming that it is now so ended up switching back.
Unfortunately its weird individuals like yourself with some bizarre OS based superiority complex that help put the majority of people off of switching.
@@trotskiftw I dont care about others switching at all. I don't think linux is better than other operational systems. I have no idea how you can have all that experience and still be a noob at it.. i have none of the issues you claim to have and also no wish to help your noobish self. I'm guessing you are either a troll or not the brightest.. btw, I've seen devs/sysadmins/devops/pentesters/devops with 20 years of experience that were worse than interns.. might be your case
Fun fact: on most Linux distros, running "sudo rm -rf /" won't work. You either need to add "--no-preserve-root" or replace "/" with "/*".
lemme tell you that no matter what you think your life goal is fireship, you have already accomplished it. people (including me) frickin love you man. your channel is so awesome and is just perfect. you make me laugh and learn at the same time. seriously you are so wonderful, I hope you live the rest of your days in total peace knowing you have accomplished alot in this lifetime!!!
AMAZING VIDEO (haven't watched it yet)
Same!
Oh really? I use arch btw
The first person to explain Linux so well. Thank you Fireship
Are we talking about the superior 4%, right? (I use Arch BTW)
Great video as usual, also I use Arch btw.
fellow arch user found
Thanks
0:11 What is 6.11% unknown?
Dunno
templeOS
They skip the OS and boot directly into pr0n.
@@anousenic that’s what I’m talking about 🙌
Freebsd Or Unix
watching this from ARCH btw!
So cool, thank you for making such high-quality videos!
I progressively lost my sanity while watching this
Hello from NixOS btw (I'm going insane I should go back to debian)
why ??
I
@@agh0x01 mhm, it's really great but so different from what I'm used to ^^'
try using qubeos and getting bluetooth or any usb device to work lol you have the hack the os to get it to work
@@o1-preview well I just pluged a drawing tablet inside of my nixos laptop and everything worked flawlessly (the tactile of the tablet worked, the pen too and eraser/press hardness) WHILE on my windows 10 desktop I have to install drivers
I freaking love this channel. - The Arch Linux guy :)
you know why I gave up setting up arch linux or any other linux? That's right, Wifi. No matter how many commands I use...it still couldn't find "wlan0" when entering "iwctl" and "device list". 💀💀💀
I gave up
Watching on Android (Technically Linux)
I use Android btw
To be fair, android is based on a very, very, very heavily modified version of the linux kernel.
@@EvelynIsDeprecated meh, not really. It's just stripped down and has android specific modules & drivers with some optimizations & power management enhancements for mobile ARM devices; the core functionality is mostly untouched. It is the level just above the kernel where the majority of the differences live.
@@Rustmilian it's also like a 20 year old version (exaggerated, but it is 2 major versions behind, at least on my phone)
@@commander3494 Android 14 (AOSP) is Linux kernel 5.10 to 6.1, and Android 15 (AOSP Experimental) is 6.1 to 6.6(for now). Major version bumps traditionally only happen with major Android releases and depend on mainline Linux LTS kernels. Granted, Android 11 to 13 broke out of the norm.
Google is also planning to ship a major 6.1 kernel upgrade to all its Tensor-powered Pixel phones, regardless of the Android version they are running.
Fell again in love with Linux Kernel after watching this video. Simple summary of Linux Kernel . Well done Fireship!
I use Windows because I have a life, but sometimes I boot into Kali to cut off my neighbors' Bluetooth music.
"I have a life" no, no you don't.... You watch fireship.
Is that a roast or a compliment? @@Rustmilian
@@GardenData61371 Yes
@@dragknot777 That's hyper exaggerated. Also, Atomic distros exist; you'd have to be trying to break it on purpose.
The problem with Windows is that it's hard to debug and fix if it breaks.
I was raised on Linux and only use linux. I am part of the (superior) 4%.
The picture at 17. ext4 - 2:16 is a bit misleading, the Filesystem Hierarchy Standard (FHS) isn't tied to the filesystem itself (be it ext4, xfs, btrfs or zfs).
As a couple other comments mentioned:
RHEL/CentOS 7 was the last version using yum, since then dnf is used as a package manager.
On halfway recent versions "rm -rf /" does nothing, you have to add a star symbol after the slash or explicity add "--no-preserve-root" for it to work.
7:45 "that you need to know aboot"?
He hit that one hard
I bet that the only people who watched this full are who use Linux day to day and know it well .
I have been working on *nix since -92, this was a very good introduction. I wish I had something like this back then.
just wanted to point out, and am sorry for being pedantic. about the cat | sort | uniq. its ok to use cat as a learning tool. I get it.
But in a memory constrained system, might want to not use cat at all. depending of what you are doing, might want to use awk. But if its a single column, can use uniq first, then sort. and not use cat at all. all of these commands can operate files. or just standard input. that's the point of pipes. but you dont need to occupy extra memory with cat with sort OR uniq can read files just as well. so instead of piping 3 commands, you just use 2. and again, based on the use case, maybe changing order could also save on memory.
You _could_ use uniq before sort but, depending on the file, that will give you a different result, because uniq only works on _adjacent_ lines.
I don't think memory is a major concern in 2024.
video looks good on arch btw
4:09 10 years of using Unix-like systems and this is the moment I learn that "touch" is meant to change the file timestamps and the creation of the file is not the primary usage (at least in the manual)
My wife only have swx with me when a new video comes out. Thanks
oh god, check the permissions, rwx-rwx-rwx
9:44 almost ALMOST got me. lol.
I'm confused...
@@rapidlemon906 He said not to trust anyone and proceeded to try making you flip a completely normal artwork of a bird.
@@9ofe you didn't see the face?
Don’t trust him. He just made you “flip the bird”
I sat there staring at the upside-down bird for nearly a minute!
Fantastic overview of basic commands. Also great sense of humor hahaha
I use arch btw
It is true that Arch users will always tell you they use Arch. 👍
@interstellarsurfer yeah man it gets really annoying
i use endeavouros btw
@@interstellarsurfer I use Arch BTW
I use Mint btw
9:11 I don't see it and I'm pretty sure I've got gullible written on my forehead
There’s nothing to see. Don’t trust him. He just made you “flip the bird”
Damnit!!
As someone who gives a Linux workshop to junior developers at my work this video is basically a godsend and I'm going to adjust my workshop now.
Fedora gang here?
Here
Present!
Love Fedora ❤
Yes, now from 2012
No😢
i happy to be part of 4%
The cool thing about the Linux is that you can use a "man touch" command to print out a useful help that will not indicate the usual use case of the "touch" command till a second paragraph of the description and it will do so in a such convoluted way that no one will understand it.