Simon Willison’s Weblog

Subscribe

40 items tagged “linux”

2024

Hello World (via) Lennon McLean dives deep down the rabbit hole of what happens when you execute the binary compiled from “Hello world” in C on a Linux system, digging into the details of ELF executables, objdump disassembly, the C standard library, stack frames, null-terminated strings and taking a detour through musl because it’s easier to read than Glibc. # 9th April 2024, 1:06 am

2023

iSH: The Linux shell for iOS (via) Installing this iOS app gives you a full Linux shell environment running on your phone, using a “usermode x86 emulator”. You can even install packages: “apk add python3” gave me a working Python 3.9 interpreter, installed from the apk.ish.app repository.

I didn’t think this kind of thing was allowed by the App Store, but that’s not been the case for a few years now: Section 4.5.2 of the App Store guidelines clarifies that “Educational apps designed to teach, develop, or allow students to test executable code may, in limited circumstances, download code provided that such code is not used for other purposes.” # 31st December 2023, 4:20 am

Dynamic linker tricks: Using LD_PRELOAD to cheat, inject features and investigate programs (via) This tutorial by Rafał Cieślak from 2013 filled in a bunch of gaps in my knowledge about how C works on Linux. # 8th September 2023, 10:05 pm

Lima VM—Linux Virtual Machines On macOS (via) This looks really useful: “brew install lima” to install, then “limactl start default” to start an Ubuntu VM running and “lima” to get a shell. Julia Evans wrote about the tool this morning, and here Adam Gordon Bell includes details on adding a writable directory (by default lima mounts your macOS home directory in read-only mode). # 10th July 2023, 7:01 pm

2021

Weeknotes: Getting my personal Dogsheep up and running again

I gave a talk about Dogsheep at Noisebridge’s Five Minutes of Fame on Thursday. Just one problem: my regular Dogsheep demo was broken, so I ended up building it from scratch again. In doing so I fixed a few bugs in some Dogsheep tools.

[... 1311 words]

2017

TLDR pages. This is an absurdly good idea: a community maintained set of alternative man pages for common commands with a focus on usage examples, plus a “tldr netstat” command to see them. The man pages themselves are maintained on GitHub. # 24th November 2017, 5:38 am

Docker Containers on the Desktop (via) Jessie Frazelle’s classic explanation from 2015 of how she runs every desktop application on her Linux machine in its own Docker container. # 5th November 2017, 4:16 am

2013

What is the difference between Windows and Linux for web hosting, in other words, what are the pros and cons of each, each’s limitations, performance development environment and deployment between Windows and Linux?

Any and every operation you perform on a Linux server can be trivially automated by copying the commands you ran in to a text file. I haven’t managed a Windows server in years and I hear PowerShell is pretty great these days but an OS based around a GUI is always going to be harder to automate than one based around a command line.

[... 156 words]

2012

How can I download a web server’s directory and all subdirectories with one command?

Use wget (you can install it with apt-get install wget)

[... 90 words]

2010

What is a painless way for a non-Unix programmer to get started learning Unix or GNU/Linux?

I’d suggest getting yourself an Ubuntu virtual machine running on your own laptop—VirtualBox is free, so that’s a good starting point. That way you can play with Linux all you like without fear of breaking anything, since you can always delete the image or roll back to a snapshot.

[... 73 words]

Undelete! How to undelete a file accidentally removed using rm on Linux, by grepping through the raw bytes on the hard drive searching for a unique string that was contained in the file. “grep -a -B 25 -A 100 ’some string in the file’ /dev/sda1 > results.txt” # 21st August 2010, 10:56 am

Running Processes. I’ve been searching for a good solution to this problem (“run this program, and restart it if it falls over”) for years. I’m currently using god which works pretty well, but according to this article I should be learning upstart instead. It never ceases to amaze me how difficult this is, and how obtuse the tools are. # 2nd March 2010, 9:55 am

Linux performance basics. This kind of Linux knowledge is rapidly becoming a key skill for server-side web development. # 24th January 2010, 1:50 pm

The Maximal Usage Doctrine for Open Source. Yehuda Katz shares my own philosophy on Open Source licensing—stick BSD or MIT on it to maximise the number of people who can use it. The projects I work on are small enough that I don’t care if someone makes big private improvements and refuses to share them. I can see how much larger projects like Linux would disagree though. # 6th January 2010, 5:23 pm

2009

Using Graphics Card Memory as Swap (via) Interesting idea: “Graphic cards contain a lot of very fast RAM, typically between 64 and 512 MB. With Linux, it’s possible to use it as swap space, or even as RAM disk.” # 3rd November 2009, 11:01 am

Learning to compile things from source (on Unix/Linux/OSX). I asked on serverfault.com for tips on learning how to solve configure/make/install problems on my own, and got some extremely useful replies. # 27th July 2009, 4:21 pm

Ubuntu brings advanced Screen features to the masses. Ubuntu 9.04’s screen-profiles package adds a taskbar to screen and emulates the gnome panel. You can even add a widget showing the cost of your current EC2 session. # 28th April 2009, 9:52 pm

Introducing the Karmic Koala, our mascot for Ubuntu 9.10 (via) Ubuntu 9.10 will have a strong focus on cloud computing, including tools for easily creating EC2 AMIs and Eucalyptus, an open-source system for running an EC2-compatible cloud in your own data centre. # 21st February 2009, 5:19 pm

2008

[In Mali...] The outcome of this rampant illegal software copying is that Windows is seen as “the first world standard” and any attempt to push a cheaper alternative is strongly resisted. They consider it trying to cheat local people out of getting the same quality of software that is used in the developed world, even though it’s a legal way of getting quality software for free.

Jeremy Allison # 9th December 2008, 8:03 am

Ubuntu and Debian AMIs for Amazon EC2. Exactly what it says on the tin. # 8th December 2008, 6:04 pm

Happy Run Some Old Web Browsers Day! jwz has recreated home.mcom.com, the original home of the Mosaic Communications Corporation, using a snapshot from 21st October 1994 and a domain borrowed from current owner AOL. Also includes instructions on running 1994 Mosaic Netscape binaries under a modern Linux distro. # 31st March 2008, 5:54 pm

From my perspective, it is crucial for Linux to have good support for Silverlight because I do not want Linux on the desktop to become a second class citizen ever again. [...] The core of the debate is whether Microsoft will succeed in establishing Silverlight as a RIA platform or not. You believe that without Moonlight they would not have a chance of success, and I believe that they would have regardless of us.

Miguel de Icaza # 4th January 2008, 12:42 pm

The strain due to the fact that most business desktops are locked into the Microsoft platform, at a time when both the Apple and GNU/Linux alternatives are qualitatively safer, better, and cheaper to operate, will start to become impossible to ignore.

Tim Bray # 3rd January 2008, 1:08 pm

2007

The future of web standards. Nice analysis from James Bennett, who suggests that successful open source projects (Linux, Python, Perl etc) could be used as the model for a more effective standards process, and points out that Ian Hickson is something of a BDFL for the WHAT-WG. # 17th December 2007, 1:16 pm

Don’t EVER make the mistake that you can design something better than what you get from ruthless massively parallel trial-and-error with a feedback cycle. That’s giving your intelligence _much_ too much credit.

Linus Torvalds # 16th December 2007, 9:53 pm

BBC iPlayer now supports streaming Flash for Mac and Linux. Absolutely fantastic—it Just Works, you hit the homepage and you can be watching video in seconds. No need to even sign up for an account. I imagine IP ranges are used to block access from outside the UK. # 14th December 2007, 12:36 pm

Ubuntu JeOS 7.10 released. JeOS = “Just enough Operating System”—a minimal Ubuntu image designed for creating “virtual applications” that are embedded in a VMWare (or similar) virtual machine. # 18th November 2007, 12:22 am

It’s easier for our software to compete with Linux when there’s piracy than when there’s not. Are you kidding? You can get the real thing, and you get the same price.

Bill Gates # 11th July 2007, 3:09 pm

Dell to Offer Ubuntu. That right there is why I find Flex more interesting than Silverlight. # 1st May 2007, 6:39 pm