My most informative video yet! Let's build ourselves a Linux!

แชร์
ฝัง
  • เผยแพร่เมื่อ 23 ก.ย. 2024
  • Thanks to PCBway for sponsoring this video! www.pcbway.com/ 💪
    🚀 Link to the tutorial, accompanying this video: docs.mono.si/t...
    ➡️ Part one video: • How Linux Boots on an ...
    Useful links for more research:
    ➡️ Linux kernel archives: kernel.org/
    ➡️ NXP linux kernel repository: github.com/nxp...
    ➡️ Bootlin cross compile tutorials: bootlin.com/do...
    ➡️ Debootstrap: wiki.debian.or...
    ➡️ Linux from scratch: www.linuxfroms...
    ➡️ Best tool for flashing SD/USB etcher.balena.io/

ความคิดเห็น • 81

  • @Nec89
    @Nec89 20 ชั่วโมงที่ผ่านมา +42

    I built a whole linux once. I'm now on blood pressure medication and at increased risk for a stroke!

    • @monad_tcp
      @monad_tcp 32 นาทีที่ผ่านมา

      I was trying to build Debian from scratch, then I notice the problem is Debian, not Linux. Now I'm a recovering addict, I only use Linux from scratch or Arch.

  • @bastian9945
    @bastian9945 19 ชั่วโมงที่ผ่านมา +7

    I want to establish the 80/30 rule. getting the feeling to understand a topic up to 80% after watching your 30 minute video. I love it. 😂

  • @RandomUser2401
    @RandomUser2401 21 ชั่วโมงที่ผ่านมา +13

    You and your videos really have a unique vibe that I kinda got addicted to. Even though I am very familiar with embedded systems, you also always manage to teach me a lot of new stuff and to go deeper in fields that I thought I knew a lot about, like bootloaders.

    • @tomazzaman
      @tomazzaman  20 ชั่วโมงที่ผ่านมา +4

      Thank you for the kind comment. It's these that keep me going! 🙌

    • @RandomUser2401
      @RandomUser2401 20 ชั่วโมงที่ผ่านมา +1

      @@tomazzaman It's a pleasure :)

  • @zrizzy6958
    @zrizzy6958 22 ชั่วโมงที่ผ่านมา +11

    Linux+One of your videos it's just a perfect fit for me

  • @EFazy
    @EFazy 20 ชั่วโมงที่ผ่านมา +8

    Also: making /boot read only after you finished is a nice touch of security, since if someone get in, the only way to mess with the kernel is became root somehow. I've managed servers, where the /usr/ was read-only by default, and you had to run a command as root (or sudo) to remount rw, and upgrade the system.

    • @bigpod
      @bigpod ชั่วโมงที่ผ่านมา

      personnaly im of opinion that most of linux filesystem should be RO (with exception of /etc /var /home) and in fact should be updated trough images like android is

  • @shapelessed
    @shapelessed 18 ชั่วโมงที่ผ่านมา +6

    "It has been 0 days since I recompiled the linux karnel"

    • @MelroyvandenBerg
      @MelroyvandenBerg 17 ชั่วโมงที่ผ่านมา

      Kernel*

    • @shapelessed
      @shapelessed 17 ชั่วโมงที่ผ่านมา

      @@MelroyvandenBerg Are you annoyed yet?

    • @AchievedZeus574
      @AchievedZeus574 16 ชั่วโมงที่ผ่านมา

      Arch users

  • @tompointdll
    @tompointdll 4 ชั่วโมงที่ผ่านมา +1

    As Jeff Geering would say "It has been 0 days since i've recompiled the linux kernel"

  • @ksenchy
    @ksenchy 22 ชั่วโมงที่ผ่านมา +13

    Wooping 200MB... While I'm downloading a 130GB game 😂

    • @tomazzaman
      @tomazzaman  21 ชั่วโมงที่ผ่านมา +9

      As long as it's not CoD, we can be friends. 😂

    • @ksenchy
      @ksenchy 21 ชั่วโมงที่ผ่านมา +4

      @@tomazzaman God of war Ragnarok 😂

    • @tomazzaman
      @tomazzaman  21 ชั่วโมงที่ผ่านมา +11

      I approve. Already bought it, but haven't had the time to play it yet. Trying to Escape from Tarkov ATM. 😅

    • @ksenchy
      @ksenchy 21 ชั่วโมงที่ผ่านมา +2

      @@tomazzaman it does use 175GB after it's uncompressed. This is insane 😭
      Tarkov is good but it demands a huge time investment if you want to fully complete a wipe / season

    • @tomazzaman
      @tomazzaman  21 ชั่วโมงที่ผ่านมา +5

      My 6th wipe. But don't tell anyone. 🫡

  • @PugnaEnjoyer
    @PugnaEnjoyer 19 ชั่วโมงที่ผ่านมา +1

    Your explanations and body language are top tier

  • @TokkanFX
    @TokkanFX 20 ชั่วโมงที่ผ่านมา +3

    You Sir are a star.

  • @mullvaden83
    @mullvaden83 21 ชั่วโมงที่ผ่านมา +4

    Is the plan to have a web interface on the router when its done to do configs? Or will it be command line only? I really hope you make a web interface like for ex Unifi

    • @tomazzaman
      @tomazzaman  21 ชั่วโมงที่ผ่านมา +5

      Yes, actually it's the end goal for me, in a manner of speaking.

  • @oliverer3
    @oliverer3 11 ชั่วโมงที่ผ่านมา +1

    Ooo! Impecable timing!
    I've somehow found myself designing two different custom SoM-esque boards at once that I'll eventually need to figure out how to run some form of embedded linux on.
    I have a bad habit of just going for it and hoping I'll be able to learn what I'm lacking on the way. xD

    • @tomazzaman
      @tomazzaman  7 ชั่วโมงที่ผ่านมา

      Same hahaha

  • @laser-sj
    @laser-sj 22 ชั่วโมงที่ผ่านมา +4

    Agree 100% with you about Linux. 😂

  • @worgle123
    @worgle123 17 ชั่วโมงที่ผ่านมา +3

    I still reckon anybody can learn Linux. Avoid Arch for a couple years, and figure out package-managers/CUPS and you're set.

    • @Mooooov0815
      @Mooooov0815 6 ชั่วโมงที่ผ่านมา

      Absolutely. I think it entirely depends on you want to do. I feel like a person whose main computing experience consists of using a Webbrowser and a mail program will have an easier time switching than a person who is very experienced using Mac or windows

    • @AnnatarTheMaia
      @AnnatarTheMaia 4 ชั่วโมงที่ผ่านมา

      That time would be better spent mastering illumos and one of the distributions based upon it.

  • @sanjikaneki6226
    @sanjikaneki6226 19 ชั่วโมงที่ผ่านมา +2

    hmm at this point you should be able to have internet access and be able to run MII command for HW debug and even test Ethernet speed.
    Did you do this already? how are the preliminary results?

    • @tomazzaman
      @tomazzaman  18 ชั่วโมงที่ผ่านมา

      Can you clarify? Preliminary results of?

    • @sanjikaneki6226
      @sanjikaneki6226 12 ชั่วโมงที่ผ่านมา

      @@tomazzaman as in test those special fancy package routing periferals in your mpu. Or if you can get an acceptable speed in practice with x sfp.

  • @jhirschma
    @jhirschma 20 ชั่วโมงที่ผ่านมา +2

    Why not use buildroot, or perhaps yocto? I'd love to see tutorials for either or both

    • @bigpod
      @bigpod 17 ชั่วโมงที่ผ่านมา +1

      dont both of those basically force you to use binaries which you might need to build yourself, why going with something like debian, you can rely on already existing ecosystem

    • @oliverer3
      @oliverer3 11 ชั่วโมงที่ผ่านมา

      From my admittedly limited understanding Yocto is more meant for the use case where you need to target many different hardware architectures or configurations, so it's more flexible but requires much more upfront configuration and has a learning curve reminiscent of a cliff from my dabbling.
      Build root is essentially the other end of the spectrum, target a single platform and get from zero to a running system as fast as possible, it's also much easier to pick up.
      Another major difference is that neither of these tools use an existing distro as I understand it, they instead essentially make their own from the kernel and the packages of your choice giving you a lot of control but also more homework.

  • @sasjadevries
    @sasjadevries 16 ชั่วโมงที่ผ่านมา +2

    I like Linux as a desktop, mobile and cloud OS. But for embedded applications I probably wouldn't use it everywhere, and look at different options per usecase.

  • @pahnazd
    @pahnazd 19 ชั่วโมงที่ผ่านมา +2

    "Linux, it's easy!"
    then spends 3 hours troubleshooting one of the many issues when building a distro from scratch

  • @jirihoogeveen3775
    @jirihoogeveen3775 22 ชั่วโมงที่ผ่านมา +1

    LinuxFromScratch ♥♥♥

  • @PuOop-j9l
    @PuOop-j9l 20 ชั่วโมงที่ผ่านมา +2

    man if you buy a threadripper you could compile this stuff in a quarter of the time your m1 studio does, just use vscode remotely to it

    • @capability-snob
      @capability-snob 19 ชั่วโมงที่ผ่านมา

      For a few bucks per hour you can get something 2-3 times the size in the cloud. I've definitely learned my lesson from buying pricy workstations that spend 95% of their time doing nothing but running Emacs.

    • @PuOop-j9l
      @PuOop-j9l 18 ชั่วโมงที่ผ่านมา

      @@capability-snob cloud is the worst solution ever for compiling linux kernel. Must there be a reason for Torvaldis to have a threadripper system instead of going cloud

    • @bigpod
      @bigpod 17 ชั่วโมงที่ผ่านมา

      @@PuOop-j9l because he is building them all the time and by all the time i do mean all the time

    • @sasjadevries
      @sasjadevries 16 ชั่วโมงที่ผ่านมา

      How does crosscompiling an ARM kernel on an AMD CPU compare to compiling an X86 kernel on the same CPU?

    • @bigpod
      @bigpod 16 ชั่วโมงที่ผ่านมา

      @@sasjadevries honestly slower idk (of the top op my head) how much but slower.
      There will always be some slowdown but depending on implementation of cross compilation can be extremely small

  • @padraigconnolly2991
    @padraigconnolly2991 20 ชั่วโมงที่ผ่านมา +1

    What does 0x80000000 represent in your tftp command?

    • @tomazzaman
      @tomazzaman  20 ชั่วโมงที่ผ่านมา +1

      Memory address where I store the file into. See my previous video, it's all explained there.

  • @Yasen6275
    @Yasen6275 9 ชั่วโมงที่ผ่านมา

    Why use systemd on embeded system? Why not using Devuan, which is Debian with good old systemV init scripts?

    • @tomazzaman
      @tomazzaman  7 ชั่วโมงที่ผ่านมา

      Perfectly valid choice too!

  • @DeadlyDragon_
    @DeadlyDragon_ 16 ชั่วโมงที่ผ่านมา

    Here is a good question for you. JunOS from Juniper has this concept of snapshot partitions. Where the OS creates a snapshot of everything needed to run the OS. Should something go wrong with the primary partition it will boot from the secondary. This saves you from a bad update that wrecks the primary partition. However it also goes a step further allowing the creation of a bootable USB based snapshot partition.
    Can this kind of functionality be worked into your vision?

    • @tomazzaman
      @tomazzaman  7 ชั่วโมงที่ผ่านมา +1

      A good question indeed. This tutorial was a bit more, let's say _general_ in scope/approach, rather than highly specific for our board. We are reviewing how other devices of a similar class and functionality are solving this issue, because we need to support both, so tinkerers like myself, who prefer more hands on, as well as people that just want it to, well be a router, and don't care what's under the hood.

    • @rnts08
      @rnts08 7 ชั่วโมงที่ผ่านมา

      I miss working with junos, the snapshots were a nice feature if something happened to the main configuration. You can probably achieve something similar with lvm2 or xfs/btrfs. Snapshots should be thin anyway.

    • @DeadlyDragon_
      @DeadlyDragon_ 2 ชั่วโมงที่ผ่านมา

      @@rnts08 agreed, I also recently learned that juniper devices have 2 different storage devices one for recovery based partition slices and your main storage where normal slices are contained. Should your primary fail it’ll try the backup flash chip. Should that fail theres a USB recovery slice.

    • @DeadlyDragon_
      @DeadlyDragon_ 2 ชั่วโมงที่ผ่านมา

      @@tomazzaman i strongly recommend looking at JunOS / junipers SRX/MX series devices for sure they have some absolutely incredible hardware / software. Can pick up an srx-300 series device off of fleabay for a decent price.

    • @bigpod
      @bigpod ชั่วโมงที่ผ่านมา

      @@tomazzaman i recommend also looking at how steamOS on steamdeck works and how coreOS and how android works. With CoreOS providing basically best customizability in conjunction with best recoverability/ability not to break RootFS

  • @bigpod
    @bigpod 16 ชั่วโมงที่ผ่านมา +1

    you really dont need to know how to put togehter a linux distro(or build your own rootFS from scratch) to be using it
    also debootstrap is correct way to build a debian system from scratch

  • @thehady1
    @thehady1 21 ชั่วโมงที่ผ่านมา +1

    Why not use something like armbian

    • @tomazzaman
      @tomazzaman  21 ชั่วโมงที่ผ่านมา +2

      You could, definitely. It's not one or the other, both are equally valid options.

  • @mworld
    @mworld 5 ชั่วโมงที่ผ่านมา

    The video title is true.

  • @winsucker7755
    @winsucker7755 21 ชั่วโมงที่ผ่านมา +1

    I run Debian btw

    • @MelroyvandenBerg
      @MelroyvandenBerg 17 ชั่วโมงที่ผ่านมา

      I run Linux Mint btw

  • @EFazy
    @EFazy 20 ชั่วโมงที่ผ่านมา

    Copying 252GB of nothing sounds fun :D

    • @tomazzaman
      @tomazzaman  20 ชั่วโมงที่ผ่านมา +2

      I prefer eating pizza as a way of having fun :D

  • @MrBigbanan
    @MrBigbanan 22 ชั่วโมงที่ผ่านมา +1

    I need to my IQ 220 to contribute significantly ? I dont have all the peptides atm.

  • @h.i.t.m.a.n_47_911
    @h.i.t.m.a.n_47_911 6 ชั่วโมงที่ผ่านมา

    what a nightmare

  • @gh975223
    @gh975223 9 ชั่วโมงที่ผ่านมา

    come on you really should build Linux From Scratch then you will know rock hard! normal Linux distributions are easy peasy! NB Android is a Linux Distrution!

  • @lumarel
    @lumarel 19 ชั่วโมงที่ผ่านมา +1

    The "easy" at the end caught me :D
    Awesome video! Already have quite a bit of knowledge about building Linux but learning here about Embedded stuff!
    Did you already work with yocto/yoctobuild? Hearing frequently it being used to build embedded system images

    • @tomazzaman
      @tomazzaman  18 ชั่วโมงที่ผ่านมา +1

      Nope, but it's been on my to-do list for a while. Afraid of starting, because it'll pull me in for sure! :) And buildroot is so easy to get started with :)