Dienste über external starten nicht mehr

berndy2001

Mitglied
Mitglied seit
26 Nov 2005
Beiträge
432
Punkte für Reaktionen
11
Punkte
18
Hallo,

ich verwende das Paket external (aber ohne externalisierte Pakete) um vnstat und rrdstats erst nach dem Timesync zu starten. Das klappte bisher gut, doch nach einem update auf die aktuelle Version startet external bzw. diese Dienste nicht mehr.

Lösch ich sie aus "Diese selbst definierten Dienste behandeln" raus, lassen sie sich manuell starten.
/var/log/external.log
Code:
Starting external (/var/media/ftp/uStor01/external):
Waiting for mod-startup: .........................................................
die Punkte werden übrigens immer mehr...

Hat jemand Tipps? Danke!
 
@cuma: Wartest du denn dann unendlich? Wäre es vielleicht sinnvoll einen Abbruch z.B. nach 60 Sekunden oder ähnlich durchzuführen? Denn unendliche Schleifen sind unschön, obwohl der Fehler hier natürlich anderswo liegt. Dennoch und gerade deswegen (benutzerdefinierte Skripte) sollte man es vielleicht etwas idiotensicherer gestalten?

MfG
 
wie es scheint habe den schuldigen gefunden, es ist fritzload. Nimmt man das Startskript aus der rc.custom, tut alles so wie es soll.

syslog
Code:
Jan  1 01:01:06 fritz user.debug kernel:   DMA zone: 0 pages reserved
Jan  1 01:01:06 fritz user.debug kernel:   DMA zone: 97378 pages, LIFO batch:31
Jan  1 01:01:06 fritz user.debug kernel:   Normal zone: 0 pages used for memmap
Jan  1 01:01:06 fritz user.err kernel: [request_resource] Kernel code: start 0x14000000 < root->start 0x17f60000
Jan  1 01:01:06 fritz user.err kernel: [request_resource] Kernel data: start 0x14245de0 < root->start 0x17f60000
Jan  1 01:01:06 fritz user.warn kernel: Built 1 zonelists.  Total pages: 97378
Jan  1 01:01:06 fritz user.notice kernel: Kernel command line: annex=A console=ttyS0,38400n8r
Jan  1 01:01:06 fritz user.warn kernel: Primary instruction cache 16kB, physically tagged, 4-way, linesize 16 bytes.
Jan  1 01:01:06 fritz user.warn kernel: Primary data cache 16kB, 4-way, linesize 16 bytes.
Jan  1 01:01:06 fritz user.info kernel: Synthesized TLB refill handler (20 instructions).
Jan  1 01:01:06 fritz user.info kernel: Synthesized TLB load handler fastpath (32 instructions).
Jan  1 01:01:06 fritz user.info kernel: Synthesized TLB store handler fastpath (32 instructions).
Jan  1 01:01:06 fritz user.info kernel: Synthesized TLB modify handler fastpath (31 instructions).
Jan  1 01:01:06 fritz user.warn kernel: PID hash table entries: 2048 (order: 11, 8192 bytes)
Jan  1 01:01:06 fritz user.warn kernel: CPU frequency 360.00 MHz
Jan  1 01:01:06 fritz user.warn kernel: Using 180.000 MHz high precision timer.
Jan  1 01:01:06 fritz user.warn kernel: Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)
Jan  1 01:01:06 fritz user.warn kernel: Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)
Jan  1 01:01:06 fritz user.warn kernel: [free_all_bootmem]
Jan  1 01:01:06 fritz user.info kernel: Memory: 60416k/64896k available (2327k kernel code, 4456k reserved, 700k data, 144k init, 0k highmem)
Jan  1 01:01:06 fritz user.debug kernel: Calibrating delay loop... 359.62 BogoMIPS (lpj=1798144)
Jan  1 01:01:06 fritz user.warn kernel: Mount-cache hash table entries: 512
Jan  1 01:01:06 fritz user.warn kernel: Checking for 'wait' instruction...  available.
Jan  1 01:01:06 fritz user.info kernel: NET: Registered protocol family 16
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_init]
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_init] flashsize = 0x01000000 Byte 16 MBytes
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_init] mtd[0] = 0x90000000,0x90000000
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_init] mtd[1] = 0x90020000,0x90F80000
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_init] mtd[2] = 0x90000000,0x90020000
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_init] mtd[3] = 0x90F80000,0x90FC0000
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_init] mtd[4] = 0x90FC0000,0x91000000
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_init] mtd[5] = 0x90000000,0x90000000
Jan  1 01:01:06 fritz user.err kernel: pcibios_read_config: accessing present PCI slot : 14, where 0, size 4
Jan  1 01:01:06 fritz user.err kernel: Master and Slave Enabled
Jan  1 01:01:06 fritz user.info kernel: pktsched: using high resolution timer
Jan  1 01:01:06 fritz user.info kernel: NET: Registered protocol family 2
Jan  1 01:01:06 fritz user.warn kernel: IP route cache hash table entries: 4096 (order: 2, 16384 bytes)
Jan  1 01:01:06 fritz user.warn kernel: TCP established hash table entries: 16384 (order: 4, 65536 bytes)
Jan  1 01:01:06 fritz user.warn kernel: TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
Jan  1 01:01:06 fritz user.info kernel: TCP: Hash tables configured (established 16384 bind 8192)
Jan  1 01:01:06 fritz user.info kernel: TCP reno registered
Jan  1 01:01:06 fritz user.info kernel: squashfs: version 3.2 (2007/01/02) Phillip Lougher
Jan  1 01:01:06 fritz user.info kernel: Installing knfsd (copyright (C) 1996 [email protected]).
Jan  1 01:01:06 fritz user.warn kernel: fuse init (API version 7.8)
Jan  1 01:01:06 fritz user.info kernel: io scheduler noop registered (default)
Jan  1 01:01:06 fritz user.info kernel: avm_net_trace: Up and running.
Jan  1 01:01:06 fritz user.warn kernel: [avm] configured: watchdog event debug enable direct gpio 
Jan  1 01:01:06 fritz user.warn kernel: AVM_WATCHDOG: Watchdog Driver for AR7 Hardware (Version 1.0, build: Nov 18 2010 16:34:50)
Jan  1 01:01:06 fritz user.info kernel: Serial: 8250/16550 driver $Revision: 1.3 $ 1 ports, IRQ sharing disabled
Jan  1 01:01:06 fritz user.info kernel: serial8250: ttyS0 at MMIO 0x0 (irq = 15) is a UR8_UART
Jan  1 01:01:06 fritz user.err kernel: [cpmac] Version: 1.130  -  Revision 790:1177  -  Do  18.11.2010  16:35:06 
Jan  1 01:01:06 fritz user.err kernel: [dectsync] inactive
Jan  1 01:01:06 fritz user.err kernel: [ar8216] index 0: 00:24:97:f0:51:14  
Jan  1 01:01:06 fritz user.warn kernel: 	Status: entry is valid and has been accessed since the last aging process DES 0x2
Jan  1 01:01:06 fritz user.err kernel: [ar8216] index 0: 90:e6:ba:10:73:47  
Jan  1 01:01:06 fritz user.warn kernel: 	Status: entry is valid and has been accessed since the last aging process DES 0x10
Jan  1 01:01:06 fritz user.err kernel: [ar8216] index 0: 00:24:fe:6f:64:0a  
Jan  1 01:01:06 fritz user.warn kernel: 	Status: entry is valid and has been accessed since the last aging process DES 0x1
Jan  1 01:01:06 fritz user.err kernel: [cpmac] [cpmac_if_register] dev cpmac0 (phy_id 0) registered
Jan  1 01:01:06 fritz user.info kernel: tun: Universal TUN/TAP device driver, 1.6
Jan  1 01:01:06 fritz user.info kernel: tun: (C) 1999-2004 Max Krasnyansky <[email protected]>
Jan  1 01:01:06 fritz user.notice kernel: physmap platform flash device: 01000001 at 10000000
Jan  1 01:01:06 fritz user.info kernel: physmap-flash.1: Found 1 x16 devices at 0x0 in 16-bit bank
Jan  1 01:01:06 fritz user.warn kernel:  Amd/Fujitsu Extended Query Table at 0x0040
Jan  1 01:01:06 fritz user.warn kernel: physmap-flash.1: CFI does not contain boot bank location. Assuming top.
Jan  1 01:01:06 fritz user.notice kernel: number of CFI chips: 1
Jan  1 01:01:06 fritz user.notice kernel: cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
Jan  1 01:01:06 fritz user.notice kernel: RedBoot partition parsing not available
Jan  1 01:01:06 fritz user.warn kernel: [ur8_jffs2_parser_function] mtd_info->name physmap-flash.1 mtd_info->index 0 param=0 p_mtd_pat=0x97e143bc
Jan  1 01:01:06 fritz user.warn kernel: [ur8_jffs2_parser_function] try partition kernel (offset 0x20000 len 16121856)
Jan  1 01:01:06 fritz user.warn kernel: [ur8_jffs2_parser_function] magic 20031985 found @pos 0xd40000, size 2359296
Jan  1 01:01:06 fritz user.warn kernel: [ur8_squashfs_parser_function] mtd_info->name physmap-flash.1 mtd_info->index 0 param=0 p_mtd_pat=0x97e143bc
Jan  1 01:01:06 fritz user.warn kernel: [ur8_squashfs_parser_function] *p_mtd_pat->name filesystem
Jan  1 01:01:06 fritz user.warn kernel: [ur8_squashfs_parser_function] try partition kernel (offset 0x20000 len 16121856 blocksize=20000)
Jan  1 01:01:06 fritz user.warn kernel: [ur8_squashfs_parser_function] magic found @pos 0x119700
Jan  1 01:01:06 fritz user.notice kernel: 6 find_squashfs partitions found on MTD device physmap-flash.1
Jan  1 01:01:06 fritz user.notice kernel: Creating 6 MTD partitions on "physmap-flash.1":
Jan  1 01:01:06 fritz user.notice kernel: 0x00119700-0x00f80000 : "rootfs"
Jan  1 01:01:06 fritz user.warn kernel: mtd: partition "rootfs" doesn't start on an erase block boundary -- force read-only
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] name rootfs
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] use rootfs
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] root device: /dev/mtdblock0 (rootfs)
Jan  1 01:01:06 fritz user.notice kernel: 0x00020000-0x00119700 : "kernel"
Jan  1 01:01:06 fritz user.warn kernel: mtd: partition "kernel" doesn't end on an erase block -- force read-only
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] name kernel
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] skip kernel
Jan  1 01:01:06 fritz user.notice kernel: 0x00000000-0x00020000 : "urlader"
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] name urlader
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] skip urlader
Jan  1 01:01:06 fritz user.notice kernel: 0x00f80000-0x00fc0000 : "tffs (1)"
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] name tffs (1)
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] skip tffs (1)
Jan  1 01:01:06 fritz user.notice kernel: 0x00fc0000-0x01000000 : "tffs (2)"
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] name tffs (2)
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] skip tffs (2)
Jan  1 01:01:06 fritz user.notice kernel: 0x00d40000-0x00f80000 : "jffs2"
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] name jffs2
Jan  1 01:01:06 fritz user.warn kernel: [ur8_mtd_add_notifier] skip jffs2
Jan  1 01:01:06 fritz user.warn kernel: Generic platform RAM MTD, (c) 2004 Simtec Electronics
Jan  1 01:01:06 fritz user.err kernel: mtd-ram mtd-ram.2: no memory resource specified
Jan  1 01:01:06 fritz user.err kernel: [ur8_ram_mtd_set_rw] PLATRAM_RO
Jan  1 01:01:06 fritz user.warn kernel: mtd-ram: probe of mtd-ram.2 failed with error -2
Jan  1 01:01:06 fritz user.err kernel: [4294937498]maxrun: 1
Jan  1 01:01:06 fritz user.notice kernel: CAPI Subsystem Rev 1.1.2.8
Jan  1 01:01:06 fritz user.info kernel: TCP cubic registered
Jan  1 01:01:06 fritz user.info kernel: mcfw: IGMPv3 fast forwarding
Jan  1 01:01:06 fritz user.info kernel: NET: Registered protocol family 1
Jan  1 01:01:06 fritz user.info kernel: NET: Registered protocol family 10
Jan  1 01:01:06 fritz user.info kernel: IPv6 over IPv4 tunneling driver
Jan  1 01:01:06 fritz user.info kernel: NET: Registered protocol family 17
Jan  1 01:01:06 fritz user.info kernel: NET: Registered protocol family 8
Jan  1 01:01:06 fritz user.info kernel: NET: Registered protocol family 20
Jan  1 01:01:06 fritz user.warn kernel: MUSB UR8 pdev active!
Jan  1 01:01:06 fritz user.err kernel: PCI_STATUS_SET: 40000
Jan  1 01:01:06 fritz user.err kernel: PCI_STATUS_CLR: 40000
Jan  1 01:01:06 fritz user.err kernel: PCI_HOST_INT_EN: 0
Jan  1 01:01:06 fritz user.err kernel: PCI_HOST_INT_CLR: 0
Jan  1 01:01:06 fritz user.err kernel: PCI_BE_INT_En: 0
Jan  1 01:01:06 fritz user.err kernel: PCI_BE_INT_CLR: 0
Jan  1 01:01:06 fritz user.err kernel: [pci_int_init] done
Jan  1 01:01:06 fritz user.err kernel: [TFFS_Init] 1: mtd_number: 3 | mtd_number2: 4
Jan  1 01:01:06 fritz user.info kernel: Time: MIPS clocksource has been installed.
Jan  1 01:01:06 fritz user.err kernel: [get_mtd_device_wrapped] 1: 3
Jan  1 01:01:06 fritz user.err kernel: [get_mtd_device_wrapped] 2
Jan  1 01:01:06 fritz user.err kernel: [TFFS_Init] 3
Jan  1 01:01:06 fritz user.err kernel: [TFFS_Init] 4.0
Jan  1 01:01:06 fritz user.err kernel: [put_mtd_device_wrapped] 1
Jan  1 01:01:06 fritz user.err kernel: [put_mtd_device_wrapped] 2
Jan  1 01:01:06 fritz user.err kernel: [put_mtd_device_wrapped] 3
Jan  1 01:01:06 fritz user.err kernel: [get_mtd_device_wrapped] 1: 4
Jan  1 01:01:06 fritz user.err kernel: [get_mtd_device_wrapped] 2
Jan  1 01:01:06 fritz user.err kernel: [TFFS_Init] 5
Jan  1 01:01:06 fritz user.err kernel: [TFFS_Init] 6
Jan  1 01:01:06 fritz user.err kernel: [put_mtd_device_wrapped] 1
Jan  1 01:01:06 fritz user.err kernel: [put_mtd_device_wrapped] 2
Jan  1 01:01:06 fritz user.err kernel: [put_mtd_device_wrapped] 3
Jan  1 01:01:06 fritz user.err kernel: [get_mtd_device_wrapped] 1: 3
Jan  1 01:01:06 fritz user.err kernel: [get_mtd_device_wrapped] 2
Jan  1 01:01:06 fritz user.err kernel: [TFFS_Init] 7
Jan  1 01:01:06 fritz user.err kernel: [TFFS_Init] 8
Jan  1 01:01:06 fritz user.err kernel: [TFFS_Init] 9
Jan  1 01:01:06 fritz user.warn kernel: TFFS: tiny flash file system driver. GPL (c) AVM Berlin (Version 2.0)
Jan  1 01:01:06 fritz user.warn kernel:       mount on mtd3 and mtd4 (double buffering)
Jan  1 01:01:06 fritz user.notice FREETZMOD: Starting syslogd ... done.
Jan  1 01:01:06 fritz user.info kernel: Adam2 environment variables API installed.
Jan  1 01:01:06 fritz user.info kernel: [avm_new] push_button_gpio=25 value=0 enabled
Jan  1 01:01:06 fritz user.warn kernel: VFS: Mounted root (squashfs filesystem) readonly.
Jan  1 01:01:06 fritz user.warn kernel: Freeing prom memory: 0kb freed
Jan  1 01:01:06 fritz user.info kernel: Freeing unused kernel memory: 144k freed
Jan  1 01:01:06 fritz user.warn kernel: TFFS Name Table G
Jan  1 01:01:06 fritz user.warn kernel: AVM_WATCHDOG: System Init UEberwachung 240 Sekunden
Jan  1 01:01:06 fritz user.warn kernel: led_modul_Fritz_Box_7270plus: module license '
Jan  1 01:01:06 fritz user.warn kernel: (C) Copyright 2008 by AVM
Jan  1 01:01:06 fritz user.warn kernel: ' taintskernel.
Jan  1 01:01:06 fritz user.warn kernel: [led_gpio_bit_driver_init] gpio 1 name power
Jan  1 01:01:06 fritz user.warn kernel: [led_gpio_bit_driver_init] gpio 9 name internet
Jan  1 01:01:06 fritz user.warn kernel: [led_gpio_bit_driver_init] gpio 27 name festnetz
Jan  1 01:01:06 fritz user.warn kernel: [led_gpio_bit_driver_init] gpio 28 name wlan
Jan  1 01:01:06 fritz user.warn kernel: [led_gpio_bit_driver_init] gpio 17 name dual1
Jan  1 01:01:06 fritz user.warn kernel: [led_gpio_bit_driver_init] gpio 35 name dual2
Jan  1 01:01:06 fritz user.err kernel: [BUTTON] no buttons defined - disable new button controls
Jan  1 01:01:06 fritz user.warn kernel: [piglet]use gpio-settings for 145
Jan  1 01:01:06 fritz user.info kernel: [avm_new]push_button_ctrl: gpio=23 value=0 enabled
Jan  1 01:01:06 fritz user.info kernel: [avm_new]push_button_ctrl:'Taster_4': enable=2 gpio=23 regaddr=00000000 button_type=0
Jan  1 01:01:06 fritz user.warn kernel: patch_dectfw: c008e000, totallen = 47136(b820)
Jan  1 01:01:06 fritz user.warn kernel: patch_dectfw: patch_adress: f0ff8 max_len: 26 with Version 2 Len: 17
Jan  1 01:01:06 fritz user.warn kernel: dect_loader: fast-bootmode
Jan  1 01:01:06 fritz user.warn kernel: *
Jan  1 01:01:06 fritz user.warn kernel: ********************************************************************************************
Jan  1 01:01:06 fritz user.warn kernel: dect144xx_file_process: upload of '/lib/modules/dectfw_secondlevel_488.hex' successfull
Jan  1 01:01:06 fritz user.err kernel: [piglet]bitfile '/lib/modules/bitfile.bit'
Jan  1 01:01:06 fritz user.warn kernel: [piglet] clock from pll3(384000000)
Jan  1 01:01:06 fritz user.err kernel: [4294938566]maxrun: 2
Jan  1 01:01:06 fritz user.err kernel: [piglet] Read 169293 bytes total from file
Jan  1 01:01:06 fritz user.warn kernel: [piglet]TDM: FS: 8000 Hz CLK:2047980 Hz
Jan  1 01:01:06 fritz user.info kernel: JFFS2 version 2.2. (NAND) (C) 2001-2006 Red Hat, Inc.
Jan  1 01:01:06 fritz user.warn kernel: [avm_debug]redirect kernel-messages (/dev/debug)
Jan  1 01:01:06 fritz user.warn kernel: [pcmlink]c55_isr: d=00003f2a r=00003ee8 s=00003f00 m=00002108
Jan  1 01:01:06 fritz user.warn kernel: [pcmlink]c55: simple checksum: 18DF45D
Jan  1 01:01:07 fritz user.notice FREETZMOD: Starting inetd ... done.
Jan  1 01:01:07 fritz user.notice FREETZMOD: Setting up SSH authorized_keys for root ... done.
Jan  1 01:01:08 fritz authpriv.info dropbear[2316]: Running in background
Jan  1 01:01:08 fritz user.notice FREETZMOD: Starting dropbear SSH server ... done.
Jan  1 01:01:13 fritz user.notice FREETZMOD: Reading AVM's phone book ... done. Starting callmonitor ... done.
Jan  1 01:01:14 fritz user.notice FREETZMOD: rrdstats will be started by external.
Jan  1 01:01:16 fritz user.notice FREETZMOD: Starting Samba-smbd ... done.
Jan  1 01:01:16 fritz user.notice FREETZMOD: sane-backends is updating inetd ... active.
Jan  1 01:01:16 fritz user.notice FREETZMOD: vnstat will be started by external.
Jan  1 01:01:17 fritz user.notice FREETZMOD: Starting wol webinterface ... done.
May  1 23:13:43 fritz user.err telefon[1897]: set initial telefon time from linux time to 23:13:43 1.05 2011!
May  1 23:13:43 fritz user.notice ONLINECHANGED[2899]: [online] sleeping
May  1 23:13:44 fritz user.err telefon[1897]: SIGCHILD killdectpid

ich finde in den logfiles nichts seltsames...
 

Anhänge

  • var-log.tar.gz
    842 Bytes · Aufrufe: 2
wo ist denn jetzt dein beitrag hin, cuma?
Mit Fritzload gab es schön öfter "Startschwierigkeiten". Bislang hatte hier auch noch niemand hier Zeit/Lust sich damit zu beschäftigen und richtig in Freetz anzupassen, ist also unsupportet... Fritzload hat ein eigenes Trac, dort freut man sich bestimmt über den Bug :)
An den Logs erkennt man dass es kein Problem in "onlinechanged" ist ("ONLINECHANGED[2899]: [online] sleeping"), sonder rc.custom

nicht mehr aktuell, oder datenleck im forum?

Edit: hier gibt es schon ein ticket im fritzload-trac, ich häng mich da mal dran.
Edit2: Der User vom ticket schreibt von "install.sh -g". Klar, das geht, dann wird fritzload auch nicht in die rc.custom installiert, sondern nur einmalig gestartet.
 
Zuletzt bearbeitet:
Der symlink /mod/external nach /var/media/ftp/uStor01/external fehlt.

Ist kein spezifisches fritzload Problem, sondern tritt auch beim Infoframe Startskript im rc.custom auf.
 
Danke. Hast du einen Workaround dafür gefunden? Ein symlink allein hat mir nicht geholfen, external ist dann trotzdem nicht gestartet.
 
Ja, ich habe die rc.custom geleert, und das skript in die autorun.sh auf dem USB Stick gepackt. Das Ausführen des Skripts muss bei Erstellen des Freetz Images aktiviert werden.
 
Danke für die Hilfe, hab jetzt den Inhalt von der rc.custom in die autorun.sh verschoben, aber da tut sich nix, Fritzload startet nicht.
Wenn ich das skript manuell aufrufe kommt folgendes:
Code:
root@fritz:/var/media/ftp/uStor01# ./autorun.sh
: not foundh: line 2:
: not foundh: line 3:
: not foundh: line 7: {
./autorun.sh: line 23: syntax error: unexpected word (expecting "do")
Was mach ich da falsch?

Edit: Grml, natürlich brauch ich ein #!/bin/ash am Anfang, aber dann kommt "-sh: ./autorun.sh: not found"
Edut2: So, jetzt geht ;) Datei muss unix-zeichensatz haben...
 
Zuletzt bearbeitet:
Inhalt war das Fritzload startskript.
Der Entwickler von Fritzload hat geschrieben, dass es da derzeit Probleme gibt.
 
Vielleicht sollten wir beim Support jedweder Art darauf bestehen, dass debug.cfg und rc.custom gelöscht oder gepostet werden, bevor wir helfen. Immer wieder sind es irgendwelche Fremdpakete oder so etwas, die den Ablauf stören.
 
Ich wäre eher dafür zu versuchen, dass solche Skripte den Ablauf nicht stören können, falls das möglich ist... (wobei ich dagegen bin die rc.custom im Hintergrund zu starten)

Kannst du bitte mal den konkreten Inhalt der Datei (den du jetzt verschoben hast) posten?

Gruß
Oliver
 
Ich würde alternativ und/oder zusätzlich auch noch einen Startparameter einbauen, der den Aufruf der rc.custom und der debug.cfg verhindert, und somit ein "nacktes" Freetz gestartet werden kann.
Dies würde 2 Vorteile bringen: Zum einen ain eventuell schon dort lauffähiges System um die entsprechenden Dateien zu verändern, und zum anderen Kontrolle für die Seite der Devs, inwiefern irgendwelcher seltsamer dort enthaltener Kram den kompletten Start verhindert.
Was meint ihr dazu?
 
Doch, Oliver, man kann schon versuchen rc.custom in den Hintergrund zu schicken, man sollte es allerdings nicht bloß mit einem & am Ende tun, sondern etwas Gehirnschmalz dahin investieren. Ich hatte vor ein Paar Monaten sowas ähnliches auf einem großen Debian-Server gemacht und das scheint zu funktionieren. Dort habe ich einen Spezialaccount eingerichtet, der mir den SSH-Root-Zugang für eine gewisse Zeit freigeschaltet hat. Das Ganze habe ich mit den sleeps und Hintergrundprozessen gestaltet und das geht.
In diesem Falle könnte man die rc.custom mit einem speziellen Skript "ummanteln" und diesen Skript und nicht die rc.custom selbst in den Hintergrund schicken. Am Anfang von diesem Skript macht man eine Zeile, wie etwa:
Code:
timetowait=30
echo $timetowait > /tmp/timetowait_rc_custom
date > /tmp/rc_custom_running
und am Ende
Code:
rm -f /tmp/rc_custom_running
rm -f /tmp/timetowait_rc_custom
In der Hauptschleife gestaltet man dann eine begrenzte do-Schleife, die jede Sekunde die Datei /tmp/rc_custom_running abfragt, ob sie noch da ist und dabei den Zähler aus /tmp/timetowait_rc_custom ausliest, decrementiert und wieder rein schreibt.
Somit haben wir das alte Verhalten quasi nachgebildet, haben uns aber quasi von den Skripts durch die Hülle geschützt und abgegrenzt. Man kann noch die STDOUT und STDERR von rc.custom in zwei Dateien umleiten, die man ggf. noch separat analysieren kann.
date wäre nicht zwingend notwendig, man kann aber unter Umständen daraus Schlüsse ziehen, wann es denn wirklich gestartet wurde.
Die ganzen tmp-Dateien sind nicht umsonst da. Visierte Benutzer können z.B. /tmp/timetowait_rc_custom gezielt "übersteuern" und somit die Wartezeit etwas verlängern. Die Wartezeit kann man übrigens sonst als FREETZ-Variable per WebIF konfigurierbar machen.

Natürlich sind dann noch weitere Variationen möglich.

Spricht was gegen meine Idee?

MfG
 
Hauptsächlich spricht dagegen, dass es sich um eine komplizierte Lösung handelt für den Fall, dass der Benutzer etwas in das Skript schreibt, was dort nicht hin gehört.
 
@Ralf: Ja schon. Aber damit würden wir mit einem überschaubaren Aufwand eine ziemlich gute Idiotensicherung einbauen. Warum denn nicht?
Und am Ende, wenn die Zeit abgelaufen ist, kann man die ganzen Sachen noch durch das killen vom Elternprozess killen lassen. Dann ist erstmal Ruhe im Karton und wir haben das Problem an den Problemverursacher geschoben und leiden als FREETZ nicht daran.
Und warum ist die Lösung kompliziert? Das sind höchstens 10 Zeilen Code, Benutzung von 2-3 Dateien zur Zwischenspeicherung unter /tmp, Starten eines Hintergrundprozesses.

MfG
 
Ich habe mir FritzLoad installiert und bekomme damit sogar einen Reboot Loop. Folgendes wird in die rc.custom geschrieben:
Code:
#>> Fritzload

fritzload_blver=1; USB_dir=/var/media/ftp/uStor01/FritzLoad; fritzload_itype=default; remove_medium="gocr pngtopnm smbclient tcpdump unrar null.bin wget";

USB_dir="${USB_dir#/var/media/ftp/*/}"
rm -f /var/fritzload
killall "apache\ " fritzload.sh autorunfl.sh "curl\ " "unrar\ " unrarit.sh 2>/dev/null

{
    while true; do
		echo "Fritz!Load Installer: wait for internet connection..."
		while ! ping -c 1 "google.com" >/dev/null 2>&1; do
			sleep 20
		done
		echo "Fritz!Load Installer: wait for usb drive..."
		while true; do
			if mount | grep " on /var/media/ftp/" >/dev/null; then
				echo "USB drive(s) found"
				sleep 3
				break
			fi
			sleep 11
		done
		LN_success=0
		for USBDEVICE in $(mount | grep /var/media/ftp/ | sed -e "s,^.*ftp/,,g" -e "s/ .*$//"); do
			# Verzeichnis vorhanden?
			pdir=/var/media/ftp/$USBDEVICE/$USB_dir
			if [ -d "$pdir" ];then
				LN_success=1
				echo "Fritz!Load found $pdir"
				echo "Richte Verzeichnisstruktur ein. LINK: /var/fritzload"
				mkdir -pm 0777 $pdir/log $pdir/downloads $pdir/tmp $pdir/uploads
				if [ -e /var/fritzload/ ];then
					if [ -L /var/fritzload/ ];then
						rm -f /var/fritzload/
					fi
				fi
				echo "Installations Typ: $fritzload_itype"
				if [ $fritzload_itype = default ];then
					ln -s $pdir /var/fritzload
				else
					mkdir -pm 0777 /var/fritzload
					for f in cgi html lib; do
						cp -R $pdir/$f /var/fritzload/$f
					done
					chmod 0777 /var/fritzload/cgi/*
					for f in config doc downloads log tmp uploads; do
						ln -s $pdir/$f /var/fritzload/$f
					done
					if [ $fritzload_itype = small ];then
						for f in bin; do
							ln -s $pdir/$f /var/fritzload/$f
						done
					else
						cp -R $pdir/bin /var/fritzload/bin
						if [ -n "$(uname -r | grep 2.6)" ];then
							rm -f /var/fritzload/bin/busybox24
						else
							rm -f /var/fritzload/bin/busybox26
						fi
						if [ $fritzload_itype = medium ];then
							for f in $remove_medium;do
								rm -f /var/fritzload/bin/$f
								ln -s $pdir/bin/$f /var/fritzload/bin/$f
							done
						fi
					fi
				fi
				# Dateirechte vorsorglich korrigieren
				chmod -R 0777 $pdir/bin $pdir/bin/* $pdir/cgi $pdir/cgi/* $pdir/html $pdir/html/* $pdir/config $pdir/log $pdir/tmp
				chmod 0666 $pdir/config/* $pdir/log/* $pdir/tmp/*
				echo "Richte GUI Verzeichnisstruktur ein"
				/var/fritzload/bin/guiinit.sh /var/fritzload install
				# Autostart aktivieren
				echo "Start Fritz!Load-Autostart"
				/var/fritzload/bin/autorunfl.sh -l /var/fritzload 1 </dev/null >>/var/fritzload/log/autorun.txt 2>&1 &
				break
			else
				echo "USB-Drive fritzload not found: $USBDEVICE/$USB_dir"
			fi
		done
		if [ "$LN_success" = 1 ];then
			echo "Fritz!Load installed/started"
			[ "$1" = "-exit" ] && break
			# warte auf Trennung
			while true; do
				if mount | grep " on /var/media/ftp/$USBDEVICE" >/dev/null; then
					sleep 31
					continue
				fi
				LN_success=0
				break
			done
		fi
		sleep 31
	done
	} &
#<< Fritzload
Danach läuft einmal der rc.custom Prozess mit dem sleep 31 und autorunfl.sh mit sleep 600 in einer Endlosschleife.

Gruß
Oliver
 
ISt die Frage, woran das da liegt. Die Abarbeitung der rc.custom ist an sich ok, denn sie wird wie jedwedes anderes rc-script auch aufgerufen und gut ist. Fritzload ist.... Puh, nicht unsere Baustelle?
Ich schrieb ja schon weiter oben, dass wir zur Sicherheit einen Schalter beim Booten einbauen sollten, der das Ausführen der rc.custom ebenso ausschliesst wie z.B. das ausführen von freetz oder so. Denn so sind wir lästige rc.custom-Fehler sofort los und müssen nicht noch auf die Codingfähigkeiten von Fremdprogrammierern gucken und darauf achten, dass sie unseren Ablauf nicht stören.
 
Es liegt daran:
Code:
			[ "$1" = "-exit" ] && break
			# warte auf Trennung
"$1" ist nicht "-exit", und das Skript wartet darauf, dass der USB-Speicher wieder entfernt wird.

Wozu das gut sein soll, ist eine andere Frage, zumal mit der Einstellung fritzload_itype=default ausschließlich ein Link auf den USB-Speicher erstellt wird.

Die Box tut also genau das, was man ihr sagt.
 
Das Problem besteht doch darin, dass wir nicht wollen, dass Endlos-Schleifen unseren Startprozess anhalten können.

Durch folgende Änderung sollte das zu bewerkstelligen sein!?
Code:
Index: make/mod/files/root/etc/init.d/rc.mod
===================================================================
--- make/mod/files/root/etc/init.d/rc.mod	(revision 7011)
+++ make/mod/files/root/etc/init.d/rc.mod	(working copy)
@@ -61,7 +61,11 @@
 
 	#compat (may be removed later):
 	[ -r /tmp/flash/rc.custom ] && mv /tmp/flash/rc.custom /tmp/flash/mod/rc.custom
-	[ -r /tmp/flash/mod/rc.custom ] && log "$(. /tmp/flash/mod/rc.custom)"
+	if [ -r /tmp/flash/mod/rc.custom ]; then
+		echo -n"Starting rc.custom ... "
+		sh /tmp/flash/mod/rc.custom 0<&- 1>/dev/null 2>&1
+		echo "done."
+	fi
 
 	touch /tmp/.modstarted
Das nimmt zwar die Möglichkeit des Loggings, aber darauf würde ich verzichten...

Gruß
Oliver
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.