OnWorks favicon

dacsvfs - Online in the Cloud

Run dacsvfs in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command dacsvfs that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator



dacsvfs - access objects through the DACS virtual filestore


dacsvfs [dacsoptions[1]] [item_type | vfs_uri | enabled] [-F sep] [op [arg...]]


This program is part of the DACS suite.

The dacsvfs utility is an interface to the DACS virtual filestore. It provides a way to
examine, change, and delete items independently of how and where they are stored. See
dacs.vfs(5)[2] and the VFS[3] directive for additional information.

To perform a virtual filestore operation, either an item_type or a URI argument must be
provided to identify the filestore. The former is used to find the applicable VFS[3]
directive that has been configured for the specified jurisdiction (see dacs.conf(5)[4]).

As a special case, the word enabled can be specified; a list of enabled store names is
printed to stdout and the program terminates:

% dacsvfs -q -uj SomeJurisdiction enabled

This program is also available as a DACS web service, dacs_vfs(8)[5].

Only the DACS administrator should be able to successfully run this program. Because
DACS keys and configuration files must be limited to the administrator, this will
normally be the case, but a careful administrator will deny access to all other users.


-F sep
Sets the field separator character to sep. The default is a colon. This is used by the
load and dump operations.

If present, the op argument specifies the operation to be performed on the filestore. If
it is omitted, the program enters interactive mode where most of the same operations are
available (type "help" for assistance). The following operations are available:

delete [key]
Delete the item, or the item identified by key.

Write to stdout the contents of the filestore as key, followed by the field separator
character, followed by value, one pair per line.

edit [key]
Interactively edit the item, or the value of the item identified by key. When
available, the environment variable EDITOR is used to determine which editor to use,
otherwise a default editor specified at compile time is used. After editing, the user
is asked for confirmation. If the operation is not aborted, the item or its value will
be updated.

exists [key]
Test if the item, or the item identified by key, exists. The outcome is reported to

get [key]
Retrieve the item, or the value of the item identified by key. If successful, the
result is printed to stdout.

getsize [key]
Determine the size of the item, or the size of the value of the item identified by
key. If successful, the result is printed to stdout.

Prints a usage summary to stderr.

Lists the names of all items (or keys) associated with the item_type.

Read key/value pairs from stdin, one pair per line. The end of the key is denoted by
the field separator character, which may be repeated. Whitespace may appear on either
side of the field separator character (unless the field separator is a whitespace
character). For each key do a put operation with the specified value. This is intended
to be a quick way to initialize a filestore or make many changes.

put [key]
Replace the item, or the value of the item identified by key. The value is read from
the standard input.

putval key value
Replace the item, or the value of the item identified by key, and set it to value.

rename [oldkey] newkey
Rename the item, or the value of the item identified by oldkey to newkey.

update [key]
This is a synonym for the edit operation.


To store the DTDs used by DACS in a database rather than in a collection of files, you
must configure an appropriate VFS directive and copy the files from the DACS distribution
into the database. Because it is read-only, this database can be shared by all federations
and jurisdictions on the host.

The first step is to select the type of database to use and decide where to put it. This
example will use a Berkeley DB database (DACS must have been built with support for
whichever database is used) and put it in /usr/local/dacs/federations/dtds.db. The URI to
express this in the VFS syntax looks like this:


The next step is to create the database and load it with the DTDs. A simple shell script
makes this easy to do. From the dtd-xsd directory of the DACS distribution, and replacing
example.com with the URI of a DACS jurisdiction on your host, execute:

#! /bin/sh

for i in *.dtd
dacsvfs -u example.com -q \
'[dtds]dacs-db:/usr/local/dacs/federations/dtds.db' put $i < $i

To configure DACS to use the database, a VFS directive must be put in an appropriate place
in dacs.conf so that it overrides the current configuration:

VFS "[dtds]dacs-db:/usr/local/dacs/federations/dtds.db"

To list the contents of the database you can do:

% dacsvfs -u example.com -q \
'[dtds]dacs-db:/usr/local/dacs/federations/dtds.db' list

or since the VFS directive has been configured, simply:

% dacsvfs -u example.com -q dtds list

If you omit the -q flag, various debugging output will appear, including some feedback
that your new database is actually being used by DACS.

If you copy any DACS resources, such as its DTDs, remember that when you upgrade your
DACS software you'll need to make new copies because these resources may have changed.

Other resources used by DACS would be configured similarly. The load and dump operations
can be particularly useful for this. If the file /tmp/roles associates roles with
identities (e.g., as used by dacscheck(1)[6]) as follows:


then the following command initializes or updates a database from that file:

% dacsvfs -u example.com -q -F ":" \
'[myroles]dacs-db:/usr/local/myapp/roles.db' < /tmp/roles

The URI [myroles]dacs-db:/usr/local/myapp/roles.db can then be used with dacscheck.


The program exits 0 if everything was fine, 1 if an error occurred.

Use dacsvfs online using onworks.net services

Free Servers & Workstations

Download Windows & Linux apps

  • 1
    TurkDevOps a?k kaynak yaz?l?m
    geli?tirici topluluklar? DevTurks-Team
    Taraf?ndan desteklenmektedir..
    Download turkdevops
  • 2
    Wine is an Open Source implementation
    of the Windows API on top of X and Unix.
    Wine provides both a development toolkit
    for porting Windows sources to Unix and...
    Download Wine
  • 3
    LAME (Lame Aint an MP3 Encoder)
    LAME (Lame Aint an MP3 Encoder)
    LAME is an educational tool to be used
    for learning about MP3 encoding. The
    goal of the LAME project is to improve
    the psycho acoustics, quality and speed
    of MP...
    Download LAME (Lame Aint an MP3 Encoder)
  • 4
    A set of Python extension modules that
    wrap the cross-platform GUI classes from
    wxWidgets.. Audience: Developers. User
    interface: X Window System (X11), Win32 ...
    Download wxPython
  • 5
    This is the Total War pack file manager
    project, starting from version 1.7. A
    short introduction into Warscape
    modding: ...
    Download packfilemanager
  • 6
    A network traffic tool for measuring
    TCP and UDP performance with metrics
    around both throughput and latency. The
    goals include maintaining an active
    iperf cod...
    Download IPerf2
  • 7
    fre:ac - free audio converter
    fre:ac - free audio converter
    fre:ac is a free audio converter and CD
    ripper for various formats and encoders.
    It features MP3, MP4/M4A, WMA, Ogg
    Vorbis, FLAC, AAC, and Bonk format
    support, ...
    Download fre:ac - free audio converter
  • More »

Linux commands