Find the answer to your Linux question:
Results 1 to 3 of 3
I recently purchased a Lenovo W530 to replace my aging T61 and have been feverishly trying to get Arch Linux working. The system is going to be used for school ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Jan 2006
    Posts
    7

    Lenovo W530 - Stuck at "Loading initial ramdisk" after installation


    I recently purchased a Lenovo W530 to replace my aging T61 and have been feverishly trying to get Arch Linux working. The system is going to be used for school and programming, so I want my hard drive encrypted. I purchased a Crucial M4 mSATA SSD and am using this as my boot drive.

    System specs:
    Processor - Intel Core i7-3720QM
    System graphics - NVIDIA Quadro K1000M
    Total memory - 32 GB RAM
    Solid State Drive - 128gb Crucial mSATA m4 (/boot and / are here)
    Hard drive - 500GB 5400rpm

    I'm using the newest ISO download. At the moment, the 500gb drive is untouched and removed from the laptop, so I'm only installing to the mSATA SSD that I added. When I install Arch without LUKS drive encryption, everything works perfectly fine. Following the exact same steps, except for adding LUKS encryption (and required modules/hooks) on the RAW partition, the system gets stuck. I've verified that my hooks are in the proper order (encrypt, lvm2, filesystems) and I've regenerated the ramdisk using mkinitcpio. When the system gets to the message "Loading initial ramdisk", there is hard drive activity indicating that it is loading files from the hard drive, but it stops shortly after and never continues. Putting GRUB2 in debug mode doesn't really give much information, except that this is the last thing it shows (can't post links, thanks staff) before it restarts the laptop.

    Code:
      --- Physical volume ---
      PV Name               /dev/mapper/lisp
      VG Name               lisplvm
      PV Size               118.76 GiB / not usable 2.00 MiB
      Allocatable           yes (but full)
      PE Size               4.00 MiB
      Total PE              30403
      Free PE               0
      Allocated PE          30403
      PV UUID               PJPVbs-Vzln-YL10-haYr-935E-rdN6-BJ4cCD
    Code:
      --- Volume group ---
      VG Name               lisplvm
      System ID             
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  3
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                2
      Open LV               0
      Max PV                0
      Cur PV                1
      Act PV                1
      VG Size               118.76 GiB
      PE Size               4.00 MiB
      Total PE              30403
      Alloc PE / Size       30403 / 118.76 GiB
      Free  PE / Size       0 / 0   
      VG UUID               Z2Jzqs-voW8-Ed62-Mjpa-1KAF-I8oe-Wk6HeF
    Code:
      --- Logical volume ---
      LV Path                /dev/lisplvm/swap
      LV Name                swap
      VG Name                lisplvm
      LV UUID                Ur0sn3-ypEX-oboC-qJ6A-hkhQ-Obfc-wFSzog
      LV Write Access        read/write
      LV Creation host, time archiso, 2012-08-05 12:57:22 +0000
      LV Status              available
      # open                 0
      LV Size                4.00 GiB
      Current LE             1024
      Segments               1
      Allocation             contiguous
      Read ahead sectors     auto
      - currently set to     256
      Block device           254:4
       
      --- Logical volume ---
      LV Path                /dev/lisplvm/root
      LV Name                root
      VG Name                lisplvm
      LV UUID                kWFTMQ-g16w-TtjR-DdaK-MHIo-Fz5f-wl8qSm
      LV Write Access        read/write
      LV Creation host, time archiso, 2012-08-05 12:57:46 +0000
      LV Status              available
      # open                 0
      LV Size                114.76 GiB
      Current LE             29379
      Segments               1
      Allocation             contiguous
      Read ahead sectors     auto
      - currently set to     256
      Block device           254:5
    Code:
    #
    # 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 ###
    insmod part_gpt
    insmod part_msdos
    if [ -s $prefix/grubenv ]; then
      load_env
    fi
    set default="0"
    
    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 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 loadfont unicode ; then
      set gfxmode=auto
      load_video
      insmod gfxterm
      set locale_dir=$prefix/locale
      set lang=en_US
      insmod gettext
    fi
    terminal_input console
    terminal_output gfxterm
    set timeout=5
    ### END /etc/grub.d/00_header ###
    
    ### BEGIN /etc/grub.d/10_linux ###
    menuentry 'Arch GNU/Linux, with Linux core repo kernel' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-core repo kernel-true-6f169fbb-5813-44cc-8b0b-ca7559b5f5a2' {
    	load_video
    	set gfxpayload=keep
    	insmod gzio
    	insmod part_gpt
    	insmod fat
    	set root='hd0,gpt1'
    	if [ x$feature_platform_search_hint = xy ]; then
    	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  DF3D-5CE7
    	else
    	  search --no-floppy --fs-uuid --set=root DF3D-5CE7
    	fi
    	echo	'Loading Linux core repo kernel ...'
    	linux	/vmlinuz-linux cryptdevice=/dev/sda2:lisp root=/dev/mapper/lisplvm-root ro  quiet
    	echo	'Loading initial ramdisk ...'
    	initrd	/initramfs-linux.img
    }
    menuentry 'Arch GNU/Linux, with Linux core repo kernel (Fallback initramfs)' --class arch --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-core repo kernel-fallback-6f169fbb-5813-44cc-8b0b-ca7559b5f5a2' {
    	load_video
    	set gfxpayload=keep
    	insmod gzio
    	insmod part_gpt
    	insmod fat
    	set root='hd0,gpt1'
    	if [ x$feature_platform_search_hint = xy ]; then
    	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt1 --hint-efi=hd0,gpt1 --hint-baremetal=ahci0,gpt1  DF3D-5CE7
    	else
    	  search --no-floppy --fs-uuid --set=root DF3D-5CE7
    	fi
    	echo	'Loading Linux core repo kernel ...'
    	linux	/vmlinuz-linux cryptdevice=/dev/sda2:lisp root=/dev/mapper/lisplvm-root ro  quiet
    	echo	'Loading initial ramdisk ...'
    	initrd	/initramfs-linux-fallback.img
    }
    
    ### 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+ ###
    ### END /etc/grub.d/20_memtest86+ ###
    
    ### BEGIN /etc/grub.d/30_os-prober ###
    ### END /etc/grub.d/30_os-prober ###
    
    ### 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 ###
    Code:
    # vim:set ft=sh
    # MODULES
    # The following modules are loaded before any boot hooks are
    # run.  Advanced users may wish to specify all system modules
    # in this array.  For instance:
    #     MODULES="piix ide_disk reiserfs"
    MODULES="ext2 ext3 ext4 dm_crypt dm-mod vfat"
    
    # BINARIES
    # This setting includes any additional binaries a given user may
    # wish into the CPIO image.  This is run last, so it may be used to
    # override the actual binaries included by a given hook
    # BINARIES are dependency parsed, so you may safely ignore libraries
    BINARIES=""
    
    # FILES
    # This setting is similar to BINARIES above, however, files are added
    # as-is and are not parsed in any way.  This is useful for config files.
    # Some users may wish to include modprobe.conf for custom module options
    # like so:
    #    FILES="/etc/modprobe.d/modprobe.conf"
    FILES=""
    
    # HOOKS
    # This is the most important setting in this file.  The HOOKS control the
    # modules and scripts added to the image, and what happens at boot time.
    # Order is important, and it is recommended that you do not change the
    # order in which HOOKS are added.  Run 'mkinitcpio -H <hook name>' for
    # help on a given hook.
    # 'base' is _required_ unless you know precisely what you are doing.
    # 'udev' is _required_ in order to automatically load modules
    # 'filesystems' is _required_ unless you specify your fs modules in MODULES
    # Examples:
    ##   This setup specifies all modules in the MODULES setting above.
    ##   No raid, lvm2, or encrypted root is needed.
    #    HOOKS="base"
    #
    ##   This setup will autodetect all modules for your system and should
    ##   work as a sane default
    #    HOOKS="base udev autodetect pata scsi sata filesystems"
    #
    ##   This is identical to the above, except the old ide subsystem is
    ##   used for IDE devices instead of the new pata subsystem.
    #    HOOKS="base udev autodetect ide scsi sata filesystems"
    #
    ##   This setup will generate a 'full' image which supports most systems.
    ##   No autodetection is done.
    #    HOOKS="base udev pata scsi sata usb filesystems"
    #
    ##   This setup assembles a pata mdadm array with an encrypted root FS.
    ##   Note: See 'mkinitcpio -H mdadm' for more information on raid devices.
    #    HOOKS="base udev pata mdadm encrypt filesystems"
    #
    ##   This setup loads an lvm2 volume group on a usb device.
    #    HOOKS="base udev usb lvm2 filesystems"
    #
    ##   NOTE: If you have /usr on a separate partition, you MUST include the
    #    usr, fsck and shutdown hooks.
    HOOKS="base udev autodetect pata scsi sata lvm2 encrypt filesystems usbinput fsck"
    
    # COMPRESSION
    # Use this to compress the initramfs image. By default, gzip compression
    # is used. Use 'cat' to create an uncompressed image.
    #COMPRESSION="gzip"
    #COMPRESSION="bzip2"
    #COMPRESSION="lzma"
    #COMPRESSION="xz"
    #COMPRESSION="lzop"
    
    # COMPRESSION_OPTIONS
    # Additional options for the compressor
    #COMPRESSION_OPTIONS=""
    Code:
    #
    # /etc/rc.conf - configuration file for initscripts
    #
    # Most of rc.conf has been replaced by various other configuration
    # files. See archlinux(7) for details.
    #
    # For more details on rc.conf see rc.conf(5).
    #
    
    DAEMONS=(syslog-ng network crond)
    
    # Storage
    #
    # USEDMRAID="no"
    USELVM="yes"
    
    # Network
    #
    # interface=
    # address=
    # netmask=
    # gateway=
    Code:
    [root archiso /]# hwdetect --modules
    MODULES=()
    No matter what I set my vmlinuz-linux line to be, it will always get stuck. I can put completely invalid garbage in it and there are no complaints. There are no error messages, so I can't find out what is going on and I'm starting to get pretty frustrated. Any help is appreciated.

    I'd post the threads I have started on the Arch Linux and Overclockers forums, but the staff has disabled links on new members -- thanks for that! Google search "lenovo w530 arch linux" and you will see both of them right at the top.

  2. #2
    Just Joined!
    Join Date
    Jan 2006
    Posts
    7
    I did find something very interesting. I installed Gentoo as a test and it worked without too much fuss. I made a backup of my /boot folder before wiping the drive and putting back Arch. After the reinstall, I was stuck in the same place. I took the kernel and initramfs from Gentoo and copied them to my /boot folder. I created new entries in Grub to do combinations of Arch/Gentoo files. The one that worked perfectly was a Gentoo kernel with the Arch initramfs. So, from that, it seems like my initial thoughts of initramfs having issues is incorrect. What would cause the kernel to not output any information and just get stuck at the "Loading initial ramdisk" screen?

  3. #3
    Just Joined!
    Join Date
    Jan 2006
    Posts
    7
    The weirdest change is always the one that fixes it. I did a MBR install instead of using GPT/UEFI and it worked the first time. I don't mind not using UEFI, but I'd like to know why it doesn't work.

  4. $spacer_open
    $spacer_close

Posting Permissions

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