Update README

This commit is contained in:
Gregory Nutt 2016-01-21 08:55:09 -06:00
parent 63c7d86d66
commit fff73ea68f

View File

@ -1,6 +1,8 @@
README
======
Overview
--------
This directory contains logic to support a custom ROMFS start-up script.
This startup script is used by by the NSH when it starts provided that
CONFIG_NSH_ARCHROMFS=y. The script provides a ROMFS volue that will be
@ -29,7 +31,9 @@ README
the key or the password word will require regeneration of the nsh_romfimg.h
header file.
The content on the nsh_romfsimg.h header file as generated from a sample
Updating the ROMFS File System
------------------------------
The content on the nsh_romfsimg.h header file is generated from a sample
directory structure. That directory structure is contained in the binary
file etc.tar.gz and can be modified per the following steps:
@ -57,3 +61,49 @@ README
See the sim/nsh configuration for an example of the use of this file
system.
Replacing the Password File
---------------------------
The sim/nsh configuration can also be used to create a new password file.
First, make these configuration changes:
1. Disable logins
- CONFIG_NSH_CONSOLE_LOGIN=y
+ # CONFIG_NSH_CONSOLE_LOGIN is not set
# CONFIG_NSH_TELNET_LOGIN is not set
2. Move the password file to a write-able file system:
- CONFIG_FSUTILS_PASSWD_PATH="/etc/passwd"
+ CONFIG_FSUTILS_PASSWD_PATH="/tmp/passwd"
3. make the password file modifiable
- CONFIG_FSUTILS_PASSWD_READONLY=y
# CONFIG_FSUTILS_PASSWD_READONLY is not set
Now rebuild the simulation. No login should be required to enter the
shell and you should find the 'useradd', 'userdel', and 'passwd' commands
available in the help summary.
Use the NSH 'useradd' command to add new uses with new user passwords like:
nsh> useradd <username> <password>
Do this as many times as you would like. Each time that you do this a new
entry with an encrypted password will be added to the passwd file at
/tmp/passwd. You can see the passwd file like:
nsh> cat /tmp/passwd
When you are finished, you can simply copy the /tmp/passwd content from the
'cat' command and paste it into an editor. Make sure to remove any
carriage returns that may have ended up on the file if you are using
Windows.
Then recreate the nsh_romfsimg.h file as described above. In step 2,
simply replace the old /etc/passwd file with the one in your editor.
When you are finished, the new passwd file will be in the ROMFS file
system at the path /etc/passwd. When you restore the original NSH
sim configuration, these are the passwords that will be used.