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

  Рет қаралды 16,189

Tomaž Zaman

Tomaž Zaman

Күн бұрын

Пікірлер: 130
@tompointdll
@tompointdll 3 ай бұрын
As Jeff Geering would say "It has been 0 days since i've recompiled the linux kernel"
@Nec89
@Nec89 3 ай бұрын
I built a whole linux once. I'm now on blood pressure medication and at increased risk for a stroke!
@monad_tcp
@monad_tcp 3 ай бұрын
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.
@RandomUser2401
@RandomUser2401 3 ай бұрын
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 3 ай бұрын
Thank you for the kind comment. It's these that keep me going! 🙌
@RandomUser2401
@RandomUser2401 3 ай бұрын
@@tomazzaman It's a pleasure :)
@bastian9945
@bastian9945 3 ай бұрын
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. 😂
@EFazy
@EFazy 3 ай бұрын
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 3 ай бұрын
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
@grekiki
@grekiki 3 ай бұрын
​@@bigpodI sometimes want to write to /tmp :)
@bigpod
@bigpod 3 ай бұрын
@@grekiki yea kinda forgot about /tmp because of its ephemerality which means it is/can be a mount of some sort
@dimitrioskoulartsas6184
@dimitrioskoulartsas6184 2 ай бұрын
I have been running NixOS on my servers lately, where /nix/store is mounted as ro by default. I haven't thought of mounting those directories as ro, as I was always configuring my servers with the assumption that if anyone manages to escape the containers, the server is screwed anyway.
@GinaMoriarty
@GinaMoriarty 3 ай бұрын
This was the most informative video yet!
@PugnaEnjoyer
@PugnaEnjoyer 3 ай бұрын
Your explanations and body language are top tier
@bastian775
@bastian775 3 ай бұрын
ahh yes this reminds me somewhat of the good old days of installing Gentoo linux while manually compiling the kernel with just the hardware you run on, and compiling all software....
@zrizzy6958
@zrizzy6958 3 ай бұрын
Linux+One of your videos it's just a perfect fit for me
@TokkanFX
@TokkanFX 3 ай бұрын
You Sir are a star.
@DJDocsVideos
@DJDocsVideos Ай бұрын
A little tip: use partition label and mount by label. you can skit the editing of fstab by hand.
@oliverer3
@oliverer3 3 ай бұрын
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 3 ай бұрын
Same hahaha
@shapelessed
@shapelessed 3 ай бұрын
"It has been 0 days since I recompiled the linux karnel"
@MelroyvandenBerg
@MelroyvandenBerg 3 ай бұрын
Kernel*
@shapelessed
@shapelessed 3 ай бұрын
@@MelroyvandenBerg Are you annoyed yet?
@AchievedZeus574
@AchievedZeus574 3 ай бұрын
Arch users
@MelroyvandenBerg
@MelroyvandenBerg 3 ай бұрын
@@shapelessed yes xD
@MelroyvandenBerg
@MelroyvandenBerg 3 ай бұрын
@@AchievedZeus574 Linux Mint actually
@mullvaden83
@mullvaden83 3 ай бұрын
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 3 ай бұрын
Yes, actually it's the end goal for me, in a manner of speaking.
@vmaxmadness
@vmaxmadness 3 ай бұрын
I'm happy to keep to Linux use and playing with all the wonderful toys.
@fusca14tube
@fusca14tube 3 ай бұрын
Awesome!!! Just one advice: use a larger terminal font size because its very difficult to resd from mobile device. Tks.
@tomazzaman
@tomazzaman 3 ай бұрын
Noted, thank you for the suggestion!
@michaelgleason4791
@michaelgleason4791 3 ай бұрын
Linux is as difficult as Windows. People want to compare their 20 years of Windows experience to 20 minutes of Linux and say "Linux is too hard."
@tomazzaman
@tomazzaman 3 ай бұрын
Spot on.
@ronalerquinigoagurto555
@ronalerquinigoagurto555 2 ай бұрын
Both systems are complex. You dont learn from one day to another all the combinations and outcomes of such conplex systems
@treyquattro
@treyquattro 2 ай бұрын
are you Michael Horn's dad? Very good tutorial! I always learn something from Linux KZbinrs. (ETA: subbed)
@tomazzaman
@tomazzaman 2 ай бұрын
Haha, thank you!
@DJDocsVideos
@DJDocsVideos Ай бұрын
"keep in mind we only have 3.5 GB lol that's an entire Debian Desktop system.
@jirihoogeveen3775
@jirihoogeveen3775 3 ай бұрын
LinuxFromScratch ♥♥♥
@ksenchy
@ksenchy 3 ай бұрын
Wooping 200MB... While I'm downloading a 130GB game 😂
@tomazzaman
@tomazzaman 3 ай бұрын
As long as it's not CoD, we can be friends. 😂
@ksenchy
@ksenchy 3 ай бұрын
@@tomazzaman God of war Ragnarok 😂
@tomazzaman
@tomazzaman 3 ай бұрын
I approve. Already bought it, but haven't had the time to play it yet. Trying to Escape from Tarkov ATM. 😅
@ksenchy
@ksenchy 3 ай бұрын
@@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 3 ай бұрын
My 6th wipe. But don't tell anyone. 🫡
@wolfgangpreier9160
@wolfgangpreier9160 3 ай бұрын
Up until centos i always had to make my own kernel. Since DLD 1.0 somewhere in the beginning of the 1990s.
@sanjikaneki6226
@sanjikaneki6226 3 ай бұрын
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 3 ай бұрын
Can you clarify? Preliminary results of?
@sanjikaneki6226
@sanjikaneki6226 3 ай бұрын
@@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.
@foobar9761
@foobar9761 3 ай бұрын
Great vid, well done!
@jhirschma
@jhirschma 3 ай бұрын
Why not use buildroot, or perhaps yocto? I'd love to see tutorials for either or both
@bigpod
@bigpod 3 ай бұрын
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 3 ай бұрын
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.
@jhirschma
@jhirschma 3 ай бұрын
@@oliverer3 I'm pretty sure that buildroot allows you to create a customized Debian install.
@marcogenovesi8570
@marcogenovesi8570 3 ай бұрын
Why use buildroot or yocto when you can just use Debian? There is a reason if not a lot of people do buildroot and yocto tutorials
@marcogenovesi8570
@marcogenovesi8570 3 ай бұрын
@@jhirschma the point of buildroot is to automate the creation of a LFS (linux from scratch) system. Debian has its own image building infrastructure
@pahnazd
@pahnazd 3 ай бұрын
"Linux, it's easy!" then spends 3 hours troubleshooting one of the many issues when building a distro from scratch
@cristinelcostachescu9585
@cristinelcostachescu9585 3 ай бұрын
So, here we are: Linux. It wasn't that hard, at all, I only needed a Tomaz to make a 30 minute tutorial and post it on KZbin, 15 years later than when I was breaking my system. Better later than never! 🎉 Jokes apart, nice job! I'm still eager to see more hardware hacking though :)
@padraigconnolly2991
@padraigconnolly2991 3 ай бұрын
What does 0x80000000 represent in your tftp command?
@tomazzaman
@tomazzaman 3 ай бұрын
Memory address where I store the file into. See my previous video, it's all explained there.
@DeadlyDragon_
@DeadlyDragon_ 3 ай бұрын
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 3 ай бұрын
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 3 ай бұрын
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_ 3 ай бұрын
@@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_ 3 ай бұрын
@@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 3 ай бұрын
@@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
@worgle123
@worgle123 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 3 ай бұрын
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 3 ай бұрын
That time would be better spent mastering illumos and one of the distributions based upon it.
@winsucker7755
@winsucker7755 3 ай бұрын
I run Debian btw
@MelroyvandenBerg
@MelroyvandenBerg 3 ай бұрын
I run Linux Mint btw
@DistroUser
@DistroUser 3 ай бұрын
There is no need to compile anything if you download an ISO file that has a complete operating system on it ! Linux comes in many flavors, however, I would suggest starting with Linux Mint and learn from there. Google on how to install Linux Mint and you are on your way! Cheers
@thehady1
@thehady1 3 ай бұрын
Why not use something like armbian
@tomazzaman
@tomazzaman 3 ай бұрын
You could, definitely. It's not one or the other, both are equally valid options.
@YouTubeExpertZesan
@YouTubeExpertZesan 3 ай бұрын
waiting for new video
@mworld
@mworld 3 ай бұрын
The video title is true.
@Yasen6275
@Yasen6275 3 ай бұрын
Why use systemd on embeded system? Why not using Devuan, which is Debian with good old systemV init scripts?
@tomazzaman
@tomazzaman 3 ай бұрын
Perfectly valid choice too!
@marcogenovesi8570
@marcogenovesi8570 3 ай бұрын
Why use a downstream distro when you can use Debian? Who cares about the init system
@Yasen6275
@Yasen6275 3 ай бұрын
@@marcogenovesi8570 Because of less resources used. While on PC it's less relevant, on embedded it is a valid concern.
@marcogenovesi8570
@marcogenovesi8570 3 ай бұрын
@@Yasen6275 Afaik not in this case, they have 1-2GB of RAM, using a few MB more isn't significant and not worth the tradeoff of losing systemd features. We are reaching a point where even routers have GBs of RAM, just because that's the smallest RAM chip they can buy at all.
@Yasen6275
@Yasen6275 3 ай бұрын
@@marcogenovesi8570 What features exactly are so important on embedded system?
@dimitrioskoulartsas6184
@dimitrioskoulartsas6184 2 ай бұрын
While I am experienced with Linux and I understood every part of the video, I still got a headache. I had never realized how much of a pain it is to build an image for an embedded device.
@tomazzaman
@tomazzaman 2 ай бұрын
Actually, We're using PCIe lanes for wifi support. CPU already comes with SerDes lanes that can be configured in certain ways, so we squeezed the max out of them: 3x GbE ports and 2x 10GbE SFP+ ones.
@bigpod
@bigpod 3 ай бұрын
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
@PuOop-j9l
@PuOop-j9l 3 ай бұрын
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 3 ай бұрын
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 3 ай бұрын
@@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 3 ай бұрын
@@PuOop-j9l because he is building them all the time and by all the time i do mean all the time
@sasjadevries
@sasjadevries 3 ай бұрын
How does crosscompiling an ARM kernel on an AMD CPU compare to compiling an X86 kernel on the same CPU?
@bigpod
@bigpod 3 ай бұрын
@@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
@laser-sj
@laser-sj 3 ай бұрын
Agree 100% with you about Linux. 😂
@KnottyDoctor
@KnottyDoctor 3 ай бұрын
👍
@sasjadevries
@sasjadevries 3 ай бұрын
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.
@EFazy
@EFazy 3 ай бұрын
Copying 252GB of nothing sounds fun :D
@tomazzaman
@tomazzaman 3 ай бұрын
I prefer eating pizza as a way of having fun :D
@SuperHaptics
@SuperHaptics Ай бұрын
One day hopefully the smart linux people will make it the os for the normal people, without all of this messing about, and then all the rest of us bump ones will start using it 😂. I mean you need an expert who is either a genius, or has already spent a few years fighting with it to do anything above average. Isn't that a huge limitation for its adoption? An this comes from someone who is developing bare metal microcontroller systems for motor controll, networking etc
@NeptuneSega
@NeptuneSega 3 ай бұрын
Zaman OS
@gh975223
@gh975223 3 ай бұрын
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!
@comosaycomosah
@comosaycomosah 3 ай бұрын
beyond disappointed in debians latest bs
@Saint_Anger
@Saint_Anger 3 ай бұрын
Linux isn't friendly to any one it is designed that way
@h.i.t.m.a.n_47_911
@h.i.t.m.a.n_47_911 3 ай бұрын
what a nightmare
@lumarel
@lumarel 3 ай бұрын
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 3 ай бұрын
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 :)
How Linux Boots on an Embedded Device - part 1
22:09
Tomaž Zaman
Рет қаралды 11 М.
The Perfect Home Server 2025 - 56TB, ECC, IPMI, Quiet & (kind of) Compact
24:19
Mom Hack for Cooking Solo with a Little One! 🍳👶
00:15
5-Minute Crafts HOUSE
Рет қаралды 23 МЛН
Что-что Мурсдей говорит? 💭 #симбочка #симба #мурсдей
00:19
Beat Ronaldo, Win $1,000,000
22:45
MrBeast
Рет қаралды 158 МЛН
The Making of Linux: The World's First Open-Source Operating System
11:33
ForrestKnight
Рет қаралды 1,3 МЛН
How Linux Kernel Runs Executables
16:46
Nir Lichtman
Рет қаралды 51 М.
Why I Can't Use Linux - My Top 3 Reasons
26:05
Tek Syndicate
Рет қаралды 149 М.
10 Gb/s throughput without using CPU cores? ✅ Check.
13:46
Tomaž Zaman
Рет қаралды 37 М.
Can a single 1.2 GHz core process 10 Gb/s? Yes, it can!
20:54
Tomaž Zaman
Рет қаралды 33 М.
Why Compile a Linux Kernel from Source?
13:38
DJ Ware
Рет қаралды 32 М.
How A Steam Bug Deleted Someone’s Entire PC
11:49
Kevin Fang
Рет қаралды 1 МЛН
I switched to Linux 30 days ago... How did it go?
28:46
Craft Computing
Рет қаралды 299 М.
The mind behind Linux | Linus Torvalds | TED
21:31
TED
Рет қаралды 6 МЛН
Mom Hack for Cooking Solo with a Little One! 🍳👶
00:15
5-Minute Crafts HOUSE
Рет қаралды 23 МЛН