Page 1 of 2 12 LastLast
Results 1 to 15 of 230

Thread: Как зафиксировать порядок USB носителей (fstab)?

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Quote Originally Posted by AlekseyA View Post
    что изменится в pre-mount.
    Со свопом, видимо, будет так (нужно подставить еще и свои номера разделов на винчестере):
    Code:
    #!/bin/sh
    
    hdd_guid="05e307020000000000000000"
    flash_guid="058f638700000001a211f3f9"
    
    hdd_mount="/home"
    hdd_data="part1"
    hdd_swap="part2"
    
    flash_mount="/opt"
    mnt_options="noatime,nodiratime,rw"
    
    scsi ()
    {
       hostid=""
       for i in 0 1 2 3; do
       host="/proc/scsi/usb-storage-$i/$i"
          [ -f $host ] && [ ${#1} -eq 24 ] &&
          grep "GUID: $1" $host -q &&
          grep "Attached: Yes" $host -q &&
          hostid=$i &&
          break
       done
    
       dev="/dev/scsi/host$hostid/bus0/target0/lun0/" && [ -e $dev ] && echo $dev
    }
    
    hdd_dev=`scsi $hdd_guid`
    flash_dev=`scsi $flash_guid`
    
    echo -e "# device\t\t\t\tMountpoint\tFStype\tOptions\t\t\tDump\tPass#" > /etc/fstab
    
    [ -n "$hdd_dev" ] &&
    echo -e $hdd_dev$hdd_data"\t$hdd_mount\t\text3\t$mnt_options\t0\t0" >> /etc/fstab &&
    echo -e $hdd_dev$hdd_swap"\tnone\t\tswap\tsw\t0\t0" >> /etc/fstab
    
    [ -n "$flash_dev" ] &&
    echo -e $flash_dev"part1\t$flash_mount\t\text3\t$mnt_options\t0\t0" >> /etc/fstab
    Мне негде проверить.
    Поэтому лучше попробовать запустить данный скрипт на работающем роутере и глянуть, правильно ли формируется fstab.
    Если нет - поправим
    Если правильно - можно сохранять его как pre-mount.

  2. #2
    Quote Originally Posted by bbsc View Post
    Мне негде проверить.
    Поэтому лучше попробовать запустить данный скрипт на работающем роутере и глянуть, правильно ли формируется fstab.
    Если нет - поправим
    Если правильно - можно сохранять его как pre-mount.
    У меня по Линуксу 3 с "-".
    Напиши как это запустить, приеду вечером дамой попробую.
    Да, в настоящий момент у меня все (swap, opt и база) на USB-HDD, но вставит/вынуть флешку или подрубить еще один USB-HDD это я смогу.

  3. #3
    AlekseyA, да как запустить....
    Создать файл, например:
    touch /opt/tmp/vasya
    chmod +x /opt/tmp/vasya
    Скопировать туда скрипт, прописать свои ГУИДы, разделы и сохранить.
    Запустить файл на исполнение:
    /opt/tmp/vasya
    Затем глянуть cat /etc/fstab и сравнить с выводом /mount

    З.Ы. Я так и не понял, сколько разделов с винта нужно монтировать: два или три.

  4. #4
    А можно попросить вариант скрипта для моего случая?

    Имеется USB-flash с двумя разделами. Один swap монтируется в /swap.
    Второй ext2 монтируется в /opt

    Винт имеет один раздел, монтируется в /userdata
    DIXI

  5. #5
    alien, а чем плох тот скрипт, что выше? Который "со свопом"?
    Только в hdd_guid вписать GUID от флешки, а в flash_guid - GUID от винчестера. Точки монтирования отредактировать вроде несложно.

    З.Ы. Ради эстетики можно напрячься и поменять имена переменных самостоятельно.

    З.З.Ы. Это плохая идея: своп на флешке, особенно если есть винт.

  6. #6
    Quote Originally Posted by bbsc View Post
    alien, а чем плох тот скрипт, что выше? Который "со свопом"?
    Только в hdd_guid вписать GUID от флешки, а в flash_guid - GUID от винчестера. Точки монтирования отредактировать вроде несложно.

    З.З.Ы. Это плохая идея: своп на флешке, особенно если есть винт.
    Да, про поменять GUID не подумал)

    По свопу - винт "потаскун". Я посчитал, что не будет хорошо неожиданно лишать роутер свопа. А флешка там навсегда поселилась. Сдохнет - вживим другую)
    DIXI

  7. #7
    Join Date
    Aug 2008
    Location
    Taganrog, Rostov Region
    Posts
    397
    Quote Originally Posted by alien View Post
    Да, про поменять GUID не подумал)

    По свопу - винт "потаскун". Я посчитал, что не будет хорошо неожиданно лишать роутер свопа. А флешка там навсегда поселилась. Сдохнет - вживим другую)
    Так посели swap на отдельную флешку.
    Обидно будет, когда сдохнет флешка с настроенныем софтом.

    PS: может мне не повезло с флешкой. Я тоже хотел поместить opt и swap на одну флешку. Так после установки некоторого колличества пакетов - все рушилось. После переноса swap на винт, все стало работать.
    [ASUS wl-500gP (v1) 1.9.2.7-rtn-r7438M 128Mb 300MHz 2+2usb] + [2Гб USBFlash] + [USB-HDD] + [xinetd] + [samba3] + [Download Engine] + [rTorrent] + [3proxy] + [nShaper] + [mcabber] + [apcupsd] + [mpd]; Было: [openvpn&udhcpc]; [privoxy] + [polipo];

  8. #8
    Quote Originally Posted by bbsc View Post
    AlekseyA, да как запустить....

    Запустить файл на исполнение:
    /opt/tmp/vasya

    .
    А у меня почему то на попытку запуска отвечает что файл не найден. Хотя я его вижу и могу открывать для редактирования.
    Что не так?

  9. #9
    Вывод с консоли в студию.

  10. #10
    Quote Originally Posted by bbsc View Post
    Вывод с консоли в студию.
    [.......@.... root]$ /opt/tmp/startUSB
    -sh: /opt/tmp/startUSB: not found

  11. #11
    Угу, а что говорит ls -al /opt/tmp ?

  12. #12

    для конфигурации с HDD

    Quote Originally Posted by bbsc View Post
    Со свопом, видимо, будет так (нужно подставить еще и свои номера разделов на винчестере):
    Code:
    #!/bin/sh
    
    hdd_guid="05e307020000000000000000"
    flash_guid="058f638700000001a211f3f9"
    
    hdd_mount="/home"
    hdd_data="part1"
    hdd_swap="part2"
    
    flash_mount="/opt"
    mnt_options="noatime,nodiratime,rw"
    
    scsi ()
    {
       hostid=""
       for i in 0 1 2 3; do
       host="/proc/scsi/usb-storage-$i/$i"
          [ -f $host ] && [ ${#1} -eq 24 ] &&
          grep "GUID: $1" $host -q &&
          grep "Attached: Yes" $host -q &&
          hostid=$i &&
          break
       done
    
       dev="/dev/scsi/host$hostid/bus0/target0/lun0/" && [ -e $dev ] && echo $dev
    }
    
    hdd_dev=`scsi $hdd_guid`
    flash_dev=`scsi $flash_guid`
    
    echo -e "# device\t\t\t\tMountpoint\tFStype\tOptions\t\t\tDump\tPass#" > /etc/fstab
    
    [ -n "$hdd_dev" ] &&
    echo -e $hdd_dev$hdd_data"\t$hdd_mount\t\text3\t$mnt_options\t0\t0" >> /etc/fstab &&
    echo -e $hdd_dev$hdd_swap"\tnone\t\tswap\tsw\t0\t0" >> /etc/fstab
    
    [ -n "$flash_dev" ] &&
    echo -e $flash_dev"part1\t$flash_mount\t\text3\t$mnt_options\t0\t0" >> /etc/fstab
    В моем случае HDD подключен к USB3 (вмонтирован в корпус), к USB1 подключен 3G-модем.
    На жесткомдиске разделы Swap, система с программами, раздел-накопитель.
    На 3G-модеме есть гнездо под микрофлеш (не используется).
    Программы установлены отсюда.
    Ситуация такова, что иногда модем и диск меняются местами после перезагрузки. Естественно все летит к чертям, а там качалки, сайт, хостинг.
    Хотелось бы увидеть как нужно изменить Ваш скрипт.

  13. #13
    Join Date
    Feb 2007
    Location
    Moscow, Russia
    Posts
    3,805
    если прошивка относительно свежая, то скрипт не нужен, а достаточно прописать в файл /etc/fstab монтирование не по номерам дисков, а по их UUID. Во второй половине данной темы речь именно об этом.

  14. #14
    Quote Originally Posted by al37919 View Post
    если прошивка относительно свежая, то скрипт не нужен, а достаточно прописать в файл /etc/fstab монтирование не по номерам дисков, а по их UUID. Во второй половине данной темы речь именно об этом.
    Извиняюсь за тупость. Линукс не изучал, поэтому не совсем разобрался в данном деле.
    Плюс, поскольку программы ставлю с готового скрипта, то изначально хотелось заменить именно в нем нужные строки (полагаю в моем случае строки 268-275) потому как инсталяция происходит с использованием 3g модема который вставлен в порт 1 и монтируется в host0, где должен стоять диск.
    Прошивка относительно свежая от энтузиастов.
    Пока вот пытался переработать скрипт под себя:
    Code:
    #!/bin/sh
    
    hdd_guid="152d23200002790624527ff"
    
    hdd_swap="part1"
    hdd_opt="part2"
    hdd_data="part3"
    
    opt_mount="/opt"
    hdd_mount="/tmp/mnt/disc0_3"
    
    mnt_options="noatime,nodiratime,rw"
    
    scsi ()
    {
       hostid=""
       for i in 0 1 2 3; do
       host="/proc/scsi/usb-storage-$i/$i"
          [ -f $host ] && [ ${#1} -eq 24 ] &&
          grep "GUID: $1" $host -q &&
          grep "Attached: Yes" $host -q &&
          hostid=$i &&
          break
       done
    
       dev="/dev/scsi/host$hostid/bus0/target0/lun0/" && [ -e $dev ] && echo $dev
    }
    
    hdd_dev=`scsi $hdd_guid`
    
    echo -e "# device\t\t\t\tMountpoint\tFStype\tOptions\t\t\tDump\tPass#" > /etc/fstab
    
    [ -n "$hdd_dev" ] &&
    echo -e $hdd_dev$hdd_swap"\tnone\t\tswap\tsw\t0\t0" >> /etc/fstab &&
    echo -e $hdd_dev$hdd_opt"\t$opt_mount\t\text3\t$mnt_options\t0\t0" >> /etc/fstab &&
    echo -e $hdd_dev$hdd_data"\t$hdd_mount\t\text3\t$mnt_options\t0\t0" >> /etc/fstab
    Если подскажете как правильно прописать в файл /etc/fstab монтирование не по номерам дисков, а по их GUID, буду очень признателен.
    В роутер вживлен диск на USB3. Имеет 3 раздела - Swap, программы и остаток под качалки.
    Last edited by hanuman; 02-11-2010 at 00:05.

  15. #15
    Можете попробовать по метке раздела. Тоже хороший вариант.
    http://wl500g.info/showthread.php?t=24616

Page 1 of 2 12 LastLast

Similar Threads

  1. Настройка mpcs на роутере
    By poptab in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 1059
    Last Post: 17-07-2012, 06:22
  2. cannot detect USB HDD
    By ferdz_33 in forum WL-500gP Q&A
    Replies: 8
    Last Post: 13-01-2010, 07:53
  3. Проблема: USB 1.1 устройства через USB 2.0 хаб
    By Rambalac in forum Russian Discussion - РУССКИЙ (RU)
    Replies: 30
    Last Post: 15-09-2009, 12:00

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
  •