New version, new tarball, new man page. This is the first attempt to correct an

issue a forum poster raised, which is the fact that despite the fact that GNU/Linux
has had reasonably ok zfs support for years now, inxi only tested for zfs on bsd
systems.

This has been corrected. Due to the complexity of handling software raid, inxi
will now test first for ZFS data, if none is found, it will then test for
/proc/mdstat.

In a perfect world I'd like to have full dynamic Raid support, but I'm missing
all the key ingredients required to add that:

1. systems to test on
2. software raid, I don't use it
3. data collection for non mdraid and zfs software raid, including the values
possible to gather from all non software raid.

Basically, the only way I'd extend -R raid option is if I get direct ssh access to
a machine that uses the alternate software raid type, otherwise it would take
forever to figure out the options.

Since the number of people who might be actually running zfs and mdraid and
using inxi probably numbers in the 10 globally, I figured this solution was a fine
way to handle adding zfs without messing up mdraid, which is more common on linux.

It also does not break BSDs, since bsds as far as I know don't use mdraid, and don't
have /proc/mdraid in the first place.

Also redid the man page to add -! 41, -! 42, -! 43, -! 44 options, which bypass
curl, fetch, wget, and all of them, respectively. Plus making the lines less wide.

That should make those people who actually use 80 column wide vi as an editor
happy, lol.
This commit is contained in:
Harald Hope 2017-11-28 17:23:41 -08:00
parent 050c2ec87d
commit ffd52bfe73
3 changed files with 662 additions and 449 deletions

462
inxi
View file

@ -2,8 +2,8 @@
########################################################################
SELF_NAME='inxi'
# don't quote the following, parsers grab these too
SELF_VERSION=2.3.48
SELF_DATE=2017-11-27
SELF_VERSION=2.3.49
SELF_DATE=2017-11-28
SELF_PATCH=00
########################################################################
#### SPECIAL THANKS
@ -261,7 +261,8 @@ A_CMDL=''
A_CPU_CORE_DATA=''
A_CPU_DATA=''
A_CPU_TYPE_PCNT_CCNT=''
A_DEBUG_BUFFER=''
A_DEBUG_BUFFER=''xA9br8
A_GCC_VERSIONS=''
A_GLX_DATA=''
A_GRAPHICS_CARD_DATA=''
@ -276,7 +277,7 @@ A_OPTICAL_DRIVE_DATA=''
A_PARTITION_DATA=''
A_PCICONF_DATA=''
A_PS_DATA=''
A_RAID_DATA=''
A_RAID_DATA=()
A_SENSORS_DATA=''
A_UNMOUNTED_PARTITION_DATA=''
A_WEATHER_DATA=''
@ -285,7 +286,6 @@ A_DISPLAY_SERVER_DATA=''
### BOOLEANS ###
## standard boolean flags ##
B_BSD_DISK_SET='false'
B_BSD_RAID='false'
B_COLOR_SCHEME_SET='false'
B_CONSOLE_IRC='false'
# triggers full display of cpu flags
@ -521,6 +521,7 @@ LSPCI_V_DATA=''
LSPCI_N_DATA=''
MEMORY=''
PS_THROTTLED=''
RAID_TYPE=''
REPO_DATA=''
SYSCTL_A_DATA=''
UP_TIME=''
@ -10121,238 +10122,256 @@ get_raid_data()
{
eval $LOGFS
local mdstat=''
local Mdstat=''
local Zpool_Path=$( type -p zpool 2>/dev/null )
if [[ $B_MDSTAT_FILE == 'true' ]];then
mdstat="$( cat $FILE_MDSTAT 2>/dev/null )"
# note: zfs has been available for Linux for a while. BSD systems
# will not have mdraid.
if [[ -n $Zpool_Path ]];then
RAID_TYPE='zfs'
get_raid_data_zfs
fi
if [[ -n $mdstat ]];then
# need to make sure there's always a newline in front of each record type, and
# also correct possible weird formats for the output from older kernels etc.
mdstat="$( sed -e 's/^md/\nmd/' -e 's/^unused[[:space:]]/\nunused /' \
-e 's/read_ahead/\nread_ahead/' -e 's/^resync=/\nresync=/' -e 's/^Event/\nEvent/' \
-e 's/^[[:space:]]*$//' -e 's/[[:space:]]read_ahead/\nread_ahead/' <<< "$mdstat" )"
# some fringe cases do not end as expected, so need to add newlines plus EOF to make sure while loop doesn't spin
mdstat=$( echo -e "$mdstat\n\nEOF" )
IFS=$'\n'
A_RAID_DATA=( $(
gawk '
BEGIN {
IGNORECASE=1
RS="\n"
}
/^personalities/ {
KernelRaidSupport = gensub(/personalities[[:space:]]*:[[:space:]]*(.*)/, "\\1", 1, $0)
# clean off the brackets
gsub(/[\[\]]/,"",KernelRaidSupport)
print "KernelRaidSupport," KernelRaidSupport
}
/^read_ahead/ {
ReadAhead=gensub(/read_ahead (.*)/, "\\1", 1 )
print "ReadAhead," ReadAhead
}
/^Event:/ {
print "raidEvent," $NF
}
# print logic will search for this value and use it to print out the unused devices data
/^unused devices/ {
unusedDevices = gensub(/^unused devices:[[:space:]][<]?([^>]*)[>]?.*/, "\\1", 1, $0)
print "UnusedDevices," unusedDevices
}
/^md/ {
# reset for each record loop through
deviceState = ""
bitmapValues = ""
blocks = ""
chunkSize = ""
components = ""
device = ""
deviceReport = ""
finishTime = ""
recoverSpeed = ""
recoveryProgressBar = ""
recoveryPercent = ""
raidLevel = ""
sectorsRecovered = ""
separator = ""
superBlock = ""
uData = ""
while ( !/^[[:space:]]*$/ ) {
gsub(/'"$BAN_LIST_ARRAY"'/, " ", $0 )
gsub(/[[:space:]]+/, " ", $0 )
if ( $0 ~ /^md/ ) {
device = gensub(/(md.*)[[:space:]]?:/, "\\1", "1", $1 )
}
if ( $0 ~ /mirror|raid[0-9]+/ ) {
raidLevel = gensub(/(.*)raid([0-9]+)(.*)/, "\\2", "g", $0 )
}
if ( $0 ~ /(active \(auto-read-only\)|active|inactive)/ ) {
deviceState = gensub(/(.*) (active \(auto-read-only\)|active|inactive) (.*)/, "\\2", "1", $0 )
}
# gawk will not return all the components using gensub, only last one
separator = ""
for ( i=3; i<=NF; i++ ) {
if ( $i ~ /[hs]d[a-z][0-9]*(\[[0-9]+\])?(\([SF]\))?/ ) {
components = components separator $i
separator=" "
}
}
if ( $0 ~ /blocks/ ) {
blocks = gensub(/(.*[[:space:]]+)?([0-9]+)[[:space:]]blocks.*/, "\\2", "1", $0)
}
if ( $0 ~ /super[[:space:]][0-9\.]+/ ) {
superBlock = gensub(/.*[[:space:]]super[[:space:]]([0-9\.]+)[[:space:]].*/, "\\1", "1", $0)
}
if ( $0 ~ /algorithm[[:space:]][0-9\.]+/ ) {
algorithm = gensub(/.*[[:space:]]algorithm[[:space:]]([0-9\.]+)[[:space:]].*/, "\\1", "1", $0)
}
if ( $0 ~ /\[[0-9]+\/[0-9]+\]/ ) {
deviceReport = gensub(/.*[[:space:]]\[([0-9]+\/[0-9]+)\][[:space:]].*/, "\\1", "1", $0)
uData = gensub(/.*[[:space:]]\[([U_]+)\]/, "\\1", "1", $0)
}
# need to avoid this: bitmap: 0/10 pages [0KB], 16384KB chunk
# while currently all the normal chunks are marked with k, not kb, this can change in the future
if ( $0 ~ /[0-9]+[k] chunk/ && $0 !~ /bitmap/ ) {
chunkSize = gensub(/(.*) ([0-9]+[k]) chunk.*/, "\\2", "1", $0)
}
if ( $0 ~ /^resync=/ ) {
sub(/resync=/,"")
print "resyncStatus," $0
}
if ( $0 ~ /\[[=]*>[\.]*\].*(resync|recovery)/ ) {
recoveryProgressBar = gensub(/.*(\[[=]*>[\.]*\]).*/, "\\1",1,$0)
}
if ( $0 ~ / (resync|recovery)[[:space:]]*=/ ) {
recoveryPercent = gensub(/.* (resync|recovery)[[:space:]]*=[[:space:]]*([0-9\.]+%).*/, "\\1~\\2", 1 )
if ( $0 ~ /[[:space:]]\([0-9]+\/[0-9]+\)/ ) {
sectorsRecovered = gensub(/.* \(([0-9]+\/[0-9]+)\).*/, "\\1", 1, $0 )
}
if ( $0 ~ /finish[[:space:]]*=/ ) {
finishTime = gensub(/.* finish[[:space:]]*=[[:space:]]*([[0-9\.]+)([a-z]+) .*/, "\\1 \\2", 1, $0 )
}
if ( $0 ~ /speed[[:space:]]*=/ ) {
recoverSpeed = gensub(/.* speed[[:space:]]*=[[:space:]]*([[0-9\.]+)([a-z]+\/[a-z]+)/, "\\1 \\2", 1, $0 )
}
}
if ( $0 ~ /bitmap/ ) {
bitmapValues = gensub(/(.*[[:space:]])?bitmap:(.*)/, "\\2", 1, $0 )
}
getline
}
raidString = device "," deviceState "," raidLevel "," components "," deviceReport "," uData
raidString = raidString "," blocks "," superBlock "," algorithm "," chunkSize "," bitmapValues
raidString = raidString "," recoveryProgressBar "," recoveryPercent "," sectorsRecovered "," finishTime "," recoverSpeed
print raidString
}
' <<< "$mdstat" ) )
IFS="$ORIGINAL_IFS"
else
if [[ $BSD_TYPE == 'bsd' ]];then
get_raid_data_bsd
# because there's no way for inxi to handle > 1 types of
# software raid on one system, we simply have to assume that
# if it had zfs, it won't have mdraid. Note that systems with
# no actual mdraid but the kernel module running will have always
# an array count of at least 2, for the two header lines of mdraid
if [[ ${#A_RAID_DATA[@]} -eq 0 ]];then
if [[ $B_MDSTAT_FILE == 'true' ]];then
Mdstat="$( cat $FILE_MDSTAT 2>/dev/null )"
fi
if [[ -n $Mdstat ]];then
RAID_TYPE='mdraid'
get_raid_data_mdraid
fi
fi
B_RAID_SET='true'
a_temp=${A_RAID_DATA[@]}
log_function_data "A_RAID_DATA: $a_temp"
# echo -e "A_RAID_DATA:\n${a_temp}"
# echo ${#A_RAID_DATA[@]}
# echo -e "A_RAID_DATA:\n${a_temp}"
eval $LOGFE
}
get_raid_data_bsd()
get_raid_data_mdraid()
{
eval $LOGFS
local zpool_path=$( type -p zpool 2>/dev/null )
local zpool_data='' zpool_arg='v'
if [[ -n $zpool_path ]];then
B_BSD_RAID='true'
# bsd sed does not support inserting a true \n so use this trick
# some zfs does not have -v
if $zpool_path list -v &>/dev/null;then
zpool_data="$( $zpool_path list -v 2>/dev/null | sed $SED_RX 's/^([^[:space:]])/\
\1/' )"
else
zpool_data="$( $zpool_path list 2>/dev/null | sed $SED_RX 's/^([^[:space:]])/\
\1/' )"
zpool_arg='no-v'
fi
# echo "$zpool_data"
IFS=$'\n'
A_RAID_DATA=( $(
gawk '
BEGIN {
IGNORECASE=1
raidString=""
separator=""
components=""
reportSize=""
blocksAvailable=""
chunkRaidAllocated=""
}
/SIZE.*ALLOC/ {
sub(/.*ALLOC.*/,"", $0)
}
# gptid/d874c7e7-3f6d-11e4-b7dc-080027ea466c
/^[^[:space:]]/ {
components=""
separator=""
raidLevel=""
device=$1
deviceState=$7
reportSize=$2
blocksAvailable=$4
chunkRaidAllocated=$3
# need to make sure there's always a newline in front of each record type, and
# also correct possible weird formats for the output from older kernels etc.
Mdstat="$( sed -e 's/^md/\nmd/' -e 's/^unused[[:space:]]/\nunused /' \
-e 's/read_ahead/\nread_ahead/' -e 's/^resync=/\nresync=/' -e 's/^Event/\nEvent/' \
-e 's/^[[:space:]]*$//' -e 's/[[:space:]]read_ahead/\nread_ahead/' <<< "$Mdstat" )"
# some fringe cases do not end as expected, so need to add newlines plus EOF to make sure while loop doesn't spin
Mdstat=$( echo -e "$Mdstat\n\nEOF" )
getline
# raid level is the second item in the output, unless it is not, sometimes it is absent
if ( $1 != "" ) {
if ( $1 ~ /raid|mirror/ ) {
raidLevel="zfs " $1
}
else {
raidLevel="zfs-no-raid"
components = $1
IFS=$'\n'
A_RAID_DATA=( $(
gawk '
BEGIN {
IGNORECASE=1
RS="\n"
}
/^personalities/ {
KernelRaidSupport = gensub(/personalities[[:space:]]*:[[:space:]]*(.*)/, "\\1", 1, $0)
# clean off the brackets
gsub(/[\[\]]/,"",KernelRaidSupport)
print "KernelRaidSupport," KernelRaidSupport
}
/^read_ahead/ {
ReadAhead=gensub(/read_ahead (.*)/, "\\1", 1 )
print "ReadAhead," ReadAhead
}
/^Event:/ {
print "raidEvent," $NF
}
# print logic will search for this value and use it to print out the unused devices data
/^unused devices/ {
unusedDevices = gensub(/^unused devices:[[:space:]][<]?([^>]*)[>]?.*/, "\\1", 1, $0)
print "UnusedDevices," unusedDevices
}
/^md/ {
# reset for each record loop through
deviceState = ""
bitmapValues = ""
blocks = ""
chunkSize = ""
components = ""
device = ""
deviceReport = ""
finishTime = ""
recoverSpeed = ""
recoveryProgressBar = ""
recoveryPercent = ""
raidLevel = ""
sectorsRecovered = ""
separator = ""
superBlock = ""
uData = ""
while ( !/^[[:space:]]*$/ ) {
gsub(/'"$BAN_LIST_ARRAY"'/, " ", $0 )
gsub(/[[:space:]]+/, " ", $0 )
if ( $0 ~ /^md/ ) {
device = gensub(/(md.*)[[:space:]]?:/, "\\1", "1", $1 )
}
if ( $0 ~ /mirror|raid[0-9]+/ ) {
raidLevel = gensub(/(.*)raid([0-9]+)(.*)/, "\\2", "g", $0 )
}
if ( $0 ~ /(active \(auto-read-only\)|active|inactive)/ ) {
deviceState = gensub(/(.*) (active \(auto-read-only\)|active|inactive) (.*)/, "\\2", "1", $0 )
}
# gawk will not return all the components using gensub, only last one
separator = ""
for ( i=3; i<=NF; i++ ) {
if ( $i ~ /[hs]d[a-z][0-9]*(\[[0-9]+\])?(\([SF]\))?/ ) {
components = components separator $i
separator=" "
}
}
while ( getline && $1 !~ /^$/ ) {
# https://blogs.oracle.com/eschrock/entry/zfs_hot_spares
if ($1 ~ /spares/) {
getline
if ( $0 ~ /blocks/ ) {
blocks = gensub(/(.*[[:space:]]+)?([0-9]+)[[:space:]]blocks.*/, "\\2", "1", $0)
}
if ( $0 ~ /super[[:space:]][0-9\.]+/ ) {
superBlock = gensub(/.*[[:space:]]super[[:space:]]([0-9\.]+)[[:space:]].*/, "\\1", "1", $0)
}
if ( $0 ~ /algorithm[[:space:]][0-9\.]+/ ) {
algorithm = gensub(/.*[[:space:]]algorithm[[:space:]]([0-9\.]+)[[:space:]].*/, "\\1", "1", $0)
}
if ( $0 ~ /\[[0-9]+\/[0-9]+\]/ ) {
deviceReport = gensub(/.*[[:space:]]\[([0-9]+\/[0-9]+)\][[:space:]].*/, "\\1", "1", $0)
uData = gensub(/.*[[:space:]]\[([U_]+)\]/, "\\1", "1", $0)
}
# need to avoid this: bitmap: 0/10 pages [0KB], 16384KB chunk
# while currently all the normal chunks are marked with k, not kb, this can change in the future
if ( $0 ~ /[0-9]+[k] chunk/ && $0 !~ /bitmap/ ) {
chunkSize = gensub(/(.*) ([0-9]+[k]) chunk.*/, "\\2", "1", $0)
}
if ( $0 ~ /^resync=/ ) {
sub(/resync=/,"")
print "resyncStatus," $0
}
if ( $0 ~ /\[[=]*>[\.]*\].*(resync|recovery)/ ) {
recoveryProgressBar = gensub(/.*(\[[=]*>[\.]*\]).*/, "\\1",1,$0)
}
if ( $0 ~ / (resync|recovery)[[:space:]]*=/ ) {
recoveryPercent = gensub(/.* (resync|recovery)[[:space:]]*=[[:space:]]*([0-9\.]+%).*/, "\\1~\\2", 1 )
if ( $0 ~ /[[:space:]]\([0-9]+\/[0-9]+\)/ ) {
sectorsRecovered = gensub(/.* \(([0-9]+\/[0-9]+)\).*/, "\\1", 1, $0 )
}
# print $1
components = components separator $1
if ( $0 ~ /finish[[:space:]]*=/ ) {
finishTime = gensub(/.* finish[[:space:]]*=[[:space:]]*([[0-9\.]+)([a-z]+) .*/, "\\1 \\2", 1, $0 )
}
if ( $0 ~ /speed[[:space:]]*=/ ) {
recoverSpeed = gensub(/.* speed[[:space:]]*=[[:space:]]*([[0-9\.]+)([a-z]+\/[a-z]+)/, "\\1 \\2", 1, $0 )
}
}
if ( $0 ~ /bitmap/ ) {
bitmapValues = gensub(/(.*[[:space:]])?bitmap:(.*)/, "\\2", 1, $0 )
}
getline
}
raidString = device "," deviceState "," raidLevel "," components "," deviceReport "," uData
raidString = raidString "," blocks "," superBlock "," algorithm "," chunkSize "," bitmapValues
raidString = raidString "," recoveryProgressBar "," recoveryPercent "," sectorsRecovered "," finishTime "," recoverSpeed
print raidString
}
' <<< "$Mdstat" ) )
IFS="$ORIGINAL_IFS"
eval $LOGFE
}
get_raid_data_zfs()
{
eval $LOGFS
local zpool_data='' zpool_arg='v'
# bsd sed does not support inserting a true \n so use this trick
# some zfs does not have -v
if $Zpool_Path list -v &>/dev/null;then
zpool_data="$( $Zpool_Path list -v 2>/dev/null | sed $SED_RX 's/^([^[:space:]])/\
\1/' )"
else
zpool_data="$( $Zpool_Path list 2>/dev/null | sed $SED_RX 's/^([^[:space:]])/\
\1/' )"
zpool_arg='no-v'
fi
# echo "$zpool_data"
IFS=$'\n'
A_RAID_DATA=( $(
gawk '
BEGIN {
IGNORECASE=1
raidString=""
separator=""
components=""
reportSize=""
blocksAvailable=""
chunkRaidAllocated=""
}
/SIZE.*ALLOC/ {
sub(/.*ALLOC.*/,"", $0)
}
# gptid/d874c7e7-3f6d-11e4-b7dc-080027ea466c
/^[^[:space:]]/ {
components=""
separator=""
raidLevel=""
device=$1
deviceState=$7
reportSize=$2
blocksAvailable=$4
chunkRaidAllocated=$3
getline
# raid level is the second item in the output, unless it is not, sometimes it is absent
if ( $1 != "" ) {
if ( $1 ~ /raid|mirror/ ) {
raidLevel="zfs " $1
}
else {
raidLevel="zfs-no-raid"
components = $1
separator=" "
}
# some issues if we use ~ here
gsub(/\//,"%",components)
}
while ( getline && $1 !~ /^$/ ) {
# https://blogs.oracle.com/eschrock/entry/zfs_hot_spares
if ($1 ~ /spares/) {
getline
}
# print $1
raidString = device "," deviceState "," raidLevel "," components "," reportSize "," uData
raidString = raidString "," blocksAvailable "," superBlock "," algorithm "," chunkRaidAllocated
# none of these are used currently
raidString = raidString "," bitmapValues "," recoveryProgressBar "," recoveryPercent
raidString = raidString "," sectorsRecovered "," finishTime "," recoverSpeed
gsub(/~/,"",raidString)
print raidString
}' <<< "$zpool_data" ) )
IFS="$ORIGINAL_IFS"
# pass the zpool type, so we know how to get the components
get_raid_component_data_bsd "$zpool_arg"
fi
components = components separator $1
separator=" "
}
# some issues if we use ~ here
gsub(/\//,"%",components)
# print $1
raidString = device "," deviceState "," raidLevel "," components "," reportSize "," uData
raidString = raidString "," blocksAvailable "," superBlock "," algorithm "," chunkRaidAllocated
# none of these are used currently
raidString = raidString "," bitmapValues "," recoveryProgressBar "," recoveryPercent
raidString = raidString "," sectorsRecovered "," finishTime "," recoverSpeed
gsub(/~/,"",raidString)
print raidString
}' <<< "$zpool_data" ) )
IFS="$ORIGINAL_IFS"
# pass the zpool type, so we know how to get the components
get_raid_component_data_zfs "$zpool_arg"
eval $LOGFE
}
# note, we've already tested for zpool so no further tests required
# args: $1 - zpool type, v will have a single row output, no-v has stacked for components
get_raid_component_data_bsd()
get_raid_component_data_zfs()
{
eval $LOGFS
local a_raid_data='' array_string='' component='' component_string=''
@ -10440,7 +10459,7 @@ get_raid_component_data_bsd()
eval $LOGFE
}
# get_raid_data_bsd;exit
# get_raid_data_zfs;exit
get_ram_data()
{
@ -15161,7 +15180,11 @@ print_raid_data()
local no_raid_detected='' dev_string='/dev/'
local empty_raid_data='' report_size='report' blocks_avail='blocks' chunk_raid_usage='chunk size'
if [[ -n $BSD_TYPE ]];then
if [[ $B_RAID_SET != 'true' ]];then
get_raid_data
fi
# note, default first tesat is zfs, if empty, falls back to mdraid
if [[ $RAID_TYPE == 'zfs' ]];then
no_raid_detected='No zfs software RAID detected-other types not yet supported.'
empty_raid_data='No zfs RAID data available-other types not yet supported.'
report_size='size'
@ -15171,14 +15194,9 @@ print_raid_data()
no_raid_detected="No RAID data: $FILE_MDSTAT missing-is md_mod kernel module loaded?"
empty_raid_data="No RAID devices: $FILE_MDSTAT, md_mod kernel module present"
fi
if [[ $BSD_TYPE == 'bsd' ]];then
dev_string=''
fi
if [[ $B_RAID_SET != 'true' ]];then
get_raid_data
fi
for (( i=0; i < ${#A_RAID_DATA[@]}; i++ ))
do
IFS=","
@ -15208,8 +15226,9 @@ print_raid_data()
super_blocks=''
u_data=''
if [[ -n $( grep '^md' <<< ${a_raid_working[0]} ) && -z $BSD_TYPE ]] || \
[[ -n $BSD_TYPE && ${a_raid_working[0]} != '' ]];then
# we only want to print lines if anything showed up for md or zfs.
if [[ $RAID_TYPE == 'mdraid' && -n $( grep '^md' <<< ${a_raid_working[0]} ) ]] || \
[[ $RAID_TYPE == 'zfs' && ${a_raid_working[0]} != '' ]];then
if [[ $B_SHOW_BASIC_RAID == 'true' ]];then
if [[ $basic_raid != '' ]];then
basic_raid_plural='s'
@ -15387,9 +15406,8 @@ print_raid_data()
if [[ $B_SHOW_BASIC_RAID == 'true' && $basic_raid != '' ]];then
a_raid_data[0]="${C1}Device$basic_raid_plural$SEP3${C2} $basic_raid"
fi
# note bsd temp test hack to make it run
if [[ $B_MDSTAT_FILE != 'true' && -z $BSD_TYPE ]] || \
[[ -n $BSD_TYPE && $B_BSD_RAID == 'false' ]];then
# This means no /proc/mdstat and no zfs_pool found
if [[ $RAID_TYPE == '' ]];then
if [[ $B_SHOW_RAID_R == 'true' ]];then
a_raid_data[0]="$no_raid_detected"
else

600
inxi.1
View file

@ -1,34 +1,44 @@
.TH INXI 1 "2017\-09\-21" inxi "inxi manual"
.TH INXI 1 "2017\-11\-28" inxi "inxi manual"
.SH NAME
inxi \- Command line system information script for console and IRC
.SH SYNOPSIS
\fBinxi\fR \- Single line, short form. Very basic output.
\fBinxi \fR[\fB\-AbBCdDfFGhHiIlmMnNopPrRsSuw\fR] \fR[\fB\-c NUMBER\fR] \fR[\fB\-v NUMBER\fR]
\fBinxi \fR[\fB\-AbBCdDfFGhHiIlmMnNopPrRsSuw\fR] \fR[\fB\-c
NUMBER\fR] \fR[\fB\-v NUMBER\fR]
\fBinxi \fR[\fB\-t \fR(\fBc\fR or\fB m\fR or\fB cm\fR or\fB mc NUMBER\fR)] \fR[\fB\-x \-OPTION\fR(\fBs\fR)] \fR[\fB\-xx \-OPTION\fR(\fBs\fR)] \fR[\fB\-xxx \-OPTION\fR(\fBs\fR)]
\fBinxi \fR[\fB\-t \fR(\fBc\fR or\fB m\fR or\fB cm\fR or\fB mc
NUMBER\fR)] \fR[\fB\-x \-OPTION\fR(\fBs\fR)] \fR[\fB\-xx
\-OPTION\fR(\fBs\fR)] \fR[\fB\-xxx \-OPTION\fR(\fBs\fR)]
\fBinxi \fR[\fB\-\-help\fR] \fR[\fB\-\-recommends\fR] \fR[\fB\-\-version\fR] \fR[\fB\-@ NUMBER\fR]
\fBinxi \fR[\fB\-\-help\fR] \fR[\fB\-\-recommends\fR]
\fR[\fB\-\-version\fR] \fR[\fB\-@ NUMBER\fR]
.SH DESCRIPTION
\fBinxi\fR is a command line system information script built for for console and IRC. It is also used for forum technical support, as a debugging tool, to quickly ascertain user system configuration and hardware. inxi shows system
hardware, CPU, drivers, Xorg, Desktop, Kernel, GCC version(s), Processes, RAM usage, and a wide variety of other
useful information.
\fBinxi\fR is a command line system information script built for for console
and IRC. It is also used for forum technical support, as a debugging tool,
to quickly ascertain user system configuration and hardware. inxi shows
system hardware, CPU, drivers, Xorg, Desktop, Kernel, GCC version(s), Processes,
RAM usage, and a wide variety of other useful information.
\fBinxi\fR output varies between CLI and IRC, with some default filters and color options applied to IRC use. Script colors can
be turned off if desired with \fB\-c 0\fR, or changed using the \fB\-c\fR color options listed in the OPTIONS section below.
\fBinxi\fR output varies between CLI and IRC, with some default filters and
color options applied to IRC use. Script colors can be turned off if desired
with \fB\-c 0\fR, or changed using the \fB\-c\fR color options listed in the
OPTIONS section below.
.SH PRIVACY AND SECURITY
In order to maintain basic privacy and security, inxi filters out automatically on IRC things like
your network card mac address, WAN and LAN IP, your \fB/home\fR username directory in partitions,
and a few other things.
In order to maintain basic privacy and security, inxi filters out automatically
on IRC things like your network card mac address, WAN and LAN IP, your \fB/home\fR
username directory in partitions, and a few other things.
Because inxi is often used on forums for support, you can also trigger this filtering with the \fB\-z\fR
option (\fB\-Fz\fR, for example). To override the IRC filter, you can use the \fB\-Z\fR option. This can be useful
to debug network connection issues online in a private chat, for example.
Because inxi is often used on forums for support, you can also trigger this
filtering with the \fB\-z\fR option (\fB\-Fz\fR, for example). To override
the IRC filter, you can use the \fB\-Z\fR option. This can be useful to debug
network connection issues online in a private chat, for example.
.SH USING OPTIONS
Options can be combined if they do not conflict. Either group the letters
together or separate them.
Letters with numbers can have no gap or a gap at your discretion unless using \fB \-t\fR.
Letters with numbers can have no gap or a gap at your discretion unless using
\fB \-t\fR.
For example:
.B inxi
@ -44,20 +54,21 @@ Shows basic output, short form (previously \fB\-d\fR). Same as: \fBinxi \-v 2\fR
.TP
.B \-B
Shows Battery data, charge, condition, plus extra information (if battery present).
Uses \fB/sys\fR or for BSDs, \fBdmidecode\fR. \fBdmidecode\fR does not have very much information,
and none about current battery state/charge/voltage. Supports multiple batteries
when using \fB/sys\fR data.
Uses \fB/sys\fR or for BSDs, \fBdmidecode\fR. \fBdmidecode\fR does not have very
much information, and none about current battery state/charge/voltage. Supports
multiple batteries when using \fB/sys\fR data.
Note on the \fBcharge\fR item, the output shows the current charge, and the percent of
the available capacity, which can be less than the original design capacity. In the
following example, the actual current capacity of the battery is \fB22.2 Wh\fR,
so the charge shows what percent of the current capacity is charged.
Note on the \fBcharge\fR item, the output shows the current charge, and the
percent of the available capacity, which can be less than the original design
capacity. In the following example, the actual current capacity of the battery
is \fB22.2 Wh\fR, so the charge shows what percent of the current capacity
is charged.
For example: \fB20.1 Wh 95.4%\fR
The \fBcondition\fR item shows the current available capacity / original design capacity,
then the percentage of original capacity available in the battery. In the following
example, the battery capacity is only 61% of it's original amount.
The \fBcondition\fR item shows the current available capacity / original design
capacity, then the percentage of original capacity available in the battery.
In the following example, the battery capacity is only 61% of it's original amount.
For example: \fB22.2/36.4 Wh 61%\fR
.TP
@ -97,23 +108,25 @@ Konversation etc.
Setting specific color type removes the global color selection.
.TP
.B \-C
Show full CPU output, including per CPU clockspeed and CPU max speed (if available). If max speed data
present, shows \fB(max)\fR in short output formats (\fB\inxi\fR, \fB\inxi \-b\fR) if CPU actual speed
matches CPU max speed. If CPU max speed does not match CPU actual speed, shows both actual and max speed
information. See \fB\-x\fR and \fB\-xx\fR for more options.
Show full CPU output, including per CPU clockspeed and CPU max speed (if available).
If max speed data present, shows \fB(max)\fR in short output formats (\fB\inxi\fR,
\fB\inxi \-b\fR) if CPU actual speed matches CPU max speed. If CPU max speed does
not match CPU actual speed, shows both actual and max speed information.
See \fB\-x\fR and \fB\-xx\fR for more options.
.TP
.B \-d
Shows optical drive data. Same as \fB\-Dd\fR. With \fB\-x\fR, adds features line to output. Also shows
floppy disks if present. Note that there is no current way to get any information about the floppy device
that I am aware of, so it will simply show the floppy id, without any extra data.
\fB\-xx\fR adds a few more features.
Shows optical drive data. Same as \fB\-Dd\fR. With \fB\-x\fR, adds features line to
output. Also shows floppy disks if present. Note that there is no current way to get
any information about the floppy device that I am aware of, so it will simply show the
floppy id, without any extra data. \fB\-xx\fR adds a few more features.
.TP
.B \-D
Show full hard Disk info, not only model, ie: \fB/dev/sda ST380817AS 80.0GB\fR. Shows disk space
total + used percentage. The disk used percentage includes space used by swap partition(s), since
those are not usable for data storage. Note that with RAID disks, the percentage will be wrong
since the total is computed from the disk sizes, but the used is computed from mounted partition used
percentages. This small defect may get corrected in the future. Also, unmounted partitions are not
Show full hard Disk info, not only model, ie: \fB/dev/sda ST380817AS 80.0GB\fR.
Shows disk space total + used percentage. The disk used percentage includes space
used by swap partition(s), since those are not usable for data storage. Note that
with RAID disks, the percentage will be wrong since the total is computed from the
disk sizes, but the used is computed from mounted partition used percentages. This
small defect may get corrected in the future. Also, unmounted partitions are not
counted in disk use percentages since inxi has no access to that data.
.TP
.B \-f
@ -121,22 +134,29 @@ Show all cpu flags used, not just the short list. Not shown with \fB\-F\fR to av
spamming. ARM cpus: show \fBfeatures\fR items.
.TP
.B \-F
Show Full output for inxi. Includes all Upper Case line letters, plus \fB\-s\fR and \fB\-n\fR.
Does not show extra verbose options like \fB\-d \-f \-l \-m \-o \-p \-r \-t \-u \-x\fR unless you use
those arguments in the command, like: \fBinxi \-Frmxx\fR
Show Full output for inxi. Includes all Upper Case line letters, plus \fB\-s\fR
and \fB\-n\fR. Does not show extra verbose options like
\fB\-d \-f \-l \-m \-o \-p \-r \-t \-u \-x\fR unless you use those arguments in
the command, like: \fBinxi \-Frmxx\fR
.TP
.B \-G
Show Graphic card information. Card(s), Display Server (vendor and version number), for example:
\fBDisplay Server: Xorg 1.15.1 \fR
,screen resolution(s), OpenGL renderer, OpenGL core profile version/OpenGL version.
Show Graphic card information. Card(s), Display Server (vendor and version number),
for example:
If detected (currently only available if on a desktop: will attempt to show the server type, ie, x11,
wayland, mir. When xorg is present, its version information will show
after the server type in parentheses. Future versions will show compositor information as well.
\fBDisplay Server: Xorg 1.15.1 \fR
as well as screen resolution(s), OpenGL renderer, OpenGL core profile version/OpenGL
version.
If detected (currently only available if on a desktop: will attempt to show the
server type, ie, x11, wayland, mir. When xorg is present, its version information
will show after the server type in parentheses. Future versions will show compositor
information as well.
.TP
.B \-h
The help menu. Features dynamic sizing to fit into terminal window. Set script global \fBCOLS_MAX_CONSOLE\fR
if you want a different default value, or use \fB\-y <width>\fR to temporarily override the defaults or actual window width.
The help menu. Features dynamic sizing to fit into terminal window. Set script
global \fBCOLS_MAX_CONSOLE\fR if you want a different default value, or
use \fB\-y <width>\fR to temporarily override the defaults or actual window width.
.TP
.B \-\-help
Same as \fB\-h\fR
@ -146,42 +166,63 @@ The help menu, plus developer options. Do not use dev options in normal
operation!
.TP
.B \-i
Show Wan IP address, and shows local interfaces (requires \fBifconfig\fR or \fBip\fR network tool).
Same as \-Nni. Not shown with \fB\-F\fR for user security reasons, you shouldn't
paste your local/wan IP. Shows both IPv4 and IPv6 link IP address.
Show Wan IP address, and shows local interfaces (requires \fBifconfig\fR or
\fBip\fR network tool). Same as \-Nni. Not shown with \fB\-F\fR for user security
reasons, you shouldn't paste your local/wan IP. Shows both IPv4 and IPv6 link IP
address.
.TP
.B \-I
Show Information: processes, uptime, memory, irc client (or shell type if run in shell, not irc), inxi version.
See \fB\-x\fR and \fB\-xx\fR for extra information (init type/version, runlevel).
Show Information: processes, uptime, memory, irc client (or shell type if run in
shell, not irc), inxi version. See \fB\-x\fR and \fB\-xx\fR for extra information
(init type/version, runlevel).
.TP
.B \-l
Show partition labels. Default: short partition \fB\-P\fR. For full \fB\-p\fR output, use: \fB\-pl\fR (or \fB\-plu\fR).
Show partition labels. Default: short partition \fB\-P\fR. For full \fB\-p\fR output,
use: \fB\-pl\fR (or \fB\-plu\fR).
.TP
.B \-m
Memory (RAM) data. Does not show with \fB\-b\fR or \fB\-F\fR unless you use \fB\-m\fR explicitly. Ordered by system board physical system memory array(s) (\fBArray\-[number] capacity:\fR), and individual memory devices (\fBDevice\-[number]\fR). Physical memory array(s) data shows array capacity, and number of devices supported, and Error Correction information. Devices shows locator data (highly variable in syntax), size, speed, type (eg: \fBtype: DDR3\fR).
Memory (RAM) data. Does not show with \fB\-b\fR or \fB\-F\fR unless you use \fB\-m\fR
explicitly. Ordered by system board physical system memory array(s) (\fBArray\-[number]
capacity:\fR), and individual memory devices (\fBDevice\-[number]\fR). Physical memory
array(s) data shows array capacity, and number of devices supported, and Error Correction
information. Devices shows locator data (highly variable in syntax), size, speed,
type (eg: \fBtype: DDR3\fR).
Note that \fB\-m\fR uses \fBdmidecode\fR, which must be run as root (or start \fBinxi\fR with \fBsudo\fR), unless you figure out how to set up sudo to permit dmidecode to read \fB/dev/mem\fR as user. Note that speed will not show if \fBNo Module Installed\fR is found in size. This will also turn off Bus Width data output if it is null.
Note that \fB\-m\fR uses \fBdmidecode\fR, which must be run as root (or start
\fBinxi\fR with \fBsudo\fR), unless you figure out how to set up sudo to permit
dmidecode to read \fB/dev/mem\fR as user. Note that speed will not show if \fBNo Module
Installed\fR is found in size. This will also turn off Bus Width data output if it is null.
If memory information was found, and if the \fB\-I\fR line or the \fB\-tm\fR item have not been triggered,
will also print the ram used/total.
If memory information was found, and if the \fB\-I\fR line or the \fB\-tm\fR item have
not been triggered, will also print the ram used/total.
Because dmidecode data is extremely unreliable, inxi will try to make best guesses. If you see \fB(check)\fR after capacity number, you should check it for sure with specifications. \fB(est)\fR is slightly more reliable, but you should still check the real specifications before buying ram. Unfortunately there is nothing \fBinxi\fR can do to get truly reliable data about the system ram, maybe one day the kernel devs will put this data into \fB/sys\fR, and make it real data, taken from the actual system, not dmi data. For most people, the data will be right, but a significant percentage of users will have either wrong max module size, if present, or max capacity.
Because dmidecode data is extremely unreliable, inxi will try to make best guesses.
If you see \fB(check)\fR after capacity number, you should check it for sure with
specifications. \fB(est)\fR is slightly more reliable, but you should still check
the real specifications before buying ram. Unfortunately there is nothing \fBinxi\fR
can do to get truly reliable data about the system ram, maybe one day the kernel devs
will put this data into \fB/sys\fR, and make it real data, taken from the actual system,
not dmi data. For most people, the data will be right, but a significant percentage of
users will have either wrong max module size, if present, or max capacity.
.TP
.B \-M
Show machine data. Device, Motherboard, Bios, and if present, System Builder (Like Lenovo).
Older systems/kernels without the required \fB/sys\fR data can use dmidecode instead, run as root. If using dmidecode,
may also show bios revision as well as version. \fB\-! 33\fR can force use of \fBdmidecode\fR data instead of \fB/sys\fR.
Will also attempt to show if the system was booted by BIOS, UEFI, or UEFI [Legacy]. The last one is legacy BIOS boot mode
in a systemboard using UEFI but booted as BIOS/Legacy.
Older systems/kernels without the required \fB/sys\fR data can use dmidecode instead, run
as root. If using dmidecode, may also show bios revision as well as version. \fB\-! 33\fR
can force use of \fBdmidecode\fR data instead of \fB/sys\fR. Will also attempt to show
if the system was booted by BIOS, UEFI, or UEFI [Legacy]. The last one is legacy BIOS
boot mode in a systemboard using UEFI but booted as BIOS/Legacy.
Device requires either /sys or dmidecode. Note that 'other\-vm?' is a type that means it's usually a vm, but inxi
failed to detect which type, or to positively confirm which vm it is. Primary vm identification is via systemd\-detect\-virt
but fallback tests that should support some BSDs as well are used. Less commonly used or harder to detect VMs may not
be correctly detected, if you get a wrong output, post an issue and we'll get it fixed if possible.
Device requires either /sys or dmidecode. Note that 'other\-vm?' is a type that means
it's usually a vm, but inxi failed to detect which type, or to positively confirm which
vm it is. Primary vm identification is via systemd\-detect\-virt but fallback tests that
should support some BSDs as well are used. Less commonly used or harder to detect VMs
may not be correctly detected, if you get a wrong output, post an issue and we'll get it
fixed if possible.
Due to unreliable vendor data, device will show: desktop; laptop; notebook; server; blade plus some obscure stuff that
inxi is unlikely to ever run on.
Due to unreliable vendor data, device will show: desktop; laptop; notebook; server;
blade plus some obscure stuff that inxi is unlikely to ever run on.
.TP
.B \-n
Show Advanced Network card information. Same as \fB\-Nn\fR. Shows interface, speed,
@ -204,7 +245,8 @@ Show full partition information (\fB\-P\fR plus all other detected partitions).
.TP
.B \-P
Show Partition information (shows what \fB\-v 4\fR would show, but without extra data).
Shows, if detected: \fB/ /boot /home /opt /tmp /usr /var /var/tmp /var/log\fR. Use \fB\-p\fR to see all mounted partitions.
Shows, if detected: \fB/ /boot /home /opt /tmp /usr /var /var/tmp /var/log\fR.
Use \fB\-p\fR to see all mounted partitions.
.TP
.B \-r
Show distro repository data. Currently supported repo types:
@ -227,58 +269,76 @@ Show distro repository data. Currently supported repo types:
\fBYUM/ZYPP\fR (Fedora, Redhat, Suse + derived versions)
(as distro data is collected more will be added. If your's is missing please show us how to get this
information and we'll try to add it.)
(as distro data is collected more will be added. If your's is missing please
show us how to get this information and we'll try to add it.)
.TP
.B \-R
Show RAID data. Shows RAID devices, states, levels, and components, and extra data with \fB\-x\fR / \fB\-xx\fR.
Show RAID data. Shows RAID devices, states, levels, and components, and
extra data with \fB\-x\fR / \fB\-xx\fR.
md\-raid: If device is resyncing, shows resync progress line as well.
Note: Only md\-raid and ZFS are supported. Other software raid types could
be added, but only if users supply all data required, and if the software
raid actually can be made to give the required output.
Note: due to the complexity, only one raid type per system is supported.
Md\-raid overrides ZFS if no ZFS was found.
.TP
.B \-\-recommends
Checks inxi application dependencies + recommends, and directories, then shows
what package(s) you need to install to add support for that feature.
.TP
.B \-s
Show sensors output (if sensors installed/configured): mobo/cpu/gpu temp; detected
fan speeds. Gpu temp only for Fglrx/Nvidia drivers. Nvidia shows screen number for > 1 screens.
Show sensors output (if sensors installed/configured): mobo/cpu/gpu temp;
detected fan speeds. Gpu temp only for Fglrx/Nvidia drivers. Nvidia shows
screen number for > 1 screens.
.TP
.B \-S
Show System information: host name, kernel, desktop environment (if in X), distro. With \fB\-xx\fR show
dm \- or startx \- (only shows if present and running if out of X), and if in X, with \fB\-xxx\fR show more desktop info, like shell/panel etc.
Show System information: host name, kernel, desktop environment (if in X),
distro. With \fB\-xx\fR show dm \- or startx \- (only shows if present and
running if out of X), and if in X, with \fB\-xxx\fR show more desktop info,
like shell/panel etc.
.TP
.B \-t
\fR[\fBc\fR or\fB m\fR or\fB cm\fR or\fB mc NUMBER\fR]\fR
Show processes. If followed by numbers \fB1\-20\fR, shows that number of processes for each type
(default: \fB5\fR; if in irc, max: \fB5\fR)
Show processes. If followed by numbers \fB1\-20\fR, shows that number of
processes for each type (default: \fB5\fR; if in irc, max: \fB5\fR)
Make sure to have no space between letters and numbers (\fB\-t cm10\fR \- right, \fB\-t cm 10\fR \- wrong).
Make sure to have no space between letters and numbers (\fB\-t cm10\fR
\- right, \fB\-t cm 10\fR \- wrong).
.TP
.B \-t c\fR
\- cpu only. With \fB\-x\fR, shows also memory for that process on same line.
.TP
.B \-t m\fR
\- memory only. With \fB\-x\fR, shows also cpu for that process on same line. If the \-I line is not triggered,
will also show the system used/total ram information in the first \fBMemory\fR line of output.
\- memory only. With \fB\-x\fR, shows also cpu for that process on same line.
If the \-I line is not triggered, will also show the system used/total ram
information in the first \fBMemory\fR line of output.
.TP
.B \-t cm\fR
\- cpu+memory. With \fB\-x\fR, shows also cpu or memory for that process on same line.
\- cpu+memory. With \fB\-x\fR, shows also cpu or memory for that process on
same line.
.TP
.B \-u
Show partition UUIDs. Default: short partition \fB\-P\fR. For full \fB\-p\fR output, use: \fB\-pu\fR (or \fB\-plu\fR).
Show partition UUIDs. Default: short partition \fB\-P\fR. For full \fB\-p\fR
output, use: \fB\-pu\fR (or \fB\-plu\fR).
.TP
.B \-U
Note \- Maintainer may have disabled this function.
If inxi \fB\-h\fR has no listing for \fB\-U\fR then it's disabled.
Auto\-update script. Note: if you installed as root, you must be root to update,
otherwise user is fine. Also installs / updates this Man Page to: \fB/usr/local/share/man/man1\fR
(if \fB/usr/local/share/man/\fR exists AND there is no inxi man page in \fB/usr/share/man/man1\fR,
otherwise it goes to \fB/usr/share/man/man1\fR)
This requires that you be root to write to that directory.
Auto\-update script. Note: if you installed as root, you must be root to
update, otherwise user is fine. Also installs / updates this Man Page to:
\fB/usr/local/share/man/man1\fR (if \fB/usr/local/share/man/\fR exists
AND there is no inxi man page in \fB/usr/share/man/man1\fR, otherwise it
goes to \fB/usr/share/man/man1\fR). This requires that you be root to write
to that directory.
Previous versions of inxi manually installed man page were installed to \fB/usr/share/man/man1\fR. If
you want the man page to go into \fB/usr/local/share/man/man1\fR move it there and inxi will update to
Previous versions of inxi manually installed man page were installed to
\fB/usr/share/man/man1\fR. If you want the man page to go into
\fB/usr/local/share/man/man1\fR move it there and inxi will update to
that path from then on.
.TP
.B \-V
@ -288,7 +348,8 @@ inxi version information. Prints information then exits.
same as \fB\-V\fR
.TP
.B \-v
Script verbosity levels. Verbosity level number is required. Should not be used with \fB\-b\fR or \fB\-F\fR.
Script verbosity levels. Verbosity level number is required. Should not be
used with \fB\-b\fR or \fB\-F\fR.
Supported levels: \fB0\-7\fR Examples :\fB inxi \-v 4 \fR or \fB inxi \-v4\fR
.TP
@ -296,66 +357,82 @@ Supported levels: \fB0\-7\fR Examples :\fB inxi \-v 4 \fR or \fB inxi \-v4\fR
\- Short output, same as: \fBinxi\fR
.TP
.B \-v 1
\- Basic verbose, \fB\-S\fR + basic CPU (cores, model, clock speed, and max speed, if available)
+ \fB\-G\fR + basic Disk + \fB\-I\fR.
\- Basic verbose, \fB\-S\fR + basic CPU (cores, model, clock speed, and max
speed, if available) + \fB\-G\fR + basic Disk + \fB\-I\fR.
.TP
.B \-v 2
\- Adds networking card (\fB\-N\fR), Machine (\fB\-M\fR) data, Battery (\fB\-B\fR) (if available), and shows basic hard disk data
(names only). Same as: \fBinxi \-b\fR
\- Adds networking card (\fB\-N\fR), Machine (\fB\-M\fR) data, Battery (\fB\-B\fR)
(if available), and shows basic hard disk data (names only). Same as: \fBinxi \-b\fR
.TP
.B \-v 3
\- Adds advanced CPU (\fB\-C\fR); network (\fB\-n\fR) data; triggers \fB\-x\fR advanced data option.
\- Adds advanced CPU (\fB\-C\fR); network (\fB\-n\fR) data; triggers \fB\-x\fR
advanced data option.
.TP
.B \-v 4
\- Adds partition size/filled data (\fB\-P\fR) for (if present):\fB/ /home /var/ /boot\fR
Shows full disk data (\fB\-D\fR)
\- Adds partition size/filled data (\fB\-P\fR) for (if present):
\fB/ /home /var/ /boot\fR Shows full disk data (\fB\-D\fR)
.TP
.B \-v 5
\- Adds audio card (\fB\-A\fR); memory/ram (\fB\-m\fR);sensors (\fB\-s\fR), partition label (\fB\-l\fR) and UUID (\fB\-u\fR), short form of
\- Adds audio card (\fB\-A\fR); memory/ram (\fB\-m\fR);sensors (\fB\-s\fR),
partition label (\fB\-l\fR) and UUID (\fB\-u\fR), short form of
optical drives.
.TP
.B \-v 6
\- Adds full partition data (\fB\-p\fR), unmounted partition data (\fB\-o\fR), optical drive data (\fB\-d\fR);
triggers \fB\-xx\fR extra data option.
\- Adds full partition data (\fB\-p\fR), unmounted partition data (\fB\-o\fR),
optical drive data (\fB\-d\fR); triggers \fB\-xx\fR extra data option.
.TP
.B \-v 7
\- Adds network IP data (\fB\-i\fR); triggers \fB\-xxx\fR
.TP
.B \-w
Adds weather line. Note, this depends on an unreliable api so it may not always be working in the future.
To get weather for an alternate location, use \fB\-W <location_string>\fR. See also \fB\-x\fR, \fB\-xx\fR, \fB\-xxx\fR option.
Please note, your distribution's maintainer may chose to disable this feature, so if \fB\-w\fR or \fB\-W\fR don't work, that's why.
Adds weather line. Note, this depends on an unreliable api so it may not always
be working in the future. To get weather for an alternate location, use
\fB\-W <location_string>\fR. See also \fB\-x\fR, \fB\-xx\fR, \fB\-xxx\fR option.
Please note, your distribution's maintainer may chose to disable this feature,
so if \fB\-w\fR or \fB\-W\fR don't work, that's why.
.TP
.B \-W <location_string>
Get weather/time for an alternate location. Accepts postal/zip code, city,state pair, or latitude,longitude.
Note: city/country/state names must not contain spaces. Replace spaces with '\fB+\fR' sign. No spaces around \fB,\fR (comma).
Get weather/time for an alternate location. Accepts postal/zip code,
city,state pair, or latitude,longitude. Note: city/country/state names must not
contain spaces. Replace spaces with '\fB+\fR' sign. No spaces around \fB,\fR (comma).
Use only ascii letters in city/state/country names, sorry.
Examples: \fB\-W 95623\fR OR \fB\-W Boston,MA\fR OR \fB\-W45.5234,\-122.6762\fR OR \fB\-W new+york,ny\fR
OR \fB\-W bodo,norway\fR.
Examples: \fB\-W 95623\fR OR \fB\-W Boston,MA\fR OR \fB\-W45.5234,\-122.6762\fR
OR \fB\-W new+york,ny\fR OR \fB\-W bodo,norway\fR.
.TP
.B \-y <integer >= 80>
This is an absolute width override which sets the output line width max. Overrides \fBCOLS_MAX_IRC\fR / \fBCOLS_MAX_CONSOLE\fR globals, or the actual widths of the terminal. If used with \fB\-h\fR or \fB\-c 94\-99\fR, put \fB\-y\fR option first or the override will be ignored. Cannot be used with \fB\-\-help\fR/\fB\-\-version\fR/\fB\-\-recommends\fR type long options. Example: \fBinxi \-y 130 \-Fxx\fR
This is an absolute width override which sets the output line width max.
Overrides \fBCOLS_MAX_IRC\fR / \fBCOLS_MAX_CONSOLE\fR globals, or the
actual widths of the terminal. If used with \fB\-h\fR or \fB\-c 94\-99\fR,
put \fB\-y\fR option first or the override will be ignored. Cannot be
used with \fB\-\-help\fR/\fB\-\-version\fR/\fB\-\-recommends\fR type
long options. Example: \fBinxi \-y 130 \-Fxx\fR
.TP
.B \-z
Adds security filters for IP addresses, Mac, location (\fB\-w\fR), and user home directory name. Default on for irc clients.
Adds security filters for IP addresses, Mac, location (\fB\-w\fR), and user
home directory name. Default on for irc clients.
.TP
.B \-Z
Absolute override for output filters. Useful for debugging networking issues in irc for example.
Absolute override for output filters. Useful for debugging networking
issues in irc for example.
.SH EXTRA DATA OPTIONS
These options are for long form only, and can be triggered by one or more \fB\-x\fR, like \fB\-xx\fR.
Alternately, the \fB\-v\fR options trigger them in the following way:
\fB\-v 3\fR adds \fB\-x\fR; \fB\-v 6\fR adds \fB\-xx\fR; \fB\-v 7\fR adds \fB\-xxx\fR
These options are for long form only, and can be triggered by one or
more \fB\-x\fR, like \fB\-xx\fR. Alternately, the \fB\-v\fR options
trigger them in the following way: \fB\-v 3\fR adds \fB\-x\fR;
\fB\-v 6\fR adds \fB\-xx\fR; \fB\-v 7\fR adds \fB\-xxx\fR
These extra data triggers can be useful for getting more in\-depth data on various options.
Can be added to any long form option list, like: \fB\-bxx\fR or \fB\-Sxxx\fR
These extra data triggers can be useful for getting more in\-depth
data on various options. Can be added to any long form option list,
like: \fB\-bxx\fR or \fB\-Sxxx\fR
There are 3 extra data levels: \fB\-x\fR; \fB\-xx\fR; and \fB\-xxx\fR
The following shows which lines / items get extra information with each extra data level.
The following shows which lines / items get extra information with each
extra data level.
.TP
.B \-x \-A
\- Adds version/port(s)/driver version (if available) for each Audio device.
\- Adds version/port(s)/driver version (if available) for each Audio
device.
.TP
.B \-x \-A
\- Shows PCI Bus ID/Usb ID number of each Audio device.
@ -367,17 +444,19 @@ The following shows which lines / items get extra information with each extra da
\- bogomips on CPU (if available); CPU Flags (short list).
.TP
.B \-x \-C
\- CPU microarchitecture + revision (like Sandy Bridge, K8, ARMv8, P6, and so on). Only shows if detected. Newer
microarchitectures will have to be added as they appear, and require the CPU family id and model id.
\- CPU microarchitecture + revision (like Sandy Bridge, K8, ARMv8, P6,
and so on). Only shows if detected. Newer microarchitectures will have
to be added as they appear, and require the CPU family id and model id.
Example: \fBarch: Sandy Bridge rev.2\fR, \fBarch: K8 rev.F+\fR
.TP
.B \-x \-d
\- Adds items to features line of optical drive; adds rev version to optical drive.
\- Adds items to features line of optical drive; adds rev version to
optical drive.
.TP
.B \-x \-D
\- Hdd temp with disk data if you have hddtemp installed, if you are root OR if you have added to
\fB/etc/sudoers\fR (sudo v. 1.7 or newer):
\- Hdd temp with disk data if you have hddtemp installed, if you are root
OR if you have added to \fB/etc/sudoers\fR (sudo v. 1.7 or newer):
.B <username> ALL = NOPASSWD: /usr/sbin/hddtemp (sample)
@ -392,42 +471,53 @@ Example: \fBarch: Sandy Bridge rev.2\fR, \fBarch: K8 rev.F+\fR
\- Shows PCI Bus ID/Usb ID number of each Graphics card.
.TP
.B \-x \-i
\- Show IP v6 additional scope data, like Global, Site, Temporary for each interface.
\- Show IP v6 additional scope data, like Global, Site, Temporary for
each interface.
Note that there is no way I am aware of to filter out the deprecated IP v6 scope site/global
temporary addresses from the output of \fBifconfig\fR. \fBip\fR tool shows that clearly.
Note that there is no way I am aware of to filter out the deprecated
IP v6 scope site/global temporary addresses from the output of
\fBifconfig\fR. \fBip\fR tool shows that clearly.
\fBip\-v6\-temporary\fR \- (\fBip\fR tool only), scope global temporary. Scope global temporary deprecated is not shown
\fBip\-v6\-temporary\fR \- (\fBip\fR tool only), scope global temporary.
Scope global temporary deprecated is not shown
\fBip\-v6\-global\fR \- scope global (\fBifconfig\fR will show this for all types, global, global temporary,
and global temporary deprecated, \fBip\fR shows it only for global)
\fBip\-v6\-global\fR \- scope global (\fBifconfig\fR will show this for
all types, global, global temporary, and global temporary deprecated,
\fBip\fR shows it only for global)
\fBip\-v6\-link\fR \- scope link (\fBip\fR/\fBifconfig\fR) \- default for \fB\-i\fR.
\fBip\-v6\-link\fR \- scope link (\fBip\fR/\fBifconfig\fR) \- default
for \fB\-i\fR.
\fBip\-v6\-site\fR \- scope site (\fBip\fR/\fBifconfig\fR). This has been deprecated in IPv6, but still exists.
\fBifconfig\fR may show multiple site values, as with global temporary, and
global temporary deprecated.
\fBip\-v6\-site\fR \- scope site (\fBip\fR/\fBifconfig\fR). This has been
deprecated in IPv6, but still exists. \fBifconfig\fR may show multiple site
values, as with global temporary, and global temporary deprecated.
\fBip\-v6\-unknown\fR \- unknown scope
.TP
.B \-x \-I
\- Show current init system (and init rc in some cases, like OpenRC). With \-xx, shows init/rc
version number, if available.
\- Show current init system (and init rc in some cases, like OpenRC).
With \-xx, shows init/rc version number, if available.
.B \-x \-I
\- Show system GCC, default. With \-xx, also show other installed GCC versions.
\- Show system GCC, default. With \-xx, also show other installed GCC
versions.
.TP
.B \-x \-I
\- Show current runlevel (not available with all init systems).
.TP
.B \-x \-I
\- If in shell (not in IRC client, that is), show shell version number (if available).
\- If in shell (not in IRC client, that is), show shell version number
(if available).
.TP
.B \-x \-m
\- Shows memory device Part Number (\fBpart:\fR). Useful to order new or replacement memory sticks etc. Usually part numbers are unique, particularly if you use the word \fBmemory\fR in the search as well. With \fB\-xx\fR, shows Serial Number and Manufactorer as well.
\- Shows memory device Part Number (\fBpart:\fR). Useful to order new or
replacement memory sticks etc. Usually part numbers are unique, particularly
if you use the word \fBmemory\fR in the search as well. With \fB\-xx\fR,
shows Serial Number and Manufactorer as well.
.TP
.B \-x \-m
\- If present, shows maximum memory module/device size in the Array line. Only some systems will have this data available.
\- If present, shows maximum memory module/device size in the Array line.
Only some systems will have this data available.
.TP
.B \-x \-N
\- Adds version/port(s)/driver version (if available) for each Network card;
@ -436,20 +526,24 @@ version number, if available.
\- Shows PCI Bus ID/Usb ID number of each Network card.
.TP
.B \-x \-R
\- md\-raid: Shows component raid id. Adds second RAID Info line: raid level; report on drives
(like 5/5); blocks; chunk size; bitmap (if present). Resync line, shows blocks synced/total blocks.
\- md\-raid: Shows component raid id. Adds second RAID Info line: raid level;
report on drives (like 5/5); blocks; chunk size; bitmap (if present). Resync
line, shows blocks synced/total blocks.
\- zfs\-raid: Shows raid array full size; available size; portion allocated to RAID (ie, not available as storage)."
\- zfs\-raid: Shows raid array full size; available size; portion allocated
to RAID (ie, not available as storage)."
.TP
.B \-x \-S
\- Desktop toolkit if available (GNOME/XFCE/KDE only); Kernel gcc version.
.TP
.B \-x \-t
\- Adds memory use output to cpu (\fB\-xt c\fR), and cpu use to memory (\fB\-xt m\fR). For \fB\-xt c\fR will also show
system Used/Total ram data if \fB\-t m\fR (memory) is not used AND \fB\-I\fR is not triggered.
\- Adds memory use output to cpu (\fB\-xt c\fR), and cpu use to memory
(\fB\-xt m\fR). For \fB\-xt c\fR will also show system Used/Total ram data
if \fB\-t m\fR (memory) is not used AND \fB\-I\fR is not triggered.
.TP
.B \-x \-w / \-W
\- Adds wind speed and time zone (\fB\-w\fR only), and makes output go to two lines.
\- Adds wind speed and time zone (\fB\-w\fR only), and makes output go to
two lines.
.TP
.B \-xx \-A
\- Adds vendor:product ID of each Audio device.
@ -457,7 +551,8 @@ system Used/Total ram data if \fB\-t m\fR (memory) is not used AND \fB\-I\fR is
.B \-xx \-B
\- Adds serial number, voltage (if available).
Note that \fBvolts\fR shows the data (if available) as: Voltage Now / Minimum Design Voltage
Note that \fBvolts\fR shows the data (if available) as: Voltage Now / Minimum
Design Voltage
.TP
.B \-xx \-C
\- Shows Minimum CPU speed (if available).
@ -475,8 +570,9 @@ Note that \fBvolts\fR shows the data (if available) as: Voltage Now / Minimum De
\- Wayland/Mir only: if found, attempts to show compositor (experimental).
.TP
.B \-xx \-G
\- For free drivers, adds OpenGL compatibility version number if it's available. For nonfree drivers,
the core version and compatibility versions are the same. Example:
\- For free drivers, adds OpenGL compatibility version number if it's available.
For nonfree drivers, the core version and compatibility versions are the same.
Example:
\fB3.3 Mesa 11.2.0 (compat\-v: 3.0)\fR
.TP
@ -487,33 +583,38 @@ the core version and compatibility versions are the same. Example:
\- Adds other detected installed gcc versions to primary gcc output (if present).
.TP
.B \-xx \-I
\- Show, if detected, system default runlevel. Supports Systemd/Upstart/Sysvinit type defaults. Note that
not all systemd systems have the default value set, in that case, if present, it will use the data from
\fB/etc/inittab\fR.
\- Show, if detected, system default runlevel. Supports Systemd/Upstart/Sysvinit
type defaults. Note that not all systemd systems have the default value set, in
that case, if present, it will use the data from \fB/etc/inittab\fR.
.TP
.B \-xx \-I
\- Adds parent program (or tty) that started shell, if not IRC client, to shell information.
\- Adds parent program (or tty) that started shell, if not IRC client, to shell
information.
.TP
.B \-xx \-m
\- Shows memory device Manufacturer and Serial Number.
.TP
.B \-xx \-m
\- Single/double bank memory, if data is found. Note, this may not be 100% right all of the time since it depends on the order that data is found in \fBdmidecode\fR output for \fBtype 6\fR and \fBtype 17\fR.
\- Single/double bank memory, if data is found. Note, this may not be 100% right
all of the time since it depends on the order that data is found in \fBdmidecode\fR
output for \fBtype 6\fR and \fBtype 17\fR.
.TP
.B \-xx \-M
\- Adds chassis information, if any data for that is available. Also shows BIOS rom size if using dmidecode.
\- Adds chassis information, if any data for that is available. Also shows BIOS
rom size if using dmidecode.
.TP
.B \-xx \-N
\- Adds vendor:product ID of each Network card.
.TP
.B \-xx \-R
\- md\-raid: Adds superblock (if present); algorythm, U data. Adds system info line (kernel support,
read ahead, raid events). Adds if present, unused device line. If device is resyncing, shows
resync progress line as well.
\- md\-raid: Adds superblock (if present); algorythm, U data. Adds system info
sline (kernel support, read ahead, raid events). Adds if present, unused device
line. If device is resyncing, shows resync progress line as well.
.TP
.B \-xx \-S
\- Adds, if run in X, display manager type to Desktop information, if present. If none, shows N/A.
Supports most known display managers, like xdm, gdm, kdm, slim, lightdm, or mdm.
\- Adds, if run in X, display manager type to Desktop information, if present.
If none, shows N/A. Supports most known display managers, like xdm, gdm, kdm,
slim, lightdm, or mdm.
.TP
.B \-xx \-w / \-W
\- Adds humidity and barometric pressure.
@ -522,22 +623,29 @@ Supports most known display managers, like xdm, gdm, kdm, slim, lightdm, or mdm.
\- Automatically uploads debugger data tar.gz file to \fIftp.techpatterns.com\fR.
.TP
.B \-xxx \-B
\- Adds battery chemistry (like: \fBLi\-ion\fR), cycles (NOTE: there appears to be a problem with the Linux kernel
obtaining the cycle count, so this almost always shows \fB0\fR. There's nothing that can be done about this glitch, the
data is simply not available as of 2016\-04\-18), location (only available from dmidecode derived output).
\- Adds battery chemistry (like: \fBLi\-ion\fR), cycles (NOTE: there appears to
be a problem with the Linux kernel obtaining the cycle count, so this almost
always shows \fB0\fR. There's nothing that can be done about this glitch, the
data is simply not available as of 2016\-04\-18), location (only available from
dmidecode derived output).
.TP
.B \-xxx \-m
\- Memory bus width: primary bus width, and if present, total width. eg: bus width: 64 bit (total: 72 bits). Note that total / data widths are mixed up sometimes in dmidecode output, so inxi will take the larger value as total if present. If no total width data is found, then inxi will not show that item.
\- Memory bus width: primary bus width, and if present, total width. eg:
bus width: 64 bit (total: 72 bits). Note that total / data widths are mixed up
sometimes in dmidecode output, so inxi will take the larger value as total if
present. If no total width data is found, then inxi will not show that item.
.TP
.B \-xxx \-m
\- Adds device Type Detail, eg: DDR3 (Synchronous).
.TP
.B \-xxx \-m
\- If present, will add memory module voltage. Only some systems will have this data available.
\- If present, will add memory module voltage. Only some systems will have this
data available.
.TP
.B \-xxx \-S
\- Adds, if run in X, shell/panel type info to Desktop information, if present. If none, shows nothing.
Supports some current desktop extras like gnome\-panel, lxde\-panel, and others. Added mainly for Mint support.
\- Adds, if run in X, shell/panel type info to Desktop information, if present.
If none, shows nothing. Supports some current desktop extras like gnome\-panel,
lxde\-panel, and others. Added mainly for Mint support.
.TP
.B \-xxx \-w / \-W
\- Adds location (city state country), weather observation time, altitude of system.
@ -545,43 +653,70 @@ If wind chill, heat index, or dew point are available, shows that data as well.
.SH ADVANCED OPTIONS
.TP
.B \-! 31
Turns off hostname in System line. Useful, with \fB\-z\fR, for anonymizing your inxi output for posting on
forums or IRC.
Turns off hostname in System line. Useful, with \fB\-z\fR, for anonymizing your
inxi output for posting on forums or IRC.
.TP
.B \-! 32
Turns on hostname in System line. Overrides inxi config file value (if set): B_SHOW_HOST='false'.
Turns on hostname in System line. Overrides inxi config file value (if set):
B_SHOW_HOST='false'.
.TP
.B \-! 33
Force use of \fBdmidecode\fR. This will override \fB/sys\fR data in some lines, like \fB\-M\fR.
Force use of \fBdmidecode\fR. This will override \fB/sys\fR data in some lines,
like \fB\-M\fR.
.TP
.B \-! 34
Skip SSL certificate checks for all downloader actions (\fB\-U\fR, \fB\-w\fR, \fB\-W\fR, \fB\-i\fR).
Use if your system does not have current SSL certificate lists, or if you have problems making a connection for
any reason. Only works with \fBwget\fR, \fBcurl\fR, and \fBfetch\fR. This must go before the other options you use.
Skip SSL certificate checks for all downloader actions (\fB\-U\fR, \fB\-w\fR,
\fB\-W\fR, \fB\-i\fR). Use if your system does not have current SSL certificate
lists, or if you have problems making a connection for any reason. Only works
with \fBwget\fR, \fBcurl\fR, and \fBfetch\fR. This must go before the other
options you use.
.TP
.B \-! 40
Will try to get display data out of X (does not usually work as root user).
Default gets display info from display \fB:0\fR. If you use this format: \fB\-! 40:1\fR it
would get it from display \fB1\fR instead, or any display you specify
as long as there is no space between \fB\-! 40\fR and the \fB:[display id]\fR.
Default gets display info from display \fB:0\fR. If you use this format:
\fB\-! 40:1\fR it would get it from display \fB1\fR instead, or any display
you specify as long as there is no space between \fB\-! 40\fR and the
\fB:[display id]\fR.
Note that in some cases, \fB\-! 40\fR will cause inxi to hang endlessly when running the option
in console with Intel graphics (confirmed). Other free drivers like nouveau/ati unknown yet.
It may be that this is a bug with the intel graphics driver, more information required.
Note that in some cases, \fB\-! 40\fR will cause inxi to hang endlessly when
running the option in console with Intel graphics (confirmed). Other free
drivers like nouveau/ati unknown yet. It may be that this is a bug with the
intel graphics driver, more information required.
You can test this easily by running this command out of X/display server: \fBglxinfo -display :0\fR
You can test this easily by running this command out of X/display server:
\fBglxinfo -display :0\fR
If it hangs, \fB\-! 40\fR will not work.
.TP
.B \-! 41
Bypass \fBCurl\fR as a downloader option. Priority is: Curl, Wget, Fetch,
HTTP::Tiny, OpenBSD only: ftp
.B \-! 42
Bypass \fBFetch\fR as a downloader option.Priority is: Curl, Wget, Fetch,
HTTP::Tiny, OpenBSD only: ftp
.B \-! 43
Bypass \fBWget\fR as a downloader option. Priority is: Curl, Wget, Fetch,
HTTP::Tiny, OpenBSD only: ftp
.B \-! 44
Bypass \fBCurl\fR, \fBFetch\fR, and \fBWget\fR as downloader options. This
basically forces the downloader selection to use \fBPerl 5.x\fR \fBHTTP::Tiny\fR,
which is in general slower than \fBCurl\fR or \fBWget\fR but it may help bypass
issues with downloading.
.SH DEBUGGING OPTIONS
.TP
.B \-%
Overrides defective or corrupted data.
.TP
.B \-@
Triggers debugger output. Requires debugging level \fB1\-14\fR (\fB8\-10\fR \- logging of data).
Less than 8 just triggers inxi debugger output on screen.
Triggers debugger output. Requires debugging level \fB1\-14\fR
(\fB8\-10\fR \- logging of data). Less than 8 just triggers inxi
debugger output on screen.
.TP
.B \-@
\fR[\fB1\fR\-\fB7\fR] \- On screen debugger output.
@ -596,8 +731,9 @@ Less than 8 just triggers inxi debugger output on screen.
\- Color logging.
.TP
.B \-@ <11\-14>
The following create a tar.gz file of system data, plus collecting the inxi output to file:
To automatically upload debugger data tar.gz file to \fIftp.techpatterns.com\fR:
The following create a tar.gz file of system data, plus collecting
the inxi output to file: To automatically upload debugger data
tar.gz file to \fIftp.techpatterns.com\fR:
\fBinxi \-xx@ <11\-14>\fR
@ -607,27 +743,31 @@ For alternate ftp upload locations: Example:
\fIftp.yourserver.com/incoming\fB \-xx@ 14\fR
.TP
.B \-@ 11
\- With tree traversal data file read of \fB/sys\fR
\- With tree traversal data file read of \fB/sys\fR, and other system
data.
.TP
.B \-@ 12
\- With xorg conf and log data, xrandr, xprop, xdpyinfo, glxinfo etc.
.TP
.B \-@ 13
\- With data from dev, disks, partitions, etc., plus thes tree traversal data file read of \fB/sys\fR.
\- With data from dev, disks, partitions, etc.
.TP
.B \-@ 14
\- Everything, full data collection.
.SH SUPPORTED IRC CLIENTS
BitchX, Gaim/Pidgin, ircII, Irssi, Konversation, Kopete, KSirc, KVIrc, Weechat, and Xchat. Plus any others that
are capable of displaying either built in or external script output.
BitchX, Gaim/Pidgin, ircII, Irssi, Konversation, Kopete, KSirc, KVIrc, Weechat,
and Xchat. Plus any others that are capable of displaying either built in or external
script output.
.SH RUNNING IN IRC CLIENT
To trigger inxi output in your IRC client, pick the appropriate method from the list below:
To trigger inxi output in your IRC client, pick the appropriate method from the
list below:
.TP
.B Xchat, irssi
\fR(and many other IRC clients)
.B /exec \-o inxi
\fR[\fBoptions\fR]
If you leave off the \fB\-o\fR, only you will see the output on your local IRC client.
If you leave off the \fB\-o\fR, only you will see the output on your local
IRC client.
.TP
.B Konversation
.B /cmd inxi
@ -641,10 +781,11 @@ the second for KDE 5]:
.B ln \-s /usr/local/bin/inxi /usr/share/konversation/scripts/inxi
If inxi is somewhere else, change the path \fB/usr/local/bin\fR to wherever it is located.
If inxi is somewhere else, change the path \fB/usr/local/bin\fR to wherever it
is located.
If you are using KDE/QT 5, then you may also need to add the following to get the konversation
\fR/inxi\fR command to work:
If you are using KDE/QT 5, then you may also need to add the following to get
the konversation \fR/inxi\fR command to work:
.B ln \-s /usr/share/konversation /usr/share/apps/
@ -660,9 +801,10 @@ Then you can start inxi directly, like this:
.B OLD: /shell \-o inxi
\fR[\fBoptions\fR]
Newer (2014 and later) WeeChats work pretty much the same now as other console IRC
clients, with \fB/exec \-o inxi \fR[\fBoptions\fR]. Also, newer WeeChats have dropped
the \fB\-curses\fR part of their program name, ie: \fBweechat\fR instead of \fBweechat\-curses\fR.
Newer (2014 and later) WeeChats work pretty much the same now as other console
IRC clients, with \fB/exec \-o inxi \fR[\fBoptions\fR]. Also, newer WeeChats
have dropped the \fB\-curses\fR part of their program name, ie:
\fBweechat\fR instead of \fBweechat\-curses\fR.
Deprecated:
@ -678,26 +820,31 @@ Make the script executable by
.B chmod +x shell.py
Move it to your home folder: \fB/.weechat/python/autoload/\fR then logout, and start WeeChat with
Move it to your home folder: \fB/.weechat/python/autoload/\fR then logout,
and start WeeChat with
.B weechat\-curses
Top of screen should say what pythons scripts have loaded, and should include shell. Then to run inxi,
you would enter a command like this:
Top of screen should say what pythons scripts have loaded, and should include
shell. Then to run inxi, you would enter a command like this:
.B /shell \-o inxi \-bx
If you leave off the \fB\-o\fR, only you will see the output on your local weechat. WeeChat
users may also like to check out the weeget.py
If you leave off the \fB\-o\fR, only you will see the output on your local
weechat. WeeChat users may also like to check out the weeget.py
.SH INITIALIZATION FILE
inxi will read the following configuration/initialization files in the following order:
inxi will read the following configuration/initialization files in the
following order:
\fB/etc/inxi.conf\fR is the default configurations. These can be overridden by user configurations
found in one of the following locations (inxi will place its config file using the following precedence
as well, that is, if \fB$XDG_CONFIG_HOME\fR is not empty, it will go there, else if \fB$HOME/.conf/inxi.conf\fR
exists, it will go there, and as a last default, the legacy location is used:
\fB/etc/inxi.conf\fR is the default configurations. These can be overridden
by user configurations found in one of the following locations (inxi will
place its config file using the following precedence as well, that is,
if \fB$XDG_CONFIG_HOME\fR is not empty, it will go there, else if
\fB$HOME/.conf/inxi.conf\fR exists, it will go there, and as a last default,
the legacy location is used:
\fB$XDG_CONFIG_HOME/inxi.conf\fR or \fB$HOME/.conf/inxi.conf\fR or \fB$HOME/.inxi/inxi.conf\fR
\fB$XDG_CONFIG_HOME/inxi.conf\fR or \fB$HOME/.conf/inxi.conf\fR or
\fB$HOME/.inxi/inxi.conf\fR
See wiki pages for more information on how to set these up:
.TP
@ -742,23 +889,26 @@ Steven Barrett (aka: damentz) \- usb audio patch; swap percent used patch.
Jarett.Stevens \- dmidecode \-M patch for older systems with no /sys
And a special thanks to the nice people at irc.oftc.net channels #linux\-smokers\-club and #smxi,
who all really have to be considered to be co\-developers because of their non\-stop enthusiasm
and willingness to provide real time testing and debugging of inxi development.
And a special thanks to the nice people at irc.oftc.net channels
#linux\-smokers\-club and #smxi, who all really have to be considered to
be co\-developers because of their non\-stop enthusiasm and willingness to
provide real time testing and debugging of inxi development.
A further thanks to the Siduction forum members, who have helped get some features
working by providing a lot of datasets that revealed possible variations, particularly
for the ram \fB\-m\fR option.
A further thanks to the Siduction forum members, who have helped get some
features working by providing a lot of datasets that revealed possible variations,
particularly for the ram \fB\-m\fR option.
Further thanks to the various inxi package maintainers, distro support people, forum
moderators, and in particular, sys admins with their particular issues, which almost always
help make inxi better, and any others who contribute ideas, suggestions, and patches.
Further thanks to the various inxi package maintainers, distro support people,
forum moderators, and in particular, sys admins with their particular issues,
which almost always help make inxi better, and any others who contribute ideas,
suggestions, and patches.
Without a wide range of diverse Linux kernel based Free Desktop systems to test on, we could
never have gotten inxi to be as reliable and solid as it's turning out to be.
Without a wide range of diverse Linux kernel based Free Desktop systems to test
on, we could never have gotten inxi to be as reliable and solid as it's turning
out to be.
And of course, big thanks locsmif, who figured out a lot of the core methods, logic,
and tricks used in inxi.
And of course, big thanks locsmif, who figured out a lot of the core methods,
logic, and tricks used in inxi.
This Man page was originally created by Gordon Spencer (aka aus9) and is maintained by
Harald Hope (aka h2 or TechAdmin).
This Man page was originally created by Gordon Spencer (aka aus9) and is
maintained by Harald Hope (aka h2 or TechAdmin).

View file

@ -1,3 +1,48 @@
=====================================================================================
Version: 2.3.49
Patch Version: 00
Script Date: 2017-11-28
-----------------------------------
Changes:
-----------------------------------
New version, new tarball, new man page. This is the first attempt to correct an
issue a forum poster raised, which is the fact that despite the fact that GNU/Linux
has had reasonably ok zfs support for years now, inxi only tested for zfs on bsd
systems.
This has been corrected. Due to the complexity of handling software raid, inxi
will now test first for ZFS data, if none is found, it will then test for
/proc/mdstat.
In a perfect world I'd like to have full dynamic Raid support, but I'm missing
all the key ingredients required to add that:
1. systems to test on
2. software raid, I don't use it
3. data collection for non mdraid and zfs software raid, including the values
possible to gather from all non software raid.
Basically, the only way I'd extend -R raid option is if I get direct ssh access to
a machine that uses the alternate software raid type, otherwise it would take
forever to figure out the options.
Since the number of people who might be actually running zfs and mdraid and
using inxi probably numbers in the 10 globally, I figured this solution was a fine
way to handle adding zfs without messing up mdraid, which is more common on linux.
It also does not break BSDs, since bsds as far as I know don't use mdraid, and don't
have /proc/mdraid in the first place.
Also redid the man page to add -! 41, -! 42, -! 43, -! 44 options, which bypass
curl, fetch, wget, and all of them, respectively. Plus making the lines less wide.
That should make those people who actually use 80 column wide vi as an editor
happy, lol.
-----------------------------------
-- Harald Hope - Tue, 28 Nov 2017 17:17:00 -0800
=====================================================================================
Version: 2.3.48
Patch Version: 00