Page 5 of 9 FirstFirst ... 34567 ... LastLast
Results 61 to 75 of 134

Thread: Размышления об использовании файлов pre-* и post-* в новых прошивках Олега

  1. #61

    Lightbulb date и e2fschk?

    Извините, если что не понял - я в этой сфере тотальный чайник: проблема в том, что какие-то с файлсистемой связанные процессы должны запускаться после того, как установилось время? Из трэда понял (по дискуссиям, на какой секунде время поправляется), что установка времени происходит асинхронно с процессом монтирования.
    Тогда почему нельзя просто (?) написать цыкл (с ограничением на, скажем, минуту), который в нужном месте ждет, пока не установится date?
    Если идея годится - киньте сюда результат пожалуйста. Я пока еще сам не сумею красиво написать (см. начало).

    Спасибо,
    Andris

  2. #62
    Join Date
    Jan 2008
    Location
    Minsk Belarus
    Posts
    94
    Соглашаюсь, я отчаявшийся дилетант, а Вы славно потрудились и разложили все по полочкам. Но, тем е менее вопрос остается открытым и думаю без в вмешательства Олега врядли разрешится...
    Сорри за флуд.

    P.S. Для себя проблему решил проще - sleep 1 первой строкой в pre-mount:

    Jan 1 02:00:06 dhcp client: deconfig: lease is lost
    Jan 1 02:00:06 udhcpc[94]: Lease of 91.149.xxx.9 obtained, lease time 86400
    Feb 5 14:01:51 dnsmasq[73]: read /etc/hosts - 5 addresses
    Feb 5 14:01:51 dnsmasq[73]: reading /tmp/resolv.conf
    Feb 5 14:01:51 dnsmasq[73]: using nameserver 213.184.238.25#53
    Feb 5 14:01:51 dnsmasq[73]: using nameserver 213.184.238.6#53
    Feb 5 14:01:52 dhcp client: bound IP : 91.149.xxx.9 from 91.149.xxx.1
    Feb 5 14:01:52 dropbear[114]: Running in background
    Feb 5 14:01:54 kernel: usb_control/bulk_msg: timeout
    Feb 5 14:01:54 kernel: usb.c: USB device not accepting new address=2 (error=-145)
    Feb 5 14:01:54 kernel: hub.c: new USB device 01:03.2-3, assigned address 3
    Feb 5 14:01:54 kernel: scsi0 : SCSI emulation for USB Mass Storage devices
    Feb 5 14:01:54 kernel: Vendor: USB-HS Model: HITACHI_DK23DA-3 Rev: 0.01
    Feb 5 14:01:54 kernel: Type: Direct-Access ANSI SCSI revision: 02
    Feb 5 14:01:54 kernel: Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
    Feb 5 14:01:55 kernel: SCSI device sda: 58605120 512-byte hdwr sectors (30006 MB)
    Feb 5 14:01:55 kernel: Partition check:
    Feb 5 14:01:55 kernel: p1 p2 p3
    Feb 5 14:02:01 ntp client: Synchronizing time with pool.ntp.org ...
    Feb 5 14:02:03 e2fsck: /dev/discs/disc0/part1: clean, 83/3476160 files, 1042621/6948112 blocks

    так кто ж все-таки время получает?....
    Last edited by Contemplator; 05-02-2008 at 12:51.

  3. #63
    Join Date
    Dec 2003
    Location
    Russian Federation
    Posts
    8,356
    Есть простой вариант: нужно просто отключить проверку по прохождению "слишком большого времени" (это нам не актуально, вряд ли у кого-то аптайм роутера будет год). И всё.

    Посмотреть текущие настройки можно так:
    tune2fs -l /dev/discs/disc0/part1

    Запретить подобную проверку:
    tune2fs -i 0 /dev/discs/disc0/part1

  4. #64
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,805
    О! Ядреныть! Хотели Олега --- получайте: http://wl500g.info/showpost.php?p=81358&postcount=54

  5. #65

    Question Скрипт для проверки диска

    Дайте пожалуйста скрипт для проверки диска (автопроверка, для cron)
    1. pre-shutdown
    2. отмонтировать disk0_1
    3. проверить диск
    4. если проверка прошла успешно, то смонтировать обратно disk0_1 и выполнить post-mount
    5. если нет - мигать диодом питания (прога pwrled)

    ВСЕ опирации должны иметь ЛОГИ, желательно в /tmp/proverka

    Кто напишет сей чудный чудный скрипт?

  6. #66
    Join Date
    Aug 2007
    Location
    Moscow, Russia
    Posts
    976
    Quote Originally Posted by Vofik View Post
    Дайте пожалуйста скрипт для проверки диска (автопроверка, для cron)
    1. pre-shutdown
    2. отмонтировать disk0_1
    3. проверить диск
    4. если проверка прошла успешно, то смонтировать обратно disk0_1 и выполнить post-mount
    5. если нет - мигать диодом питания (прога pwrled)

    ВСЕ опирации должны иметь ЛОГИ, желательно в /tmp/proverka

    Кто напишет сей чудный чудный скрипт?
    Лучше всего все сделать по образу и подобию того, как описал наш Гуру:
    http://wl500g.info/showthread.php?t=...EB%E5%ED%E8%FF

  7. #67
    Join Date
    Aug 2007
    Location
    Moscow, Russia
    Posts
    976
    Quote Originally Posted by al37919 View Post
    У меня файл pre-shutdown вышел таким:
    PHP Code:
    #! /bin/sh

    /opt/etc/init.d/rc.unslung stop

    for i in `awk '/ext3/{print($1)}' /etc/fstab`
    do
      
    mount -o remount,ro $i
    done

    swapoff 
    -a

    sleep 5s 
    А не правильнее здесь /proc/mounts вместо /etc/fstab ?

  8. #68
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,805
    вероятно, да. В принципе, полагаю, что проблемы в любом случае нет, т.к. даже если мы будем пытаться перемонтировать какую то строку из fstab, которая на самом деле не смонтирована, то будет выдано сообщение об ошибке и продолжится выполнение остального. Однако, поскольку /proc/mount содержит список реально смонтированных на данный момент фс, то его использование в данном контексте действительно должно быть более корректным.

  9. #69
    кстати, mount который ставится из ipk пакета в opt, он использует /etc/mtab а так как /opt/bin идет первым в PATH то пришлось сделать символическую ссылку с этим именем на /proc/mounts иначе mount из opt ругается на отсутствие mtab
    vim имеет два режима - бибикать и все портить (с) не мое

  10. #70

    Thumbs up

    Quote Originally Posted by angel_il View Post
    кстати, mount который ставится из ipk пакета в opt, он использует /etc/mtab а так как /opt/bin идет первым в PATH то пришлось сделать символическую ссылку с этим именем на /proc/mounts иначе mount из opt ругается на отсутствие mtab
    Этот mount еще и неправильно отображает информацию о смонтированных с опцией '--bind' разделах, например, после
    $ mount --bind /tmp/mnt/disc0_1/opt /opt
    он показывает:
    $ mount
    ...
    /dev/discs/disc0/part1 on /tmp/mnt/disc0_1 type ext3 (rw,noatime)
    /dev/discs/disc0/part1 on /opt type ext3 (rw,noatime)

    Тогда как "взрослый" mount умеет показывать так (после mount --bind /etc /tmp/etc):
    /etc on /tmp/etc type none (rw,bind)
    хотя `cat /proc/mounts` тоже показывает
    /dev/sda2 /tmp/etc ext3 rw,data=ordered 0 0
    т.е. не упоминает 'bind'.

  11. #71

    Memory

    После всех манипуляций описаных в первых постах , у логе появляется сообжение
    PHP Code:
    Mar 10 00:31:09 kernelOut of MemoryKilled process 129 (e2fsck). 
    Как исправить?

  12. #72
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,805
    каков объем диска?

    а вообще в pre-mount перед циклом проверок добавить swapon -a

  13. #73
    Quote Originally Posted by al37919 View Post
    каков объем диска?

    а вообще в pre-mount перед циклом проверок добавить swapon -a
    250G ____________________

  14. #74
    Quote Originally Posted by al37919 View Post
    каков объем диска?

    а вообще в pre-mount перед циклом проверок добавить swapon -a
    Спасибо, вроте получилось

  15. #75
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,805
    где то до 140-150 Мб проверка проходит успешно без подключения свопа. Потом отваливается. Я это не сразу понял, т.к. у меня 120Гб. Теперь подновил первый пост.

Page 5 of 9 FirstFirst ... 34567 ... LastLast

Similar Threads

  1. Replies: 586
    Last Post: 30-01-2016, 18:32
  2. Replies: 83
    Last Post: 11-12-2012, 18:31
  3. Установки MTU в последних прошивках от Олега
    By Uncle Sharic in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 12
    Last Post: 08-06-2008, 18:05

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •