Smooth Windows 10 Upgrade

I just completed three successful upgrades to Windows 10, two from Windows 7 (a T420 ThinkPad and a relatively recent HP tower), and one from Windows 8.1 (an underpowered HP mini laptop with touch screen).

The only issue was as needing to start the upgrade from Windows Update. I initially started the T420 upgrade from the “Get Windows 10” applet, but it stalled “Getting things ready” (I waited 30 minutes, before checking with Google and found stalling was not uncommon when started this way).

So far, I’m really liking Windows 10, although I still prefer the Win7 programs menu, and some areas of Settings feel clunky. However, the Windows 10 UX in general beats both Windows 7 and Windows 8.1

Progress marches forward…

Dual-boot Centos 7 with Existing Windows

I didn’t have any trouble installing Centos 7 to an unused 100G on my T-61 ThinkPad. However, Windows wasn’t listed in the boot menu (only Linux and Linux-recover).

This solution is from johnsfine, I’m summarizing for my own reference.

And fwiw, Centos 7 feels sluggish compared to Linux Mint 17.

Summary

After installing Centos 7, sda1 remained the bootable Windows partition and was untouched. However, it seems Centos7 does not support the ntfs file system out of the box. This means at the end of the install, when grub2 probed the drive to build the boot menu, the Windows partition was undetected and therefore wasn’t added to the boot menu. This procedure solves that.

After adding Windows to the boot menu, the default boot is still Centos 7. I would like to change the default boot to Windows, but it seems complicated. Maybe someday…

Procedure

Enable the EPEL repository (directory and filename current as of this writing)

wget http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
yum install ./epel-release-7-2.noarch.rpm

Install ntfs-3g

sudo yum install ntfs-3g

Re-configure Grub2

grub2-mkconfig -o /boot/grub2/grub.cfg

Flattening a directory structure on Windows

The other day I needed to copy all the files within a hierarchical directory structure in a shared network directory into a single directory. Here’s how I did it.

1) install the following GnuWin32 utilities from http://gnuwin32.sourceforge.net/packages.html (this is much simpler than and add the bin directory (c:\Program Files\GnuWin32\bin) to your PATH environment variable.

  • CoreUtils
  • FindUtils
  • sed

2) Check the shared network directory for files with the same name, and either change names or delete files before copying. My shared network directory is mapped as I:\Share.

C:\>I:
I:\>cd I:\Share
I:\Share>"c:\Program Files\GnuWin32\bin\find.exe" . -type f | sed "s/.*\///" | sort | uniq -d

The full path to “find” is needed because, although the GnuWin32 bin directory is on my command path, the Windows “find” command is found on my path before the GnuWin32 “find”. This can take some time – 15 minutes on a 5 year old laptop with a shared directory having 170k files and 22K directories!

3) Copy the files into a new “files” directory on X-drive:

I:\Share>mkdir X:\files
I:\Share>cp `find . -type f` X:\files

Done!

P.S. Thanks to ldenneau for the idea (http://ask.metafilter.com/62308/Easy-Windows-directory-flattening-with-minimal-tools)