Trinity Rescue Kit is a rescue disk used to repair Windows and Linux systems. This article will guide you how to put and run Trinity Rescue Kit on USB.

Trinity Rescue Kit

Trinity Rescue Kit or TRK is a free live Linux distribution that aims specifically at recovery and repair operations on Windows but is equally usable for Linux recovery issues. The official homepage of Trinity Rescue Kit is regularly downtime, you can read more about it on Wikipedia.

Trinity Rescue Kit 3.4 build 372 is the latest stable release released on April 29, 2011, it does not support UEFI and may not support new operating system versions. Version 3.4 build 397 released on October 3, 2016 is the preview version, I have not tried this version yet.

Trinity Rescue Kit

List of features (incomplete):

  • Windows password resetting. You can use Trinity Rescue Kit to reset Windows 10 passwords as well as Windows 7, 8 and 8.1, which only works with local accounts, not Microsoft accounts.
  • Virus scanning. You can use Trinity Rescue Kit to scan for viruses with ClamAV, F-Prot, BitDefender, Vexira and Avast.

Download, put and run Trinity Rescue Kit on USB

If you can not access the official homepage, you can download the Trinity Rescue Kit ISO file on many other websites. The file name of the current release is trinity-rescue-kit.3.4-build-372.iso.

Once you have downloaded the ISO file, you can put and run Trinity Rescue Kit on USB as well as HDD. Just extract the needed files to the drive and add a menu to boot.

Update: For AIO Boot users, just run AIOCreator.exe, switch to Integration, select Linux then select Trinity Rescue Kit from the drop down list. Next, just select the ISO file, then click OK to integrate.

How to put Trinity Rescue Kit on USB?

  1. First, create a trk3 folder on your USB drive (or HDD).
  2. Open the ISO file and copy the following files to the trk3 folder created in step 1:
    • kernel.trk
    • initrd.trk
    • memtest.x86
    • trk3\trkramfs

The file trk3\trkramfs is needed, if it does not exist, you will get the following error: Seems we didn’t find the TRK medium.

How to run Trinity Rescue Kit from USB?

Now just add the menu to Grub2 to boot Trinity Rescue Kit, here are the steps for AIO Boot users:

  1. Open the file /AIO/Menu/Main.cfg and add the following code:
    ### Start Trinity Rescue Kit
    if [ "${grub_platform}" == "pc" ]; then
    menuentry "[9] Trinity Rescue Kit" --hotkey=9 {
    	linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 trkmenu vollabel=AIOBOOT
    	initrd	/trk3/initrd.trk
    }
    fi
    ### End Trinity Rescue Kit
  2. The above is the menu using the default options, if you want to use the extra options, add the following code:
    ### Start Trinity Rescue Kit
    if [ "${grub_platform}" == "pc" ]; then
    submenu "[9] Trinity Rescue Kit" --hotkey=9 {
    	menuentry "[1] Run Trinity Rescue Kit (default mode, with text menu)" --hotkey=1 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[2] TRK 3.4 in failsafe mode (No menu, VGA, noacpi, noapic)" --hotkey=2 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose acpi=off noapic pci=conf1 vga=1 vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[3] TRK 3.4 running from RAM (best >= 512mb, 256mb min)" --hotkey=3 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 trkinmem trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[4] Run 'mclone' in client mode (!)" --hotkey=4 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 mclone vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[5] TRK 3.4 in simple VGA mode (debugging of kernel output)" --hotkey=5 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=1 pci=conf1 splash=off trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[6] TRK 3.4 with Belgian keyboard (use menu for other)" --hotkey=6 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 keyb_be trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[7] Virusscan all drives (Clamav, non interactive)" --hotkey=7 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 virusscan vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[8] Try more pcmcia and usb nics (when not detected)" --hotkey=8 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 pcmcia trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[9] Try more SCSI drivers (when disks not detected)" --hotkey=9 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 scsidrv trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[0] TRK 3.4 with a secure shell server enabled" --hotkey=0 {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 sshd vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[a] Execute local scripts on harddrive of PC" --hotkey=a {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 locscr vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[b] TRK 3.4 as bootserver to boot other TRK clients" --hotkey=b {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 trkbootnet trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[d] Fileshare all drives as guest, no security" --hotkey=d {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 smbguest trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[f] Single user mode (no menu)" --hotkey=f {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 runlevel 1 vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[g] Acpi=off, noapic  PCI=bios (Alternate boot 1)" --hotkey=g {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose acpi=off noapic pci=bios trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[h] Acpi=off, noapic PCI=any (Alternate boot 2)" --hotkey=h {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose acpi=off noapic trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[i] PCI=conf2 (Alternate boot 3)" --hotkey=i {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf2 trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[j] Verbose startup for debugging (no menu)" --hotkey=j {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 debugging vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[k] SSH, boot- and guest fileserver, run from RAM" --hotkey=k {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 sshd trkinmem smbguest trkbootnet trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[l] Run from RAM, run mclone as client" --hotkey=l {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 trkinmem mclone vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[m] TRK 3.4 with proxyserver support enabled" --hotkey=m {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 proxy trkmenu vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[o] All devices set to read-only" --hotkey=o {
    		linux	/trk3/kernel.trk ramdisk_size=65536 root=/dev/ram0 vga=788 splash=verbose pci=conf1 allro vollabel=AIOBOOT
    		initrd	/trk3/initrd.trk
    	}
    	menuentry "[p] Memory tester: Memtest86+ v1.65" --hotkey=p {
    		linux16	/trk3/memtest.x86
    	}
    }
    fi
    ### End Trinity Rescue Kit
  3. Change the drive label to AIOBOOT, or change the value of the vollabel to the label of your drive.
  4. Save the file.
  5. Restart your computer and try booting from your USB drive for testing.

Trinity Rescue Kit will look for the file trk3\trkramfs on the CD drive, if it does not exist it will look for the file in the drive labeled AIOBOOT as in the above code. Change the drive’s label to AIOBOOT, or modify the above code to change the AIOBOOT to your drive’s label. If no vollabel is specified, the system will look for a default label of TRK_3.4.

If the system can not find the file, it will display the message as follows, just enter the device in the prompt.

Trying to find TRK on your 0 CD-drive(s)
TRK not found on CD, Checking harddisks & USB sticks (sleep 5 secs let them settle in)
cat:/etc/trkhd: No such file or directory
Seems we didn't find anything yet. Trying CD-drives once more. Try to find TRK on your 1 cd-drive(s)
Seems we didn't find the TRK medium
Manually enter the device on which TRK can be found (e.g. 'sda1'):

If you want to boot with Grub4dos instead of Grub2, use the menu on this page. Good luck!

Join the Conversation

6 Comments

Your email address will not be published. Required fields are marked *

  1. I get this error “Manually enter the device on which TRK can be found (e.g. ‘sda1’):” but when i try to type something my keyboard wont responding. I think some code cause my keyboard stop working .

  2. Thanks for the guide, I hope you add support for Trinity Rescue Kit natively, so we don’t have to add all this code manually.

      1. So if I understand correctly it’s not up to AIO Boot to support Trinity Rescue Kit but it’s instead up to Trinity Rescue Kit to support AIO Boot?