Menu

Tree [478623] master v0.1 /
 History

HTTPS access


File Date Author Commit
 .gitignore 2013-08-30 Vladimir Davydov Vladimir Davydov [df2cfc] Add hidden files (.*) to gitignore
 COPYING 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 Makefile 2013-08-29 Vladimir Davydov Vladimir Davydov [1d2220] fsck: Add xattr block check
 README 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 TODO 2013-09-08 Vladimir Davydov Vladimir Davydov [c85a94] Update TODO list
 VERSION 2013-09-08 Marco Stornelli Marco Stornelli [478623] First official release
 bitops.c 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 bitops.h 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 crc32.c 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 crc32.h 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 exitcodes.h 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 fs_image.c 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 fs_image.h 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 fs_util.c 2013-08-31 Vladimir Davydov Vladimir Davydov [75a6f5] gen_file_name: Ensure there is always random part
 fs_util.h 2013-08-31 Vladimir Davydov Vladimir Davydov [67244b] fsck: Check for files with duplicate names
 fsck.c 2013-08-29 Vladimir Davydov Vladimir Davydov [1d2220] fsck: Add xattr block check
 fsck.h 2013-08-29 Vladimir Davydov Vladimir Davydov [1d2220] fsck: Add xattr block check
 fsck_super.c 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 fsck_tree.c 2013-08-31 Vladimir Davydov Vladimir Davydov [67244b] fsck: Check for files with duplicate names
 fsck_xattr.c 2013-08-29 Vladimir Davydov Vladimir Davydov [1d2220] fsck: Add xattr block check
 mounts.c 2013-08-28 Vladimir Davydov Vladimir Davydov [740949] mounts.c: Add heading comment
 mounts.h 2013-08-28 Vladimir Davydov Vladimir Davydov [e6b568] fsck: Prompt to abort if fs is mounted
 pram_fs.h 2013-08-27 Vladimir Davydov Vladimir Davydov [5c0857] Adding version 0.0.1
 region.c 2013-08-28 Vladimir Davydov Vladimir Davydov [7f2a93] Add functions that manage allocations within a ...
 region.h 2013-08-28 Vladimir Davydov Vladimir Davydov [7f2a93] Add functions that manage allocations within a ...
 util.c 2013-08-28 Vladimir Davydov Vladimir Davydov [9b3514] Add helpers to read mount points
 util.h 2013-08-28 Vladimir Davydov Vladimir Davydov [9b3514] Add helpers to read mount points
 version.h 2013-09-08 Marco Stornelli Marco Stornelli [478623] First official release

Read Me

Description
===========

A set of userspace tools for Protected and Persistent RAM Filesystem
(http://http://pramfs.sourceforge.net/)

Currently it includes the following utilities:

* fsck.pramfs - check and repair PRAM FS

Note that for operation PRAM FS tools need read/write access to kernel RAM.
On x86 kernel RAM can be accessed via /dev/mem if STRICT_DEVMEM kernel config
option is turned off.

Build and install
=================

Building PRAM FS tools requires GCC and GNU Make packages. Also you will need
an updated set of Linux headers with linux/pram_fs.h present. To build and
install PRAM FS tools, execute:

   $ make

   # make install

If Linux headers are installed to a non-standard location, you can specify it
as follows:

   $ make CFLAGS=-I<path-to-linux-headers>

fsck.pramfs
===========

fsck.pramfs verifies consistency of PRAM filesystems and optionally tries to
repair them.

If PRAM FS was created with the following mount options

# mount -t pramfs -o physaddr=ADDR,init=SIZE none MOUNTPOINT

an example of fsck.pramfs usage would look like this:

 * To scan FS for errors:
   
   # fsck.pramfs -O ADDR [-S SIZE] /dev/mem

   If there are any errors encountered, it will print them to stdout and return
   non-zero exit status.

 * To repair FS errors automatically:

   # fsck.pramfs -a -O ADDR [-S SIZE] /dev/mem

 * To repair FS errors in interactive mode (will require user action when it
   can be dangerous to fix an error automatically):

   # fsck.pramfs -r -O ADDR [-S SIZE] /dev/mem

  (-S SIZE argument is optional, it forces fsck.pramfs to operate only on
   ADDR:ADDR+SIZE memory range, which can be useful to avoid kernel memory
   corruption when repairing a buggy FS image)

For more command line options see

   $ fsck.pramfs -h

fsck.pramfs exit codes obey rules stated in fsck(8).