If you could not use a package manager e.g. yum/apt what which OS would you choose?

InceptionHostingInceptionHosting Hosting ProviderOG

As per the title, what would be your OS of choice and why if package managers were not available due to lack of ram?

Personally I think I might be tempted to actually go for FreeBSD.

Asking because I am considering putting up some mini containers free for community members that pass certain landmarks but in order to automate the crap out of it so it is very light touch management I am only going to offer a single OS.

Thanked by (1)jureve

https://inceptionhosting.com
Please do not use the PM system here for Inception Hosting support issues.

«1

Comments

  • Slackware, as that's what I always used to use, or OpenBSD I think

    Thanked by (2)skorous uptime
  • InceptionHostingInceptionHosting Hosting ProviderOG

    hmm never considered slack, might see if its even remotely possible to build a vz7 template for slack yet (ever)

    https://inceptionhosting.com
    Please do not use the PM system here for Inception Hosting support issues.

  • InceptionHostingInceptionHosting Hosting ProviderOG

    It would seem not :( :-1:

    https://inceptionhosting.com
    Please do not use the PM system here for Inception Hosting support issues.

  • Why is it not possible? Does it depend on what the host kernel supports? Never really done anything with vz7 like that

  • InceptionHostingInceptionHosting Hosting ProviderOG

    @Mr_Tom said:
    Why is it not possible? Does it depend on what the host kernel supports? Never really done anything with vz7 like that

    Well I mean it might be possible, but there is no EZ template package for it yet so the entire structure needs to be setup.

    VZ7 is very different, you cant just hand it a tar ball and say "off you go!"

    Currently it nativity handles:

    centos-6-x86_64-ez.noarch : Centos 6 (for AMD64/Intel EM64T) Template set
    centos-7-x86_64-ez.noarch : Centos 7 (for AMD64/Intel EM64T) Template set
    centos-8-x86_64-ez.noarch : Centos 8 (for AMD64/Intel EM64T) Template set
    debian-10.0-x86_64-ez.noarch : Debian 10.0 (for AMD64/Intel EM64T) Template set
    debian-7.0-x86_64-ez.noarch : Debian 7.0 (for AMD64/Intel EM64T) Template set
    debian-8.0-x86_64-ez.noarch : Debian 8.0 (for AMD64/Intel EM64T) Template set
    debian-9.0-x86_64-ez.noarch : Debian 9.0 (for AMD64/Intel EM64T) Template set
    fedora-23-x86_64-ez.noarch : Fedora 23 (for AMD64/Intel EM64T) Template set
    sles-11-x86_64-ez.noarch : SUSE Linux Enterprise Server 11 (for AMD64/Intel EM64T) Template set
    sles-12-x86_64-ez.noarch : SUSE Linux Enterprise Server 12 (for AMD64/Intel EM64T) Template set
    sles-15-x86_64-ez.noarch : SUSE Linux Enterprise Server 15 (for AMD64/Intel EM64T) Template set
    suse-42.1-x86_64-ez.noarch : OpenSuse 42.1 (for AMD64/Intel EM64T) Template set
    suse-42.2-x86_64-ez.noarch : OpenSuse 42.2 (for AMD64/Intel EM64T) Template set
    suse-42.3-x86_64-ez.noarch : OpenSuse 42.3 (for AMD64/Intel EM64T) Template set
    ubuntu-14.04-x86_64-ez.noarch : Ubuntu 14.04 (for AMD64/Intel EM64T) Template set
    ubuntu-16.04-x86_64-ez.noarch : Ubuntu 16.04 (for AMD64/Intel EM64T) Template set
    ubuntu-17.10-x86_64-ez.noarch : Ubuntu 17.10 (for AMD64/Intel EM64T) Template set
    ubuntu-18.04-x86_64-ez.noarch : Ubuntu 18.04 (for AMD64/Intel EM64T) Template set
    vzlinux-6-x86_64-ez.noarch : VzLinux 6 (for AMD64/Intel EM64T) Template set
    vzlinux-7-x86_64-ez.noarch : VzLinux 7 (for AMD64/Intel EM64T) Template set
    

    That sets up up with the structure to then build templates and gives you a structure, package manager links, networking setup scripts etc.

    example (rough)

    # ls /vz/template/centos/7/x86_64/config/app/
    cyrus-imap/   devel/        jre/          jsdk/         mailman/      mod_ssl/      mysql/        php/          postgresql/   spamassassin/ tomcat/       vsftpd/
    
    # ls /vz/template/centos/7/x86_64/config/os/default/
    ct2vm                distribution         mirrorlist           package_manager      post-cache           pre-cache            summary              version
    description          environment          osrelease            packages             post-install         release              upgradable_versions
    

    Then you need to setup the default package sets:

    # cat /vz/template/centos/7/x86_64/config/os/default/packages
    authconfig
    yum
    rpm
    wget
    vim-minimal
    nano
    initscripts
    iproute
    iptables
    iptables-services
    openssh-clients
    openssh-server
    tar
    unzip
    bzip2
    gzip
    bash
    sudo
    

    Then finally after that (and about 10 other steps/checks) you can actually build a deployable EZ template for OpenVZ 7

    Then you need to link the template to the network setup scripts (which dont exist for slack) so that networking actually works on container deployment.

    So It may be possible but I would probably need to copy another OS template structure, update all the repo links, scripts etc and then MAYBE it would work.

    Essentially you setup the environment for it then it self auto builds and installs the OS and generates an EZ template from the structure you hand it, you can then use that template for every container going forward or you can remove the lock file and have it do a full fresh pull of all packages from the OS repo upon every container deployment.

    Very very different to OpenVZ 6.

    I did create an initial set of EZ templates (very minimal) for everyone to use a while back: http://185.164.137.206/vz7/

    I will add centos 8 to that when I get a minute.

    Thanked by (2)isunbejo uptime

    https://inceptionhosting.com
    Please do not use the PM system here for Inception Hosting support issues.

  • From that list of available templates I guess Debian would have the smallest footprint.

    I've never used it, but I heard Arch has a small footprint as well, but it's not on the list.

  • edited January 2020

    @AnthonySmith said:
    As per the title, what would be your OS of choice and why if package managers were not available due to lack of ram?

    Personally I think I might be tempted to actually go for FreeBSD.

    Asking because I am considering putting up some mini containers free for community members that pass certain landmarks but in order to automate the crap out of it so it is very light touch management I am only going to offer a single OS.

    Just curious: is the container OpenVZ 7? If so, then FreeBSD wouldn't run anyway, would it?

    FreeBSD has a package manager. Indeed, if I'm not mistaken, it offers a choice of two package managers.

    How little RAM? I think that apt/Debian can manage with as little as 128 MB on KVM.

    Thanked by (1)uptime

    "A single swap file or partition may be up to 128 MB in size. [...] [I]f you need 256 MB of swap, you can create two 128-MB swap partitions." (M. Welsh & L. Kaufman, Running Linux, 2e, 1996, p. 49)

  • i didn't read what is before this post because i am totally exhausted.

    if the main reason not to use a package manager is the resource constraints then i would go alpine.

    in fact if you look at the [ Mini root filesystem ] its so f.small 6MB one can actually just compile some app and let it run ....

    alpine

  • InceptionHostingInceptionHosting Hosting ProviderOG

    @angstrom said: Just curious: is the container OpenVZ 7? If so, then FreeBSD wouldn't run anyway, would it?

    That right, I was hoping while typing that that beehive or whatever it was called project actually went somewhere for bsd containers, sadly it sis not.

    @angstrom said: How little RAM? I think that apt/Debian can manage with as little as 128 MB on KVM.

    1/3 core, 32MB Ram, 3GB Disk, 33GB BW.

    Fun little free box to get the creative juices flowing.

    I was working on the assumption that anything you need will have to be compiled.

    https://inceptionhosting.com
    Please do not use the PM system here for Inception Hosting support issues.

  • @AnthonySmith said: 1/3 core, 32MB Ram, 3GB Disk, 33GB BW.

    Fun little free box to get the creative juices flowing.

    I was working on the assumption that anything you need will have to be compiled.

    Okay, yes, that's small!

    "A single swap file or partition may be up to 128 MB in size. [...] [I]f you need 256 MB of swap, you can create two 128-MB swap partitions." (M. Welsh & L. Kaufman, Running Linux, 2e, 1996, p. 49)

  • @AnthonySmith said:
    1/3 core, 32MB Ram, 3GB Disk, 33GB BW.

    I don't think you can get a single thing to run in that with OVZ7 other than Alpine, and possibly Void, since it'll need to be able to utilize the newer kernel. If it was a KVM, I'd say OpenBSD - I've got a production service running in 64M/3G.

    My pronouns are like/subscribe.

  • InceptionHostingInceptionHosting Hosting ProviderOG

    @WSS said: I'd say OpenBSD - I've got a production service running in 64M/3G.

    I guess I could look at using KVM.

    https://inceptionhosting.com
    Please do not use the PM system here for Inception Hosting support issues.

  • @AnthonySmith said:
    I guess I could look at using KVM.

    Here's my stripped down kernel config to save you some time: http://bsd01.ny.bangpath.tech/TINY.txt

    Thanked by (1)Daniel

    My pronouns are like/subscribe.

  • @AnthonySmith said:
    I guess I could look at using KVM.

    My two cents: I would say at least 64 MB on OpenVZ 7 and at least 128 MB on KVM, otherwise it would be too much of a pain for the user ...

    "A single swap file or partition may be up to 128 MB in size. [...] [I]f you need 256 MB of swap, you can create two 128-MB swap partitions." (M. Welsh & L. Kaufman, Running Linux, 2e, 1996, p. 49)

  • @angstrom said:
    My two cents: I would say at least 64 MB on OpenVZ 7 and at least 128 MB on KVM, otherwise it would be too much of a pain for the user

    Wuss.

    My pronouns are like/subscribe.

  • edited January 2020

    @WSS said:

    @angstrom said:
    My two cents: I would say at least 64 MB on OpenVZ 7 and at least 128 MB on KVM, otherwise it would be too much of a pain for the user

    Wuss.

    Ain't nobody gonna compile their own kernel for a tiny VPS in 2020 -- except for you!

    "A single swap file or partition may be up to 128 MB in size. [...] [I]f you need 256 MB of swap, you can create two 128-MB swap partitions." (M. Welsh & L. Kaufman, Running Linux, 2e, 1996, p. 49)

  • @AnthonySmith said: That right, I was hoping while typing that that beehive or whatever it was called project actually went somewhere for bsd containers, sadly it sis not.

    ?? My understanding is bhyve is more like KVM.

    Iocage is the new hot tool for Jails, and that might be closer to what you're thinking of.

  • InceptionHostingInceptionHosting Hosting ProviderOG

    @FlamingSpaceJunk said:

    @AnthonySmith said: That right, I was hoping while typing that that beehive or whatever it was called project actually went somewhere for bsd containers, sadly it sis not.

    ?? My understanding is bhyve is more like KVM.

    Iocage is the new hot tool for Jails, and that might be closer to what you're thinking of.

    I see, it has been years since I read about it to be honest.

    Thanked by (1)FlamingSpaceJunk

    https://inceptionhosting.com
    Please do not use the PM system here for Inception Hosting support issues.

  • @AnthonySmith said:
    1/3 core, 32MB Ram, 3GB Disk, 33GB BW.

    If I receive such a box, I'll run Go programs only.
    Go only depends on kernel, and doesn't even need libc.
    Go can run on any Linux distribution, as well as FreeBSD.

    To access the machine and install Go, I'll request the following to be preinstalled:

    • dropbear or other sshd
    • sftp-server
    • tar
    • xz
    • git (good to have)

    Everything else, I'm going to delete as they waste RAM.

    Thanked by (1)FlamingSpaceJunk
  • arch linux, if you are okay with a rolling release model as base OS. If arch, then pacman is the obvious choice.

    Other options:

    • lxc/runc/docker containers through podman
    • docker-swarm
    • k8s
  • I'm surprised no one mentioned gentoo

  • WSSWSS OG
    edited January 2020

    @comi said:
    I'm surprised no one mentioned gentoo

    Kind of hard to compile a pgcc kernel with 32MB of RAM.

    My pronouns are like/subscribe.

  • Second @WSS, would run Alpine. Have a few single purpose tiny VMs (usually LXC) and am running Alpine w/o issues - but when I say tiny I'm talking 128/256MB not 32, lol.

    🦍🍌

  • @WSS said:

    @comi said:
    I'm surprised no one mentioned gentoo

    Kind of hard to compile a pgcc kernel with 32MB of RAM.

    what are 3GB of disk for? =]

  • @WSS said:

    @comi said:
    I'm surprised no one mentioned gentoo

    Kind of hard to compile a pgcc kernel with 32MB of RAM.

    That page is really a blast from the past :)

    "A single swap file or partition may be up to 128 MB in size. [...] [I]f you need 256 MB of swap, you can create two 128-MB swap partitions." (M. Welsh & L. Kaufman, Running Linux, 2e, 1996, p. 49)

  • InceptionHostingInceptionHosting Hosting ProviderOG

    @comi said: what are 3GB of disk for? =]

    This entire forum uses less than that :)

    https://inceptionhosting.com
    Please do not use the PM system here for Inception Hosting support issues.

  • @AnthonySmith said:

    @comi said: what are 3GB of disk for? =]

    This entire forum uses less than that :)

    No, it was a bad joke that it's tough to compile stuff on 32MB, but you can swap it out to 3GB disk, since you compile less often than use yum/apt.
    I know it's ridiculous, I was trying to be funny.

    Thanked by (1)Amitz
  • I remember compiling 2.0.x kernels on a i486 ThinkPad with 16 MB of RAM. It wasn't super fast, but not painfully slow, either. :)

    "A single swap file or partition may be up to 128 MB in size. [...] [I]f you need 256 MB of swap, you can create two 128-MB swap partitions." (M. Welsh & L. Kaufman, Running Linux, 2e, 1996, p. 49)

  • edited January 2020

    @angstrom said:
    I remember compiling 2.0.x kernels on a i486 ThinkPad with 16 MB of RAM. It wasn't super fast, but not painfully slow, either. :)

    Bah. 1.9 kernel compiles on 386 hardware ran overnight! :)
    Edit: I think it was after around the 1.9 series that I moved over to Debian Bo, which was the first time I had a 2.0 series kernel. Dang that makes me feel old.

  • edited January 2020

    Now that I think about it, I would probably treat the container like Linux from Scratch, and just drop binaries and libraries as needed. Everything would get compiled on a build server, and then get copied over.

    The little container would probably be more useful with a build system attached to it.

Sign In or Register to comment.