Здравейте, реших да пробвам дали ОРФ се гледа със софткам-к.., но ми каза, че нямам права за писане никъде освен в темп. Дори cccam.cfg не успях да редактирам, независимо, че съм си въвел линиите преди това.
Скоро го флашвах през рс232, но е много бавно. Бърз вариант за флашване има ли? А мога ли без да го префлашвам да си оправя правата за писане?
Благодаря.
Пробвай по стандартния начин за линукс:
На команден ред (CLI / telnet) влизаш с потребител с root права и пробвай следното:
ls -la - да видиш правата и оунърите (предполагам трябва да са root:root), ако не са:
chown root:root /път/до/файл.
chmod 777 /път/до/файл.
или ако искаш всички файли в директория:
chown -R root:root /път/до/файл.
chmod -R 777 /път/до/файл.
Пробваш дали вече можеш да пишеш на даденото място.
Понеже в еволюшън имиджа автора му е ограничил правото за редакция на файлове (readonly) и е невъзможно да създам симлинк с български език в /share/locale, с цел да направя възможно превключването към български език като системен, утре ще пробвам идеята на Вальо дали ще даде резултат! Цялото това упражнение го правя само заради тъпото епг на булсата, защото не излиза под енигма 1 на език, различен от българския!
Само не ми е ясно дали ще стане номера върху журнална файлова система JFFS2, под която е инсталиран имиджа във флаша?!?
Флашни го по лан, описано е как става в раздела. Ще ти отнеме 5 минути. Виж темата на DJ-я строител.
Независимо каква е файловата система, ако е маунтната с rw (read/write), а не ro (read only) ще стане, ако е маунтната ro пробвай:
едитваш fstab и това:
/dev/mtdblock/2 /boot jffs2 ro 0 0
го променяш на:
/dev/mtdblock/2 /boot jffs2 rw 0 0
(каквото е при тебе само сменяш ro с rw)
сейвваш файла
fstab се намира:
/etc/fstab
рестартираш бокса с команда reboot или от менюто.
Обаче така като попрочетох, май няма смисъл така.
за всички други видове файлови системи ще стане, но тази така като гледам не може да се маунтва директно.
Това, което мисля, че може да стане е jffs2 партишъна да се шерне/експортне като nfs шер с rw права и да се маунтне на друга линукс/юникс машина в същата LAN мрежа и тогава да се пипа в нея. Може да се пробва и да се шерне като CIFS но трябва да се пробва.
Ще пробвам когато имам време.
Цитат на: Valio;91740Пробвай по стандартния начин за линукс:
На команден ред (CLI / telnet) влизаш с потребител с root права и пробвай следното:
ls -la - да видиш правата и оунърите (предполагам трябва да са root:root), ако не са:
chown root:root /път/до/файл.
chmod 777 /път/до/файл.
или ако искаш всички файли в директория:
chown -R root:root /път/до/файл.
chmod -R 777 /път/до/файл.
Пробваш дали вече можеш да пишеш на даденото място.
root@dm800:~# chmod 777 /var/keys
chmod: /var/keys: No space left on device
root@dm800:~#
Май ще се префлашва :)
Като гледам нямаш свободно място.
ако знаеш какво можеш да изтриеш без да е пагобно трий:
rm -r директория - трие всичко включително и поддиректории и файлове.
cd /до/директорията/която/трябва
rm име_на_файл - трие само него.
после chmod командите :)
Може да не може да пипаш и щото нямаш място...ако имаш var/log може да триеш логове смело.
с df -h или df -k можеш да видиш къде на кой маунт колко място има...
@Valio
Досега не се бях заглеждал в fstab, но той е абсолютно празен файл без никакви конфизи! За сметка на това jasko, създателя на Evolution, е вкарал настройките в rcS файла:
#!/bin/sh
/bin/mount -n -t proc proc /proc
/bin/mount -n -t devpts devpts /dev/pts
export INSMOD="/sbin/insmod"
export RMMOD="/sbin/rmmod"
export MODDIR="/lib/modules/"$(uname -r)
#export TZ=CET-1CEST,M3.5.0/2,M10.5.0/3
/etc/init.d/init1
#set environment variables ( mID )
. /proc/bus/dbox.sh
# check if no DM500
if [ $mID -ne 07 ] ; then
init=0
/bin/boot || init=1
if [ $init -eq 1 ] ; then
/bin/eraseall /dev/mtd/1
fi
fi
[COLOR=Red]# do not mount jffs2 when not booting from flash
if [ ! -e /root/platform/kernel/bild ] ; then
mount -t jffs2 /dev/mtdblock/1 /var
fi[/COLOR]
/bin/showlogo /share/boot/bild
/bin/mount -t ramfs none /tmp
init=0
# check if /var/.init exist .. then no flash erase is needed .. this is new !
if [ ! -e /var/.init ]; then
# new /var/.init not found.. check if old /var/tmp/init exist..
# then not flash erase ist needed
if [ -e /var/tmp/init ]; then
# ok old /var/tmp/init exist.. no create the new flash_erase detection file..
touch /var/.init
# delete /var/tmp folder now..
rm -rf /var/tmp
# create link to /tmp <- this is mounted to RAM
ln -sf /tmp /var/tmp
else
# flash erase is needed ...
init=1
fi
fi
[COLOR=Red]if [ $init -eq 1 ] ; then
echo "copy"> /dev/dbox/fp0
cp -a /var_init/* /var
touch /var/.init
sync
umount /var
/bin/mount -t jffs2 /dev/mtdblock/1 /var
echo "done"> /dev/dbox/fp0
fi[/COLOR]
ln -sf sound/dsp /dev/dsp
ln -sf fb/0 /dev/fb0
ln -s /dev/input/mice /dev/psaux
ln -s /dev/input/mice /dev/mouse
if [ ! -e /var/etc/hostname ] ; then
cp /var_init/etc/hostname /var/etc/hostname
fi
if [ ! -e /var/tuxbox/config/encoding.conf ] ; then
cp /var_init/tuxbox/config/enigma/enigma.conf /var/tuxbox/config/enigma
fi
/bin/hostname -F /var/etc/hostname
/sbin/ifconfig lo 127.0.0.1 netmask 255.0.0.0 up
/sbin/inetd &
if [ -r /var/etc/dropbear/dropbear_dss_host_key -a -r /var/etc/dropbear/dropbear_rsa_host_key ]; then
/sbin/dropbear
fi
#change into folder in RAM ( ramfs )
cd /tmp
export LD_LIBRARY_PATH=/tmp:/var/lib:/lib:$LD_LIBRARY_PATH
export PATH=/tmp:/var/bin:$PATH
if [ $mID -eq 07 ] ; then
if [ ! -d /var/tuxbox/config/enigma/terrestrial ]; then
mkdir /var/tuxbox/config/enigma/terrestrial
fi
if [ ! -d /var/tuxbox/config/enigma/cable ]; then
mkdir /var/tuxbox/config/enigma/cable
fi
fi
#check if DM7000
if [ $mID -eq 05 ] ; then
if [ ! -e /var/etc/.no_corefiles ] ; then
# enable corefiles (for debugging)
echo "/hdd/%e-sig-%s.core" > /proc/sys/kernel/core_pattern
ulimit -c unlimited
fi
if [ ! -e /var/etc/.dont_mount_hdd ] ; then
if [ -e /proc/ide/hdb ] && [ ! -e /dev/cdroms/cdrom0 ] ; then
mount /dev/ide/host0/bus0/target0/lun0/part1 /var/mnt/cf -osync
HD=1
else
HD=0
fi
mount /dev/ide/host0/bus0/target${HD}/lun0/part1 /hdd
# sleep after 10min
hdparm -S 120 /dev/ide/host0/bus0/target${HD}/lun0/disc
# accustic management
hdparm -M 128 /dev/ide/host0/bus0/target${HD}/lun0/disc
if [ $init -eq 1 ] ; then
rm /hdd/epg.*
fi
fi
if [ ! -e /var/etc/.dont_mount_usb ] ; then
mount -n -t usbfs usbfs /proc/bus/usb
mount /dev/scsi/host0/bus0/target0/lun0/part1 /mnt/usb
mount /dev/scsi/host0/bus0/target0/lun0/disc /mnt/usb
fi
fi
if [ -e /var/etc/install.tar ] ; then
/bin/tar xvf /var/etc/install.tar -C /tmp
/tmp/install
rm /var/etc/install.tar
fi
#Scan and mount swap partitions
if [ -e /var/etc/.swap ]; then
find /dev -type b | grep disc | \
while read DISC ; do
/sbin/sfdisk -d $DISC | grep 82 | \
while read SWAPPARTITION restofline ; do
/sbin/swapon $SWAPPARTITION
done
done
echo 0 > /proc/sys/vm/swappiness
fi
# Start automounter
if [ -e /var/etc/init.d/start_automount ] ; then
/var/etc/init.d/start_automount
else
if [ -e /etc/init.d/start_automount ] ; then
/etc/init.d/start_automount
fi
fi
if [ -e /var/etc/init ] ; then
. /var/etc/init
fi
echo "Enigma Starts" > /dev/dbox/fp0
[ -e /bin/enigmanet ] && /bin/enigmanet
[ -e /var/script/inadyn_script.sh ] && /var/script/inadyn_script.sh start
[ -e /bin/sattv-forumd ] && /bin/sattv-forumd &
rm /var/etc/.dont_restart_enigma
touch /tmp/.enigma
while [ -e /tmp/.enigma ]
do
if [ ! -e /var/etc/.dont_restart_enigma ] ; then
/bin/enigma
ret=$?
echo "enigma returned with "$ret
case $ret in
0)
echo "Shutdown"
rm /tmp/.enigma
/sbin/halt
;;
3)
echo "Reboot Flash"
rm /tmp/.enigma
umount /var
umount /hdd
/bin/flashtool
;;
4)
echo "Reboot"
rm /tmp/.enigma
/sbin/reboot
;;
*) echo "Restart"
;;
esac
else
sleep 1
fi
done
exit 0
То затова еволюшъна е най-стабилния имидж, защото е парирана всяка възможност за пипане по него от потребители, особено от такива като нас, които се правят на пишман кодери!
Аз никакъв кодер не съм, даже още не съм влизал в моя дрийм бокс защото искам да си купя втори... просто работата ми е по цял ден с Unix и NAS и от там разбирам някои общи неща.
Очевидно всеки имидж е реализиран различно.
ако четеш и пробваш не виждам защо да не постигнеш всичко, което искаш с твоя имидж.
Просто ти трябва читав бекъп с тествана опция за рестор на работеща версия, време и желание :)
Принципно, за да имаш право да пишеш на партишън, който е специализиран за флаш NAND памети ти трябват mtd tools инсталирани и после команди modprobe, но не знам това дали може да стане на самия приемник. (тоест със сигурност не може да се инсталира на 500S), но на външен Unix/Linux базиран комп, който има достъп до партишъна може да стане.
Вярвам, че има смислени съображения взети в предвид в конкретния случай, за да пише да не се маунтва.
Освен това ако приемника ти има възможност за външно USB или HDD, виждам, че е възможно да се аутомаунтва външен сторидж вместо флаша или иначе казано - по-голям капацитет (вероятно по-бавен), но за конкретния имидж трябва да се пробва с различни методи докато стане поради определено различната реализация. Може и с нетуърк драйв, но там нещата стават не надежни поради качеството на клонираните LAN карти.
Това, което виждам е, че тук всичко е преправено в един скрипт, който явно е сложен да се зарежда, когато трябва.
От една страна е стабилно защото явно е направено както трябва да работи, от друга ако имаш имидж по-близък до стандартния Unix/Linux, сам можеш да си изчистиш проблемите следяйки логовете и махайки/модифицирайки причинителите на грешките. Бонусът тук е, че си по-близо до стандартния Unix/Linux конфиг и можеш по-лесно и от повече места да взимаш информация, да питаш по наши и чужди форуми.
П.С.: Никой не се е родил научен...хората в не съзнателния си живот се учат предимно да ходят и да говорят...останалото е придобито по желание или по неволя :)
Ако имате инсталирани MTD Tools, става работата по следния начин:
modprobe mtd
modprobe jffs2
modprobe mtdram
modprobe mtdchar
modprobe mtdblock
dd if=image-jffs2 of=/dev/mtd0
mount /dev/mtdblock0 mnt
Всичко е примерно, и не съм го пробвал..но чета, че става на външна машина с Unix/Linux (във слъчая с Ubunto 7.x), като е export-ната преди това от Dreambox с rw права nfs.
Аз съм с Slackware 13 и ще пробвам, като имам време.