forked from awanga/alt-f-next
-
Notifications
You must be signed in to change notification settings - Fork 0
/
TODO2
871 lines (628 loc) · 37.5 KB
/
TODO2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
FIXED -fix OABI compatibility mode for the kernel.
when starting a fresh build, the kernel configuration stored in
local/dns323/linux- is processed by buildroot, and CONFIG_OABI_COMPAT
is disabled!
DONE -compile for speed.
The default buildroot configuration is now -O2.
As a result, available flash space is not enough anymore and some
apps (ushare and transmission) were removed from the base system and
added as a package. Also, ext2/3/4 are now kernel modules.
Some packages redefine CFLAGS in their Makefile, thus buildroot configured
default is lost (as it appears first in the compiler options list)
This has to be done package by package.
DONE -Samba needs it
DONE -Kernel .config (don't compile for space)
DONE -URL in ipkg web page.
Provide the source URL, so user can click it and see the
package homepage
DONE -Add ffp in ffp web package manager title
FIXED -Fix User services web page when there are no services available
DONT -Fix the /sbin/rc* shortcuts. They live in /Alt-F after a reboot.
Remove before installing new ones. Is harmless.
HACKED -The start/stop services button should wait a little before returning, as
some services takes some time to settle (transmission, e.g.)
added a one second delay... too much for most services,
too small for others (transmission)
FIXED -Remount /Alt-F with inotify during installing, etc, ipkg
-packages_ipkg_proc.cgi
-create instead a ipkg wrapper? yes... ipkg calls ipkg-cl
-but not for web page, sloow.
FIXED -Fix package_ipkg.cgi
-is slooow
-pkg names with a '-' are wrongly parsed (- is also the field separator)
-FIXED Fix package_ipkg_proc.cgi.
-when installing ipkg, output is generated that makes a error page appear.
FIXED fix "configfs" to handle the new packages files
-CUPS:
DONE create user/group cups:lpadmin
DONE fix /etc/mdev.conf to make /dev/lp* belong to lp:lp
add conf file to cups package
FIXED -status.cgi, handle comments and cups additions in /etc/printcap
DONE -Add a don't cache passwd in the login/again page, as is done in the
System Utilities->Change password
FIXED -After changing the host IP in the host setup page, it will not change
DONE -Sort the packages by name in ipkg web manager
DONE -Add a configure button for each inetd service
(dropped when splited inetd from network services)
FIXED -lpstat: Connection refused in web status page, when cups is not running
DONE -change name of ipkg to Alt-F in package manager web pages
DONE -add some feedback when downloading ipkg packages
DONE -show error status if ipkg fails for some reason
FIXED -host.cgi/host_proc.cgi: there is a bug when changing workgroup. The
new workgroup becomes "oldwk" which is the name of a hidden
input form... it seems to only hapens the *first* time it is changed
DONE -ipkg: web manager only supports one feed!
DIAGNOSED -nfs not working: MTU must be the same on both hosts! or else the msg
received packet spanning multiple descriptors
It was using udp as transport medium, which cause that problem in Gbps networks
FIXED -web login does not work if date is incorrect and timezone has been set
If the box time is ahead of the real time, the web cookie expiration
date is always expired... better to remove the cookie expiration date
DONE -The "eject" script should have a status output, indicating if the device is
or is not ejected.
This would be used by the "Disk Maintenance" web page to change the
"Eject" to a "Load" button.
-now has the "-s" option
DONE -"Disk Maintenance" web page should have a StandbyNow/WakeupNow button,
(and removing the power status label?)
DONE -create tmpfs with more space; some packages are too big to fit the
default 30MB while downloading.
-now uses 64MB, (assume that disk swap is active...)
FIXED -cups uses a huge amount of memory in /tmp/cache.
See how to make cups use the disk.
/var/cache is not configurable, so put /var/cache on disk
FIXED -when installing some packages /etc/passwd et all are changed.
If the user does not save settings in flash afterwards, those
users/groups are lost.
They should be in /alt-F/etc/passwd et all, so when installing Alt-F
they should reappear, but NO, the box settings take effect, as
loadsave-setting from-alt-f is run when /Alt-F is mounted.
-- Remember, the identity is in the box flash, not on the disk. --
-In all web pages the user is warned to save settings, if needed to
DONE -foomatic-filters: beh should be removed from the package, as it is perl based
DONE -Add start short/long smart disk test to disk utils
DONE -merge /etc/tune.conf and /etc/hdsleep.conf into /etc/misc.conf
CHECKED -check --spare-devices usage in diskpart and diskwizard with raid1, raid5
DONE -do a mdadm --scan at diskpart/diskwiz end to regenerate /etc/mdadm.comf
DONE -set disk sleep timeout in rcS, as settings are not yet loaded at start
when hotplugging disks.
FIXED -when RAID is recovering/syncing, sysctrl is continuously reporting
a disk wakeup.
DONE -sysctrl: add mail sent on warning/critical temperature
DONE -sysctrl: add restore (start telnetd, clear settings?) option through box back button
DONE -partition erase dd output appears on output, direct it to /dev/null
FIXED -portmap does not work in B4:
# portmap
Can't modify application's text section; use the GCC option -fPIE for
position-independent executables.
DONE -the login through the serial line should have no password!!! For recovery reasons.
DONE -diskpart: add the possibility of Save/Load the partition table to/from the
users desktop PC.
for now, only on the box volatile /tmp
DONE -firmware web page:
DONE -update flash time from 90 sec to 100 sec
-change clear/flash settings.
DONE -diskpart web page: don't allow changing an extended partition!
implemented so that one can change it, one can't is create one
DONE -dnsmasq: time server: offer no advertise, advertise local, advertise server-name
FIXED -fix /var/xx links. At least /var/spool is wrong, should point to disk
DONE -make dnsmasq leases file in /tmp/ instead of /var/lib/misc/ ?
reason: this makes the disks spinup, when aufs is active.
no problem even on reboot, as dnsmasq verifies an IP is assigned before leasing it
DONE -firmare2: add a tryIt button, that only kexec the kernel/initramfs
FIXED -new user setup: when entered directly, e.g. though firstboot, the proposed user id
is 99, not 1000!
HALF-DONE -investigate the RAID incremental problem when using dlink formated raid.
/usr/sbin/hot.sh does not deliberately mount RAID
FIXED -the sysctrl "left/right disk (sdb) wakeup" (only, not standby) message continue to appear
while the raid is: State : clean, degraded, recovering, spare rebuilding
degraded=1, sync_action=recover, array_state=clean
DONE -diskpart/diskwizard: all services are first stopped -- should they be restarted
afterwards? Not all, partitions have changed, some needed fs may not even exists.
But some services, those not dependind on fs, syslog and inetd e.g.
should be restarted.
DONE -remote filesys: the mountpoint, tipically /mnt/xxx, is volatile. It needs to be
persistent, so one can "mount -a" on startup (rcS). Should rcS parse
/etc/fstab and create the mountpoints?
After starting services, rcS can do a "mount -t cifs/nfs"
DONE -raid page: can't destroy linear/raid0. raid0/linear has to have some operations available
HALF DONE -eject: think of a possibility of stopping arrays.
currently, eject (through hot.sh) removes the partitions of the disk to be
ejected from a raid array that contains it. This means that it will undergo
a lenghly rebuild when latter loaded (eject -r)
For some operations, however, the array should be stoped (disk part, e.g)
- eject now supports a "-a" option to "eject" all disks
DONE -nfs: create a nfs-client init script, for mounting remote filesystems, without
the need to start the nfs server just for this.
DONE -disk details such as name, family, capacity, SN, etc, should be collected by hot.sh
and put at /etc/bay:
left_dev=sda
left_cap="320 GB"
left_fam="SAMSUNG SpinPoint T166 series"
left_mod="SAMSUNG HD321KJ"
left_sn="S0MQJ1QP506705"
FIXED -Partitioning: /usr/bin/eject: .: line 132: can't open '/etc/bay'
/etc/bay, inetd.conf, rsyncd.conf, passwd !! (at least) disappears
-seems to be related with having Alt-F aufs mounted during the partitioning
-it was a typo, "rm" instead of a "mv" in loadsave_settings
DONE -create a directory creation/edition web page:
-create the directory, assign it to a group, and set permissions
-show all dirs to modify it? No, browse for it!
DONE -offer the possibility of recovering the original firmware settings from mtdblock1 when
flashing a vendor's firmware and in the settings web page
-only on the Firmware Updater
FIXED -login: when the login page opens, if one ignore it and goto other page, it is accepted!!!
NO /etc/web-secret, no /tmp/cookie, do logout and instead of supplying a password
or submiting empty password, just navigate to a page that *should* need
authentication. check_cookie() seems to fail, as you can go to any page!
FIXED -uhdcpc update script keeps appending Allow directives to /etc/httpd.conf
FIXED -httpd services->network->inetd->httpd: currently only the first Allowed host appears to
be edited.
only one host/net allowed, use a #!# comment to distinguish from local net,
which also #!# commented
DONE -perms: add a apply recursively to all subdirs, and apply owner:group recursively to all files
FIXED -rcatd start: Cannot change to /var/lib/atjobs: Permission denied
# l /var/lib
drwxrwx--T 2 root root 4096 Nov 20 05:50 atjobs
drwxrwx--T 2 root root 4096 Nov 20 05:50 atspool
HALF FIXED spaces in fstab: patch applied to uclibc, now fix all scripts and web page...
DONE: nfs*.cgi and smb*.cgi
TODO: mountpoints still get spaces replaced by underscores.
But first check it possible!!!
FIXED -samba credentials: the username must be the the windows one, no commas if space, do as in:
username=Manuela Lima
The problem is if one user has both windows and unix accounts... how to do it?
DONE -backup:
DONE -add users to backup group at user creation time? yes. Make backup group visible? no
DONE -the backup script should be run by the user who ownes the origin directory.
For nfs this makes a difference, if the original files don't have permissions
for others or group and nfs is root_squashed
A nice side effect is that the backup files also belong to the same user.
DONE: hot.sh: create a link /Backup to point to the backup dir
FIXED: -there are problems with spaces in fstab! 040 or \040 or \ does not seems to work
(but filesystems mounted by label still replace spaces in labels/mp with underscore)
-an example of cifs mount: see the above "samba credentials" entry
mount -t cifs -o rw,nounix,noserverino,iocharset=utf8,uid=mlima,gid=users,credentials=/etc/samba/credentials.mlima \
"//mono/Users/Manuela Lima" /mnt/smb
FIXED package/config/mconf-qconf are binaries in SVN
FIXED vsftp*.cgi assumes capital YES/NO in vsftpd.conf, anon_root not quoted
FIXED browse_dir doesn't transverse directories with spaces in its name
HALF DONE, see below
-remote filesys: at rcE time, they must be unmounted after killing processes
but before stopping the services -- at least nfs! Keep reading
rcnfs-client stop: unmount first filesystem! keep reading
DONE rcE: services are stopped first to unmount filesystem, as they can be using the filesystems.
problem is that one of those services is nfs*; when latter one tries to unmount
nfs filesystem, nfs is already dead.
So, stopping nfs should be conditional on the existence of nfs mounted filesystems,
or should it unmount filesystems?
there ar now nfs-client, that umounts mounted nfs filesys
rcE calls "rcall stop" that stops nfs-client and then nfs, then "eject -a"
FIXMED -mkreloaded.sh tries to access ../wiki!
FIXED -eject -a: does not return error when a filesystem can't be unmounted
DONE -usersgroups should detect that home diretories are missing, even if there
exists users
DONE -The DHCP udhcpc script /usr/share/udhcpc/default.script should do more
configuration files and daemons signaling updates.
It is already done in rcS, use it.
FIXED -The script, at first boot, does not has a hostname.
DONE -The host setup web page in DHCP mode also.
FIXED -fix diskmaint_proc.cgi:
-if changing filesystem type from/to ext to vfat/ntfs or
vice-versa, the partition type must be changed too
-also, fstab must be flushed, as labels/partition might have changed
CHANGED -The disk maker name does not appear in Disc Utilities (but appears in Status)
DONE -ipkg frontend, aufs.sh, packages_ipkg_proc.cgi and hot.sh needs to be
fixed. Each one of them mounts/create /Alt-F in its own way!
-aufs.sh install should be called by ipkg -install
-aufs.sh inotify/reval be called before/afters ipkg calls ipkg-cl
-aufs.sh mount/umount be called by hot.sh
-ipkg -install be called by packages_ipkg_proc.cgi install
-aufs.sh be called by packages_ipkg_proc.cgi
UNCOVERED -big MTU (>3712) generate lots of "page allocation failure", which impair the
performance
mem alloc is done by slab; slab uses 4096 bytes pages; one frame seems to use
MTU+384 bytes; with a greater MTU, slab has to allocate 2 memory-contiguos pages
from the "buddy" allocator. At power up, that is not problem, but after memory
being fragmented it can be.
the network driver allocated space for ~130 frames when "ifconf eth0 mtu NN"
is performed. See network driver memory usage by alternatimg "ifconfig ... MTU NN"
with "cat /proc/slabinfo | grep size-"
DONE -diskpart: needs feedback on lenghly operations! (as diskwizard does)
FIXED -spaces in filenames/paths are problematic for NFS. Use octal for spaces? '\040'
FIXED -diskpart: the free space is only calculated when one clicks another size input field.
-recalculate on mouseout
FIXED status page: smbstatus is badly parsed when share names have spaces on it
status.cgi show wrongs in "Remotely Mounted Filesystems" CIFS
FIXED create a spindown package, based on spindown.sh
-sysctrl does the same as the spindown.sh script
FIXED -transmission: rcscript not OK! same problem as minidlna, runas user:group
FIXED ipkg on uinstall all packages, or "aufs -u"
The usual problem, aufs mount resource in use/busy
should do a "rcall stop" first!
DON'T -put hardware board level in status web page.
done and undone. Its now in alt-f.log
DONE -the longterm kernels are in another download directory,
http://www.kernel.org/pub/linux/kernel/v2.6/longterm/v2.6.35/patch-2.6.35.xx.bz2
DONE -disk wizard: warn users that the created partitioning is not dlink compatible, or flash Alt-F
DONE -disk partitioner: warn users to create a dlink compatible partitioning, or flash Alt-F
DONE -disk filesystem: warn users that ext4 is not dlkink compatible, or flash Alt-F
DONE -diskmain: add mount options input field, and save value, based on fs-uuid, in misc.conf
-backup: i noticed that when you do a manual
backup from the webinterface, you can find only the start of the
process in the log, not when it is completed or if it has removed a
old backup. Furthermore i find this in the log:
Jan 27 02:00:01 DNS-323 cron.err crond[500]: USER root pid 447 cmd /
usr/bin/backup 0
FIXED -disk wizard: Still has one weak point: "eject -a" does not returns in/sucess,
so the wizard continues even if some filesystems were not unmounted!
fix eject -a!
DONE -add ipkg as a dependency of all packages, to disallow ipkg removing itself when there are
still other packages installed (and unmanagable after that)
DONE -add <pkg>.prerm to stop daemons before removing the package (on all packages who need it)
DONE: avahi, netatalk, transmission, cups, automatic, minidlna, ushare, mt-daapd,
fuppes, mediatomb
FIXED -"ipkg -clean" does not run the package uninstall script!
Issues: created users and files are not removed.
DONE -add the possibility of seeings all possible logs to the System->utilities->Logs
DONE -add yet another security measure to funplug:
at start it checks for an alt-f.fail file, and if it exists remove the funplug
execute permissions and stops, ignoring the ONCE settings.
If the alt-f.fail does not exists, create it and continue with the boot.
When Alt-F itself boots, it removes the alt-f.fail file, if it exists.
DONE -add a filter input to the logs page in System->utilities->Logs
-smb: add allowed users input field
-fun_plug: change nobody:nobody to numeric dlink ids.
-change fun_plug ownership to nobody, or set write permissions
-offer possibility of uninstalling Alt-F, by removing the fun_plug and alt-f, Alt-F directories.
or at least change its ownership to nobody.
The problem is that they are owned by root, and can't be deleted using samba.
does ftp works?
DONE -temperature in C/F
-crypto web passwd (use busybox cryptpw -- Dwight Hubbard suggestion)
-stop using the domain reported by DHCP, as not all DHCP servers allow customizing it
DONE -host setup web page: don't allow/warn for more than +/-7500 bytes for MTU in the host web page
-dir_proc.cgi has some issues with spaces in paths in the parent directory of the current
directory
-networking: add a test button that tests internet connectivity
-ping the gateway and nslookup a well know host
-diskpart: when creating a new raid array, when one already exists, does not takes
into account the already allocated minor. As result, one of the two raid
is not assembled.
FIX: examine prefered minor on already existing raid partitions
NO: use mdadm --examine --scan -v
-when in DHCP mode, supply -h <hostname> to udhcpc,
is builtin in the udhcp code, to fix need to edit sources... not for now
-ntpd: /etc/ntpd.drif should be in /var/lib/ntp, not in flash, as it is likely to change
during operation; the disadvantage is that it is lost after a reboot.
However, when a package is installed and Alt-F aufs is working,
the drift file is keept in disk surviving reboots.
On the other side his has the disadvantage of waking-up the disk when
the drift file needs to be written -- use the "driftfile driftfile [
minutes [ tolerance ] ]" configuration options (see ntp-4.2.4p5/html/miscopt.html)
-iconv.h is removed from the stagging dir by buildroot! it says something
like "removing iconv.h as locale is not defined".
It comes from uClibc
$BLDDIR/toolchain_build_arm/uClibc-0.9.30.3/Makefile.in
as UCLIBC_HAS_XLOCALE is not defined, iconv.h is removed, even if
it is not from uClibc.
Note that this happens on the *second* initial build, not the first!
(this is do a "make -O=...", followed for a second one)
No solution? Patch this? hmmm
Created a uClibc-0.9.30.3-iconv-h.patch, put in toolchain/uClibc lets see...
-minidlna: iconv.h strikes again!, see above
-add -o owner:group option to "mkpkg.sh" so ipkg-build can use it to
create the package files with another ownership
-login expires after 1 hour. Restart the countdown on each new check_cookie,
sendind a new cookie, valid for more 10mins
-create a applyfix script to be executed by hot.sh. If a file named Alt-F-*.fix is
found in the root directory of any mounted filesystem, apply it as a patch.
The script shall also be directly invoked.
-Fix the pkg-config and host-pkgconfig mess
Read the package/pkg-config.mk comments
Merge pkg-config and host-pkgconfig, with an option to create
only on the host
-Change Alt-F directory name to .Alt-F, to make it "invisible" to most users
-or use the bind technique explained in aufs page?:
hide=/tmp/.aufs.hide
mkdir $hide
mount -n --bind $hide /Alt-F
When you unmount the aufs, delete/modify the branch by
remount, or you want to show the hidden branches again,
unmount the bound /tmp/.aufs.hide.
umount -n /Alt-F
-just call it .Alt-F
-long standing issue: sntp/ntpd will issue the following error with the first built:
# sntp pt.pool.ntp.org
sntp: can't resolve symbol '__aeabi_d2iz'
this happens either with the stripped or non stripped binary.
one must remove the binaries from the rootfs and source and rebuild
the package. After that it works fine... build problem?
-this also happens with package nano.
The missing symbols are defined in /lib/libgcc_s.so.
Why are they not used?! ld (/lib/ld-uClibc-0.9.30.3.so) problem?
The problem is not the app, it seems to be in libm. It happens
after removing the "project_build_arm/dns323/root" directory and
doing a make again. The second make don't make libraries in /lib
correctly.
******** FOR A RELEASE, ALWAYS DO A FRESH BUILD! ***************
-read aufsutils carefully, to see if they are needed. Author says yes.
Alt-F has already used them, but currently don't
-partition erase on usb disk gave a "not space on disk" dd error!?
-diskpart: enable Save/Load the partition table to/from the users desktop PC. See above
-check if dnsmasq.cgi fully qualifies the network, or if it restricts to class C
-add a suggest button in the disk partitioner.
Users can't use the wizard if they buy a new disk!
-OR in the disk wizzard add checkboxes to each disk. This would enable applying the
wizard to only one disk, as when the user buys a new disk
DONE -status web page: use Dwight Hubbard technique
FIXED -diskutil.cgi: sometimes the page wakeup disks; other, hitting StandbyNow does not work.
FIXED -nfs/nfs_client: the initscript does not remove module lockd
FIXED -libgcrypt depends on libgpg-error, but libgpg-error is not built first.
problem with hyphen `-'in libgpg-error name?
<pkg>_DEPENDENCIES seems to only work on buildroot autotargets. For "normal" makefile
fragments, the dependency must be explicit in the <pkg> rule
DONE -setup host, add "Enable IPV6" checkbutton. If yes, modprobe ipv6, and set USE_IPV6=yes in
/etc/misc.conf. Avahi, when started, will load ipv6 modules.
Will other ipv6-enabled apps do the same? Yes. At least "curl -6 <host>",
or forked-daapd does.
-create avahi configure page, at least with use-ipv6=yes/no.
-mkpkg.sh: when creating a package, and a directory is in the list of files, the *contents*
of the directory goes to the tar file, which is not always the desired behavior, as
the directory, eventually empty, must exist for the daemon to start, but the
directory contents might belong to another package.
E.g.: /etc/dbus-1/system.d/avahi-dbus.conf belongs to avahi, but
/etc/dbus-1/system.d must exist for dbus to start (fixed in the initscript)
DONE -cups: remove the root:password from the url, firefox is always asking for confirmation.
FIXED -sysutils, start all: seems to send data back to browser
FIXED -sysutils, view logs: reset select box on (re)load, when using the back button.
-dnsmasq: supports dbus (at compile time) and ipv6 (at compile and runtime?).
-see if it deserves enabling ipv6 (or if it is automaticaly enabled at compile time)
-dbus does not seems to have any advantage.
-mediatomb seems to use libdvdnav and libdvdread to scan and serve dvd iso files:
http://juliensimon.blogspot.com/2008/12/howto-compiling-mediatomb.html
These two libraries are used to browse DVD file structures: mediatomb
needs them to read and stream DVD ISO images.
You do need to build and install libdvdread before libdvdnav, or
the latter won't link.
ftp://ftp6.mplayerhq.hu/MPlayer/releases/dvdnav/libdvdread-4.1.3.tar.bz2
ftp://ftp6.mplayerhq.hu/MPlayer/releases/dvdnav/libdvdnav-4.1.3.tar.bz2
-minidlna: apply patch for sansung? No, there are lots of patches, can't follow them.
http://sourceforge.net/tracker/?func=detail&aid=3058976&group_id=243163&atid=1121518
HACKED -avahi-daemon initscript: if avahi is already running, "start" fails.
has to check avahi-status before starting it.
FIXED -forked-daapd: when running the experimental feed on 0.1B6, there is a linking problem:
forked-daapd: can't resolve symbol 'in6addr_any
so the *full* initial patch is needed, retrieve it from svn.
-aufs: stop overlaying the root directory, it degrades performance!
Without any packages installed, I got 15MB/s read transfer speeds.
Removing all packages, no aufs in /mnt, I got 20MB/s!
Study what directories to overlay.
-vsftpd: add support for ipv6. vsftpd.conf:
# listens on IPv4 sockets. This directive cannot be used in conjunction
# with the listen_ipv6 directive.
listen=YES
#
# This directive enables listening on IPv6 sockets. To listen on IPv4 and IPv6
# sockets, you must run two copies of vsftpd with two configuration files.
# Make sure, that one of the listen options is commented !!
#listen_ipv6=YES
Commenting? Really? Then, listen=yes and listen_ipv6=no is not OK?
Anyhow, can't start 2 servers on the same port, one with listen=yes
and the other with listen_ipv6=yes
This seems to indicate that for ipv6 a standalone vsftpd server has to be launched,
or will inetd do the job?
-nfs: when starting nfs, the following error shows up in syslog:
daemon.notice rpc.statd[3062]: Unable to read state from
'/var/lib/nfs/state': errno 5 (Input/output error)
/var/lib/nfs/state is created by the nfs initscript. If the initscript does not creates
it, the error does not show up. But when nfs is stopped, the file appears.
/var/lib/nfs/state should be created by statd and updated by sm-notify,
see sm-notify and statd manpage.
The problem seems to be related to "rpc.statd --no-notify".
Occurs, at least, when no /Alt-F exists.
-nfs/ipv6: when starting nfs with ipv6, at least, syslog:
svc: failed to register lockdv1 RPC service (errno 97)
seems to mean that nfs has not ipv6 support, the errno 97 seems to mean
"address family not supported". To build with ipv6 support the TI-RPC library is needed.
http://sourceforge.net/projects/libtirpc/ on a x86 the library has 164KB.
Also, rpcbind must replace portmap for ipv6 to work,
http://nfsv4.bullopensource.org/doc/tirpc_rpcbind.php
DONE -ipv6/host setup: disable it by blacklisting it.
DONE -debian: add an install/run debian using debootstrap-static
FIXED -diskutils.cgi not working. No smart status/tests, spindown...
hot.sh: usblp is removed when a usb pen is unpluged.
The kernel is generating the event! why? hot.sh is just doing its work.
FIXED sysutils: Hitting "clear print queues" sends an empty file to the browser.
diskmaint_proc, common.sh (fs_progress), hot_aux. Has to fix fsck to use a standard progress
log file, instead of duplicating stdout and stderr.
res=$(fsck -p -C4 /dev/... 2>&1 4<> outfile)
but resize2fs/mke2fs also produce logs
working on it and getting bored...
FIXED status.cgi: /tmp/smt_sda is created in /tmp for smartctl, and should not be needed anymore.
FIXED samba/backup: fix the available setting in /etc/samba/smb.conf
currently those settings are changed by the web interface when the Users/Backup directory
is created. If one fails to save settings, there is no other possibility of changing it
Made all shares available in the samba configure page. This way users can manually
enable them
-web server: every connection by a client browser, even for simple pages, seems to not be
properly closed, being left in a TIME_WAIT state.
init.d/common: restart() has to have a timeout, as well as stop()
forked: when changing config file using web page, the page does a "rcforked restart"
this deploy avahi/dbus stopping/restarting, with an error message appearing
remove all packages using the web page: when a package to be removed is running, and other
depends on it, a message appears saying that the service can't be stopped at it
needed for another service that is running; the service is not stopped and the
package is removed... create a -force?
DONE REVERTED, /var/cache is now again on tempfs (using swap)
/var/cache can't be on disk, it avoids spindow! samba, e.g., stores data there,
even if not being accessed, as does nfs.
The problem is cups, that also uses it when a new printer is added, and all ppd
files as parsed. The amount of data is huge, several tens of MB. Using only
hplip, 11MB are used, with both hplip and foomatic 47MB are used!
This was the only reason to move /var/cache out of tempfs, but has to be reversed.
This data is temporary, is only needed when a printer is added or modified.
Warn the user to reboot after a new printer is added? No!
Detect a new cups printer (difficult -- needs to keep state) and stop cups,
clean cache and restart cups? Who will do the printcap check?
Should status.cgi detect the situation and take the necessary actions?
end-up creating a log cleanup service
FIXED Reboot: sys_utils_proc.cgi, when called from firmware2_proc.cgi, does nothing and goes to
sys_utils.cgi, that downloads a error message: "Usage httpd:..."
FIXED Log files: the filter field appears with a non-filled string, "all", "downloading", or other.
DONE RAID: disable RAID5 creation if not flashed
Already done, in a different way (asking for user confirmation)
DONE Filesystems: disable ext4 creation if not flashed
Already done, in a different way (asking for user confirmation)
DONE -cleanup: set to not enabled on boot, it might avoid disk spindow?
FIXED -loadsave-settings: really disable boot-disabled services.
FIXED -disk-utils: if no misc.conf settings, the spindown entry is disabled,
even is power saving is also disabled
-rewrite INSTALL: login, host, time, wizard, user, net->services-smb
-FAQ: can't login. telnet, "adjtime -adjust", or "echo NONE-O > /etc/TZ"
-FAQ: swat, cups: ask credentials: root, pass
-better first time wizard!
FIXED -load setings: is it working?
wasn't
DONE -create openssh package (not only with sftp, as for the base system)
openssh: fix conflicts with dropbear. Currently scp and ssh from dropbear (links) are overwritten
create own keys or use/convert dropbear ones?
create host key
try to ssh an external host from within the box
try to use sshd
FIXED -raid shrink: is being shrink too much, when mounting error:
EXT4-fs (md0): bad geometry: block count 884736 exceeds size of device (870892 blocks)
DONE -debian password: use the same as /etc/websecret
DONE -use "checking" instead of "cleaning" in all web pages related to fsck.
FIXED -mtu: see if the dhcp stanza in /etc/network/interfaces accepts a mtu
it appears as a IF_MTU variable to udhcpc
DONE -backup: do a "cp -a" for the first backup, instead of using rsync.
as a matter of fact "cp -a", "tar" and "rsync" memory usage increseases too much
on deeper and large directories. So used "cpio" for the first backup. BUT cpio
cant use filer bigger than 4GB, so for those do a "cp -a".
FIXED -samba mount: error when writing to fstab, parsing url
FIXED -debian: if installed in a raid, kexec fails:
mount: mounting /dev/md0 on /mnt/md0 failed: No such file or directory
Stopping sysctrl: OK.
Executing Debian now...
Cannot open `/mnt/md0/vmlinuz': (null)
Cannot open `/mnt/md0/vmlinuz': No such file or directory
Failed.
FIXED login/new user: accept more chars for passwd
accepted all ASCII chars in the range [!-~]
FIXED partitioner: impossible to create greater then 1GB partitions?
reason: awk integer printf "%d" limited range, used "%.0f"
The Wizard is reported to create partitions bigger then 1TB
fix all *-config and *.pc in staging dir, as they usualy have prefix=/usr, making
compilation to use the system header files.
Test on a computer without -devel packages
grep ^prefix= /home/jcard/build-pkgs/build_arm/staging_dir/usr/bin/*-config
grep ^prefix= /home/jcard/build-pkgs/build_arm/staging_dir/usr/lib/pkgconfig/*.pc
FIXED Debian 'alt-f' command only works from within a serial connection;
Now the 'alt-f' command just changes Debian /etc/default/kexec to use Alt-F
kernel/initramfs and issues a reboot.
The 'debian' Alt-F command sets Debian /etc/default/kexec to use
Debian kernel/initramfs, so a normal 'reboot' command within Debian reboots to Debian.
FIXED debian kexec: if started from ssh, the connection will be closed during
the normal Alt-F shutdown (dropbear terminated); use telnet instead.
make the 'debian' script detach.
now create sh script and execute with nohup in background
FIXED debian: the install/run is susceptible to device enumeration ordering,
and if it is mounted by label the install/run will fail.
FIXED /etc/init.d/*cleanup/*backup:
crontab: chdir(/var/spool/cron/crontabs): No such file or directory
root: Stopping cleanup: OK.
crontab: chdir(/var/spool/cron/crontabs): No such file or directory
root: Stopping backup: OK.
UNCOVERED ntfs-3g_ntfsprogs still need libfuse?
NO, is configured to use internal (light) libfuse (which is not created as a library)
The library still needs the kernel module
Debian fsck failed at boot, out of swap/tmp memory?
DONE rcE: umount tmpfs before turning swap off? to avoid running out of memory if the tmpfs
filesystems uses a lot of space?
if /tmp is full or with many files, it will be using swap; when using swapoff,
/tmp might not have enough space on RAM, or will use all or most RAM.
So, unmount /tmp before swapping off.
FIXED ntfs-3f-ntfsprogs: fix configfs BR2_PACKAGE_NTFS_3G_NTFSPROGS
base fw has usr/sbin/fsck.ntfs usr/sbin/fsck.ntfs-3g usr/sbin/mkfs.ntfs and shouldnt
MB/MiB, GB/BiB: uniformize disk units, use MB/GB
FIXED sysctrl: spindown timeout of zero constantly puts the disk to sleep!
FIXED browse-dir: when nfs is mounted, 'find' gives a lot of 'not permited' errors
no permittion read users directories...
DONE backup: do the first backup using a plain 'cp -a', faster than rsync
use instead 'find | cpio -p' instead of 'cp -a', as 'cp -a' uses too much memory,
using swap too much which slows down the copying
apply 'nice' to cpio and rsync
DONE filesystems: aplly 'nice' when creating/cleaning/... filesystems
DONE directory setup: use 'find|cpio -p' instead of 'cp -a', as 'cp -a' uses too much memory,
using swap too much which slows down the copying. Also apply nice to cpio.
FIXED busy_start/stop: error on "rm" tmp file used to generate a random obj id
FIXED status page: remove bind mounts from filesystem section (or at least keep only one
of the device mounts.
Also, the RW status appears duplicated.
FIXED rcbackup:
more fields in /etc/backup.conf, crontab generation is wrong!
May 29 03:17:01 nas cron.err crond[1212]: user root: parse error at /Backup
May 29 03:17:01 nas cron.err crond[1212]: user root: parse error at /home/jcard
backup: watchout 4GB problem in cpio
ipkg install fails when ipkg.conf is inherited from a previous installation and does
not has a valid feed
DONE /tmp size can grow... use other method to increase/decrease when adding/removing swap
/tmp size is now 10% os swap space
icu: libicudata.so.48.0 is not stripped
/etc/inittab: remove "logging junk" entry
web smb: share permissions not right
reloaded: fix proc-arm926.S. asm/asm-offsets.h should be used for 2.6.15
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,15)
FIXED diskpart: js updatesect() display wrong current partition maximum size
DONE diskwizard: raid0 message: "with two (or three, one an external USB) disks."
raid1: "duplicate everything on two disks (and use if an external USB disk if available as a spare)
raid: when adding a component that has/was failed, mdadm gave error, but no error
appears in the web page, and it is keep blank.
mdadm report:
mdadm: /dev/sdb2 reports being an active member for /dev/md0, but a --re-add fails.
mdadm: not performing --add as that would convert /dev/sdb2 in to a spare.
mdadm: To make this a spare, use "mdadm --zero-superblock /dev/sdb2" first.
ipkg packages: when installing from /tmp, the web interface should show as
installed "None", but it shows the header and even the remove all button
NONEED, current gptdisk doesn't use ICU
diskpart, gpt: the current method of copying icu libraries (*) needed by sgdisk fills
almost all /rootmnt fs space, leaving only 2.5MB available (icudata is 18MB!),
One could increase the tmpfs capacity, as is done with /tmp, whenever
swap is added. The problem is that when partitioning disks swap can be
non-existent.
The real problem is the 18MB icudata library!
(*) when gpt partitioning the disk where Alt-F packages are, a copy
of sgdisk and needed libraries is made from /Alt-F to /rootmnt.
Currently this copy is not removed after the operation ends, as the user
might want to repartition again and the gptdisk/icu file packages have gone.
DONE diskpart, mbrtogpt: run sgdisk -zap before, to clean traces of previous GPT data,
or an "invalid partition" error might happens
DONE atexit: make it visible in uclibc (for 0.9.28 compatibility)
twonkymedia at least needs it
status: when FS shrinking, in FS Maintenance does not shows all progress,
only the shrinking one
status: when checking(?), in FS Maintenance a awk division by zero occurs
samba: the patch applied to the Makefile might fail because of parallel makes?
sysctrl: -if a disk is active, ignore the fan_off temperature.
-add temp hysteresis as a setting in the control file,
but not to the web page
FIXED samba35-doc package: there are missing dirs compared with samba-doc
DONT gptfdisk: after releasing RC1, change package to not include sgdisk, and
buildroot package configuration
DONE minidlna: use kill -2 to terminate.
Not a nice thing to do, but otherwise it takes 2 minutes to stop
ipkg: returns 0 when there is a package checksum error
FIXED fstab: hot*.sh changes it, "save settings" message appears in status page
sysctrl: if temp is lower than fan_off_temp, the fan if not updated. If it is at a high speed,
it will remain at that speed. Not always.
DONE minidlna: add a button to the webgui to force a rescan. Predate minidlna.conf to signal this,
using a commented line to not fool minidlna: #rescan=yes
ipkg: the web page has ipkg_0.99.163_arm.ipk harcoded, if the package change, an old version
will be retrieved. This is problematic, if uclibc has changed, as the old ipkg will
not run.
The easy solution is to not version ipkg? Better, version it, but make the base version
a copy of the last version! This solve all problems:
Users with a old version will see the version number increase and will update,
new users will have the recent version and will made a (dummy) update afterwards.
packages: allow specifying ipkg feed or ffp site when first installing