title: pam_systemd_home(8)

summary: Automatically mount home directories managed by systemd\-homed.service on login, and unmount them on logout

text:
# pam_systemd_home(8)

## NAME
pam_systemd_home - Automatically mount home directories managed by systemd-homed.service on login, and unmount them on logout

## SYNOPSIS
pam_systemd_home.so

## DESCRIPTION
pam_systemd_home ensures that home directories managed by systemd-homed.service(8) are automatically activated (mounted) on user login, and are deactivated (unmounted) when the last session of the user ends.

## OPTIONS
The following options are understood:

suspend=

Takes a boolean argument. If true, the home directory of the user will be suspended automatically during system suspend; if false it will remain active. Automatic suspending of the home directory improves security substantially as secret key material is automatically removed from memory before the system is put to sleep and must be re-acquired (through user re-authentication) when coming back from suspend. It is recommended to set this parameter for all PAM applications that have support for automatically re-authenticating via PAM on system resume. If multiple sessions of the same user are open in parallel the user's home directory will be left unsuspended on system suspend as long as at least one of the sessions does not set this parameter to on. Defaults to off. Note that TTY logins generally do not support re-authentication on system resume. Re-authentication on system resume is primarily a concept implementable in graphical environments, in the form of lock screens brought up automatically when the system goes to sleep. This means that if a user concurrently uses graphical login sessions that implement the required re-authentication mechanism and console logins that do not, the home directory is not locked during suspend, due to the logic explained above. That said, it is possible to set this field for TTY logins too, ignoring the fact that TTY logins actually don't support the re-authentication mechanism. In that case the TTY sessions will appear hung until the user logs in on another virtual terminal (regardless if via another TTY session or graphically) which will resume the home directory and unblock the original TTY session. (Do note that lack of screen locking on TTY sessions means even though the TTY session appears hung, keypresses can still be queued into it, and the existing screen contents be read without re-authentication; this limitation is unrelated to the home directory management pam_systemd_home and systemd-homed.service implement.)

Turning this option on by default is highly recommended for all sessions, but only if the service managing these sessions correctly implements the aforementioned re-authentication. Note that the re-authentication must take place from a component running outside of the user's context, so that it does not require access to the user's home directory for operation. Traditionally, most desktop environments do not implement screen locking this way, and need to be updated accordingly.

This setting may also be controlled via the $SYSTEMD_HOME_SUSPEND environment variable (see below), which pam_systemd_home reads during initialization and sets for sessions. If both the environment variable is set and the module parameter specified the latter takes precedence.

debug[=]

Takes an optional boolean argument. If yes or without the argument, the module will log debugging information as it operates.

## MODULE TYPES PROVIDED
The module provides all four management operations: auth, account, session, password.

## ENVIRONMENT
The following environment variables are initialized by the module and available to the processes of the user's session:

$SYSTEMD_HOME=1

Indicates that the user's home directory is managed by systemd-homed.service.

$SYSTEMD_HOME_SUSPEND=

Indicates whether the session has been registered with the suspend mechanism enabled or disabled (see above). The variable's value is either "0" or "1". Note that the module both reads the variable when initializing, and sets it for sessions.

## EXAMPLE
Here's an example PAM configuration fragment that permits users managed by systemd-homed.service to log in:

```
#%PAM-1.0
auth      sufficient pam_unix.so
-auth     sufficient pam_systemd_home.so
auth      required   pam_deny.so
account   required   pam_nologin.so
-account  sufficient pam_systemd_home.so
account   sufficient pam_unix.so
account   required   pam_permit.so
-password sufficient pam_systemd_home.so
password  sufficient pam_unix.so sha512 shadow try_first_pass use_authtok
password  required   pam_deny.so
-session  optional   pam_keyinit.so revoke
-session  optional   pam_loginuid.so
-session  optional   pam_systemd_home.so
-session  optional   pam_systemd.so
session   required   pam_unix.so
```

## SEE ALSO
systemd(1), systemd-homed.service(8), homed.conf(5), homectl(1), pam_systemd(8), pam.conf(5), pam.d(5), pam(8)


title: pam_u2f(8)

summary: Module for U2F authentication

text:
# pam_u2f(8)

## NAME
pam_u2f - Module for U2F authentication

## SYNOPSIS
pam_u2f [...]

## DESCRIPTION
The module provides U2F authentication against Yubikeys and other compliant authenticators.

## OPTIONS
debug

Enables debug output

debug_file

Filename to write debugging messages to. If this file is missing, nothing will be logged. This regular file has to be created by the user or must exist and be a regular file for anything getting logged to it. It is not created by pam-u2f on purpose (for security considerations). This filename may be alternatively set to "stderr" (default), "stdout", or "syslog".

origin=origin

Set the relying party ID for the FIDO authentication procedure. If no value is specified, the identifier "pam://$HOSTNAME" is used.

appid=appid

Set the application ID for the U2F authentication procedure. If no value is specified, the same value used for origin is taken ("pam://$HOSTNAME" if also origin is not specified). This setting is only applicable for U2F credentials created with pamu2fcfg versions v1.0.8 or earlier. Note that on v1.1.0 and v1.1.1 of pam-u2f, handling of this setting was temporarily broken if the value was not the same as the value of origin.

authfile=file

Set the location of the file that holds the mappings of user names to keyHandles and user keys. An individual (per user) file may be configured relative to the users' home dirs, e.g. ".ssh/u2f_keys". If not specified, the location defaults to $XDG_CONFIG_HOME/Yubico/u2f_keys. If $XDG_CONFIG_HOME is not set, $HOME/.config/Yubico/u2f_keys is used. The authfile format is <username>:<KeyHandle1>,<UserKey1>,<CoseType1>,<Options1>:<KeyHandle2>,<UserKey2>,<CoseType2>,<Options2>:...

expand

Enables variable expansion within the authfile path: %u is expanded to the local user name (PAM_USER) and %% is expanded to %. Unknown expansion sequences result in an authentication error. See also openasuser.

authpending_file=file

Set the location of the file that is used for touch request notifications. This file will be opened when pam-u2f starts waiting for a user to touch the device, and will be closed when it no longer waits for a touch. Use inotify to listen on these events, or a more high-level tool like yubikey-touch-detector. Default value: /var/run/user/$UID/pam-u2f-authpending. Set an empty value in order to disable this functionality, like so: "authpending_file=".

nouserok

Set to enable authentication attempts to succeed even if the user trying to authenticate is not found inside authfile or if authfile is missing/malformed.

openasuser

Setuid to the authenticating user when opening the authfile. Useful when the user’s home is stored on an NFS volume mounted with the root_squash option (which maps root to nobody which will not be able to read the file). Note that after release 1.0.8 this is done by default when no global authfile (path is absolute) or XDG_CONFIG_HOME environment variable has been set.

alwaysok

Set to enable all authentication attempts to succeed (aka presentation mode).

max_devices=n_devices

Maximum number of devices (credentials) allowed per user (default is 24). Devices specified in the authorization mapping file that exceed this value will be ignored.

interactive

Set to prompt a message and wait before testing the presence of a U2F device. Recommended if your device doesn’t have tactile trigger.

[prompt=your prompt here]

Set individual prompt message for interactive mode. Watch the square brackets around this parameter to get spaces correctly recognized by PAM.

manual

Set to drop to a manual console where challenges are printed on screen and response read from standard input. Useful for debugging and SSH sessions without U2F-support from the SSH client/server. If enabled, interactive mode becomes redundant and has no effect.

cue

Set to prompt a message to remind to touch the device.

[cue_prompt=your prompt here]

Set individual prompt message for the cue option. Watch the square brackets around this parameter to get spaces correctly recognized by PAM.

nodetect

Skip detecting if a suitable key is inserted before performing a full authentication. See NOTES below.

userpresence=int

If 1, require user presence during authentication. If 0, do not request user presence during authentication. If omitted, fallback to the authenticator’s default behaviour.

userverification=int

If 1, require user verification during authentication (e.g. biometrics). If 0, do not request user verification during authentication. If omitted, fallback to the authenticator’s default behaviour. If enabled, an authenticator with support for FIDO2 user verification is required.

pinverification=int

If 1, require PIN verification during authentication. If 0, do not request PIN verification during authentication. If omitted, fallback to the authenticator’s default behaviour. If enabled, an authenticator with support for a FIDO2 PIN is required.

sshformat

Use credentials produced by versions of OpenSSH that have support for FIDO devices. It is not possible to mix native credentials and SSH credentials. Once this option is enabled all credentials will be parsed as SSH.

## EXAMPLES
Second factor authentication deferring user verification configuration to the authorization mapping file.

```
auth required pam_u2f.so authfile=/etc/u2f_mappings cue
```

Passwordless authentication enforcing PIN verification.

```
auth sufficient pam_u2f.so authfile=/etc/u2f_mappings cue pinverification=1 userverification=0
```

Passwordless authentication using built-in UV (e.g. biometrics) with a fallback to PIN.

```
auth sufficient pam_u2f.so authfile=/etc/u2f_mappings cue pinverification=0 userverification=1
auth sufficient pam_u2f.so authfile=/etc/u2f_mappings cue pinverification=1 userverification=0
```

## CAVEATS
By default, relative paths to the authfile will be opened as the target user, whereas absolute paths will be opened as "root". If the "XDG_CONFIG_HOME" variable is set, privileges will not be dropped unless the "openasuser" configuration setting is set.

Using pam-u2f to secure the login to a computer while storing the mapping file in an encrypted home directory, will result in the impossibility of logging into the system. The partition is decrypted after login and the mapping file can not be accessed.

## NOTES
Nodetect

The "nodetect" option should be used with caution. pam_u2f checks that a key configured for the user is inserted before performing the full tactile authentication. This detection is done by sending a "check-only" authentication request to all inserted tokens to so see if at least one of them responds affirmatively to one or more of the keyhandles configured for the user. By doing this, pam_u2f can avoid emitting the "cue" prompt (if configured), which can cause some confusing UI issues if the cue is emitted followed by the underlying library immediately failing the tactile authentication. This option is also useful to avoid an unintended 1-second delay prior to the tactile authentication caused by versions of libu2f-host <= 1.1.5.

If pam_u2f is configured to "cue" and "nodetect", an attacker can determine that pam_u2f is part of the authentication stack by inserting any random U2F token and performing an authentication attempt. In this scenario, the attacker would see the cue message followed by an immediate failure, whereas with detection enabled, the U2F authentication will fail silently. Understand that an attacker could choose a U2F token that alerts him or her in some way to the "check-only" authentication attempt, so this precaution only pushes the issue back a step.

In summary, the detection feature was added to avoid confusing UI issues and to prevent leaking information about the authentication stack in very specific scenario when "cue" is configured. The "nodetect" option was added to avoid buggy sleep behavior in older versions of libu2f-host and for hypothetical tokens that do not tolerate the double authentication. Detection is performed, and likewise "nodetect" honored, regardless of whether "cue" is also specified.

SELinux

Due to an issue with Fedora Linux, and possibly with other distributions that use SELinux, a system configured with pam-u2f may end up in a situation where access to the credentials file is denied. If the nouserok option is also set, this will result in a successful authentication within the module, without using the FIDO authenticator.

In order to correctly update the security context the command fixfiles onboot should be used on existing installations

Moreover, to allow read access to an authfile or directory placed in a non-standard location, the command

```
# chcon -R -t auth_home_t /path/to/authfile
```

should be used.

For more information see https://access.redhat.com/security/cve/CVE-2020-24612.

## BUGS
Report pam-u2f bugs in the issue tracker: https://github.com/Yubico/pam-u2f/issues

## SEE ALSO
pam(7)

The pam-u2f home page: https://developers.yubico.com/pam-u2f/

YubiKeys can be obtained from Yubico: http://www.yubico.com/


title: pam_chatty(8)

text:
# pam_chatty(8)

## NAME
pam_chatty - A PAM test module that generates PAM info and error messages.

## SYNOPSIS
pam_chatty.so [...]

## DESCRIPTION
The pam_chatty module makes it easy to replicate the behaviour of PAM modules that generate a lot of output, in order to ensure that PAM clients react as expected.

## IMPORTANT
pam_chatty is a test tool. It should be considered completely insecure and never used outside test environments! As you’ll see when reading description of the options, many of them don’t make any sense in the real world and were added just to make tests possible.

The pam_chatty module generates a lot of PAM info and error output, when its authentication method is called, and then returns success.

## OPTIONS
•num_lines=NUMBER - the number of lines of messages to output, for each one of the enabled types of messages selected.

•error - whether to output error level messages.

•info - whether to output info level messages.

## MODULE TYPES PROVIDED
Only the auth module type is supported.

## EXAMPLE

```
auth            required        pam_chatty.so num_lines=16 info error
```


title: pam_get_items(8)

summary: A PAM test module to retrieve module\-specific PAM items

text:
# pam_get_items(8)

## NAME
pam_get_items - A PAM test module to retrieve module-specific PAM items

## SYNOPSIS
pam_get_items.so

## DESCRIPTION
PAM modules store data in PAM items. These items are only accessible from module context, not application context as they might include private data (PAM_AUTHTOK normally contains the password). But when testing PAM modules, it’s often nice to make sure a PAM module under test sets items for the next module the way it’s supposed to. The pam_get_items module makes this possible by exporting all PAM items as environment variables using pam_putenv. The environment variable name is the same as the constant name of the PAM item.

## OPTIONS
None

## MODULE TYPES PROVIDED
All module types (account, auth, password and session) are provided.

## EXAMPLE
Consider an example that tests that pam_unix puts the password it reads onto PAM stack. The test service file would contain:

```
auth required        pam_unix.so
auth required        pam_get_items.so
```

Then the test would run the PAM conversation and afterwards call:

```
pam_getenv(pamh, "PAM_AUTHTOK");
```

To retrieve the password.


title: pam_matrix(8)

text:
# pam_matrix(8)

## NAME
pam_matrix - A PAM test module to retrieve module-specific PAM items

## SYNOPSIS
pam_matrix.so [...]

## DESCRIPTION
Testing PAM application often requires to set up an authentication backend with as little effort as possible. The pam_matrix module allows to authenticate against a key-value text file, provided by an option or with an environment variable.

## IMPORTANT
pam_matrix is a test tool. It should be considered completely insecure and never used outside test environments! As you’ll see when reading description of the options and actions, many of them don’t make any sense in the real world and were added just to make tests possible.

## PASSWORD DATABASE
The pam_matrix module authenticates user against a plain-text CSV file. The format of the file is as follows:

```
username:password:allowed_service
```

Example: User bob allowed to authenticate with the service sshd

```
bob:secret:sshd
```

## OPTIONS
•passdb=/path/to/file - the patch to the password database. If the database is not provided with this module option, pam_matrix.so reads the PAM_MATRIX_PASSWD environment variable and tries to load the file from there. If that fails as well, PAM_AUTHINFO_UNAVAIL is returned.

•echo - if this option is provided, pam_matrix.so will ask for password using PAM_PROMPT_ECHO_ON, that is, the password will be echoed back to user. This option was added to make it possible to test conversation functions better.

•verbose - if this option is provided, pam_matrix.so will display a PAM_TEXT_INFO message when authentication succeeds and a PAM_ERROR_MSG when authentication fails. This option was added to make it possible to test conversation functions better.

## MODULE TYPES PROVIDED
All module types (account, auth, password and session) are supported.

The auth module searches for the user in the passdb file and compares the provided password with the one in the passdb file.

The password module is able to update the password in the passdb file.

The access module compares the service name the PAM conversation was invoked with the allowed service for the user as set in the passdb file.

The session module sets the HOMEDIR PAM environment variable to "/home/%u" where %u stands for the user who opens the session. The variable is unset on session close.

## EXAMPLE

```
auth        required    pam_matrix.so passdb=/tmp/passdb verbose
account     required    pam_matrix.so passdb=/tmp/passdb verbose
password    required    pam_matrix.so passdb=/tmp/passdb verbose
session     required    pam_matrix.so passdb=/tmp/passdb verbose
```


title: pam_set_items(8)

summary: A PAM test module to set module\-specific PAM items

text:
# pam_set_items(8)

## NAME
pam_set_items - A PAM test module to set module-specific PAM items

## SYNOPSIS
pam_set_items.so

## DESCRIPTION
PAM modules store data in PAM items. These items are only accessible from module context, not application context as they might include private data (PAM_AUTHTOK normally contains the password). But when testing PAM modules, it’s often nice to make sure a PAM module under test can retrieve data from the stack. The pam_set_items module makes this possible by reading environment variables and setting them as PAM items.

## OPTIONS
None

## MODULE TYPES PROVIDED
All module types (account, auth, password and session) are provided.

## EXAMPLE
Consider an example that tests that pam_unix is able to read a provided password and doesn’t query on its own. The test service file would contain:

```
auth required        pam_set_items.so
auth required        pam_unix.so
```

Then the test would put the item to the test environment with:

```
setenv("PAM_AUTHTOK", "secret");
```

Then run the PAM conversation.


title: pam_yubico(8)

summary: Module for YubiKey authentication

text:
# pam_yubico(8)

## NAME
pam_yubico - Module for YubiKey authentication

## SYNOPSIS
pam_yubico [...]

## DESCRIPTION
The module is for authentication of YubiKeys, either with online validation of OTP, or offline validation with HMAC-SHA1 challenge-response.

## OPTIONS
debug

Turns on debugging.

debug_file=file

File name to write debug to, the file must exist and be a regular file. Defaults to stdout.

mode=[client|challenge-response]

Mode of operation, client for OTP validation and challenge-response for challenge-response validation. Defaults to client.

authfile=file

Location of the file that holds the mappings of YubiKey token IDs to user names. The format is username:first_public_id:second_public_id:... Default location of the file is $HOME/.yubico/authorized_yubikeys.

id=id

Your API client identity for the validation server.

key=key

Your client key in base64 format. The client key is also known as API key, and provides integrity in the communication between the client (you) and the validation server. If you want to get one for use with the default YubiCloud service, please go to: https://upgrade.yubico.com/getapikey/

alwaysok

Succeed with all authentication attempts (dangerous, presentation mode).

try_first_pass

Before prompting the user for their password, the module first tries the previous stacked module´s password in case that satisfies this module as well.

use_first_pass

Forces the module to use a previous stacked modules password and will never prompt the user - if no password is available or the password is not appropriate, the user will be denied access.

always_prompt

If set, don’t attempt to do a lookup to determine if the user has a YubiKey configured but instead prompt for one no matter what. This is useful in the case where ldap_bind_as_user is enabled but this module is being used to read the user’s password (in a YubiKey+OTP auth scenario).

nullok

Don’t fail when there are no tokens declared for the user in the authorization mapping files or in LDAP. This can be used to make YubiKey authentication optional unless the user has associated tokens.

ldap_starttls

If set, issue a STARTTLS command to the LDAP connection before attempting to bind to it. This is a common setup for servers that only listen on port 389 but still require TLS.

ldap_bind_as_user

Use the user logging in to bind to ldap. This will use the password provided by the user via PAM. If this is set, ldapdn and uid_attr must also be set. Enabling this will cause ldap_bind_user and ldap_bind_password to be ignored.

urllist=list

List of URL templates to be used. This is set by calling ykclient_set_url_bases. The list should be in the format: https://api1.example.com/wsapi/2.0/verify;https://api2.example.com/wsapi/2.0/verify

url=url

This option should not be used, please use the urllist option instead. Set the URL template to use, this is set by calling ykclient_set_url_template. The URL should be set in the format https://api.example.com/wsapi/2.0/verify?id=%d&otp=%s

capath=path

The path where X509 certificates are stored. This is required if https or ldaps are used in url and ldap_uri, respectively.

cainfo=file

Option to allow for usage of a CA bundle instead of path.

proxy=proxy

The proxy to connect to the validation server. Valid schemes are http://, https://, socks4://, socks4a://, socks5:// or socks5h://. Socks5h asks the proxy to do the DNS resolving. If no scheme or port is specified HTTP proxy port 1080 will be used. Example: socks5h://user:pass@10.10.0.1:1080

verbose_otp

Show the One-Time Password when it is entered, i.e. to enable terminal echo of entered characters. You are advised to not use this, if you are using two factor authentication because that will display your password on the screen. This requires the service using the PAM module to display custom fields. This option can not be used with OpenSSH.

ldap_uri=uri

The LDAP server URI (e.g. ldap://localhost).

ldap_server=server

The LDAP server host (default LDAP port is used). Deprecated. Use ldap_uri instead.

ldapdn=dn

The distinguished name (DN) where the users are stored (eg: ou=users,dc=domain,dc=com). If ldap_filter is used this is the base from which the subtree search will be performed.

ldap_clientcertfile=clientcertfile

The path to a client cert file to use when talking to the LDAP server. Note this requires ldap_clientkeyfile to be set as well.

ldap_clientkeyfile=clientkeyfile

The path to a key to be used with the client cert when talking to the LDAP server. Note this requires ldap_clientcertfile to be set as well.

user_attr=attr

The LDAP attribute used to store user names (eg:cn).

yubi_attr=attr

The LDAP attribute used to store the YubiKey ID.

yubi_attr_prefix=prefix

The prefix of the LDAP attribute’s value, in case of a generic attribute, used to store several types of IDs.

token_id_length=length

Length of ID prefixing the OTP (this is 12 if using the YubiCloud).

ldap_bind_user=user

The user to attempt a LDAP bind as.

ldap_bind_password=password

The password to use on LDAP bind.

ldap_filter=filter

A LDAP filter to use for attempting to find the correct object in LDAP. In this string %u will be replaced with the username.

ldap_cacertfile=cacertfile

CA certitificate file for the LDAP connection.

chalresp_path=path

Path of a system-wide directory where challenge-response files can be found for users. Default location is $HOME/.yubico/.

mysql_server=mysqlserver

Hostname/Adress of mysql server. Example 10.0.0.1

mysql_port=mysqlport

Network port of mysql server.

mysql_user=mysqluser

User for accessing to the database. Strongly recommended to use a specific user with read only access.

mysql_password=mysqlpassword

Mysql password associated to the user.

mysql_database=mysqldatabase

the name of the database. Example : otp

## EXAMPLES

```
auth sufficient pam_yubico.so id=16 debug
```

```
auth required pam_yubico.so mode=challenge-response
```

```
auth required pam_yubico.so id=16 ldap_uri=ldaps://ldap.example.com ldap_filter=(uid=%u) yubi_attr=yubiKeyId
```

## FILES
$HOME/.yubico/authorized_yubikeys

If authfile is not set, this file is used for the mapping between YubiKey public ID and in client mode.

$HOME/.yubico/challenge, $HOME/.yubico/challenge-serial_number

If chalresp_path is not set, these files are used to hold next challenge and expected response for the user in challenge-response mode. If chalresp_path is set the filename will be username instead of challenge.

## BUGS
Report yubico-pam bugs in the issue tracker: https://github.com/Yubico/yubico-pam/issues

## SEE ALSO
ykpamcfg(1), pam(7)

The yubico-pam home page: https://developers.yubico.com/yubico-pam/

YubiKeys can be obtained from Yubico: http://www.yubico.com/


paris-traceroute

package: paris-traceroute

title: paris-traceroute(8)

text:
# paris-traceroute(8)

## NAME
paris-traceroute - print the IP-level routes between two Internet hosts.

## SYNOPSIS
paris-traceroute [ -fhilnqvV ] [ -b initial_id ]

[ -d dest_port ] [ -a algorithm ] [ -f first_ttl ]

[ -L packetlen ] [ -m max_ttl ]

[ -M max_missing_hops ] [ -p protocol ]

[ -q nqueries ] [ -s source_port ] [ -t tos ]

[ -T delaymsecs ] [ -w waittime ]

host

## DESCRIPTION
Paris traceroute is a new version of the well-known network diagnosis tool. It addresses problems caused by load balancers with the initial traceroute(8) implementation. By controlling the flow identifier of the probes, it is able to follow accurate paths in networks with load balancers. It is also able to find all the load balanced paths to the destination. Finally, it enriches its output with information extracted from the received packets, allowing a more precise analysis of the discovered paths.

Options are:

-a

Set the probing algorithm:

hopbyhop

Send q (configured with the -q flag) probes with the same TTL, then wait for all the replies or a timeout. Increment the TTL and reiter the operation until we reach the destination. All packets hold the same flow identifier.

packetbypacket

It is the classic traceroute(8) algorithm: send one probe at a time, then wait for a reply or a timeout. Reiter the operation until we reach the destination.

concurrent

Send all the probes from min_ttl to max_ttl and wait for all replies or a timeout.

scout

Send a scout probe with a ttl max to the destination. If the destination can be reached, compute the number of hops used to reach the destination and start the concurrent algorithm with a max_ttl equal to this number of hops. If the destination cannot be reached, the hopbyhop algorithm will be used instead. This algorithm is only usable with UDP probes.

exhaustive

Print all the possible "load balanced" paths to the destination. (See section EXHAUSTIVE ALGORITHM )

-b

Set the initial probe identifier.

-d

Set the the UDP/TCP destination port (default: 33457).

-f

Set the initial ttl (default: 1).

-h

Print help.

-i

Print the "IP Identifier" value of the responses. It is used to identify the different interfaces of a router, or uncover NAT boxes.

-l

Display the ttl value of the reply. Useful to study asymmetric routing and NAT boxes.

-L

Set the data length to be used in outgoing packets. (default: 0).

-m

Set the maximum ttl (default: 30).

-M

Set the maximum number of consecutive unresponsive hops which causes the program to abort (default 3).

-n

Print hop addresses numerically. The default is to print also hostnames.

-p

Set the protocol to use (possible values: udp, tcp, icmp).

-q

Set the number of probes per hop (default: 3).

-s

Set the UDP/TCP source port (default: 33456).

-t

Set the Type of Service (default: 0). This field is taken into account by many per-flow load balancers: in presence of such a load balancer, packets having different TOS values are likely to follow a different paths.

-T

Set the time to wait between probes, in milliseconds (default 50ms).

-v

Print debug messages.

-V

Print the program version.

-w

Set the time to wait for a response, in milliseconds (default 5000ms).

## EXHAUSTIVE ALGORITHM
With the deployment of load balancing, there is no longer only one path between two Internet hosts. This algorithm sends enough probes at each hop to find all the possible interfaces. Unlike the other algorithms, it varies the flow identifier of the probes in a controlled manner, to ensure the discovery of all the interfaces with a high confidence degree. It also categorizes load balancers as "per-packet" (pseudo-random, round-robin packet balancing) or "per-flow" (packets belonging to the same flow follow the same path).

In case of per-flow load balancing, it prints additional information to track flows. The following trace shows the enriched output:

```
14  1.1.1.1:0,1,3  539.065 ms  1.1.1.2:2,4,5  492.152 ms
15  2.2.2.2:0,1,3  563.163 ms  2.2.2.3:2,4,5  470.919 ms
```

Integers listed after the interface addresses are "flow identifiers": they are used to identify a flow in the set of interfaces found by the algorithm. For example, flow #0 traverses interfaces 1.1.1.1 and 2.2.2.2. This is the same for flows 1 and 3 while flows 2, 4 and 5 traverse 1.1.1.2 and 2.2.2.3.

## OUTPUT
The following information are extracted from the response packets and displayed:

Response TTL

The TTL of the responses (from the routers and the destination) is optionally displayed in square brackets (Use the -l flag ).

Original TTL

This is the TTL of the probe when it was received and dropped by the router. If the original TTL is different than 1, it is displayed with a !Tx symbol, where x is the value of the TTL. For example, !T0 indicates that the value of the TTL was 0 when the probe reached the router that discarded it.

IP Identifier

This the identifier of the IP error packet sent by the router. This field is set with the value of an internal 16-bit counter usually incremented for each packet sent. This value is optionally displayed inside brackets. For instance {1234} indicates that the probe had its identifier set to 1234.

MPLS labels

If the packet contains ICMP extensions for MPLS, the MPLS label stack is diplayed in an additionnal line just after the current hop line. Labels of the same stack are separated with a "|" character.

Other ICMP error messages

Paris traceroutes uses the same convensions as traceroute(8) to display unexpected ICMP messages (i.e. different than TIME_EXCEEDED, PORT_UNREACHABLE and ECHO_REPLY).

## SEE ALSO
traceroute(8), pathchar(8), netstat(1), ping(8)

## AUTHOR
The initial version of traceroute(8) was implemented by Van Jacobson from a suggestion by Steve Deering. Paris traceroute was implemented by Xavier Cuvellier. Debugged and enhanced by Brice Augustin.

The current version is available at:

http://www.paris-traceroute.net

## BUGS
Please send bug reports to brice.augustin@rp.lip6.fr.


partclone

package: partclone

title: partclone(8)

text:
# partclone(8)

## NAME
partclone - The utility for clone and restore a partition.

## SYNOPSIS
partclone.[fstype] {[-c | --clone] [-r | --restore] [-b | --dev-to-dev]} {[-s | --source] source} {[[-o | --output] [-O | --overwrite]] target} [[-dX | --debug=X] [--restore_raw_file]] [[-z | --buffer_size] [-N | --ncurses]] [[-q | --quiet] [-f | --UI-fresh]] [[-F | --force] [-I | --ignore_fschk]] [[--ignore_crc] [-X | --dialog] [-C | --nocheck]] [[-R | --rescue] [-L | --logfile] logfile]

## DESCRIPTION
partclone.[fstype] is a part of Partclone project. Partclone provide utilities to backup used blocks and design for higher compatibility of the file system by using existing library, e.g. e2fslibs is used to read the used block of ext2 partition.

Partclone supported file system include btrfs, ext2, ext3, ext4, reiserfs, reiser4, xfs and jfs for LINUX. Also support some non-linux operation system, ex: NTFS, FAT and EXFAT(for Windows), HFS plus(APPLE MAC OS), UFS2(FreeBSD), VMFS(VMWare Vsphere) and MINIX(MINIX3).

All partclone utils could be run like partclone.[fstype] is very smiliar fsck or mkfs. For example, for backup/restore hfsplus, just run partclone.hfsp

```
       File System             partclone.[fstype]

       btrfs                   partclone.btrfs

       ext2, ext3, ext4        partclone.[ext2|ext3|ext4]

       reiserfs 3.5            partclone.reiserfs

       reiser 4                partclone.reiser4

       xfs                     partclone.xfs

       ufs | ufs2              partclone.ufs

       jfs                     partclone.jfs

       hfs plusfs              partclone.[hfs+|hfsplus]

       vmfs                    partclone.vmfs

       ntfs                    partclone.ntfs

       fat12, fat16, fat32     partclone.[fat12|fat16|fat32]

       exfat                   partclone.exfat

       minix                   partclone.minix

       f2fs                    partclone.f2fs

       nilfs2                  partclone.nilfs2

```

## OPTIONS
The program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.

-s FILE, --source FILE

Source FILE. The FILE could be a image file(made by partclone) or device depend on your action. Normanly, backup source is device, restore source is image file. Receving data from pipe line is supported ONLY for restoring, just ignore -s option or use '-' means receive data from stdin.

-o FILE, --output FILE

Output FILE. The FILE could be a image file(partclone will generate) or device depend on your action. Normanly, backup output to image file and restore output to device. Sending data to pipe line is also supported ONLY for back-up, just ignore -o option or use '-' means send data to stdout.

-O FILE, --overwrite FILE

Overwrite FILE, overwriting if exists.

-c, --clone

Save partition to the special image format.

-r, --restore

Restore partition from the special image format.

-b, --dev-to-dev

Local device to device copy on-the-fly, source and output both are device.

-D, --domain

Create GNU Ddrescue domain log file from source device

--offset_domain=X

Add X (in bytes) to all positions reported in the domain log file

--restore_raw_file

Creating special raw file for loop device.

-l FILE, --logfile FILE

put special path to record partclone log information.(default /var/log/partclone.log)

-R, --rescue

Continue after disk read errors.

-C, --no_check

Don't check device size and free space.

-N, --ncurse

Using Ncurses Text User Interface.

-X, --dialog

Output message as Dialog Format.

-I, --ignore_fschk

Ignore filesystem check.

--ignore_crc

Ignore crc check error.

-F, --force

Force progress.

-f sec, --UI-fresh sec

put special second to different interval.

-z size, --buffer_size size

Read/write buffer size (default: 1048576)

-q, --quiet

Disable progress message.

-dlevel, --debug level

Set the debug level [1|2|3]

-h, --help

Show summary of options.

-v, --version

Show version of program.

## FILES
/var/log/partclone.log

The log file of partclone

## EXAMPLES

```
 clone /dev/hda1 to hda1.img and display debug information.

   partclone.ext3 -c -d -s /dev/hda1 -o hda1.img

 restore /dev/hda1 from hda1.img and display debug information.

   partclone.extfs -r -d -s hda1.img -o /dev/hda1

 restore image from clonezilla(split, gzip,) with stdin source

   cat sda1.ext3-ptcl-img.gz.a* | gunzip -c | partclone.ext3 -d -r -s - -o /dev/sda1

```

## DIAGNOSTICS
The following diagnostics may be issued on stderr:

partclone provides some return codes, that can be used in scripts:

Code

Diagnostic

0

Program exited successfully.

1

Clone or Restore seem failed.

## BUGS
Report bugs to thomas@nchc.org.tw or http://partclone.org.

You can get support at http://partclone.org

## SEE ALSO
partclone(8), partclone.chkimg(8), partclone.restore(8), partclone.dd(8), partclone.info(8)

## AUTHOR
Yu-Chin Tsai <thomas@nchc.org.tw>

## COPYRIGHT
Copyright © 2007 Yu-Chin Tsai

This manual page was written for the Debian system (and may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.


partclone.chkimg

title: partclone.chkimg(8)

text:
# partclone.chkimg(8)

## NAME
partclone.chkimg - The utility to check image made by partclone

## SYNOPSIS
partclone.chkimg {[-s | --source] source} [[-dX | --debug=X] [-N | --ncurses] [-f | --UI-fresh] [-F | --force] [--ignore_crc] [-X | --dialog] [-C | --no_check] [-L | --logfile] logfile]

## DESCRIPTION
partclone.chkimg is a part of Partclone project to veritfy image file. Partclone provide utilities to backup used blocks and design for higher compatibility of the file system by using existing library, e.g. e2fslibs is used to read the used block of ext2 partition.

Partclone supported file system include btrfs, ext2, ext3, ext4, reiserfs, reiser4, xfs and jfs for LINUX. Also support some non-linux operation system, ex: NTFS, FAT, EXFAT(for Windows), HFS plus(APPLE MAC OS), UFS2(FreeBSD), VMFS(VMWare Vsphere). All partclone utils could be run like partclone.xxx is very smiliar fsck or mkfs. For example, for backup/restore hfsplus, just run partclone.hfsp.

## OPTIONS
The program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.

-s FILE, --source FILE

Source FILE. The FILE could be a image file(made by partclone) or device depend on your action. Normanly, backup source is device, restore source is image file. Receving data from pipe line is supported ONLY for restoring, just ignore -s option or use '-' means receive data from stdin.

-l FILE, --logfile FILE

put special path to record partclone log information.(default /var/log/partclone.log)

-C, --no_check

Don't check device size and free space.

-N, --ncurse

Using Ncurses Text User Interface.

-X, --dialog

Output message as Dialog Format.

--ignore_crc

Ignore crc check error.

-F, --force

Force progress.

-f sec, --UI-fresh sec

put special second to different interval.

-dlevel, --debug level

Set the debug level [1|2|3]

-h, --help

Show summary of options.

-v, --version

Show version of program.

## FILES
/var/log/partclone.log

The log file of partclone.chkimg

## EXAMPLES

```
 check part.img file is correct or not.

   partclone.chkimg -d -s partclone.img

```

## DIAGNOSTICS
The following diagnostics may be issued on stderr:

partclone.chkimg provides some return codes, that can be used in scripts:

Code

Diagnostic

0

Program exited successfully.

1

Clone or Restore seem failed.

## BUGS
Report bugs to thomas@nchc.org.tw or http://partclone.org.

You can get support at http://partclone.org

## SEE ALSO
partclone(8), partclone.chkimg(8), partclone.restore(8), partclone.dd(8), partclone.info(8)

## AUTHOR
Yu-Chin Tsai <thomas@nchc.org.tw>

## COPYRIGHT
Copyright © 2007 Yu-Chin Tsai

This manual page was written for the Debian system (and may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.


partclone.dd

title: partclone.dd(8)

text:
# partclone.dd(8)

## NAME
partclone.dd - unsupported file system backup utility.(like `dd` )

## SYNOPSIS
partclone.dd {[-s | --source] source} {[[-o | --output] [-O | --overwrite]] target} [[-dX | --debug=X] [--restore_raw_file] [-z | --buffer_size] [-N | --ncurses] [-q | --quiet] [-f | --UI-fresh] [-F | --force] [-I | --ignore_fschk] [--ignore_crc] [-X | --dialog] [-C | --nocheck] [-R | --rescue] [-L | --logfile] logfile]

## DESCRIPTION
partclone.dd is a part of Partclone project to clone unsupported file system with dd method. It will backup all block from partition. Partclone provide utilities to backup used blocks and design for higher compatibility of the file system by using existing library, e.g. e2fslibs is used to read the used block of ext2 partition.

Partclone supported file system include btrfs, ext2, ext3, ext4, reiserfs, reiser4, xfs and jfs for LINUX. Also support some non-linux operation system, ex: NTFS and FAT (for Windows), HFS plus(APPLE MAC OS), UFS2(FreeBSD), VMFS(VMWare Vsphere). All partclone utils could be run like partclone.xxx is very smiliar fsck or mkfs. For example, for backup/restore hfsplus, just run partclone.hfsp.

## OPTIONS
The program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.

-s FILE, --source FILE

Source FILE. The FILE could be a image file(made by partclone) or device depend on your action. Normanly, backup source is device, restore source is image file. Receving data from pipe line is supported ONLY for restoring, just ignore -s option or use '-' means receive data from stdin.

-o FILE, --output FILE

Output FILE. The FILE could be a image file(partclone will generate) or device depend on your action. Normanly, backup output to image file and restore output to device. Sending data to pipe line is also supported ONLY for back-up, just ignore -o option or use '-' means send data to stdout.

-O FILE, --overwrite FILE

Overwrite FILE, overwriting if exists.

--restore_raw_file

Creating special raw file for loop device.

-l FILE, --logfile FILE

put special path to record partclone log information.(default /var/log/partclone.log)

-R, --rescue

Continue after disk read errors.

-C, --no_check

Don't check device size and free space.

-N, --ncurse

Using Ncurses Text User Interface.

-X, --dialog

Output message as Dialog Format.

-I, --ignore_fschk

Ignore filesystem check.

--ignore_crc

Ignore crc check error.

-F, --force

Force progress.

-f sec, --UI-fresh sec

put special second to different interval.

-z size, --buffer_size size

Read/write buffer size (default: 1048576)

-q, --quiet

Disable progress message.

-dlevel, --debug level

Set the debug level [1|2|3]

-h, --help

Show summary of options.

-v, --version

Show version of program.

## FILES
/var/log/partclone.log

The log file of partclone.dd

## EXAMPLES

```
 clone /dev/hda1 to hda1.dd.img and display debug information.

   partclone.dd -d -s /dev/hda1 -o hda1.dd.img

 restore /dev/hda1 from hda1.dd.img and display debug information.

   partclone.dd -d -s hda1.dd.img -o /dev/hda1

```

## DIAGNOSTICS
The following diagnostics may be issued on stderr:

partclone.dd provides some return codes, that can be used in scripts:

Code

Diagnostic

0

Program exited successfully.

1

Clone or Restore seem failed.

## BUGS
Report bugs to thomas@nchc.org.tw or http://partclone.org.

You can get support at http://partclone.org

## SEE ALSO
partclone(8), partclone.chkimg(8), partclone.restore(8), partclone.dd(8), partclone.info(8)

## AUTHOR
Yu-Chin Tsai <thomas@nchc.org.tw>

## COPYRIGHT
Copyright © 2007 Yu-Chin Tsai

This manual page was written for the Debian system (and may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.


partclone.imager

title: partclone.imager(8)

text:
# partclone.imager(8)

## NAME
partclone.imager - unsupported file system backup utility.(like `dd` )

## SYNOPSIS
partclone.imager {[-c | --clone] [-r | --restore] [-b | --dev-to-dev]} {{-s | --source} source} {{-o | --output} [-O | --overwrite] target} [-dX | --debug=X] [--restore_raw_file] [-z | --buffer_size] [-N | --ncurses] [-q | --quiet] [-f | --UI-fresh] [-F | --force] [-I | --ignore_fschk] [--ignore_crc] [-X | --dialog] [-C | --nocheck] [-R | --rescue] [{-L | --logfile} logfile]

## DESCRIPTION
partclone.imager is a part of Partclone project to clone unsupported file system with dd method. It will backup all block from partition. Partclone provide utilities to backup used blocks and design for higher compatibility of the file system by using existing library, e.g. e2fslibs is used to read the used block of ext2 partition.

Partclone supported file system include btrfs, ext2, ext3, ext4, reiserfs, reiser4, xfs and jfs for LINUX. Also support some non-linux operation system, ex: NTFS and FAT (for Windows), HFS plus(APPLE MAC OS), UFS2(FreeBSD), VMFS(VMWare Vsphere). All partclone utils could be run like partclone.xxx is very smiliar fsck or mkfs. For example, for backup/restore hfsplus, just run partclone.hfsp.

## OPTIONS
The program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.

-s FILE, --source FILE

Source FILE. The FILE could be a image file(made by partclone) or device depend on your action. Normanly, backup source is device, restore source is image file. Receving data from pipe line is supported ONLY for restoring, just ignore -s option or use '-' means receive data from stdin.

-o FILE, --output FILE

Output FILE. The FILE could be a image file(partclone will generate) or device depend on your action. Normanly, backup output to image file and restore output to device. Sending data to pipe line is also supported ONLY for back-up, just ignore -o option or use '-' means send data to stdout.

-O FILE, --overwrite FILE

Overwrite FILE, overwriting if exists.

-c, --clone

Save partition to the special image format.

-r, --restore

Restore partition from the special image format.

-b, --dev-to-dev

Local device to device copy on-the-fly, source and output both are device.

--restore_raw_file

Creating special raw file for loop device.

-l FILE, --logfile FILE

put special path to record partclone log information.(default /var/log/partclone.log)

-R, --rescue

Continue after disk read errors.

-C, --no_check

Don't check device size and free space.

-N, --ncurse

Using Ncurses Text User Interface.

-X, --dialog

Output message as Dialog Format.

-I, --ignore_fschk

Ignore filesystem check.

--ignore_crc

Ignore crc check error.

-F, --force

Force progress.

-f sec, --UI-fresh sec

put special second to different interval.

-z size, --buffer_size size

Read/write buffer size (default: 1048576)

-q, --quiet

Disable progress message.

-dlevel, --debug level

Set the debug level [1|2|3]

-h, --help

Show summary of options.

-v, --version

Show version of program.

## FILES
/var/log/partclone.log

The log file of partclone.imager

## EXAMPLES

```
 clone /dev/hda1 to hda1.dd.img and display debug information.

   partclone.dd -c -d -s /dev/hda1 -o hda1.dd.img

 restore /dev/hda1 from hda1.dd.img and display debug information.

   partclone.dd -r -d -s hda1.dd.img -o /dev/hda1

```

## DIAGNOSTICS
The following diagnostics may be issued on stderr:

partclone.imager provides some return codes, that can be used in scripts:

Code

Diagnostic

0

Program exited successfully.

1

Clone or Restore seem failed.

## BUGS
Report bugs to thomas@nchc.org.tw or http://partclone.org.

You can get support at http://partclone.org

## SEE ALSO
partclone(8), partclone.chkimg(8), partclone.restore(8), partclone.dd(8), partclone.info(8)

## AUTHOR
Yu-Chin Tsai <thomas@nchc.org.tw>

## COPYRIGHT
Copyright © 2007 Yu-Chin Tsai

This manual page was written for the Debian system (and may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.


partclone.info

title: partclone.info(8)

text:
# partclone.info(8)

## NAME
partclone.info - The utility to show image head information.

## SYNOPSIS
partclone.info {FILE}

## DESCRIPTION
partclone.info is a part of Partclone project to retrive partition head information from image file. Partclone provide utilities to backup used blocks and design for higher compatibility of the file system by using existing library, e.g. e2fslibs is used to read the used block of ext2 partition.

Partclone supported file system include btrfs, ext2, ext3, ext4, reiserfs, reiser4, xfs and jfs for LINUX. Also support some non-linux operation system, ex: NTFS, FAT, EXFAT(for Windows), HFS plus(APPLE MAC OS), UFS2(FreeBSD), VMFS(VMWare Vsphere). All partclone utils could be run like partclone.xxx is very smiliar fsck or mkfs. For example, for backup/restore hfsplus, just run partclone.hfsp.

## OPTIONS
The program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.

FILE

Image FILE. The FILE could be a image file(made by partclone).

## EXAMPLES

```
  Retriving partition usage information

    partclone.info /home/partimag/sdb2.img

    Partclone v0.2.20 http://partclone.org

    File system:  EXTFS

    Device size:  928.0 MB

    Space in use: 535.4 MB

    Free Space:   392.6 MB

    Block size:   4096 Byte

    Used block :  130708

```

## DIAGNOSTICS
The following diagnostics may be issued on stderr:

partclone.info provides some return codes, that can be used in scripts:

Code

Diagnostic

0

Program exited successfully.

1

Clone or Restore seem failed.

## BUGS
Report bugs to thomas@nchc.org.tw or http://partclone.org.

You can get support at http://partclone.org

## SEE ALSO
partclone(8), partclone.chkimg(8), partclone.restore(8), partclone.dd(8), partclone.info(8)

## AUTHOR
Yu-Chin Tsai <thomas@nchc.org.tw>

## COPYRIGHT
Copyright © 2007 Yu-Chin Tsai

This manual page was written for the Debian system (and may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.


partclone.ntfsfixboot

title: partclone.ntfsfixboot(8)

text:
# partclone.ntfsfixboot(8)

## NAME
partclone.ntfsfixboot - deals with braindeadness with moving NTFS filesystems.

## SYNOPSIS
partclone.ntfsfixboot [-w] [-h n] [-t n] [-s n] [-b] [-f] [-p] {DEVICE}

## DESCRIPTION
partclone.ntfsfixboot is NOT a part of Partclone project but included to fix ntfs boot issue. Partclone provide utilities to backup used blocks and design for higher compatibility of the file system by using existing library, e.g. e2fslibs is used to read the used block of ext2 partition.

Partclone.ntfsfixboot deals with braindeadness with moving NTFS filesystems. writted by Orgad Shaneh (2009) and Daniel J. Grace (2006).

## OPTIONS
The program follows the usual GNU command line syntax,a summary of options is included below.

-w

Write new start sector to the partition.

-h num

Specify number of heads per track. If omitted, determined via ioctl.

-t num

Specify number of sectors per track. If omitted, determined via ioctl.

-s num

New start sector to write. If omitted, determined via ioctl.

-b

Proceed even if the specified device is not a partition.

-f

Force the operation to occur even if device does not look like a valid NTFS partition or values are equal.

-p

Print debug information (values read, values requested etc.

device

where device points to an NTFS partition

## DIAGNOSTICS
The following diagnostics may be issued on stderr:

partclone.ntfsfixboot provides some return codes, that can be used in scripts:

Code

Diagnostic

0

success (values are correct, or changed successfully)

1

a change is needed, but -w was not specified

2

an error occured

## BUGS
Report bugs to thomas@nchc.org.tw or http://partclone.org.

Report bugs to upstrem http://sourceforge.net/projects/ntfsfixboot/.

## SEE ALSO
partclone(8), partclone.chkimg(8), partclone.restore(8), partclone.dd(8), partclone.info(8)

## AUTHOR
Yu-Chin Tsai <thomas@nchc.org.tw>

## COPYRIGHT
Copyright © 2007 Yu-Chin Tsai

This manual page was written for the Debian system (and may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.


partclone.restore

title: partclone.restore(8)

summary: restore partclone image to device.

text:
# partclone.restore(8)

## NAME
partclone.restore - restore partclone image to device.

## SYNOPSIS
partclone.restore {[-s | --source] source} {[[-o | --output] [-O | --overwrite]] target} [[-dX | --debug=X] [--restore_raw_file] [-z | --buffer_size] [-N | --ncurses] [-q | --quiet] [-f | --UI-fresh] [-F | --force] [-I | --ignore_fschk] [--ignore_crc] [-X | --dialog] [-C | --nocheck] [-R | --rescue] [-L | --logfile] logfile]

## DESCRIPTION
partclone.restore is a part of Partclone project to restore all image made from partclone.[fstype] or partclone.dd. Partclone provide utilities to backup used blocks and design for higher compatibility of the file system by using existing library, e.g. e2fslibs is used to read the used block of ext2 partition.

Partclone supported file system include btrfs, ext2, ext3, ext4, reiserfs, reiser4, xfs and jfs for LINUX. Also support some non-linux operation system, ex: NTFS, FAT, EXFAT(for Windows), HFS plus(APPLE MAC OS), UFS2(FreeBSD), VMFS(VMWare Vsphere). All partclone utils could be run like partclone.xxx is very smiliar fsck or mkfs. For example, for backup/restore hfsplus, just run partclone.hfsp.

## OPTIONS
The program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.

-s FILE, --source FILE

Source FILE. The FILE could be a image file(made by partclone) or device depend on your action. Normanly, backup source is device, restore source is image file. Receving data from pipe line is supported ONLY for restoring, just ignore -s option or use '-' means receive data from stdin.

-o FILE, --output FILE

Output FILE. The FILE could be a image file(partclone will generate) or device depend on your action. Normanly, backup output to image file and restore output to device. Sending data to pipe line is also supported ONLY for back-up, just ignore -o option or use '-' means send data to stdout.

-O FILE, --overwrite FILE

Overwrite FILE, overwriting if exists.

--restore_raw_file

Creating special raw file for loop device.

-l FILE, --logfile FILE

put special path to record partclone log information.(default /var/log/partclone.log)

-R, --rescue

Continue after disk read errors.

-C, --no_check

Don't check device size and free space.

-N, --ncurse

Using Ncurses Text User Interface.

-X, --dialog

Output message as Dialog Format.

-I, --ignore_fschk

Ignore filesystem check.

--ignore_crc

Ignore crc check error.

-F, --force

Force progress.

-f sec, --UI-fresh sec

put special second to different interval.

-z size, --buffer_size size

Read/write buffer size (default: 1048576)

-q, --quiet

Disable progress message.

-dlevel, --debug level

Set the debug level [1|2|3]

-h, --help

Show summary of options.

-v, --version

Show version of program.

## FILES
/var/log/partclone.log

The log file of partclone.restore

## EXAMPLES

```
 restore /dev/hda1 from hda1.img and display debug information.

  partclone.restore -d -s hda1.img -o /dev/hda1

 restore image from clonezilla(split, gzip,) with stdin source

  cat  sda1.ext3-ptcl-img.gz.a*  | gunzip -c | partclone.restore -d -s - -o /dev/sda1

 restore  raw  image  from  partclone.dd

  partclone.dd  -d  -c  -s  /dev/sda1  -o  - | partclone.restore -d -s - -o /dev/sdb1

```

## DIAGNOSTICS
The following diagnostics may be issued on stderr:

partclone.restore provides some return codes, that can be used in scripts:

Code

Diagnostic

0

Program exited successfully.

1

Clone or Restore seem failed.

## BUGS
Report bugs to thomas@nchc.org.tw or http://partclone.org.

You can get support at http://partclone.org

## SEE ALSO
partclone(8), partclone.chkimg(8), partclone.restore(8), partclone.dd(8), partclone.info(8)

## AUTHOR
Yu-Chin Tsai <thomas@nchc.org.tw>

## COPYRIGHT
Copyright © 2007 Yu-Chin Tsai

This manual page was written for the Debian system (and may be used by others).

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 or (at your option) any later version published by the Free Software Foundation.

On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.


parted

package: parted

title: parted(8)

summary: a partition manipulation program

text:
# parted(8)

## NAME
parted - a partition manipulation program

## SYNOPSIS
parted [options] [device [command [options...]...]]

## DESCRIPTION
parted is a program to manipulate disk partitions. It supports multiple partition table formats, including MS-DOS and GPT. It is useful for creating space for new operating systems, reorganising disk usage, and copying data to new hard disks.

This manual page documents parted briefly. Complete documentation is distributed with the package in GNU Info format.

## OPTIONS
-h, --help

displays a help message

-l, --list

lists partition layout on all block devices

-m, --machine

displays machine parseable output

-s, --script

never prompts for user intervention

-v, --version

displays the version

-a alignment-type, --align alignment-type

Set alignment for newly created partitions, valid alignment types are:

none

Use the minimum alignment allowed by the disk type.

cylinder

Align partitions to cylinders.

minimal

Use minimum alignment as given by the disk topology information. This and the opt value will use layout information provided by the disk to align the logical partition table addresses to actual physical blocks on the disks. The min value is the minimum alignment needed to align the partition properly to physical blocks, which avoids performance degradation.

optimal

Use optimum alignment as given by the disk topology information. This aligns to a multiple of the physical block size in a way that guarantees optimal performance.

## COMMANDS
[device]

The block device to be used. When none is given, parted will use the first block device it finds.

[command [options]]

Specifies the command to be executed. If no command is given, parted will present a command prompt. Possible commands are:

help [command]

Print general help, or help on command if specified.

align-check type partition

Check if partition satisfies the alignment constraint of type. type must be "minimal" or "optimal".

mklabel label-type

Create a new disklabel (partition table) of label-type. label-type should be one of "aix", "amiga", "bsd", "dvh", "gpt", "loop", "mac", "msdos", "pc98", or "sun".

mkpart [part-type name fs-type] start end

Create a new partition. part-type may be specified only with msdos and dvh partition tables, it should be one of "primary", "logical", or "extended". name is required for GPT partition tables and fs-type is optional. fs-type can be one of "btrfs", "ext2", "ext3", "ext4", "fat16", "fat32", "hfs", "hfs+", "linux-swap", "ntfs", "reiserfs", "udf", or "xfs".

name partition name

Set the name of partition to name. This option works only on Mac, PC98, and GPT disklabels. The name can be placed in double quotes, if necessary. And depending on the shell may need to also be wrapped in single quotes so that the shell doesn't strip off the double quotes.

print

Display the partition table.

quit

Exit from parted.

rescue start end

Rescue a lost partition that was located somewhere between start and end. If a partition is found, parted will ask if you want to create an entry for it in the partition table.

resizepart partition end

Change the end position of partition. Note that this does not modify any filesystem present in the partition.

rm partition

Delete partition.

select device

Choose device as the current device to edit. device should usually be a Linux hard disk device, but it can be a partition, software raid device, or an LVM logical volume if necessary.

set partition flag state

Change the state of the flag on partition to state. Supported flags are: "boot", "root", "swap", "hidden", "raid", "lvm", "lba", "legacy_boot", "irst", "msftres", "esp", "chromeos_kernel", "bls_boot" and "palo". state should be either "on" or "off".

unit unit

Set unit as the unit to use when displaying locations and sizes, and for interpreting those given by the user when not suffixed with an explicit unit. unit can be one of "s" (sectors), "B" (bytes), "kB", "MB", "MiB", "GB", "GiB", "TB", "TiB", "%" (percentage of device size), "cyl" (cylinders), "chs" (cylinders, heads, sectors), or "compact" (megabytes for input, and a human-friendly form for output).

toggle partition flag

Toggle the state of flag on partition.

version

Display version information and a copyright message.

## REPORTING BUGS
Report bugs to <bug-parted@gnu.org>

## SEE ALSO
fdisk(8), mkfs(8), The parted program is fully documented in the info(1) format GNU partitioning software manual.

## AUTHOR
This manual page was written by Timshel Knoll <timshel@debian.org>, for the Debian GNU/Linux system (but may be used by others).


partprobe

title: partprobe(8)

text:
# partprobe(8)

## NAME
partprobe - inform the OS of partition table changes

## SYNOPSIS
partprobe [-d] [-s] [devices...]

## DESCRIPTION
This manual page documents briefly the partprobe command.

partprobe is a program that informs the operating system kernel of partition table changes.

## OPTIONS
This program uses short UNIX style options.

-d, --dry-run

Don't update the kernel.

-s, --summary

Show a summary of devices and their partitions.

-h, --help

Show summary of options.

-v, --version

Show version of program.

## REPORTING BUGS
Report bugs to <bug-parted@gnu.org>

## SEE ALSO
parted(8).

## AUTHOR
This manual page was written by Timshel Knoll <timshel@debian.org>, for the Debian GNU/Linux system (but may be used by others).


passwd

package: passwd

title: passwd(8)

summary: passwd wrapper

text:
# passwd(8)

## NAME
passwd - passwd wrapper

## SYNOPSIS
passwd [OPTION...] [USERNAME]

## DESCRIPTION
passwd wrapper implements traditional passwd options using real passwd utility or shadow utils.

Valid options are:

-d, --delete

Set an empty password for the specified account

-f, --force

Force operation

-k, --keep-tokens

Keep non-expired authentication tokens

-l, --lock

Lock the specified account

--stdin

Read new tokens from stdin

-S, --status

Report password status on the specified account

-u, --unlock

Unlock the specified account

-?, --help

Give this help list

--usage

Give a short usage message

-V, --version

Print program version

## EXIT CODE
On successful completion of its task, passwd will complete with exit code 0. An exit code of 1 indicates an error occurred. Textual errors are written to the standard error stream.

## AUTHOR
Written by Dmitry V. Levin <ldv@altlinux.org>

## REPORTING BUGS
Report bugs to http://bugs.altlinux.ru/.

## COPYRIGHT
Copyright © 2002, 2003, 2004 Dmitry V. Levin <ldv@altlinux.org>

This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

## SEE ALSO
passwd(1), chpasswd(8), usermod(8).


lspci

package: pciutils

title: lspci(8)

summary: list all PCI devices

text:
# lspci(8)

## NAME
lspci - list all PCI devices

## SYNOPSIS
lspci [options]

## DESCRIPTION
lspci is a utility for displaying information about PCI buses in the system and devices connected to them.

By default, it shows a brief list of devices. Use the options described below to request either a more verbose output or output intended for parsing by other programs.

If you are going to report bugs in PCI device drivers or in lspci itself, please include output of "lspci -vvx" or even better "lspci -vvxxx" (however, see below for possible caveats).

Some parts of the output, especially in the highly verbose modes, are probably intelligible only to experienced PCI hackers. For exact definitions of the fields, please consult either the PCI specifications or the header.h and /usr/include/linux/pci.h include files.

Access to some parts of the PCI configuration space is restricted to root on many operating systems, so the features of lspci available to normal users are limited. However, lspci tries its best to display as much as available and mark all other information with <access denied> text.

## OPTIONS

### Basic display modes
-m

Dump PCI device data in a backward-compatible machine readable form. See below for details.

-mm

Dump PCI device data in a machine readable form for easy parsing by scripts. See below for details.

-t

Show a tree-like diagram containing all buses, bridges, devices and connections between them.

### Display options
-v

Be verbose and display detailed information about all devices.

-vv

Be very verbose and display more details. This level includes everything deemed useful.

-vvv

Be even more verbose and display everything we are able to parse, even if it doesn't look interesting at all (e.g., undefined memory regions).

-k

Show kernel drivers handling each device and also kernel modules capable of handling it. Turned on by default when -v is given in the normal mode of output. (Currently works only on Linux with kernel 2.6 or newer.)

-x

Show hexadecimal dump of the standard part of the configuration space (the first 64 bytes or 128 bytes for CardBus bridges).

-xxx

Show hexadecimal dump of the whole PCI configuration space. It is available only to root as several PCI devices crash when you try to read some parts of the config space (this behavior probably doesn't violate the PCI standard, but it's at least very stupid). However, such devices are rare, so you needn't worry much.

-xxxx

Show hexadecimal dump of the extended (4096-byte) PCI configuration space available on PCI-X 2.0 and PCI Express buses.

-b

Bus-centric view. Show all IRQ numbers and addresses as seen by the cards on the PCI bus instead of as seen by the kernel.

-D

Always show PCI domain numbers. By default, lspci suppresses them on machines which have only domain 0.

-P

Identify PCI devices by path through each bridge, instead of by bus number.

-PP

Identify PCI devices by path through each bridge, showing the bus number as well as the device number.

### Options to control resolving ID's to names
-n

Show PCI vendor and device codes as numbers instead of looking them up in the PCI ID list.

-nn

Show PCI vendor and device codes as both numbers and names.

-q

Use DNS to query the central PCI ID database if a device is not found in the local pci.ids file. If the DNS query succeeds, the result is cached in ~/.pciids-cache and it is recognized in subsequent runs even if -q is not given any more. Please use this switch inside automated scripts only with caution to avoid overloading the database servers.

-qq

Same as -q, but the local cache is reset.

-Q

Query the central database even for entries which are recognized locally. Use this if you suspect that the displayed entry is wrong.

### Options for selection of devices
-s [[[[<domain>]:]<bus>]:][<device>][.[<func>]]

Show only devices in the specified domain (in case your machine has several host bridges, they can either share a common bus number space or each of them can address a PCI domain of its own; domains are numbered from 0 to ffff), bus (0 to ff), device (0 to 1f) and function (0 to 7). Each component of the device address can be omitted or set to "*", both meaning "any value". All numbers are hexadecimal. E.g., "0:" means all devices on bus 0, "0" means all functions of device 0 on any bus, "0.3" selects third function of device 0 on all buses and ".4" shows only the fourth function of each device.

-d [<vendor>]:[<device>][:<class>]

Show only devices with specified vendor, device and class ID. The ID's are given in hexadecimal and may be omitted or given as "*", both meaning "any value".

### Other options
-i <file>

Use <file> as the PCI ID list instead of /usr/share/misc/pci.ids.

-p <file>

Use <file> as the map of PCI ID's handled by kernel modules. By default, lspci uses /lib/modules/kernel_version/modules.pcimap. Applies only to Linux systems with recent enough module tools.

-M

Invoke bus mapping mode which performs a thorough scan of all PCI devices, including those behind misconfigured bridges, etc. This option gives meaningful results only with a direct hardware access mode, which usually requires root privileges. Please note that the bus mapper only scans PCI domain 0.

--version

Shows lspci version. This option should be used stand-alone.

### PCI access options
The PCI utilities use the PCI library to talk to PCI devices (see pcilib(7) for details). You can use the following options to influence its behavior:

-A <method>

The library supports a variety of methods to access the PCI hardware. By default, it uses the first access method available, but you can use this option to override this decision. See -A help for a list of available methods and their descriptions.

-O <param>=<value>

The behavior of the library is controlled by several named parameters. This option allows to set the value of any of the parameters. Use -O help for a list of known parameters and their default values.

-H1

Use direct hardware access via Intel configuration mechanism 1. (This is a shorthand for -A intel-conf1.)

-H2

Use direct hardware access via Intel configuration mechanism 2. (This is a shorthand for -A intel-conf2.)

-F <file>

Instead of accessing real hardware, read the list of devices and values of their configuration registers from the given file produced by an earlier run of lspci -x. This is very useful for analysis of user-supplied bug reports, because you can display the hardware configuration in any way you want without disturbing the user with requests for more dumps.

-G

Increase debug level of the library.

## MACHINE READABLE OUTPUT
If you intend to process the output of lspci automatically, please use one of the machine-readable output formats (-m, -vm, -vmm) described in this section. All other formats are likely to change between versions of lspci.

All numbers are always printed in hexadecimal. If you want to process numeric ID's instead of names, please add the -n switch.

### Simple format (-m)
In the simple format, each device is described on a single line, which is formatted as parameters suitable for passing to a shell script, i.e., values separated by whitespaces, quoted and escaped if necessary. Some of the arguments are positional: slot, class, vendor name, device name, subsystem vendor name and subsystem name (the last two are empty if the device has no subsystem); the remaining arguments are option-like:

-rrev

Revision number.

-pprogif

Programming interface.

The relative order of positional arguments and options is undefined. New options can be added in future versions, but they will always have a single argument not separated from the option by any spaces, so they can be easily ignored if not recognized.

### Verbose format (-vmm)
The verbose output is a sequence of records separated by blank lines. Each record describes a single device by a sequence of lines, each line containing a single `tag: value' pair. The tag and the value are separated by a single tab character. Neither the records nor the lines within a record are in any particular order. Tags are case-sensitive.

The following tags are defined:

Slot

The name of the slot where the device resides ([domain:]bus:device.function). This tag is always the first in a record.

Class

Name of the class.

Vendor

Name of the vendor.

Device

Name of the device.

SVendor

Name of the subsystem vendor (optional).

SDevice

Name of the subsystem (optional).

PhySlot

The physical slot where the device resides (optional, Linux only).

Rev

Revision number (optional).

ProgIf

Programming interface (optional).

Driver

Kernel driver currently handling the device (optional, Linux only).

Module

Kernel module reporting that it is capable of handling the device (optional, Linux only). Multiple lines with this tag can occur.

NUMANode

NUMA node this device is connected to (optional, Linux only).

IOMMUGroup

IOMMU group that this device is part of (optional, Linux only).

New tags can be added in future versions, so you should silently ignore any tags you don't recognize.

### Backward-compatible verbose format (-vm)
In this mode, lspci tries to be perfectly compatible with its old versions. It's almost the same as the regular verbose format, but the Device tag is used for both the slot and the device name, so it occurs twice in a single record. Please avoid using this format in any new code.

## FILES
/usr/share/misc/pci.ids

A list of all known PCI ID's (vendors, devices, classes and subclasses). Maintained at https://pci-ids.ucw.cz/, use the update-pciids utility to download the most recent version.

/usr/share/misc/pci.ids.gz

If lspci is compiled with support for compression, this file is tried before pci.ids.

~/.pciids-cache

All ID's found in the DNS query mode are cached in this file.

## BUGS
Sometimes, lspci is not able to decode the configuration registers completely. This usually happens when not enough documentation was available to the authors. In such cases, it at least prints the <?> mark to signal that there is potentially something more to say. If you know the details, patches will be of course welcome.

Access to the extended configuration space is currently supported only by the linux_sysfs back-end.

## SEE ALSO
setpci(8), pci.ids(5), update-pciids(8), pcilib(7)

## AUTHOR
The PCI Utilities are maintained by Martin Mares <mj@ucw.cz>.


setpci

title: setpci(8)

summary: configure PCI devices

text:
# setpci(8)

## NAME
setpci - configure PCI devices

## SYNOPSIS
setpci [options] devices operations...

## DESCRIPTION
setpci is a utility for querying and configuring PCI devices.

All numbers are entered in hexadecimal notation.

Root privileges are necessary for almost all operations, excluding reads of the standard header of the configuration space on some operating systems. Please see lspci(8) for details on access rights.

## OPTIONS

### General options
-v

Tells setpci to be verbose and display detailed information about configuration space accesses.

-f

Tells setpci not to complain when there's nothing to do (when no devices are selected). This option is intended for use in widely-distributed configuration scripts where it's uncertain whether the device in question is present in the machine or not.

-D

`Demo mode' -- don't write anything to the configuration registers. It's useful to try setpci -vD to verify that your complex sequence of setpci operations does what you think it should do.

-r

Avoids bus scan if each operation selects a specific device (uses the -s selector with specific domain, bus, slot, and function). This is faster, but if the device does not exist, it fails instead of matching an empty set of devices.

--version

Show setpci version. This option should be used stand-alone.

--help

Show detailed help on available options. This option should be used stand-alone.

--dumpregs

Show a list of all known PCI registers and capabilities. This option should be used stand-alone.

### PCI access options
The PCI utilities use the PCI library to talk to PCI devices (see pcilib(7) for details). You can use the following options to influence its behavior:

-A <method>

The library supports a variety of methods to access the PCI hardware. By default, it uses the first access method available, but you can use this option to override this decision. See -A help for a list of available methods and their descriptions.

-O <param>=<value>

The behavior of the library is controlled by several named parameters. This option allows to set the value of any of the parameters. Use -O help for a list of known parameters and their default values.

-H1

Use direct hardware access via Intel configuration mechanism 1. (This is a shorthand for -A intel-conf1.)

-H2

Use direct hardware access via Intel configuration mechanism 2. (This is a shorthand for -A intel-conf2.)

-G

Increase debug level of the library.

## DEVICE SELECTION
Before each sequence of operations you need to select which devices you wish that operation to affect.

-s [[[[<domain>]:]<bus>]:][<slot>][.[<func>]]

Consider only devices in the specified domain (in case your machine has several host bridges, they can either share a common bus number space or each of them can address a PCI domain of its own; domains are numbered from 0 to ffff), bus (0 to ff), slot (0 to 1f) and function (0 to 7). Each component of the device address can be omitted or set to "*", both meaning "any value". All numbers are hexadecimal. E.g., "0:" means all devices on bus 0, "0" means all functions of device 0 on any bus, "0.3" selects third function of device 0 on all buses and ".4" matches only the fourth function of each device.

-d [<vendor>]:[<device>]

Select devices with specified vendor and device ID. Both ID's are given in hexadecimal and may be omitted or given as "*", both meaning "any value".

When -s and -d are combined, only devices that match both criteria are selected. When multiple options of the same kind are specified, the rightmost one overrides the others.

## OPERATIONS
There are two kinds of operations: reads and writes. To read a register, just specify its name. Writes have the form name=value,value... where each value is either a hexadecimal number or an expression of type data:mask where both data and mask are hexadecimal numbers. In the latter case, only the bits corresponding to binary ones in the mask are changed (technically, this is a read-modify-write operation).

There are several ways how to identity a register:

- Tell its address in hexadecimal.

- Spell its name. Setpci knows the names of all registers in the standard configuration headers. Use `setpci --dumpregs' to get the complete list. See PCI bus specifications for the precise meaning of these registers or consult header.h or /usr/include/pci/pci.h for a brief sketch.

- If the register is a part of a PCI capability, you can specify the name of the capability to get the address of its first register. See the names starting with `CAP_' or `ECAP_' in the --dumpregs output.

- If the name of the capability is not known to setpci, you can refer to it by its number in the form CAPid or ECAPid, where id is the numeric identifier of the capability in hexadecimal.

- Each of the previous formats can be followed by +offset to add an offset (a hex number) to the address. This feature can be useful for addressing of registers living within a capability, or to modify parts of standard registers.

- To choose how many bytes (1, 2, or 4) should be transferred, you should append a width specifier .B, .W, or .L. The width can be omitted if you are referring to a register by its name and the width of the register is well known.

- Finally, if a capability exists multiple times you can choose which one to target using @number. Indexing starts at 0.

All names of registers and width specifiers are case-insensitive.

## EXAMPLES
COMMAND

asks for the word-sized command register.

4.w

is a numeric address of the same register.

COMMAND.l

asks for a 32-bit word starting at the location of the command register, i.e., the command and status registers together.

VENDOR_ID+1.b

specifies the upper byte of the vendor ID register (remember, PCI is little-endian).

CAP_PM+2.w

corresponds to the second word of the power management capability.

ECAP108.l

asks for the first 32-bit word of the extended capability with ID 0x108.

## SEE ALSO
lspci(8), pcilib(7)

## AUTHOR
The PCI Utilities are maintained by Martin Mares <mj@ucw.cz>.


pccardctl

package: pcmciautils

title: pccardctl(8)

summary: PCMCIA card control utility

text:
# pccardctl(8)

## NAME
pccardctl - PCMCIA card control utility

lspcmcia - display extended PCMCIA debugging information

## SYNOPSIS
pccardctl [-V] [-v ...] command [socket]

lspcmcia [-V] [-v ...] [socket]

## DESCRIPTION
pccardctl is used to monitor and control the state of PCMCIA sockets. If a socket number is specified, the command will be applied to just one socket; otherwise, all sockets will be affected.

If pccardctl is executed by root, all commands are available. If it is executed by an unpriviledged user, only the informational commands are accessible.

lspcmcia is an alias for pccardctl ls, provided for convenience.

## COMMANDS
status

Display the current socket status flags.

config

Display the socket configuration, including power settings, interrupt and I/O window settings, and configuration registers. --not yet implemented

ident

Display card identification information, including product identification strings, manufacturer ID codes, and function ID codes. Not yet implemented for cardbus cards. Use lspci instead.

info

Much like the ident command, but its output is formatted as a series of Bourne-stype shell variable definitions for use in scripts. Not yet implemented for cardbus cards.

ls

Display extended debugging information about the PCMCIA sockets and devices present in the system.

suspend

Shut down and then disable power for a socket.

resume

Restore power to a socket, and re-configure for use.

eject

Notify all client drivers that this card will be ejected, then cut power to the socket.

insert

Notify all client drivers that this card has just been inserted.

## OPTIONS
-V

Show version information and exit.

-v

Increase the verbosity of the ls command. Giving this option twice increases verbosity further.

## AUTHOR
Daniel Ritz - daniel.ritz@gmx.ch

based upon the original cardctl man page by

David Hinds - dahinds@users.sourceforge.net