13 ms·
Booting Linux off of Google Drive
- fsckboy 2y agomid 90's, a friend of mine installed Windows NT to, and booted it from, a DAT tape
- Maakuth 2y agoHow long did it take? Seek times for tapes can be minutes, so fragmentation matters a great deal here.
- fsckboy 2y agoinstallation was more than overnight. once it was up and running, it was remarkably responsive, in the short run, but would invariably need to do a lot of seeking to launch any app. The sort of thing if you are sitting nearby you could give it some input every couple minutes.
- jasomill 2y agoI seem to recall some vendor (HP?) selling external tape drives at some point that supported bootable, bare metal Windows restore from tape. I believe it worked by supplying the recovery software as a bootable ISO image in ROM on the drive and emulating a bootable (USB? SCSI?) CD-ROM drive at boot.
- fsckboy 2y agoDAT tapes presented as disk drivers, sector addressable. and you can dump a .iso to a disk to make it bootable, so sounds right.
- Maakuth 2y agoFor some fringe use cases one could drop a readily installed (and defragmented!) OS image to the tape and boot it up. I've only had some floppy tape drives and parallel-port attached Ditto. They didn't support random access, or at least I never had a driver that could do that.
- brnt 2y agoI got PTSD from installing Windows 95 from floppy and after 40 floppies getting read errors...
- beAbU 2y agoSomewhere in my parents' house there is a massive box with floppies for office 95 (or whatever it was called back then). Not 40 floppies massive, but still a large number. I think we managed to only ever install it once successfully without error. Also, fun semi-related fact: In my country we called 8" and 5.25" floppies "floppies", and the smaller 3.5" ones were called "stiffies" - because the larger ones were floppy, and the smaller were, well, stiffer. Do with this information as you please.
- exe34 2y agoi need to know which country this is, please!
- cyberpunk 2y agoCertainly not the UK where inserting your stiffie in to something has rather a different connotation….
- teschmitt 2y agoI'm going to wager South Africa based on this blog post: https://jasonelk.com/2015/12/who-knew-that-the-rest-of-the-world-didnt-call-the-old-3-5-inch-floppy-disks-stiffies/ https://jasonelk.com/2015/12/who-knew-that-the-rest-of-the-w...
- obrix 2y agoHappened also in Finland. It was "lerppu" (floppy) for the flexible ones and "korppu" (hard biscuit) for the hard ones.
- beAbU 2y agoSouth Africa!
- 2y ago
- raffraffraff 2y agoThat must have been fun. In the late 90s I worked in the server support line for DEC, and the number of times we had to talk people through the "invisible F6 prompt" was nuts.
- tryauuum 2y agocan you explain?
- sjsdaiuasgdia 2y agoIf your intended system volume was going to require drivers that weren't built into WinNT, you needed to press F6 at a specific point during installation. This would allow you to load a driver that makes the volume visible / usable. This process was specific to installing storage drivers needed for the system volume. All other driver installation happened elsewhere. My memory says there was actually a "Press F6 to load system storage drivers" prompt or something displayed by the installer, but it wasn't displayed for all that long a time and I imagine it was effectively invisible for many people. I recall spamming F6 to make sure I wouldn't miss the prompt.
- raffraffraff 2y agoActually there were two separate times during the installation process that you could press F6 to provide storage drivers. The first had no visible prompt! The second has the prompt you remember. Here's how I remember it: The Windows CD itself had drivers built into the installer so that it could discover hardware. However, if you had a brand new storage controller, you might find that even Windows NT CD's installer wouldn't recognise it, so it would tell you that there were no storage devices found. To get around this you had to press F6 right at the start of the CD boot, before the Windows logo appeared. After a few seconds you could provide your storage drivers on a floppy disk, and the Windows installer program would continue to load. This time, the installer would recognise your disks. Then during the installation you would get a visible F6 prompt to provide your storage drivers. This allowed you to provide extra storage drivers that would be bundled with the installed OS. Most people didn't know about the first F6, because I think NT installer had some sort of very basic, generic storage drivers that would work in most cases. If you had some very recent array controller, you would likely need to know about the "invisible F6 prompt".
- kotaKat 2y agoWhile not booted from, wimlib's support for pipable WIMs means through some shenanigans, you can install modern Windows from tape. I had a bootstrap ISO that would fire up Windows PE, mount my USB DAT tape drive, rewind it, prep the onboard storage, then image direct from tape to disk and make it bootable. I posit that because wimlib supports pipable WIMs that we could pipe an endless stream of QR codes to it (thus making the "installing Windows from QR codes" possible)...
- prmoustache 2y agoCan you really say you are booting off of something remote when you are really booting a rootfs from a local initramfs of several megabytes?
- russdill 2y agoTo close the loop, they really need an EFI stub that loads a combined kernel image/ramfs from Drive.
- ceving 2y agoiPXE can already boot from a web server: https://ipxe.org/ https://ipxe.org/
- e12e 2y agoShould be possible then, if you "share" the initrd and Linux image? https://stackoverflow.com/questions/37453841/download-a-file-from-google-drive-using-wget https://stackoverflow.com/questions/37453841/download-a-file...
- 01HNNWZ0MV43FF 2y agoThat's what I'm saying about hard drives and ROMs
- unixhero 2y agoYeah we didn't need those silly hardrives with their crufty filesystems.
- creshal 2y agoNot any worse than 32+ megabytes of UEFI booting off of an iPXE bootrom.
- omnicognate 2y agoPerhaps that's what this "off of" preposition means. I've often wondered.
- pjmlp 2y agoTfpt boot gets rediscovered.
- deleted 2y ago[deleted]
- kvdveer 2y agoBut now with some one else's computer (aka, "the cloud")
- pjmlp 2y agoIt was always with someone else computer, we used to call it timesharing and thin clients. :)
- throwaway984393 2y agoIt was especially fun when you used someone's entire computer lab during night hours ;)
- pjmlp 2y agoYep, I had some fun with PVM, for the audience, somehow the alternative that lost to MPI.
- INTPenis 2y agoYou meant to say tftp right? I'm just checking if there is some long lost technology called Tfpt that I have never heard of.
- pjmlp 2y agoTypo.
- yjftsjthsd-h 2y agoI mean, > Competitiveness is a vice of mine. When I heard that a friend got Linux to boot off of NFS, I had to one-up her. I had to prove that I could create something harder, something better, faster, stronger. sounds like they're well aware of the traditional way to do it, and are deliberately going out of their way to do something different and weird.
- nemoniac 2y agoSpeaking of booting Linux from places, what I would like to be able to do is carry a Linux image around with me on my (Android) smartphone, plug the phone into a USB port on a laptop and boot the Linux image from there on the laptop. Does such a thing exist?
- jstanley 2y agoWhy does it need to be on the phone? Carry a normal USB stick.
- Infinity315 2y agoIt doesn't, but consider that the vast majority of us already carry our phones everywhere. Would carrying an extra USB stick be that big of a hassle? No, but I can see the need for booting up a ready Linux image being extremely situational so the vast majority of time you're just carrying dead weight.
- forgotpwd16 2y agoYou can have a stick with one boot and one commonly formatted (FAT32/exFAT/ext) partition, Linux image being stored in later. Then it's like a normal stick that can also be used to boot Linux. Ventoy automates this process, allowing you to throw any ISO in a specific directory and boot it.
- 2OEH8eoCRo0 2y agoWouldn't it be cool if these general purpose computers in our pockets were useful in novel ways? You're only allowed to use it in the prescribed fashion.
- dataflow 2y agoWhat do you do about the USB cable though? A flash drive you can plug in directly, it's guaranteed to work. A phone requires you to either carry around an extra cable (arguably more annoying to carry than a flash drive) or take the risk that you won't have the right cable available nearby when you're trying to (say) boot a laptop.
- jvdvegt 2y agoHe casually mentions he boots of S3 as well. Changing S3 for Google Drive mostly adds latency, apparently. But still, nicely done!
- _flux 2y agoRedundant S3 is easy-ish to selfhost, though, so that could actually be a decent way to setup reliable diskless workstations.
- yencabulator 2y agoAt that point you might as well run Ceph and give your diskless workstations a writable block device via RBD. The overhead of an S3 operation per file is quite high.
- _flux 2y agoThere are some easier solutions for just S3, like Minio, which I imagine is likely much easier to setup than Ceph (though ceph is not that hard with cephadm).
- yencabulator 2y agoBy the time you add the word "redundant" in the mix, nothing is really easy anymore.
- yencabulator 2y agoHis S3-compatible bucket was locally hosted, did not go over the internet.
- Philpax 2y agoThey, not he.
- rwmj 2y agoHow about booting Linux off bittorrent? https://libguestfs.org/nbdkit-torrent-plugin.1.html#EXAMPLES https://libguestfs.org/nbdkit-torrent-plugin.1.html#EXAMPLES The problem with booting Linux off very high latency devices is the kernel tends to time out I/O requests after too short a time (60 seconds I think) so you have to adjust those timeouts upwards.
- yencabulator 2y agoIf that's a huge problem, you can wedge FUSE in there somehow, as far as I know there's no automatic kernel-side timeout to requests sent to FUSE.
- amelius 2y agoWhat people really want is sub-second booting, especially in embedded. It is a hard problem but somehow nobody seems interested in doing the hard CS research to solve it.
- rwmj 2y agoThere's tons of work on millisecond boot times going on, in kata-containers, confidential computing, and various "serverless" implementations. I wrote a paper about it nearly a decade ago too[1]. [1] http://git.annexia.org/?p=libguestfs-talks.git;a=tree;f=2016-eng-talk;hb=HEAD http://git.annexia.org/?p=libguestfs-talks.git;a=tree;f=2016...
- amelius 2y agoAnd I still can't boot my Linux system in a reasonable time. Perhaps the true problem that needs to be solved is that everybody is somehow (forced at) reinventing the wheel every time.
- bluGill 2y agoThe real problem is linux is just a kernel - they cannot force you to have good hardware. If you want fast boot you need to start with the hardware: a lot of hardware has an long init sequence so there is no way the kernel can boot fast as it cannot boot until that hardware is initialized. Then you can look at the kernel, step one is strip out all the drivers for that slow to init hardware you don't have (since those drivers have to insert waits into the boot while they check for the hardware you don't have). If you do this you can save a lot of boot time. Of course in the real world the people who select your hardware don't talk to the people who care about software. So you are stuck with slow boots just because it is too late to go back and do a fill million dollars each board re-spins now that we know our boot times are too slow. It gets worse, even if you select fast init hardware that doesn't mean it really is fast. I've seen hardware that claims to not need long inits, but if you don't insert waits in the boot there are bugs.
- 2y ago
- dveeden2 2y agoBack in the the day it was possible to boot Sun Solaris over HTTP. This was called wanboot. This article reminded me of that. This was basically an option of the OpenBoot PROM firmware of the SPARC machines. It looked like this (ok is the forth prompt of the firmware): ok setenv network-boot-arguments dhcp,hostname=myclient,file=https://192.168.1.1/cgi-bin/wanboot-cgi ok boot net This doesn't only load the initramfs over the (inter)network but also the kernel. https://docs.oracle.com/cd/E26505_01/html/E28037/wanboottasks2-105.html#scrolltoc https://docs.oracle.com/cd/E26505_01/html/E28037/wanboottask... https://docs.oracle.com/cd/E19253-01/821-0439/wanboottasks2-61/index.html https://docs.oracle.com/cd/E19253-01/821-0439/wanboottasks2-...
- unixhero 2y ago"The network is the computer." It was a shortlived thing.
- msh 2y agoI guess Chromebook’s is the resurrection of the idea
- Teckla 2y agoThanks to Crostini, Chromebooks are also excellent local computing devices.
- bluGill 2y agoNot really. Chromebooks don't use the LAN. They can run code locally, or on the server in a different timezone. However with Sun if you needed more CPU you could log into all the machines on your local network - all machines shared the same filesystem(NFS) and passwd (I forget this was), so using all the CPUs in the building was easy. It was unencrypted, but generally good enough until the Morris worm. Of course moderns servers have far more CPU power than even the largest LANs back in 1986. Still those of use who remember when Sun was a big deal miss the power of the network.
- eisbaw 2y agoI wouldn't technically call this "boot" since the kernel has already booted... If get google-drive "mounting" support into grub, then I'll concede. This just places the rootfs on some strange place. btw, I have a project in my drawer, to place rootfs of my NixOS on IPFS.
- superb_dev 2y agoThis is easy to fix. We just call the first kernel a boot loader and kexec a new kernel from google drive
- inhumantsar 2y ago> NixOS on IPFS oh that would be fun! have you made much progress? is there a repo or something I can follow for updates?
- throwaway984393 2y agoConsidering how slow and buggy it is to use as a rootfs, you can instead put an initrd on Google Drive and just boot that. You'll need to make it by hand to get it to a reasonably small size, so picking up a copy of Linux From Scratch, and using libmusl or libuclibc along with BusyBox, will go a long way towards a functional system in a small size. If you want a fuller system you could try 1) convert the filesystem to tmpfs after boot and install packages to RAM, or 2) mount a remote disk image as your roofs rather than keeping individual files remote. The former will be blazing fast but you're limited by your RAM. The latter will be faster than fuse, benefit from io caching, and not have the bugs mentioned.
- remram 2y agoHow do you load the initrd?
- yjftsjthsd-h 2y agoUEFI provides a pretty complete environment; it would probably not be too hard to write a .efi program that connected to network and downloads whatever you want from Google Drive (or anywhere else) into RAM and runs it. For that matter, IIRC Linux can already build a combined kernel+initrd into a .efi, so you could make this semi-generic by writing a gdrive.efi that downloaded an arbitrary .efi from gdrive and booted it.
- remram 2y agoThat would be a very interesting article.
- sharpshadow 2y ago“…booting Linux off of a Git repository and tracking every change in Git using gitfs.” That sounds cool!
- Vogtinator 2y agoI did something similar some time ago: Booting from an RPM repository on a Tumbleweed installation DVD. My initial goal was to write a fuse filesystem for mounting RPM packages, but I wanted to see how far it goes. Turns out, pretty far indeed: https://github.com/Vogtinator/repomount/commit/c751c5aa56897efd872836cae9ed79a4b59bb852 https://github.com/Vogtinator/repomount/commit/c751c5aa56897... The system boots to a working desktop and it appears like all packages available on the DVD are installed.
- sirjaz 2y agoWe do this all the time in Windows with Citrix. It is called pvs. It does a small pxe boot and then it streams down the windows server image
- iamleppert 2y agoCan you boot Google off a Linux drive?
- fragmede 2y agoyou have no idea how much time gets spent considering how to cold boot Google
- coisasdavida 2y agoA few days ago I was able to boot armbian on a tvbox I got from the trash, felt so great, now feels so pedestrian...
- mason_mpls 2y ago> On the brink of insanity, my tattered mind unable to comprehend the twisted interplay of millennia of arcane programmer-time and the ragged screech of madness, I reached into the Mass and steeled myself to the ground lest I be pulled in, and found my magnum opus. pulitzer prize nomination material
- whartung 2y agoI remember first getting my cable modem at the house, and I was able to install BSD over the network using a boot floppy. That was an "amazing" thing to me back in the day. I had the bandwidth to do it, a simple floppy to start the whole process and...there it was! BSD on my machine. I'm not sure if you can still do that today. Pretty sure the files were FTP hosted somewhere (or even TFTP). I think today it's all ISOs.
- peter_d_sherman 2y agoAny current or future OS should have its filesystem completely decoupled from the OS itself -- thus allowing booting/running the OS off of any kind of plain or esoteric storage device, local or network, present or remote, physical or cloud-based, interrupt/DMA based or API/protocol based, block-based or file-based, real or virtualized, encrypted or not encrypted, tunnelled or not tunnelled, over another protocol or not over another protocol, using TCP/IP or UDP or even just raw 1's and 0's over whatever electronic communication channel someone invents next, etc., etc. Old time OS programmers typically didn't need to think about these things... Current and future OS designers might wish to consider these things in their designs, if they desire maximum flexibility in their current or future OS... Anyway, an excellent article! Related: https://en.wikipedia.org/wiki/Coupling_(computer_programming) https://en.wikipedia.org/wiki/Coupling_(computer_programming... https://thenewstack.io/how-decoupling-can-help-you-write-better-software/ https://thenewstack.io/how-decoupling-can-help-you-write-bet... https://softwareengineering.stackexchange.com/questions/244476/what-is-decoupling-and-what-development-areas-can-it-apply-to https://softwareengineering.stackexchange.com/questions/2444...
- hcfman 2y agoLove the one up manship! I read the “How to shrink a file system without a live cd. So here’s my one. How to shrink a file system without a live CD as part of a single command install script of a program. My sbts-aru sound localizing recorder program does that on the pi. I’m willing to bet that no other project on the Internet does this, but I’d love to be surprised. Let me know. It installs the majority of the code, then reboots, shrinks the file system. Creates additional partitions and labels them installing file systems. Then finishes the install and comes up running. So the procedure goes as follows. sudo apt install -y git git clone https://github.com/hcfman/sbts- aru.git cd sbts-aru sudo -H ./sbts_install_aru.sh That’s it. It comes up running a recorder on a system with multiple partitions running an overlayFS on memory on the first one. It will even work on a Raspberry Pi zero (Works on all Pi versions) and it doesn't matter if it's Raspbian or Bookworm.
- fargle 2y agoi keep parsing this headline as "kicking Linux off google drive". huh? oh.
- timonoko 2y agoThis inspired me to study the possibility of booting on one linux and then chrooting to another linux. Reason being that I cannot update the first one, it being too old, but it has important janitorial purposes. With the help of ChatGPT I made this script, where everything seems to work including x-windowed programs. sudo mount /dev/sdb2 /mnt sudo xhost +local: sudo mount --bind /tmp/.X11-unix /mnt/tmp/.X11-unix sudo cp ~/.Xauthority /mnt/root/.Xauthority sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys sudo mount --bind /dev/pts /mnt/dev/pts sudo unshare --uts chroot /mnt su -l timonoko sudo umount /mnt/proc sudo umount /mnt/sys sudo umount /mnt/dev/pts sudo umount -l /mnt/dev sudo umount -l /mnt/tmp/.X11-unix sudo umount -l /mnt