Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
aports
aports
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 671
    • Issues 671
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 180
    • Merge Requests 180
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • alpine
  • aportsaports
  • Issues
  • #10119

Closed
Open
Opened Mar 16, 2019 by Magicloud Magiclouds@magicloud

Headless/unattended setup supporting.

There are two kinds of usage while using Alpinelinux as the OS for bare metal. One, boot Alpinelinux in someway (e.g. USB, netboot) then install to internal HDD. Two, boot Alpinelinux and use the stage2 OS (e.g. for IoT like thinclient or RPi).

But for now, I think Alpinelinux initrd lacks functions that are needed for both case. I know all items I would say below could be done via a second time development. But I think Alpinelinux could provide the platform, letting end user focus on his goal. Instead of “do it ALL on your own”.

So from simpler, case two, I can think of a few things.

  • Bring up network for image other than netboot.
  • Bring up sshd.
  • More ways to setup passwordless ssh authentication.
    Current network way is fine, with a little trouble (Bug #10031). But “string” way does not work mostly due to boot loader could not pass kernel parameter with space correctly (Bug #9504 (closed)). I’d suggest adding a “file://” protocol to support loading data from local media.
  • Setup repos.
    As my thread in email-list, `setup-apkrepos -f` is not quite ideal.
  • Setup keymap, timezone, etc.
  • Lock root account.
    By “lock”, I mean no way to auth via password.
  • Add necessary user account.

`setup-alpine` has an answer file feature. But the functions are not quite enough. I am OK to enhance it. But there is not existing way to use it automatically at boot yet.

For case one, not only some of the above needs to be persisted to installed OS. But also a way to specify how to partition is needed. This can be complex, since Redhat kickstart file is kind of huge.

Most of the above requirements can be done via packages (addons) without heavily modifying current initrd. And for a minimal implementation, I am thinking network + sshd is a must.

Your opinions are welcomed.

(from redmine: issue id 10119, created on 2019-03-16)

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: alpine/aports#10119