Berechtigungen ausführbare Datei in /usr/bin ?

Gregorie

Lt. Commander
Registriert
Apr. 2017
Beiträge
1.051
Hallo ich will in einem Schachprogramm scidvspc eine weitere Analyseengine namens stockfish ver. 17 einbinden.
stockfish ist eine ausführbare Datei im Verzeichnis /usr/bin installiert.
Nur findet scidvspc die nicht, wenn ich diese per Pfad einbinden will, wird mir stockfish nicht mal gelistet.
Sonst werden andere ausführbare Dateien in diesem Pfad aber angezeigt.

Die Berechtigungen sehen so aus:
Code:
ls -l /usr/bin/stockfish
-rwxr-xr-x. 1 root root 78748864  9. Sep 02:00 /usr/bin/stockfish

Andere Dateien, die keine Schachengines sind, wird z.B. split wird angezeigt:
Code:
ill@fedora:~$ ls -l /usr/bin/split
-rwxr-xr-x. 1 root root 66184 13. Nov 01:00 /usr/bin/split

Muss ich diese Berechtigungen ändern?
Edit: vielleicht ist das Programm mit 75 MB zu groß für scidvspc?
 

Anhänge

  • Pfad usr_bin.png
    Pfad usr_bin.png
    31,3 KB · Aufrufe: 80
Zuletzt bearbeitet:
Was für eine Dateiart ist stockfish? Ein Skript? Eine binäre Datei? Das kann den Unterschied machen.
Die Dateiart kannst du mit file <Dateiname> testen.
 
@Krik
Code:
$ file /usr/bin/stockfish

/usr/bin/stockfish: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=82d49a8d95fe0023da8e3219cbfd85db8b6996ad, for GNU/Linux 3.2.0, stripped
 
no such file or directory kommt dann.
Wenn ich stockfish im Terminal eingebe startet es. es bräuchte aber noch Parameter.

Eine andere vorinstallierte Engine hat bei verzeichnis /home/bill/.scidvspc eingetragen.
Vielleicht dahin verlinken?
 

Anhänge

  • Bildschirmfoto_2025-01-22_17-58-57.png
    Bildschirmfoto_2025-01-22_17-58-57.png
    34,1 KB · Aufrufe: 64
Zuletzt bearbeitet:
Läuft scidvspc in einer Sandbox, Container oder etwas in der Richtung? Es kann durchaus sein, dass es das /usr/bin innerhalb des Containers statt des Systems anzeigt.
 
  • Gefällt mir
Reaktionen: netzgestaltung, dafReak und up.whatever
Die Einstellungen sehen richtig aus.
Wenn dein System wirklich mit Fedora läuft, dann könnte der Fehler eventuell durch SELinux ausgelöst werden.
In der Konsole SELinux in den Warnungsmodus versetzen: sudo setenforce 0
Danach noch mal ein mal versuchen die neue Engine zu verwenden.
 
Scidvspc ist aus dem Fedora 41 (64bit) aus dem dem Flathub (Software) installiert.
 
Aus Flathub installiert man Flatpaks und das sind Container.
Ok, das scheint wirklich in die Richtung meiner Vermutung zu gehen, dass er dir im Öffnen-Dialog den Inhalt des Containers anzeigt.

Ich bin mir nicht sicher, wie man mit so einem Fehler umgeht, da ich ihn noch nicht selber hatte. Ich würde probieren, Flatseal zu installieren und darin scidvspc erlauben, auf /usr/bin zuzugreifen.
 
  • Gefällt mir
Reaktionen: dafReak, JumpingCat und Metalveteran
Gregorie schrieb:
Muss ich diese Berechtigungen ändern?
Edit: vielleicht ist das Programm mit 75 MB zu groß für scidvspc?
Nein, 755 ist für ausführbare Dateien korrekt. Und die Größe ist auch irrelevant.

Krik schrieb:
Was für eine Dateiart ist stockfish? Ein Skript? Eine binäre Datei? Das kann den Unterschied machen.
Nein. Das ist egal.

GTrash81 schrieb:
Wenn dein System wirklich mit Fedora läuft, dann könnte der Fehler eventuell durch SELinux ausgelöst werden.
Auch das nicht. SELinux knallt Dir eine Fehlermeldung um die Ohren, wenn du nichtstandardkonforme Verzeichnisse und Ports verwenden willst. Beispiel: Du willst einen Apache auf Port 777 laufen lassen oder das htdocs-Verzeichnis von Apache in /mnt ablegen. Dann würde SELinux einspringen.

Krik schrieb:
Ok, das scheint wirklich in die Richtung meiner Vermutung zu gehen, dass er dir im Öffnen-Dialog den Inhalt des Containers anzeigt.
Wäre auch meine Vermutung. Deswegen hab ich Flatpack auch nur 1x ausprobiert. Google wurde bei Reddit fündig.
 
Der Pfad in Flatpak Apps ist ein fake-pfad quasi ein virtuelles dateisystem. du kannst entweder das programm in /home/<benutzer>/.var/app/<appname>/bin oder so ähnlich ablegen oder mit Flatseal den Pfad für das Programm freigeben, würde ich bei /usr/bin aber eher nicht. in .var im persönlichen ordner liegen die flatpak root order
 
starte das mal mit "strace -e trace=process scidvspc"
 
O.K. es liegt also daran, das ich das Programm als Flatpak aus dem Flathub von Fedora installiert habe und dieses dann in einer Sandbox läuft. Es hat dann keinen Zugriff auf /usr/bin/stockfish.
Wenn ich "scid vs pc" starte, werden ein paar Prozesse gestartet, die mit dem Programm zusammenhängen:
tkscid; bwrap; xdg-dbus-proxy, und fruit wenn ich diese Engine starte.
Flatseal half bisher nicht. Per Terminal kann ich das Programm gar nicht starten, wird nicht gefunden.
Alternativ könnte ich es selbst compilieren,

https://scidvspc.sourceforge.net/
 

Anhänge

  • flatseal.png
    flatseal.png
    139,6 KB · Aufrufe: 60
Zurück
Oben