PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Probleme mit Zugriffsberechtigungen - Anfängerschwierigkeiten



RockfordFosgate
28.07.06, 09:29
Grüß euch,

wahrscheinlich ist mein Problem sehr simpel und ich werd auch gleich auf die Suche verwiesen, aber ich hab im Moment von Linux noch so wenig Ahnung, dass ich nicht mal weiss, nach was ich suchen könnte. Also schilder ich da einfach mal mein Problem:

Ich hab da eine WL-HDD mit Linux Firmware drauf laufen. Das Ding ist via ein Web-Interface oder Telnet zu konfigurieren. Die Tools, wie z.B. den FTP Server, die ich gern drauf hätte, versuche ich über Telnet zu installieren, hab auch ganz gute Anleitungen dafür, ABER:

Für den FTP benötige ich ein Verzeichnis "usr/share/". Das kann ich allerdings nicht anlegen - Fehlermeldung "read-only filesystem". Nachdem ich jetzt die ganze Nacht in diversen wikis herumgeraben hab, hab ich nun folgenden Verdacht: Seinerzeit, also schon bevor ich das Ding partitioniert hab, hab ich meinen Benutzernamen geändert (via Web-Interface). Schlau wie ich mich gehalten habe hab ich nun den einfach auf dem gleichen Weg wieder zurück geändert, mit dem erfolg, dass ich nicht mal mehr Schreibberechtigung auf den Verzeichnissen habe, die ich selbst gemounted hab.

Fazit: ich bin zu blöd dazu. Kann ich irgendwie rausfinden, welcher angelegte Benutzer welche Berechtigungen hat bzw. in weiterer Folge Schreibberechtigungen z.B. fürs /usr/ Verzeichnis vergeben? :confused:

Danke für alle Tipps
Mike

bitpicker
28.07.06, 10:37
Als root solltest du eigentlich immer Schreibberechtigung haben, egal, was du mit den Benutzern angestellt hast. Aber wie ist das Laufwerk in fstab gemountet? Ist es da vielleicht als read-only eingetragen? Am besten postest du mal den Inhalt der Datei /etc/fstab.

Selbst wenn es etwas mit den Benutzerkennungen zu tun hat, solltest du als Root eigentlich keine Probleme haben.

Robin

MiGo
28.07.06, 10:51
Helfen wird uns auch die Ausgabe des Befehls "mount" (ohne Parameter).
Nur am Rande: du willst sicher nicht "usr/share" sondern "/usr/share".
Ausserdem sollte es das Verzeichnis eigentlich schon geben, wenns ein halbwegs vollständiges Linux auf dem WL-Gerät hat.

RockfordFosgate
28.07.06, 18:59
aha aha.....

Danke erst mal für die Antworten....

hab erst mal meinen Benutzer in "root" geändert - danach hatte ich wieder Zugriff auf meine Verzeichnisse, mußte allerdings einiges neu installieren.

die datei /etc/fstab gibts bei mir irgendwie nicht......

und die Ausgabe von mount sieht so aus:

login as: root
root@192.168.1.220's password:
[root@Meiner root]$ mount
/dev/root on / type squashfs (ro)
none on /dev type devfs (rw)
proc on /proc type proc (rw)
ramfs on /tmp type ramfs (rw)
usbfs on /proc/bus/usb type usbfs (rw)
/dev/discs/disc0/part1 on /opt type ext3 (rw)
[root@Meiner root]$

hat das was mit dem ro zu tun?

Danke
Michael

Sören Schneider
28.07.06, 19:10
Normalerweise sollte man die Zugriffsberechtigungen nach einer Standardinstallation so lassen wie sie sind.
Dann kann man neue Verzeichnisse anlegen und konfigurieren.
Jedenfalls mach ich das so.

MiGo
28.07.06, 20:02
/dev/root on / type squashfs (ro)
Liegt wahrscheinlich daran, dass es ein embedded-Linux ist.
Leider kann man generell nicht auf sqashfs schreiben, scheint mir. Dazu ists auch nicht da (http://squashfs.sourceforge.net/)

Für den FTP benötige ich ein Verzeichnis "usr/share/"....hab auch ganz gute Anleitungen dafür,...
Welche Anleitung? Die wird sich nämlich (wie man sieht :)) nicht so einfach auf ein embedded-Gerät übertragen lassen. Allerdings bin ich ausgesprochen zuversichtlich, dass man den FTP-Server (so du ihn denn unbedingt brauchst) auch nach /opt installieren kann. Ist halt ein wenig mehr Handarbeit nötig. Aber das bekommen wir schon hin :)


Normalerweise sollte man die Zugriffsberechtigungen nach einer Standardinstallation so lassen wie sie sind. Dann kann man neue Verzeichnisse anlegen und konfigurieren.
Im Prinzip richtig :)
Allerdings ist das hier kein regulärer Rechner, sondern eine per WLAN angebundene Festplatte, wenn ich das richtig sehe. Und wenn man da noch Extras draufmachen will, kann es schon mal vorkommen, dass man von der reinen Lehre abweichen muss :D

@OP: Du hast aber sicherlich daran gedacht, dass du im Zweifelsfall das Ding so verkonfigurierst, dass es funktionsunfähig ist - und du somit in der Lage sein musst, ein "Werksimage" einzupielen, oder?

RockfordFosgate
29.07.06, 02:39
Hallo nochmal,

ihr glaubt also auch, dass dieses einzige read-only flag für mein Problem verantwortlich ist? Dann frag ich mich aber, wo es herkommt.

Mein Problem liegt bei der Installation dieses FTP:

http://www.sprayfly.com/wiki/VSFTPD_Script

Dieses gesamte wiki ist speziell auf meinen Typ von HDD (find ich im übrigen endgeil das Teil :) ) bezogen, hab auch vom Partitionieren weg nach den schön strukturierten Anleitungen gearbeitet. Firmware hab ich mit dem empfohlenen File zuerst geflasht und auch der originale "dumme FTP" wurde deaktiviert.
Komisch find ich ja, dass es bei einem Kumpel einwandfrei funktioniert hat, obwohl er das baugleiche Teil besitzt. Der einzige Unterschied ist eben, dass ich zuvor ein wenig mit Benutzern und Passwörtern im Webinterface herumgetrickst hab.
Auf das konkrete Problem, dass ich im /usr keine Rechte hab, bin ich übrigens erst draufgekommen, als ich in meiner Verzweiflung das in der Anleitung angeführte Installationsscript händisch Zeile für Zeile ausgeführt hab.

Vielleicht hat ja noch wer eine Idee, wenn das Ding auf /opt laufen würde hätt ich ja auch kein Problem - kann ich diese Verweise einfach dorthin legen? :confused: oO(glaub ich fast nicht) weil ich dieses

ipkg install vsftpd

ja nicht beeinflussen kann.............

Dank
Michael

RockfordFosgate
29.07.06, 11:46
Nochmals ich, hallo erstmal...

Ich hab weiter herumgetrickst und bin meinem Problem einen großen Schritt näher:
Seit ich mich mit "root" einlogge funktioniert der FTP ganz normal wenn ich ihn manuell starte. Also funktioniert einfach was mit dem automatischen Starten nicht. Stellt sich nur noch die Frage warum's nicht geht.

Um nicht immer im Flash herumfummeln zu müssen hab ich ein File

/usr/local/sbin/post-boot

wo auch die Partitionen automatisch gemounted werden usw. Da drinnen steht nun folgender Eintrag:

# Run all active services - active means starts with S
/opt/etc/init.d/rc.unslung

Das sollte mir doch alle Executables mit Anfangsbuchstaben S in diesem Verzeichnis starten??? Oder geh ich da falsch in der Annahme?

Grüsse
Michael

edit: ach ja das wichtigste vergessen - den Inhalt dieser rc.unslung hätt ich anfügen sollen:

#!/bin/sh

# Start all init scripts in /opt/etc/init.d executing them in numerical
# order.
#
for i in /opt/etc/init.d/S??* ;do exit
# Ignore dangling symlinks (if any).
[ ! -f "$i" ] && continue

case "$i" in
*.sh)
# Source shell script for speed.
(
trap - INT QUIT TSTP
set start
. $i
)
;;
*)
# No sh extension, so fork subprocess.
$i start
;;
esac
done

MiGo
31.07.06, 07:50
ihr glaubt also auch, dass dieses einzige read-only flag für mein Problem verantwortlich ist? Dann frag ich mich aber, wo es herkommt.
Das kommt (wie ich eigentlich auch schon oben geschrieben hatte) daher, dass "squashfs" als Dateisystem verwendet wird. Und das ist laut Homepage nur lesbar.


Das sollte mir doch alle Executables mit Anfangsbuchstaben S in diesem Verzeichnis starten???
Das Script startet alle ausführbaren Dateien, die mit "S" anfangen und in /opt/etc/init.d liegen.
Wie wird /usr/local/sbin/post-boot aufgerufen?

Was mich ein wenig wundert, ist

for i in /opt/etc/init.d/S??* ;do exit
Was hat das "exit" da zu suchen?

RockfordFosgate
31.07.06, 22:00
Ahhhhhhhhhhhh danke das ";do exit" wars! Komisch wie das da reinkommt.....

Aber nur nicht zu früh freuen, die Schwierigkeiten gehn weiter. Mein nächstes Problem passt eh in den gleichen Thread rein hier:

Die oben genannte WL-HDD hängt im Netzwerk an einem Sat Receiver, auf dem auch ein embedded Linux läuft. Nun hab ich auf der HDD ein Verzeichnis erstellt und dieses dann am REceiver gemountet, aber obwohl ich für jeden alle Berechtigungen vergeben habe kann ich vom REceiver aus nicht drauf schreiben. Ich poste mal ein paar Informationen, das hier ist aus dem shell vom RECEIVER rauskopiert:

~ > touch /mnt/hdd/movie/test
touch: /mnt/hdd/movie/test: Permission denied

der ordner "movie" befindet sich auf der HDD und ist gemounted:

~ > mount
/dev/root on / type squashfs (ro)
none on /dev type devfs (rw)
/proc on /proc type proc (rw,nodiratime)
devpts on /dev/pts type devpts (rw)
/dev/mtdblock/1 on /var type jffs2 (rw,noatime)
none on /tmp type ramfs (rw)
192.168.1.220:/opt/movies on /var/mnt/hdd type nfs (rw,v3,rsize=32768,wsize=32768,soft,intr,udp,noloc k,addr=192.168.1.220)

und hat auch alle Berechtigungen:

~ > ls -l /mnt/hdd
drwxrwxrwx 2 root root 4096 Jul 31 21:37 movie

Und jetzt frag ich mich warum ich von dort aus nicht schreiben kann????

Danke für eure tolle Hilfe
Michael

MiGo
01.08.06, 07:42
Du versuchst als root zu schreiben?
Wie sieht die nfs-Freigabe aus (/etc/exports)?

RockfordFosgate
01.08.06, 08:20
Die sieht so aus:

# automagically generated from web settings
/opt/movies
/opt/movies/movie