Inicializando através do USB e eu tenho que puxar o pen drive e colocá-lo de volta na inicialização

1

Eu tenho iniciado a partir de USB por algum tempo, e toda vez que eu reiniciar ou iniciar após um desligamento, os scripts de inicialização (grub?) ficam presos. Parece que o drive USB é desmontado em algum ponto do script, e eu tenho que removê-lo fisicamente e colocá-lo de volta. Quando faço isso, tudo continua normalmente. Demorei um pouco para descobrir que tinha que fazer isso, mas agora que sei, acho isso muito irritante. Eu gostaria que ele fosse iniciado sem que eu precisasse fazer nada além de pressionar o botão liga / desliga ou reinicializar a partir do terminal.

Sou um amador e não sei realmente por onde começar este. O que seria útil para a comunidade para responder a essa pergunta?

Para começar, aqui estão os resultados relevantes de dmesg | less :

[    8.480549] xhci_hcd 0000:00:10.0: Command completion event does not match command
[    8.480577] xhci_hcd 0000:00:10.0: Timeout while waiting for setup device command
[   13.691888] xhci_hcd 0000:00:10.0: Timeout while waiting for setup device command
[   13.927619] usb 6-2: device not accepting address 2, error -62
[   14.071777] usb 6-2: new SuperSpeed USB device number 3 using xhci_hcd
[   14.124771] usb 6-2: New USB device found, idVendor=0781, idProduct=5583
[   14.159833] usb 6-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[   14.194996] usb 6-2: Product: Ultra Fit
[   14.229838] usb 6-2: Manufacturer: SanDisk
[   14.264258] usb 6-2: SerialNumber: 4C530001050109104530
[   14.305206] usb-storage 6-2:1.0: USB Mass Storage device detected
[   14.340050] scsi4 : usb-storage 6-2:1.0
[   14.373775] usbcore: registered new interface driver usb-storage
[   14.409265] usbcore: registered new interface driver uas
[   15.371253] scsi 4:0:0:0: Direct-Access     SanDisk  Ultra Fit        1.00 PQ: 0 ANSI: 6
[   15.404649] sd 4:0:0:0: Attached scsi generic sg4 type 0
[   15.436657] sd 4:0:0:0: [sde] 60751872 512-byte logical blocks: (31.1 GB/28.9 GiB)
[   15.469096] sd 4:0:0:0: [sde] Write Protect is off
[   15.499375] sd 4:0:0:0: [sde] Mode Sense: 43 00 00 00
[   15.499924] sd 4:0:0:0: [sde] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[   15.557688]  sde: sde1 sde2 < sde5 >
[   15.588601] sd 4:0:0:0: [sde] Attached SCSI removable disk
[   15.618843] random: nonblocking pool is initialized
[   16.104407] EXT4-fs (dm-0): mounted filesystem with ordered data mode. Opts: (null)

Em algum lugar entre 8,5 e 13 segundos, eu removi o pen drive e o empurrei de volta.

Atualização 17 de abril

Aqui está o conteúdo do grug.cfg, se isso ajudar.

#
# DO NOT EDIT THIS FILE
#
# It is automatically generated by grub-mkconfig using templates
# from /etc/grub.d and settings from /etc/default/grub
#

### BEGIN /etc/grub.d/00_header ###
if [ -s $prefix/grubenv ]; then
  set have_grubenv=true
  load_env
fi
if [ "${next_entry}" ] ; then
   set default="${next_entry}"
   set next_entry=
   save_env next_entry
   set boot_once=true
else
   set default="0"
fi

if [ x"${feature_menuentry_id}" = xy ]; then
  menuentry_id_option="--id"
else
  menuentry_id_option=""
fi

export menuentry_id_option

if [ "${prev_saved_entry}" ]; then
  set saved_entry="${prev_saved_entry}"
  save_env saved_entry
  set prev_saved_entry=
  save_env prev_saved_entry
  set boot_once=true
fi

function savedefault {
  if [ -z "${boot_once}" ]; then
    saved_entry="${chosen}"
    save_env saved_entry
  fi
}
function recordfail {
  set recordfail=1
  if [ -n "${have_grubenv}" ]; then if [ -z "${boot_once}" ]; then save_env recordfail; fi; fi
}
function load_video {
  if [ x$feature_all_video_module = xy ]; then
    insmod all_video
  else
    insmod efi_gop
    insmod efi_uga
    insmod ieee1275_fb
    insmod vbe
    insmod vga
    insmod video_bochs
    insmod video_cirrus
  fi
}

if [ x$feature_default_font_path = xy ] ; then
   font=unicode
else
insmod part_msdos
insmod lvm
insmod ext2
set root='lvmid/DehE9E-YFth-qqZG-idrN-dOst-z0ri-jpUQRt/HA1lXV-84rk-flfT-yY1A-4g4s-q6t0-QCwfeE'
if [ x$feature_platform_search_hint = xy ]; then
  search --no-floppy --fs-uuid --set=root --hint='lvmid/DehE9E-YFth-qqZG-idrN-dOst-z0ri-jpUQRt/HA1lXV-84rk-flfT-yY1A-4g4s-q6t0-QCwfeE'  e001841d-4c87-4b8f-bb0e-9736fb792477
else
  search --no-floppy --fs-uuid --set=root e001841d-4c87-4b8f-bb0e-9736fb792477
fi
    font="/usr/share/grub/unicode.pf2"
fi

if loadfont $font ; then
  set gfxmode=auto
  load_video
  insmod gfxterm
  set locale_dir=$prefix/locale
  set lang=en_US
  insmod gettext
fi
terminal_output gfxterm
if [ "${recordfail}" = 1 ] ; then
  set timeout=-1
else
  if [ x$feature_timeout_style = xy ] ; then
    set timeout_style=menu
    set timeout=2
  # Fallback normal timeout code in case the timeout_style feature is
  # unavailable.
  else
    set timeout=2
  fi
fi
### END /etc/grub.d/00_header ###

### BEGIN /etc/grub.d/05_debian_theme ###
set menu_color_normal=white/black
set menu_color_highlight=black/light-gray
if background_color 44,0,30,0; then
  clear
fi
### END /etc/grub.d/05_debian_theme ###

### BEGIN /etc/grub.d/10_linux ###
function gfxmode {
    set gfxpayload="${1}"
    if [ "${1}" = "keep" ]; then
        set vt_handoff=vt.handoff=7
    else
        set vt_handoff=
    fi
}
if [ "${recordfail}" != 1 ]; then
  if [ -e ${prefix}/gfxblacklist.txt ]; then
    if hwmatch ${prefix}/gfxblacklist.txt 3; then
      if [ ${match} = 0 ]; then
        set linux_gfx_mode=keep
      else
        set linux_gfx_mode=text
      fi
    else
      set linux_gfx_mode=text
    fi
  else
    set linux_gfx_mode=keep
  fi
else
  set linux_gfx_mode=text
fi
export linux_gfx_mode
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-e001841d-4c87-4b8f-bb0e-9736fb792477' {
    recordfail
    load_video
    gfxmode $linux_gfx_mode
    insmod gzio
    insmod part_msdos
    insmod ext2
    set root='hd4,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
    else
      search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
    fi
    linux   /vmlinuz-3.16.0-34-generic root=/dev/mapper/helmsDeep--vg-root ro   nomdmonddf nomdmonisw
    initrd  /initrd.img-3.16.0-34-generic
}
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-e001841d-4c87-4b8f-bb0e-9736fb792477' {
    menuentry 'Ubuntu, with Linux 3.16.0-34-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-34-generic-advanced-e001841d-4c87-4b8f-bb0e-9736fb792477' {
        recordfail
        load_video
        gfxmode $linux_gfx_mode
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd4,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
        else
          search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
        fi
        echo    'Loading Linux 3.16.0-34-generic ...'
        linux   /vmlinuz-3.16.0-34-generic root=/dev/mapper/helmsDeep--vg-root ro   nomdmonddf nomdmonisw
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.16.0-34-generic
    }
    menuentry 'Ubuntu, with Linux 3.16.0-34-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-34-generic-recovery-e001841d-4c87-4b8f-bb0e-9736fb792477' {
        recordfail
        load_video
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd4,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
        else
          search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
        fi
        echo    'Loading Linux 3.16.0-34-generic ...'
        linux   /vmlinuz-3.16.0-34-generic root=/dev/mapper/helmsDeep--vg-root ro recovery nomodeset 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.16.0-34-generic
    }
    menuentry 'Ubuntu, with Linux 3.16.0-33-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-33-generic-advanced-e001841d-4c87-4b8f-bb0e-9736fb792477' {
        recordfail
        load_video
        gfxmode $linux_gfx_mode
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd4,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
        else
          search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
        fi
        echo    'Loading Linux 3.16.0-33-generic ...'
        linux   /vmlinuz-3.16.0-33-generic root=/dev/mapper/helmsDeep--vg-root ro   nomdmonddf nomdmonisw
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.16.0-33-generic
    }
    menuentry 'Ubuntu, with Linux 3.16.0-33-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-33-generic-recovery-e001841d-4c87-4b8f-bb0e-9736fb792477' {
        recordfail
        load_video
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd4,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
        else
          search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
        fi
        echo    'Loading Linux 3.16.0-33-generic ...'
        linux   /vmlinuz-3.16.0-33-generic root=/dev/mapper/helmsDeep--vg-root ro recovery nomodeset 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.16.0-33-generic
    }
    menuentry 'Ubuntu, with Linux 3.16.0-31-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-31-generic-advanced-e001841d-4c87-4b8f-bb0e-9736fb792477' {
        recordfail
        load_video
        gfxmode $linux_gfx_mode
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd4,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
        else
          search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
        fi
        echo    'Loading Linux 3.16.0-31-generic ...'
        linux   /vmlinuz-3.16.0-31-generic root=/dev/mapper/helmsDeep--vg-root ro   nomdmonddf nomdmonisw
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.16.0-31-generic
    }
    menuentry 'Ubuntu, with Linux 3.16.0-31-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-31-generic-recovery-e001841d-4c87-4b8f-bb0e-9736fb792477' {
        recordfail
        load_video
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd4,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
        else
          search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
        fi
        echo    'Loading Linux 3.16.0-31-generic ...'
        linux   /vmlinuz-3.16.0-31-generic root=/dev/mapper/helmsDeep--vg-root ro recovery nomodeset 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.16.0-31-generic
    }
    menuentry 'Ubuntu, with Linux 3.16.0-30-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-30-generic-advanced-e001841d-4c87-4b8f-bb0e-9736fb792477' {
        recordfail
        load_video
        gfxmode $linux_gfx_mode
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd4,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
        else
          search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
        fi
        echo    'Loading Linux 3.16.0-30-generic ...'
        linux   /vmlinuz-3.16.0-30-generic root=/dev/mapper/helmsDeep--vg-root ro   nomdmonddf nomdmonisw
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.16.0-30-generic
    }
    menuentry 'Ubuntu, with Linux 3.16.0-30-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.16.0-30-generic-recovery-e001841d-4c87-4b8f-bb0e-9736fb792477' {
        recordfail
        load_video
        insmod gzio
        insmod part_msdos
        insmod ext2
        set root='hd4,msdos1'
        if [ x$feature_platform_search_hint = xy ]; then
          search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
        else
          search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
        fi
        echo    'Loading Linux 3.16.0-30-generic ...'
        linux   /vmlinuz-3.16.0-30-generic root=/dev/mapper/helmsDeep--vg-root ro recovery nomodeset 
        echo    'Loading initial ramdisk ...'
        initrd  /initrd.img-3.16.0-30-generic
    }
}

### END /etc/grub.d/10_linux ###

### BEGIN /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###

### BEGIN /etc/grub.d/20_memtest86+ ###
menuentry 'Memory test (memtest86+)' {
    insmod part_msdos
    insmod ext2
    set root='hd4,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
    else
      search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
    fi
    knetbsd /memtest86+.elf
}
menuentry 'Memory test (memtest86+, serial console 115200)' {
    insmod part_msdos
    insmod ext2
    set root='hd4,msdos1'
    if [ x$feature_platform_search_hint = xy ]; then
      search --no-floppy --fs-uuid --set=root --hint-bios=hd4,msdos1 --hint-efi=hd4,msdos1 --hint-baremetal=ahci4,msdos1  f7a56792-f935-40e0-b299-9cb3f5977054
    else
      search --no-floppy --fs-uuid --set=root f7a56792-f935-40e0-b299-9cb3f5977054
    fi
    linux16 /memtest86+.bin console=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### BEGIN /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### BEGIN /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### BEGIN /etc/grub.d/40_custom ###
# This file provides an easy way to add custom menu entries.  Simply type the
# menu entries you want to add after this comment.  Be careful not to change
# the 'exec tail' line above.
### END /etc/grub.d/40_custom ###

### BEGIN /etc/grub.d/41_custom ###
if [ -f  ${config_directory}/custom.cfg ]; then
  source ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f  $prefix/custom.cfg ]; then
  source $prefix/custom.cfg;
fi
### END /etc/grub.d/41_custom ###

ATUALIZAÇÃO 2, 17 de abril de 2015

Aqui está a saída de gparted --list Parece ser desfavorável.

gparted --list :

gparted --list
======================
libparted : 2.3
======================

(gpartedbin:3831): GLib-CRITICAL **: Source ID 7 was not found when attempting to remove it

(gpartedbin:3831): GLib-CRITICAL **: Source ID 6 was not found when attempting to remove it

(gpartedbin:3831): GLib-CRITICAL **: Source ID 26 was not found when attempting to remove it

(gpartedbin:3831): GLib-CRITICAL **: Source ID 25 was not found when attempting to remove it

(gpartedbin:3831): GLib-CRITICAL **: Source ID 29 was not found when attempting to remove it

(gpartedbin:3831): GLib-CRITICAL **: Source ID 28 was not found when attempting to remove it

(gpartedbin:3831): GLib-CRITICAL **: Source ID 34 was not found when attempting to remove it

(gpartedbin:3831): GLib-CRITICAL **: Source ID 33 was not found when attempting to remove it

(gpartedbin:3831): GLib-CRITICAL **: Source ID 38 was not found when attempting to remove it

(gpartedbin:3831): GLib-CRITICAL **: Source ID 37 was not found when attempting to remove it
Could not stat device --list - No such file or directory.

ATUALIZAÇÃO 3, 17 de abril de 2015

Meu arquivo fstab:

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
/dev/mapper/helmsDeep--vg-root /               ext4    errors=remount-ro 0       1
# /boot was on /dev/sdc1 during installation
UUID=f7a56792-f935-40e0-b299-9cb3f5977054 /boot           ext2    defaults        0       2
/dev/mapper/helmsDeep--vg-swap_1 none            swap    sw              0       0
    
por homeServ 04.04.2015 / 17:06

1 resposta

0

Eu vi esse comportamento uma vez em uma máquina cuja enumeração de disco não era consistente. O grub.cfg gerado tinha os números de disco incorretos e não funcionava até que o USB fosse removido e reinserido, forçando um novo número de disco, que então funcionava. Dê uma olhada no seu grub.cfg e tente apenas editar os números hd. Quando o USB funcionou, foi dado sde, então tente hd4. Uma vez em execução, você pode tentar uma correção permanente com

sudo update-grub

mas como geralmente é uma questão de tempo, não há garantias de que algo seja permanente. Além disso, você pode tentar outro USB, eu só tive o problema em um dos meus, então talvez fosse lento ou algo assim.

    
por ubfan1 04.04.2015 / 19:03