Linux inodes Explained

Sdílet
Vložit
  • čas přidán 17. 07. 2024
  • What are inodes in Linux? How do they work? What really happens when you type 'ls -l' into the Linux command line?
    0:00 Intro
    1:47 Directories as filename-inode number pairs
    2:30 How are inodes structured?
    3:33 inspecting a real inode
    3:42 what is a syscall?
    4:57 practical inode-related Linux commands
    5:24 common inode-related Linux problems and troubleshooting
    6:30 how inodes are created in Linux (depends on filesystem)
    Step-by-step project-based Linux course for beginners: www.udemy.com/course/hands-on...
    Free Linux Sysadmin Course Playlist: • The Linux Basics Cours...
    DigitalOcean referral link: m.do.co/c/0380a1db56a6
    Patreon: / tutorialinux
    Official Site & e-mail list: tutorialinux.com/
    Twitter: / tutorialinux
    Facebook: / tutorialinux
    Podcast: kernelpanicpodcast.com
  • Věda a technologie

Komentáře • 89

  • @bearforceone7295
    @bearforceone7295 Před 3 lety +50

    I applied for a job as a Junior RedHat Sysadmin this week and they asked me how I can see the Linux version running on a machine. I knew this by watching your video on regular devops interview questions, it's one of the questions you talked about. Just so you know, your videos are helping people out there in the real world! I am sure this video will also come in handy when actually running live environments. Thanks for doing this! :)

    • @scooby7877
      @scooby7877 Před 2 lety +1

      What is that cat/etc/os?

    • @cc4405
      @cc4405 Před 2 lety

      @@scooby7877 assuming linux version means the kernel version, uname -r would be a better answer imo

    • @massmedia6516
      @massmedia6516 Před rokem +2

      cat etc/os-release

    • @ywahab25
      @ywahab25 Před 9 měsíci

      cat /etc/redhat-release

  • @seannewcomb7594
    @seannewcomb7594 Před 3 lety +21

    I never knew about this, thanks for the walk through!

  • @tutoriaLinux
    @tutoriaLinux  Před 3 lety +13

    0:00 Intro
    1:47 Directories as filename-inode number pairs
    2:30 How are inodes structured?
    3:33 inspecting a real inode
    3:42 what is a syscall?
    4:57 practical inode-related Linux commands
    5:24 common inode-related Linux problems and troubleshooting
    6:30 how inodes are created in Linux (depends on filesystem)

    • @HP-sf1my
      @HP-sf1my Před 3 lety +2

      add the intro at 0:00 in the description to enable chapters in the video timeline

    • @tutoriaLinux
      @tutoriaLinux  Před 3 lety

      You are a genius; thank you!

    • @beron_the_colossus
      @beron_the_colossus Před 3 lety +1

      Could you also update the description?
      Thank you for the video

    • @HP-sf1my
      @HP-sf1my Před 3 lety +1

      Yea, actually the description is what matters, not the comment :)

    • @tutoriaLinux
      @tutoriaLinux  Před 3 lety +1

      @@HP-sf1my lmao d'oh. I'm an engineer, not an SEO expert!

  • @manny8717
    @manny8717 Před 3 lety +14

    Great video. Thank you!
    Only addition/correction in my opinion is at 2:48. You said the hard links count wasn’t shown with the ls -l command but it IS listed. It’s the second column after the file permissions. Says 1 for the files you listed.

  • @Hackenbaker
    @Hackenbaker Před 2 lety

    Thanks a lot for the easy to consume explanation!!! Easy to understand. Inodes was a question in my past working interview. Now, thanks to you I have a better answer for the next time somebody ask me about this. :)

  • @martina8527
    @martina8527 Před 3 lety +1

    Love these!
    Thanks for your great work!

  • @jerweiyeoh7096
    @jerweiyeoh7096 Před 3 lety

    Just here to drop an appreciation for the explanation!
    Stay awesome!

  • @vesok
    @vesok Před 3 lety +8

    Thanks, great video! I'd really love it if you made a series on zfs too :D

  • @vijaiharihar9410
    @vijaiharihar9410 Před 3 lety +1

    Very insightful! Thank you!

  • @Flankymanga
    @Flankymanga Před 3 lety

    Huh... every video i see from you shows me how much i have to learn. Thank you for the explanation!

  • @HarryLowtonIT
    @HarryLowtonIT Před 3 lety +1

    Thank you - Great video and explanation!

  • @ruiztulio
    @ruiztulio Před 3 lety

    Great video man, I'm just playing with zfs and is great so far

  • @fhujf
    @fhujf Před 3 lety +2

    I already knew about inodes, but watched the video regardless :)
    Thanks for all the videos, especially the Linux administration playlist. I've always been a Windows guy, but a year ago I started watching these, installed Ubuntu on VM and guess what, on Monday I'm starting a job in Unix infrastructure administration :D This channel is where it all began. Can't wait for new challenges ahead.

    • @tutoriaLinux
      @tutoriaLinux  Před 3 lety +2

      That’s amazing to hear; congratulations! That’s literally why this channel exists. Appreciate it.

    • @j_thom
      @j_thom Před 3 lety

      Migrating from Caladan to Arrakis, eh? Good luck... Careful tho.. it didnt go so smoothly the last time, erm..well..a time to come.

  • @aleksandrshkraba5061
    @aleksandrshkraba5061 Před 3 lety

    It was great! I was asked about inodes on my previous interview. And unfortunately I have some difficulties with explanation!( Now I can do it))) Thank you!

  • @Nagashadow9669
    @Nagashadow9669 Před 3 lety +2

    Good to know that ZFS has more advantages than whats usually advertised. I knew about zfs and inodes but never connected this together

  • @Toccobass13
    @Toccobass13 Před 2 lety

    literally amazing. thank you so much

  • @Yerttle
    @Yerttle Před 3 lety

    Loved this content!

  • @wojt4spes
    @wojt4spes Před 2 lety

    Thanks, dude. Just starting a new year, new me, you know. Learning Unix, stuff.

  • @keratishvili
    @keratishvili Před 3 lety

    Great video thanks Dave

  • @MegaAadhar
    @MegaAadhar Před 3 lety +1

    This was very simple and clear; thanks mate!
    ZFS Please!

  • @humayunakhtar2116
    @humayunakhtar2116 Před rokem

    Thanks for great explanation

  • @Funnybone_FB
    @Funnybone_FB Před 2 lety

    Brilliant. Thank you

  • @bowboycode2114
    @bowboycode2114 Před 3 lety

    You make great video's!👍

  • @ZTsarmadOne
    @ZTsarmadOne Před 2 lety

    Thanks 😊, This video very Useful for me.

  • @mhenimerzouki1285
    @mhenimerzouki1285 Před 3 lety +2

    great video, yes ZFS please :)

  • @Matthew-tl2ng
    @Matthew-tl2ng Před 2 lety

    Its crazy I just did a phone screen for a company and you touched on 2 of them in this video. Hard/soft links and syscalls.

  • @DimaEvoc
    @DimaEvoc Před 2 lety

    Thank you! I'm watching this video after a terrible interview ))

    • @tutoriaLinux
      @tutoriaLinux  Před 2 lety +1

      Hang in there! Some interviews just go badly no matter what. You’re probably dodging a bullet.

  • @TheGruselmops
    @TheGruselmops Před 3 lety +2

    Thanks Dave, great explanation! I really missed this type of videos!
    btw. How do you like BtrFS?

    • @tutoriaLinux
      @tutoriaLinux  Před 3 lety +1

      Hey, good to see you here! I played with btrfs several years ago and it felt like an early beta. There were a ton of missing features and some unreliability (although it did engineer around a few zfs limitations). I haven’t really kept up with it especially because now there’s kernel support for openZFS in linux.

    • @TheGruselmops
      @TheGruselmops Před 3 lety

      @@tutoriaLinux Yeah, I'm really interested in both filesystems. I like BtrFS so far, haven't used ZFS yet. Maybe an Idea for a video?! Keep it up! Peace!

    • @owenstrange7630
      @owenstrange7630 Před 3 lety

      @@tutoriaLinux dave sorry.
      Can you help me a little bit?
      I couldn't find system.log file.
      It's usual stay in inside /var/log/apt/history.log in Ubuntu
      But i couldn't find it anywhere in the same location in Centos 8 :
      cd /var/log
      cd dnf
      bash: cd: dnf: No such file or directory.
      thank.

  • @stevefiorito5379
    @stevefiorito5379 Před 3 dny

    Great video! But, it is just one more thing that I need to learn ... to use Linux ... I always just wanted to just be a user, but that isn't really possible, unless you have and can afford a Linux tech ... which are few, and far between ... pretty much none existent in my neck of the woods. With videos like this, I can plod through my day to day activities on Linux (I'm on it almost all day long). I often try to humor the situation with an analogy: If you had to do to your car's CAN network what you have to do with Linux, ... before you could really use it, you'd never get out of the driveway.

  • @Felipe-53
    @Felipe-53 Před rokem

    Awesome!

  • @aminebouaita9202
    @aminebouaita9202 Před 3 lety

    Thank you !!

  • @aussierule
    @aussierule Před 2 lety

    I installed Debian Bullseye on a fresh HDD , chose auto install with swap, and it chose the btrfs filesystem. I was just analyzing my disk in gparted after boot and noticed my hard drive is not mounted but instead my home directory is the only thing mounted called file system and when I view the path its a path to an inode which I assume is on the unmounted HDD. My question is if its not mounted how does it write the data and save in between powering it off? Does it write the files before shutdown?

  • @qsmfoui
    @qsmfoui Před měsícem

    for my taste this was scratching a little bit on the surface. there is a little more to it to get a better understanding of the filesystem. i wish you would make a video with some visualized hierarchy of how the superblock, group descriptors and inodes work together with the memory blocks. anyways it was a great video

  • @albertovillacorta8045
    @albertovillacorta8045 Před 3 lety +1

    Hit me with that ZedFS knowledge! I just like how the British say it.

  • @9Steff99
    @9Steff99 Před 2 lety

    so are all the inodes created when the file system is installed or does it just allocate a fixed amount of memory for later storing inodes?

  • @david2358
    @david2358 Před 3 měsíci

    Subscribed 🎉

  • @Achrononmaster
    @Achrononmaster Před rokem

    Searching your channel content there's no vdo on ZFS. @7:40 kinda' begs for a ZFS tutorial. There are RAM chew-up and licencing issues right?

  • @VikasYadav-wi7zu
    @VikasYadav-wi7zu Před 2 lety

    I love you dude

  • @kocho4242
    @kocho4242 Před 2 lety

    So that is basically flaw of the specific filesystem? If I understand correctly, architect of the filesystem didn't predict such case. I think it is something wrong with filesystem design if there is still a space on the storage, but inodes limit has been exceeded. Only ZFS is free it?

    • @tutoriaLinux
      @tutoriaLinux  Před 2 lety

      I wouldn’t necessarily call it a flaw, just a design tradeoff that was made, combined with poor defaults on most Linux distributions.

  • @berrywin
    @berrywin Před rokem

    Very interesting and useful! I would push the like button if you turned of the music. So distracting, especially if you don't have English as your native language!

  • @killaken2000
    @killaken2000 Před 3 lety

    with `ls -l` the second column is the link count

  • @venc0r
    @venc0r Před 3 lety

    Do you have any oppinion or advice, werther its good or rubbish to use zfs on vmware vmdks?

    • @tutoriaLinux
      @tutoriaLinux  Před 3 lety

      I'm not a storage expert -- maybe someone else can chime in?

  • @programminginterviewsprepa7710

    So it the data structure behind the file system would that explain it in one sentence?

    • @tutoriaLinux
      @tutoriaLinux  Před 2 lety

      Well, it’s part of the kernel data structure that represents individual nodes of the filesystem tree. I don’t know if there’s a one-sentence explanation that captures everything about the linux filesystem, including implementation details like inodes. Once you start digging, things get a bit complicated.

  • @zorrzoor
    @zorrzoor Před 3 lety +1

    When working in ops, please! Always monitor inodes and not just used/free space. And please, always use a monitoring system! ;) information is power

    • @_sl3600
      @_sl3600 Před 3 lety

      Heh, I once had to troubleshoot centreon (nagios) just dying on a friday - turns out it had run out of inodes due to some network equipment flooding it with traps. Of course, inodes on the monitoring server were not monitored ;) (or even... anywhere, now I think of it).

  • @inaciopaiva1536
    @inaciopaiva1536 Před 3 lety

    I didn't understand why the system would run out of numbers as inodes before run out of storage.

    • @tutoriaLinux
      @tutoriaLinux  Před 3 lety +3

      If you have a system that gets filled up with tiny files, it can happen that you run out of inodes before you run out of disk space. Inodes are usually calculated from “average filesize” (or a default number like 4096bytes), divided into filesystem size. If, when the system is in production, you have a huge influx of files smaller than this “average” you can end up with inode exhaustion. The example in the video was of a hacked server hosting hundreds of static sites with lots of tiny files, which I’ve seen in the wild. I hope that helps!

  • @Leo_de_janeiro
    @Leo_de_janeiro Před 2 lety

    where is the filename stored ?

  • @karankhatter
    @karankhatter Před rokem

    real talk it happens

  • @mk-gc4fj
    @mk-gc4fj Před 2 lety

    if you're using a happy, lucky, wonderful, futuristic, filesystem like zfs *dance music starts*

  • @DineshKumarVellore
    @DineshKumarVellore Před 2 lety

    Files having the inode number 9077

  • @antoniabroscheta7470
    @antoniabroscheta7470 Před 2 lety +1

    i cant read blue on purple!

  • @islandcave8738
    @islandcave8738 Před 3 lety

    This inode exhaustion is the problem I just ran into.

  • @IvanZupancic
    @IvanZupancic Před 3 lety

    nice background music :)
    no really, .. it's fine

  • @GrandpasPlace
    @GrandpasPlace Před 3 lety

    I was wrong, trying to pull it from my memory of 30 years ago. (Removed so as not to confuse others)

    • @tutoriaLinux
      @tutoriaLinux  Před 3 lety

      Maybe I'm misunderstanding what you're saying, but aren't you describing block size? I think inodes are a fixed-size operating system datastructure (just a C struct, I think) that gets populated as needed. The file data itself isn't written into inodes, only a reference to the disk blocks that store the actual data. And the data written onto those blocks can be in whatever blocksize you specified when creating your filesystem.

    • @GrandpasPlace
      @GrandpasPlace Před 3 lety

      @@tutoriaLinux You are right, I was thinking of block size and balancing the inodes for the smaller block size. That is what I get for trying to do it from 30 year memory. lol

  • @davidwilliss5555
    @davidwilliss5555 Před 3 lety

    ls -l does tell you how many hard-links there are. It's between the permissions and the owner name.

    • @tutoriaLinux
      @tutoriaLinux  Před 3 lety

      In retrospect I honestly don't know how I missed that.

  • @luiscosme1154
    @luiscosme1154 Před 3 lety

    Could you please re-upload this video without the music in the background?

    • @luiscosme1154
      @luiscosme1154 Před 3 lety

      Oh great I just noticed that it stops at about 4 1/2 minutes, it was so distracting in the background that I couldn’t concentrate on what you were saying

  • @philspaghet
    @philspaghet Před 3 lety

    5:45 LOL I nearly spat out my water XD

  • @captainhaxs
    @captainhaxs Před 3 lety

    lol im checking all my machines now to make sure i didnt run out.

  • @catharperfect7036
    @catharperfect7036 Před 8 měsíci

    i-nodes? More like i-modes! L.O.L!

  • @pswalia2u
    @pswalia2u Před 3 lety

    Nice info. Why do you think, somebody will hack server for hosting porn site 😂?

    • @tutoriaLinux
      @tutoriaLinux  Před 3 lety

      I saw it a bunch of times when I was working in web security! Crazy things.