N900 rescueOS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

196 line
5.7 KiB

  1. Documentation of rescueOS
  2. =========================
  3. rescueOS is a rescue solution for the Nokia N900, distributed
  4. as an initrd image. It has several features, most
  5. notable:
  6. mounting maemo /
  7. EMMC access(can mount maemo home and MyDocs partition)
  8. Lock code reset
  9. WiFi support
  10. USB mass-storage mode
  11. USB networking
  12. Battery charging
  13. Users must be familiar with the Linux console.
  14. This project is _NOT_ the meego rescue initrd.
  15. How does it work?
  16. ~~~~~~~~~~~~~~~~~
  17. The flasher utility loads rescueOS. This makes it unnecessary
  18. to modify the bootloader or maemo's /sbin/preinit like other solutions do.
  19. By using the "-l" option, we do not flash the kernel or initrd image.
  20. It only loads the kernel into RAM. No modification on
  21. the NAND or bootloader happens.
  22. Use cases
  23. ~~~~~~~~
  24. In fact, most users do not need it. Either way, possible use cases:
  25. -Changing typos in bootscripts which prevent an operation system
  26. (e.g. maemo) to boot.
  27. -Creating a backup of files before starting a reflash.
  28. -Charging the battery (when maemo is dead).
  29. -Modification of the EMMC partitions and partition table.
  30. -Backing up & Restoring maemo rootfs.
  31. -fsck file system checks
  32. -Resetting the lock code (without reflashing)
  33. -and more...
  34. Booting rescueOS
  35. ~~~~~~~~~~~~~~~
  36. Note: You can not store persistent data in /. Of
  37. course, it becomes possible on the mount points you mount the EMMC or sd card
  38. to.
  39. Note: It comes without any promises and without any warranty. Therefore you
  40. are doing everything at your own risk.
  41. To load rescueOS onto an N900, you'll need a USB data cable, a PC, and one of
  42. the following flashers:
  43. - 0xFFFF - the Open Free Fiasco Firmware Flasher
  44. Free/open source, but only runs on GNU/Linux.
  45. Packaged for Ubuntu and Debian as '0xffff':
  46. http://packages.ubuntu.com/source/0xffff
  47. https://packages.debian.org/sid/0xffff
  48. Discussion: http://talk.maemo.org/showthread.php?t=87996
  49. Source repo: https://github.com/pali/0xFFFF
  50. - maemo_flasher v3.5 - the original proprietary flasher from Nokia
  51. Windows, MacOS, GNU/Linux
  52. Official distribution site is gone. Archive copies at:
  53. https://web.archive.org/web/20131117084237/http://skeiron.org/tablets-dev/maemo_dev_env_downloads/
  54. Documentation:
  55. http://wiki.maemo.org/Documentation/Maemo_5_Developer_Guide/Development_Environment/Maemo_Flasher-3.5
  56. Switch the N900 completely off. If it is plugged into a charger, a PC, or
  57. anything else by its USB port, unplug it and wait about 10 seconds to give the
  58. charger software time to shut down. Don't connect it to the PC just yet.
  59. Startup the flasher and get it ready to load rescueOS. For 0xFFFF, the
  60. incantation is:
  61. 0xFFFF -m kernel:rescueOS_n900_kernel_1.3.zImage -m initfs:rescueOS-1.3.img -l -b 'rootdelay root=/dev/ram0'
  62. For maemo_flasher, it's:
  63. flasher-3.5 -k rescueOS_n900_kernel_1.3.zImage -n rescueOS-1.3.img -l -b"rootdelay root=/dev/ram0"
  64. You'll get a message like "suitable device not found...", but the flasher
  65. should block and wait. Now connect the N900 to the PC with the data cable; the
  66. flasher should detect the device, upload rescueOS, launch it, and then exit.
  67. ~~~~~~~~~~~~~~~
  68. How to use it
  69. ~~~~~~~~~~~~~~~
  70. It boots and you get a bash shell.
  71. The folder /rescueOS/ contains some scripts for various tasks. Not all of them
  72. are completed yet. They help you with the usual stuff, e.g. mass-storage
  73. mode, maemo root mounting, usbnetworking, WiFi setup etc.
  74. Mounting maemo root
  75. -------------------
  76. /rescueOS/mount-maemo-root.sh
  77. This scripts mounts the maemo root to /mnt/maemo.
  78. /rescueOS/umount-maemo-root.sh
  79. Lock code reset
  80. ---------------
  81. code_reset
  82. # This will set the lock code back to the default ('12345').
  83. USB Networking
  84. -------------
  85. /rescueOS/usbnetworking-enable.sh
  86. Sets up USB networking in the following way:
  87. ifconfig usb0 up
  88. ifconfig usb0 netmask
  89. route add usb0
  90. To disable it: /rescueOS/usbnetworking-disable.sh
  91. USB Mass-Storage mode
  92. --------------------
  93. /rescueOS/mass-storage-enable.sh
  94. Makes the first 2 EMMC partitions available for the mass-storage
  95. mode. Known as /home/ and /home/user/MyDocs inside maemo.
  96. /rescueOS/mass-storage-disable.sh: Deactivates mass-storage mode.
  97. Please unmount on your PC first.
  98. WiFi support
  99. ------------
  100. It has wpa_supplicant, but without EAP support. This should be ok for
  101. most home networks which use a PSK.
  102. Give the following a try:
  103. wpa_passphrase [essid] [password] > /run/wlan.conf
  104. sh /rescueOS/setup-wpa-wifi.sh
  105. For DHCP:
  106. udhcpc -i wlan0.
  107. Battery charging
  108. ----------------
  109. By using ShadowJK's charge21 script. Use it only with the wallcharger,
  110. as it pulls 950 mA, and USB is not designed for that
  111. (some ports can do it though, don't try if in doubt.)
  112. /rescueOS/charge21.bash
  113. Shutdown
  114. --------
  115. poweroff
  116. Root password
  117. -------------
  118. rootme
  119. Shortcuts
  120. ---------
  121. The following shortcuts are available to avoid unnecessary typing on the N900
  122. keyboard.
  123. mmr -> mount maemo root
  124. ummr -> umount maemo root
  125. enftp -> enable ftp (anon upload/download everywhere)
  126. mse -> enable mass-storage mode
  127. msd -> disable mass-storage mode
  128. usbne -> enable usb networking
  129. usbnd -> disable usb networking
  130. chargebat -> start battery charging
  131. telnetd -> start telnetd. only necessary if you have closed it explicitly,
  132. since it starts on boot.
  133. Tab: Shift + Space
  134. ESC: Fn (Arrow) + Ctrl
  135. File transfer
  136. ----------------------
  137. Enable the FTP server with "enftp".
  138. It will have anonymous up and download enabled everywhere.
  139. Then you can connect to it once USB networking or a WLAN connection
  140. has been established, using any FTP client. For downloads, most browsers
  141. can be used.
  142. Alternatively, use mass-storage mode.
  143. Contributions and suggestions are welcome. Write to me (NIN101 on freenode or TMO. E-Mail: n900-rescueOS at quitesimple period org).