[HN Gopher] Learning modern Linux: A handbook for the cloud nati...
___________________________________________________________________
Learning modern Linux: A handbook for the cloud native practitioner
Author : teleforce
Score : 122 points
Date : 2022-05-06 11:45 UTC (1 days ago)
(HTM) web link (www.oreilly.com)
(TXT) w3m dump (www.oreilly.com)
| leetrout wrote:
| I am so sick of the word practitioner.
|
| I don't have a better alternative but something about
| practitioner just feels so forced and stuffy.
|
| On the flip side I do like viewing operation of technical tooling
| in support of businesses as a practice to be continually
| improved. Most businesses don't really embrace that in my
| experience. If they did, even with it being a cost center, they
| would spend more time making sound decisions around tech being
| used (which would hopefully reduce the k8s mania).
| orangepurple wrote:
| I have a similar reaction when people are called consumers.
| They should just cut to the chase and call them what they
| really want to call them: useless eaters.
| readingnews wrote:
| I have been using linux since 1992, Solaris and UNIX (dec, etc)
| before then... I run Gentoo now on my box, compile my own
| kernels, etc. I admin 100s of linux boxes at work.. but there is
| verbiage that different people see totally differently:
|
| What does "Learn critical components such as the Linux kernel"
|
| mean to the author? I have not read this book, but do they mean
| we are going kernel hacking or I will show you how to compile a
| kernel for cloud native applications (whatever that would mean,
| really)?
| hoppyhoppy2 wrote:
| The book's table of contents is viewable at the link, if that
| helps at all.
| docandrew wrote:
| I could probably use this. My muscle memory still reaches for
| "ifconfig".
| tra3 wrote:
| Me too. I just, yet again, rediscovered the ip command. This
| and moving to systemd from init are two things that always trip
| me up.
| GekkePrutser wrote:
| And the command line options for netstat, route etc.. But
| usually I just install net-tools :) I know it's outdated but my
| main driver is FreeBSD where these tools are still the normal
| toolchain.
| blub wrote:
| I've read some chapters from the linked book to complement "How
| Linux Works" from No Starch Press and while the information was
| useful and seemed correct, in the end I decided to stick with
| HLW, since it was both broader and deeper at ~460 vs 250 pages.
| kk6mrp wrote:
| So is this a book mostly on Linux or Linux with systemd?
| wrycoder wrote:
| The latter
| znpy wrote:
| Everything looks okay except for the section regarding other
| "friendly" shells: that's really the part where we as an industry
| don't need more fragmentation.
| plandis wrote:
| Disagree. In my experience it's way easier to use something
| like fish out of the box rather than spending hours configuring
| bash to your liking assuming you don't have your dot files made
| to your liking yet. If someone is just starting out I'd
| absolutely recommend something like fish or zsh over bash or
| csh.
| p5a0u9l wrote:
| History-based auto completion is a productivity game changer.
| But, You can get fish-like niceties with trivial effort in
| zsh.
|
| The deal breaker for be with fish is abandoning decades of
| bash syntax. With zsh, I can have my fancy, productive prompt
| and still write bash-compatible sheets scripts.
| aulin wrote:
| It's almost twenty years that I use Linux daily and the only
| thing I ever changed in .bashrc is the history size. What
| kind of customizations are we talking about? maybe I'm
| missing out using stock bash configuration and I should start
| customizing it to my liking it (serious, no sarcasm)
| barefeg wrote:
| Autocomplete from history is something I really enjoy from
| my config. I can live without the nice colors and data.
| Though having the execution time of the previous command
| has been very handy a few times
| sophacles wrote:
| Right, how dare people use tools that they find comfortable and
| enjoy using? What if they choose a tool that goes against your
| preferences, or worse (bad word coming, consider yourself
| warned) makes you have to _learn_ something?
| docandrew wrote:
| As a fish user myself, I'll admit there is something to be
| said for standardization. It's easy to poke fun at somebody
| for being afraid to learn something new - but with the
| explosion of different tools it's becoming impossible to stay
| abreast of all the changes and feel proficient in anything
| anymore.
| BirAdam wrote:
| Standardization builds industries and economies of scale.
| Having competing standards is great for technologists, but
| makes the current problem particularly painful: in job
| descriptions, employers now specify not just general
| technologies used but also particular frameworks, ci/cd
| tools, and on and on. So many tools that a person must be
| competent with using, that only a handful of people might
| know all of them on day one, which makes hiring much more
| expensive. You either pay over market rate for the perfect
| person, or hire someone decent and pay for them to learn
| the job. Ultimately, I think we're in a better place than
| we were without modern tooling, but it makes it hard to
| hire...
| jeroenhd wrote:
| I don't see the problem. I like zsh and I can live with bash.
| I've tried fish, but it just didn't click with me.
|
| Others swear by fish and how it revolutionised their terminal.
| Hell,I've seen people fall in love with Powershell of all
| shells because of its interactivity and cross platform
| scripting language that doesn't rely on Unix tools being
| present in $PATH. I don't get it, but that's okay; they can
| have their preferences and I can have mine.
|
| You've got to find what works for you. Nano, emacs, .*vim, vi,
| using a magnetic needle to manually flip bits on a spinning
| platter, it doesn't matter, whatever keeps you happy and/or
| productive.
|
| The vast majority of Linux users seem to use bash. Zsh has been
| picked up more and more by Apple for licensing and the "threat"
| of open source. I don't think shells like fish are a threat to
| the ecosystem as long as they keep the most basic form of
| compatibility with bash (not sh). You need bash installed
| anyway, otherwise you can't curl2bash to install "modern" Linux
| software!
| hedora wrote:
| The problem comes in when you need to manage 100's of
| machines, and there isn't a single shell that is in everyone
| on the team's muscle memory.
| jeroenhd wrote:
| That's why you can pick your favourite shell for your user
| account.
|
| If you all log in to the same account, you'll need to pick
| some standard. It doesn't really matter if the system
| decides on that standard or if you just ask the team what
| they prefer and pick the most popular shell. When in doubt,
| install all shells, log in to sh and let people start their
| shell of choice.
| znpy wrote:
| > That's why you can pick your favourite shell for your
| user account.
|
| nobody cares about user accounts. use whatever you want
| on your laptop, nobody cares.
|
| however if a script reaches a production server, it
| should either be sh, bash, or a real programming language
| (python/ruby/perl/whatever).
|
| the ugly stuff i've seen is that some snowflake user
| drops their scripts written in ${shell_of_the_week} and
| leaves, the script breaks and now i have there's this
| thing that has to be not only fixed, but possibly
| rewritten from scratch.
| theamk wrote:
| That's what sh or bash is for, a least common denominator
| present on every machine.
|
| Sure, it is not the same as your home machine - but even
| with the right shell, you customized config files woukd
| still be missing. So it is easier to get used to defaukt
| setup on defaut shell when managing many machines.
|
| (This is the reason I had to learn vi back in the day:
| sure, my machine has lovingly customized emacs.. But that
| old Sun one needs to debug? Vi only.)
| freedomben wrote:
| For that you have to standardize on bash compatible. It's
| ok if the exact command/syntax isn't in muscle memory. I've
| worked with a number of "alternative shell" fans and one
| thing that nearly everyone agrees on is that "bash
| compatible" is the lingua franca and the standard.
| icedchai wrote:
| I worked at a place that was forcing zsh on its
| developers, mainly because it has been "deprecated" on
| mac OS. It's not like you couldn't install the newest
| bash off of MacPorts or brew. Production ran on Linux,
| and zsh wasn't installed there. Better to be consistent,
| stick with the least common denominator: bash.
| mixmastamyk wrote:
| You don't use a shell for that, directly. Ansible, puppet,
| docker, etc.
| GekkePrutser wrote:
| What I love about PowerShell is that it allows you to pipe
| structured data between tools without needing to 'screen
| scrape' the output like on Linux.
|
| I still don't use it on Linux but I do think it's a big step
| forward for scripting.
| amelius wrote:
| What is the best book on the design/architecture of the Linux
| kernel?
| valbaca wrote:
| "A Heavily Commented Linux Kernel Source Code" by Zhao Jiong
| and "The Linux Programming Interface" by Michael Kerrisk are
| the best I'm aware of.
| alfiedotwtf wrote:
| Also Maxwell's "Linux Core Kernel Commentary" which also
| annotates the kernel. It's old so is based on 2.2, but its a
| gold mine
| nickmcc wrote:
| One very in-depth book I have is: The Linux Programming
| Interface: A Linux and UNIX System Programming Handbook
| fitnessrunner wrote:
| Have you read it? I recently purchased a copy, and the
| exercises look fun/useful.
| nbaksalyar wrote:
| Although it's not a book, the Linux documentation [1] is
| actually very good and does the job of explaining design and
| architecture of the kernel.
|
| I'd also suggest reading "Unix Internals" by Uresh Vahalia.
| While this book is from 1995 and it doesn't cover Linux
| specifically, it's an exceptional resource for understanding
| how *nix kernels work in general.
|
| [1] https://docs.kernel.org/
___________________________________________________________________
(page generated 2022-05-07 23:01 UTC)