Installer refuses an older Linux Home whose files are group-writable or owned by root

Offen
#516 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Maintainer antworten meist innerhalb von 1 Tag

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
72/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
linux, rust
Bereich
devops

Rechercherichtung

Start with install_transaction.rs, focusing on check_file and check_directory_mode. Trace how the installer handles group/other write permissions and root-owned files, then check the installer tests for those cases. Done means the installer repairs unsafe permissions on user-owned files and folders and reports one chown command for root-owned files.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Problem

On a Linux or Jetson computer that already has an older ElastOS install, the 2.0.0 installer can stop before it changes anything:

Error: installation file is unsafe: /home/<user>/.local/bin/elastos is accessible to other users; fix with: chmod go-w '/home/<user>/.local/bin/elastos'
Error: This installation was not changed

After that file is fixed it names the next one (for example ~/.local/share/elastos/components.json). If chmod answers Operation not permitted, some ElastOS files belong to root, usually from an earlier install run with sudo.

Seen 2 Nov 2026 on a Jetson whose Home was created by a March 2026 release. New installs are not affected: the installer now creates its files owner-only, and fresh installs on default Ubuntu settings pass.

Workaround

Run as the user who owns the Home, not as root:

sudo chown -R "$(id -un)": ~/.local/share/elastos ~/.local/bin/elastos
chmod -R go-w ~/.local/share/elastos ~/.local/bin/elastos
curl -fsSL https://elastos.elacitylabs.com/install.sh | bash

sudo is only for giving the files back to you. Do not delete ~/.local/share/elastos: it holds this Home's identity and keys.

Fix (2.0.1)

The installer should repair group/other write on files and folders that are its own and owned by the user, and name root-owned ones with the one chown command, instead of refusing file by file. Check: install_transaction.rs check_file / check_directory_mode.

Vorherrschende Sprache
Rust
Sterne
6
Forks
2
Ø Merge
1 T. 3 Std.
Gemergte PRs (30 T.)
42

Entwicklungsumgebung

Dieses Projekt bietet weder Dev-Container noch Dockerfile noch Beitragsleitfaden – die Einrichtung liegt bei Ihnen. Beginnen Sie mit der README; die allgemeinen Schritte stehen in unserem Leitfaden für den ersten Beitrag.

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus elastos/elastos-runtime

Alle Issues in elastos/elastos-runtime

Ähnliche Issues

Weitere Issues zu Rust

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.