FHEM Backup Datei auf USB Stick anlegen [gelöst]

Begonnen von Larusso, 30 November 2017, 07:52:23

Vorheriges Thema - Nächstes Thema

Larusso

Hallo liebe Community,

ich weis das das Thema zu hauf hier diskutiert wurde aber ich komme da nicht weiter. Ich bekomme immer diese Fehlermeldung in meinem FHEM log.

2017.11.29 22:49:51 2: Backup with command: tar -cf - "./backup" "./backup_cfg-state" "./CHANGED" "./configDB.pm" "./contrib" "./demolog" "./docs" "./FHEM" "./fhem.cfg" "./fhem.cfg.demo" "./fhem.pl" "./log" "./MAINTAINER.txt" "./README_DEMO.txt" "./restoreDir" "./unused" "./www" |gzip > /media/usbdrive/FHEM-20171129_224951.tar.gz
sh: 1: cannot create /media/usbdrive/FHEM-20171129_224951.tar.gz: Permission denied
tar: -: Funktion write fehlgeschlagen: Datenübergabe unterbrochen (broken pipe)
tar: Error is not recoverable: exiting now
Backup done

meine Berechtigungen in der sudoers.temp sehen wie folgt aus:

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL
fhem    ALL=(ALL:ALL) NOPASSWD: ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

fhem ALL=(ALL) NOPASSWD:/home/pi/433Utils/RPi_utils/codesend
fhem ALL=(ALL) NOPASSWD:/media
fhem ALL=(ALL) NOPASSWD:/media/usbdrive
fhem ALL=(ALL) NOPASSWD:/media/ipcam/garten


ich weis ist nicht schön alle rechte frei zu geben aber selbst so bekomme ich nichts auf den Stick geschrieben. Wenn ich in Midnight Commander mit dem user pi und sudo Rechten arbeite kann ich von hand die dateien kopieren. ich wollte den USB Stick bzw. den kompletten Media Ordner einfach dem Benutzer fhem zuweisen aber dies geht auch nicht:

pi@raspberrypi:/media $ sudo chown -R fhem:dialout usbdrive
chown: der Eigentümer von 'usbdrive/FHEM-20171129_210304.tar.gz' wird geändert: Die Operation ist nicht erlaubt
chown: der Eigentümer von 'usbdrive' wird geändert: Die Operation ist nicht erlaubt
pi@raspberrypi:/media $

fhem ist auch der Gruppe tty zugeordnet. Der USB Stick wird automatisch gemountet und ist in fat32 am Windows PC formatiert und wird an beiden Systemen erkannt.

pi@raspberrypi:~ $ df -h
Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
/dev/root       7,2G    5,1G  1,8G   74% /
devtmpfs        460M       0  460M    0% /dev
tmpfs           464M       0  464M    0% /dev/shm
tmpfs           464M     13M  452M    3% /run
tmpfs           5,0M    4,0K  5,0M    1% /run/lock
tmpfs           464M       0  464M    0% /sys/fs/cgroup
/dev/mmcblk0p1   42M     21M   21M   51% /boot
/dev/sda1        15G    1,3G   14G    9% /media/usbdrive
tmpfs            93M       0   93M    0% /run/user/1000

Ich kann das manuel kopieren aber ich denke wenn ich mir dann für meine Hausautomatisierung einen CUL kaufe werde ich Problem bekommen weil ich keine Rechte habe auf USB Stick zu schreiben oder Änderungen vor zu nehmen. Ich komme iergendwie nicht weiter habe mich durch google gekämpft und versuche seit einer Woche dort eine Berechtigung anzulegen. Das gleiche Problem habe ich auch wenn ich von meiner IP Cam in FHEM einen Snapshot in das media Verzeichnis speichern möchte.

pi@raspberrypi:/media $ cd /ipcam
-bash: cd: /ipcam: Datei oder Verzeichnis nicht gefunden
pi@raspberrypi:/media $ cd ./ipcam
pi@raspberrypi:/media/ipcam $ dir
garten
pi@raspberrypi:/media/ipcam $ cd /garten
-bash: cd: /garten: Datei oder Verzeichnis nicht gefunden
pi@raspberrypi:/media/ipcam $ cd ./garten
pi@raspberrypi:/media/ipcam/garten $ cd ..
pi@raspberrypi:/media/ipcam $ ls -la
insgesamt 12
drwxr-xr-x 3 root root 4096 Nov 18 21:33 .
drwxr-xr-x 4 root root 4096 Nov 27 17:04 ..
drwxr-xr-x 2 root root 4096 Nov 18 21:33 garten
pi@raspberrypi:/media/ipcam $

eine Frage noch am Rande: Warum muss ich bei einigen Ordnern einen "." vor das Slash Zeichen setzen damit ich in das Verzeichniss mit cd rein komme?


nanoCul434MHz, nanoCul868MHz, HueBridge, shellyRolladenaktoren, Nuki, Homematic, RPI3, Homebridge, Sonoffbridge, Xiaomi Saugrobotter,

Wernieman

Es liegt an den Userberechtigungen
manuel=pi
Fhem=fhem

fhem muß auf dem Ordner schreiben dürfen.
Deine Fehlermledung sagt alles:
sh: 1: cannot create /media/usbdrive/FHEM-20171129_224951.tar.gz: Permission denied

Aber eine Ergänzung:
Warum gibtst Du fhem per sudo alle Rechte? Damit hast Du die Vorteile der verschiedenen User unter Unix komplett elleminiert ohne weitere Vorteile Deinerseits.... ich glaube, Dir ist sudo und was es macht nicht so bekannt.

Gibt fhem bitte nur die Rechte, die es benötigt, die aber direkt (ohne sudo).

Und auch folgendest sagt alles:
Zitatpi@raspberrypi:/media $ cd /ipcam
-bash: cd: /ipcam: Datei oder Verzeichnis nicht gefunden

- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Amenophis86

Hallo Larusso  und willkommen im Forum,

ich möchte dich bitte darauf hinweisen, dass du für Codezeilen die Codetags (das #-Symbol bei den Smilies). Dies vereinfacht das Lesen deines Posts ungemein. Vielen Dank.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Larusso

#3
Hallo ich habe jetzt die Berechtigungen in den Ordnern geändert, so das der Benutzer fhem alle rechte hat:

pi@raspberrypi:/media $ sudo chmod -R -v 775 /media
Modus von '/media' als 0775 (rwxrwxr-x) erhalten
der Modus von '/media/usbdrive' wurde von 0755 (rwxr-xr-x) in 0775 (rwxrwxr-x) geändert
der Modus von '/media/usbdrive/FHEM-20171129_210304.tar.gz' wurde von 0755 (rwxr-xr-x) in 0775 (rwxrwxr-x) geändert
der Modus von '/media/ipcam' wurde von 0755 (rwxr-xr-x) in 0775 (rwxrwxr-x) geändert
Modus von '/media/ipcam/garten' als 0775 (rwxrwxr-x) erhalten
pi@raspberrypi:/media $


desweiteren liste ich mal meine gruppen auf
pi@raspberrypi:~ $ id
uid=1000(pi) gid=1000(pi) Gruppen=1000(pi),4(adm),5(tty),20(dialout),24(cdrom),2                                                                                                         7(sudo),29(audio),44(video),46(plugdev),60(games),100(users),101(input),108(netd                                                                                                         ev),997(gpio),998(i2c),999(spi)
pi@raspberrypi:~ $ less /etc/group
root:x:0:
daemon:x:1:
bin:x:2:
sys:x:3:
adm:x:4:pi,fhem
tty:x:5:pi,fhem
disk:x:6:
lp:x:7:
mail:x:8:
news:x:9:
uucp:x:10:
man:x:12:
proxy:x:13:
kmem:x:15:
dialout:x:20:pi,fhem
fax:x:21:
voice:x:22:
cdrom:x:24:pi
floppy:x:25:
tape:x:26:
sudo:x:27:pi,fhem
audio:x:29:pi,fhem
dip:x:30:
www-data:x:33:
backup:x:34:
operator:x:37:
list:x:38:
irc:x:39:
src:x:40:
gnats:x:41:
shadow:x:42:
utmp:x:43:
video:x:44:pi
sasl:x:45:
plugdev:x:46:pi,fhem
staff:x:50:
games:x:60:pi
users:x:100:pi,fhem
nogroup:x:65534:
input:x:101:pi
systemd-journal:x:102:
systemd-timesync:x:103:
systemd-network:x:104:
systemd-resolve:x:105:
systemd-bus-proxy:x:106:
crontab:x:107:
netdev:x:108:pi
pi:x:1000:fhem
messagebus:x:109:
:


und ich habe immer noch diese Fehlermeldung:
2017.11.30 09:21:40 2: Backup with command: tar -cf - "./backup" "./backup_cfg-state" "./CHANGED" "./configDB.pm" "./contrib" "./demolog" "./docs" "./FHEM" "./fhem.cfg" "./fhem.cfg.demo" "./fhem.pl" "./log" "./MAINTAINER.txt" "./README_DEMO.txt" "./restoreDir" "./unused" "./www" |gzip > /media/usbdrive/FHEM-20171130_092140.tar.gz
sh: 1: cannot create /media/usbdrive/FHEM-20171130_092140.tar.gz: Permission denied
tar: -: Funktion write fehlgeschlagen: Datenübergabe unterbrochen (broken pipe)
tar: Error is not recoverable: exiting now
Backup done


also eigentlich müsste ich doch mit dem user fhem nun alle rechte zum schreiben auf das Verzeichniss usbdrive vergeben haben. Warum kann ich dort immer noch keine Backupdatei erzeugen?
In meiner fhem Config habe ich den Pfad so angelegt
attr global backupdir /media/usbdrive
nanoCul434MHz, nanoCul868MHz, HueBridge, shellyRolladenaktoren, Nuki, Homematic, RPI3, Homebridge, Sonoffbridge, Xiaomi Saugrobotter,

DarkT


sudo mkdir /media/usbdrive/fhem_backup
sudo chown fhem:dialout /media/usbdrive/fhem_backup
sudo chmod ug=rw /media/usbdrive/fhem_backup


Dann deinen Backup-Folder auf /media/usbdrive/fhem_backup setzen

Larusso

#5
geht leider auch nicht, es wird mir gesagt das fhem nicht der eigentümer ist. Ich habe auch schon ausprobiert den Eigentümer zu wechseln aber ................ ich weis auch nicht.

pi@raspberrypi:~ $ sudo mkdir /media/usbdrive/fhem_backup
pi@raspberrypi:~ $ sudo chown fhem:dialout /media/usbdrive/fhem_backup
chown: der Eigentümer von '/media/usbdrive/fhem_backup' wird geändert: Die Operation ist nicht erlaubt
pi@raspberrypi:~ $ sudo chmod ug=rw /media/usbdrive/fhem_backup
pi@raspberrypi:~ $


Eine Bemerkung am Rande, kann es damit zusammenhängen das der USB Stick auf fat32 formatiert ist? Welches dateisystem soll ich formatieren? Ich benutze Win7 da kann man ja mit dem Standart Format tool nicht viel machen. NTFS, fat32 und exFat.
nanoCul434MHz, nanoCul868MHz, HueBridge, shellyRolladenaktoren, Nuki, Homematic, RPI3, Homebridge, Sonoffbridge, Xiaomi Saugrobotter,

DarkT

Mach mal ein

ls -all


auf dem überordneten Ordner, also auf  /media/usbdrive und  /media und post die Ergebniss hier

Larusso

habe den stick nochmal formatiert und neu definiert geht aber auch nicht.

pi@raspberrypi:~ $ blkid -o list
device     fs_type label    mount point    UUID
-------------------------------------------------------------------------------
/dev/mmcblk0p1
           vfat    boot     /boot          E5B7-FEA1
/dev/mmcblk0p2
           ext4             /              b4ea8e46-fe87-4ddd-9e94-506c37005ac5
/dev/ram0                   (not mounted)
/dev/ram1                   (not mounted)
/dev/ram2                   (not mounted)
/dev/ram3                   (not mounted)
/dev/ram4                   (not mounted)
/dev/ram5                   (not mounted)
/dev/ram6                   (not mounted)
/dev/ram7                   (not mounted)
/dev/ram8                   (not mounted)
/dev/ram9                   (not mounted)
/dev/ram10                  (not mounted)
/dev/ram11                  (not mounted)
/dev/ram12                  (not mounted)
/dev/ram13                  (not mounted)
/dev/ram14                  (not mounted)
/dev/ram15                  (not mounted)
/dev/mmcblk0
                            (not mounted)
/dev/sda1                   /media/pi/STICK
pi@raspberrypi:~ $ df -h
Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
/dev/root       7,2G    5,0G  1,9G   74% /
devtmpfs        460M       0  460M    0% /dev
tmpfs           464M       0  464M    0% /dev/shm
tmpfs           464M     18M  446M    4% /run
tmpfs           5,0M    4,0K  5,0M    1% /run/lock
tmpfs           464M       0  464M    0% /sys/fs/cgroup
/dev/mmcblk0p1   42M     21M   21M   51% /boot
tmpfs            93M       0   93M    0% /run/user/1000
/dev/sda1        15G    8,0K   15G    1% /media/pi/STICK
pi@raspberrypi:~ $ sudo mkdir /media/pi/STICK/fhem_backup
pi@raspberrypi:~ $ sudo chown fhem:dialout /media/pi/STICK/fhem_backup
chown: der Eigentümer von '/media/pi/STICK/fhem_backup' wird geändert: Die Operation ist nicht erlaubt
pi@raspberrypi:~ $ sudo chmod ug=rw /media/pi/STICK/fhem_backup
pi@raspberrypi:~ $ cd /media/pi/STICK
pi@raspberrypi:/media/pi/STICK $ ls -all
insgesamt 20
drwxr-xr-x  3 pi   pi   8192 Nov 30 11:11 .
drwxr-x---+ 3 root root 4096 Nov 30 11:09 ..
drwxr-xr-x  2 pi   pi   8192 Nov 30 11:11 fhem_backup
pi@raspberrypi:/media/pi/STICK $ cd ..
pi@raspberrypi:/media/pi $ ls -all
insgesamt 16
drwxr-x---+ 3 root root 4096 Nov 30 11:09 .
drwxr-xr-x  5 root root 4096 Nov 25 16:29 ..
drwxr-xr-x  3 pi   pi   8192 Nov 30 11:11 STICK
pi@raspberrypi:/media/pi $ cd ..
pi@raspberrypi:/media $ ls -all
insgesamt 20
drwxr-xr-x   5 root root 4096 Nov 25 16:29 .
drwxr-xr-x  21 root root 4096 Nov 25 16:31 ..
drwxr-xr-x   3 root root 4096 Nov 18 21:33 ipcam
drwxr-x---+  3 root root 4096 Nov 30 11:09 pi
drwxr-xr-x   2 root root 4096 Nov 25 16:29 usbstick
pi@raspberrypi:/media $
nanoCul434MHz, nanoCul868MHz, HueBridge, shellyRolladenaktoren, Nuki, Homematic, RPI3, Homebridge, Sonoffbridge, Xiaomi Saugrobotter,

Wernieman

Du hast Ih bestimmt mit FAT16/32 formatiert?

Da gibt es keine Eigentümer, das KANN nicht funktionieren. Wie hast Du den Stick den gemountet?

Btw:
Und warum lieferst Du nicht wie gewünscht ein "ls -lha" s.o.
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Larusso

#9
ich verstehe deine Frage nicht. Ich habe den Stick mit Win7 auf fat32 formatiert, wenn er eingesteckt wird mountet er automatisch. Wenn er nicht gemountet wäre würde er als unmount in der device liste angezeigt. "Da gibt es keine Eigentümer, das KANN nicht funktionieren. Wie hast Du den Stick den gemountet?" wie meinst du das, es gibt keinen Eigentümer. Kann ich einem Fat32 Stick keinen User mit Rechten vergeben. Vielleicht kann mir einer ja mal kurz schreiben mit welchen befehlen ich nun dem fhem user dazu bringe schreib rechte auf dem Pfad media/pi/STICK/fhem_backup  zu bekommen. iergendwie scheint da der wurm drin zu sein, meine Linux Kenntnisse beschränken sich leider auf ein minimum wie man anhand der Posts sieht.

Hier nochmal die Liste
pi@raspberrypi:~ $ sudo blkid -o list -w /dev/null
device                          fs_type      label         mount point                         UUID
-----------------------------------------------------------------------------------------------------------------------------------
/dev/mmcblk0p1                  vfat         boot          /boot                               E5B7-FEA1
/dev/mmcblk0p2                  ext4                       /                                   b4ea8e46-fe87-4ddd-9e94-506c37005ac5
/dev/mmcblk0                                               (in use)
/dev/sda1                       vfat         STICK         /media/pi/STICK                     C492-AE6F
pi@raspberrypi:~ $
nanoCul434MHz, nanoCul868MHz, HueBridge, shellyRolladenaktoren, Nuki, Homematic, RPI3, Homebridge, Sonoffbridge, Xiaomi Saugrobotter,

DarkT

Was mich wundert ist das der neu angelegt Ordner "fhme_backup" nicht dem Benutzer root, sondern dem Benutzer pi gehört


..
drwxr-xr-x  2 pi   pi   8192 Nov 30 11:11 fhem_backup


Versuche mal bitte

chown fhem:dialout /media/usbdrive/fhem_backup

also ohne sudo

Beta-User

Zitat von: Wernieman am 30 November 2017, 11:56:22
Du hast Ih bestimmt mit FAT16/32 formatiert?

Da gibt es keine Eigentümer, das KANN nicht funktionieren. Wie hast Du den Stick den gemountet?

Der automatische mount wird offensichtlich vom user "pi" durchgeführt. Da FAT32 keine Infos über Userrechte verwalten kann, wird schlicht und ausschließlich für das ganze Laufwerk Vorgabe pi:pi mit Schreibrechten nur für pi verwendet.

Lösung also: automount als user fhem durchführen (bitte selbst recherchieren, dann bekommst du auch ein Gefühl für die Rechteverwaltung unter Linux).
Was auch klappen könnte, ist die Rechte auf das Grundverzeichnis anzupacken, also pi:dialout mit Schreibrechten für dialout auf
/media/pi/STICK
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Larusso

#12
das gibt er mir aus wenn ich versuche den Ordner fhem_backup vom STICK dem Benutzer fhem zu übergeben. Weder ohne sudo noch mit funktioniert es. Sehe ich doch richtig das der Stick gemountet ist oder?

pi@raspberrypi:/media $ chown fhem:dialout /media/pi/STICK/fhem_backup
chown: der Eigentümer von '/media/pi/STICK/fhem_backup' wird geändert: Die Operation ist nicht erlaubt
pi@raspberrypi:/media $ sudo chown fhem:dialout /media/pi/STICK/fhem_backup
chown: der Eigentümer von '/media/pi/STICK/fhem_backup' wird geändert: Die Operation ist nicht erlaubt
pi@raspberrypi:/media $


So also wäre es am einfachsten ich benutze ein anderes Format am USB Stick, binde ihn dann ein und gebe fhem dann rw rechte auf dem stick. Kann ich ntfs Dateisystemen rechte geben oder welches format soll ich am besten nutzen um den Stick zu formatieren? (Sollte es ein Linux Format sein bitte kurzen Tip wie ich mit Windows den Stick formatieren kann....dort gibt es ja nur fat32, ntfs und exfat)
nanoCul434MHz, nanoCul868MHz, HueBridge, shellyRolladenaktoren, Nuki, Homematic, RPI3, Homebridge, Sonoffbridge, Xiaomi Saugrobotter,

Beta-User

#13
/media/pi/STICK/fhem_backup ne /media/pi/STICK/

EDIT: https://wiki.ubuntuusers.de/mount/#Windows-Dateisysteme
Da drumrum steht auch noch einiges interessantes ;) .
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

DarkT

Zitat von: Beta-User am 30 November 2017, 12:51:35
/media/pi/STICK/fhem_backup ne /media/pi/STICK/

Keine Ahnung was Du ihm damit sagen wolltest?

Was ich sehe ist, dass dein USB Stick vfat formatiert ist. Bitte ändere das mal auf ext4, wie in diesem Link beschrieben