mirror of
https://github.com/smxi/inxi.git
synced 2024-11-16 16:21:39 +00:00
added to data collector /etc/os-release
This commit is contained in:
parent
17a3f7d844
commit
f901e498c6
130
inxi
130
inxi
|
@ -1,8 +1,8 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
########################################################################
|
########################################################################
|
||||||
#### Script Name: inxi
|
#### Script Name: inxi
|
||||||
#### version: 1.8.0
|
#### version: 1.8.2
|
||||||
#### Date: May 10 2012
|
#### Date: May 11 2012
|
||||||
#### Patch Number: 00
|
#### Patch Number: 00
|
||||||
########################################################################
|
########################################################################
|
||||||
#### SPECIAL THANKS
|
#### SPECIAL THANKS
|
||||||
|
@ -148,6 +148,7 @@
|
||||||
#### gawk arrays: http://www.math.utah.edu/docs/info/gawk_12.html
|
#### gawk arrays: http://www.math.utah.edu/docs/info/gawk_12.html
|
||||||
#### raid mdstat: http://www-01.ibm.com/support/docview.wss?uid=isg3T1011259
|
#### raid mdstat: http://www-01.ibm.com/support/docview.wss?uid=isg3T1011259
|
||||||
#### http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array
|
#### http://www.howtoforge.com/replacing_hard_disks_in_a_raid1_array
|
||||||
|
#### https://raid.wiki.kernel.org/index.php/Mdstat
|
||||||
########################################################################
|
########################################################################
|
||||||
#### TESTING FLAGS
|
#### TESTING FLAGS
|
||||||
#### inxi supports advanced testing triggers to do various things, using -! <arg>
|
#### inxi supports advanced testing triggers to do various things, using -! <arg>
|
||||||
|
@ -2148,7 +2149,7 @@ show_options()
|
||||||
print_screen_output "- - - - - - - - - - - - - - - - - - - - - - - - - - - - -"
|
print_screen_output "- - - - - - - - - - - - - - - - - - - - - - - - - - - - -"
|
||||||
print_screen_output "Output Control Options:"
|
print_screen_output "Output Control Options:"
|
||||||
print_screen_output "-A Show Audio/sound card information."
|
print_screen_output "-A Show Audio/sound card information."
|
||||||
print_screen_output "-b Shows basic output, short form (previously -d). Same as: $SCRIPT_NAME -v 2"
|
print_screen_output "-b Shows basic output, short form. Like $SCRIPT_NAME -v 2, only minus hard disk names."
|
||||||
print_screen_output "-c Available color schemes. Scheme number is required. Color selectors run a color selector option"
|
print_screen_output "-c Available color schemes. Scheme number is required. Color selectors run a color selector option"
|
||||||
print_screen_output " prior to $SCRIPT_NAME starting which lets you set the config file value for the selection."
|
print_screen_output " prior to $SCRIPT_NAME starting which lets you set the config file value for the selection."
|
||||||
print_screen_output " Supported color schemes: 0-$color_scheme_count Example: $SCRIPT_NAME -c 11"
|
print_screen_output " Supported color schemes: 0-$color_scheme_count Example: $SCRIPT_NAME -c 11"
|
||||||
|
@ -2195,7 +2196,7 @@ show_options()
|
||||||
print_screen_output " 0 - Short output, same as: $SCRIPT_NAME"
|
print_screen_output " 0 - Short output, same as: $SCRIPT_NAME"
|
||||||
print_screen_output " 1 - Basic verbose, -S + basic CPU + -G + basic Disk + -I."
|
print_screen_output " 1 - Basic verbose, -S + basic CPU + -G + basic Disk + -I."
|
||||||
print_screen_output " 2 - Adds networking card (-N), Machine (-M) data, shows basic hard disk data (names only),"
|
print_screen_output " 2 - Adds networking card (-N), Machine (-M) data, shows basic hard disk data (names only),"
|
||||||
print_screen_output " and basic raid (devices only, and if inactive, notes that). Same as: $SCRIPT_NAME -b"
|
print_screen_output " and, if present, basic raid (devices only, and if inactive, notes that). similar to: $SCRIPT_NAME -b"
|
||||||
print_screen_output " 3 - Adds advanced CPU (-C), network (-n) data, and switches on -x advanced data option."
|
print_screen_output " 3 - Adds advanced CPU (-C), network (-n) data, and switches on -x advanced data option."
|
||||||
print_screen_output " 4 - Adds partition size/filled data (-P) for (if present):/, /home, /var/, /boot"
|
print_screen_output " 4 - Adds partition size/filled data (-P) for (if present):/, /home, /var/, /boot"
|
||||||
print_screen_output " Shows full disk data (-D)."
|
print_screen_output " Shows full disk data (-D)."
|
||||||
|
@ -5476,11 +5477,10 @@ get_raid_data()
|
||||||
local mdstat=''
|
local mdstat=''
|
||||||
|
|
||||||
if [[ $B_MDSTAT_FILE ]];then
|
if [[ $B_MDSTAT_FILE ]];then
|
||||||
# dump the first line, which is not data
|
mdstat="$( cat $FILE_MDSTAT 2>/dev/null )"
|
||||||
mdstat="$( cat $FILE_MDSTAT )"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
mdstat1="Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
|
mdstat1="Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
|
||||||
md0 : active raid1 sdb1[2] sda1[0]
|
md0 : active raid1 sdb1[2] sda1[0]
|
||||||
175778744 blocks super 1.2 [2/2] [UU]
|
175778744 blocks super 1.2 [2/2] [UU]
|
||||||
|
|
||||||
|
@ -5576,9 +5576,9 @@ md1 : active raid6 sdp1[6] sdm1[4] sdk1[2] sdi1[0] sdl1[3] sdn1[5] sdj1[1] sdr1[
|
||||||
unused devices: <none>
|
unused devices: <none>
|
||||||
"
|
"
|
||||||
|
|
||||||
mdstat="$mdstat2"
|
mdstat="$mdstat11"
|
||||||
|
|
||||||
if [[ -n $mdstat ]];then
|
if [[ -n $mdstat ]];then
|
||||||
:
|
|
||||||
# need to make sure there's always a newline in front of each record type, and
|
# 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.
|
# also correct possible weird formats for the output from older kernels etc.
|
||||||
mdstat="$( sed -e 's/^md/\nmd/' -e 's/^unused[[:space:]]/\nunused /' \
|
mdstat="$( sed -e 's/^md/\nmd/' -e 's/^unused[[:space:]]/\nunused /' \
|
||||||
|
@ -5586,12 +5586,7 @@ mdstat="$mdstat2"
|
||||||
-e 's/^[[:space:]]*$//' -e 's/[[:space:]]read_ahead/\nread_ahead/' <<< "$mdstat" )"
|
-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
|
# 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" )
|
mdstat=$( echo -e "$mdstat\n\nEOF" )
|
||||||
# echo -n
|
|
||||||
# -e 's/[[:space:]]\([0-9]*[[:space:]]blocks\)/\n\1/'
|
|
||||||
|
|
||||||
|
|
||||||
# echo -e "============================\n\n$mdstat\n============================\n\n"
|
|
||||||
# exit
|
|
||||||
IFS=$'\n'
|
IFS=$'\n'
|
||||||
A_RAID_DATA=( $(
|
A_RAID_DATA=( $(
|
||||||
gawk '
|
gawk '
|
||||||
|
@ -5718,9 +5713,6 @@ mdstat="$mdstat2"
|
||||||
eval $LOGFE
|
eval $LOGFE
|
||||||
}
|
}
|
||||||
|
|
||||||
# B_MDSTAT_FILE=true
|
|
||||||
# get_raid_data;exit
|
|
||||||
|
|
||||||
# Repos will be added as we get distro package manager data to create the repo data.
|
# Repos will be added as we get distro package manager data to create the repo data.
|
||||||
# This method will output the file name also, which is useful to create output that's
|
# This method will output the file name also, which is useful to create output that's
|
||||||
# neat and readable.
|
# neat and readable.
|
||||||
|
@ -7889,9 +7881,7 @@ print_ps_item()
|
||||||
|
|
||||||
eval $LOGFE
|
eval $LOGFE
|
||||||
}
|
}
|
||||||
# device "," deviceState "," raidLevel "," components "," deviceReport "," uData
|
|
||||||
# blocks "," superBlock "," algorithm "," chunkSize "," bitmapValues
|
|
||||||
# recoveryProgressBar "," recoveryPercent "," sectorsRecovered "," finishTime "," recoverSpeed
|
|
||||||
print_raid_data()
|
print_raid_data()
|
||||||
{
|
{
|
||||||
eval $LOGFS
|
eval $LOGFS
|
||||||
|
@ -7901,19 +7891,18 @@ print_raid_data()
|
||||||
local finish_time='' recovery_speed='' raid_counter=0 device_counter=1 basic_counter=1
|
local finish_time='' recovery_speed='' raid_counter=0 device_counter=1 basic_counter=1
|
||||||
local a_partition_working='' raid_data='' kernel_support='' read_ahead='' unused_devices=''
|
local a_partition_working='' raid_data='' kernel_support='' read_ahead='' unused_devices=''
|
||||||
local basic_raid='' basic_raid_separator='' basic_raid_plural='' inactive=''
|
local basic_raid='' basic_raid_separator='' basic_raid_plural='' inactive=''
|
||||||
local component_separator='' device_id='' print_string='' loop_limit='' array_count_unused=''
|
local component_separator='' device_id='' print_string='' loop_limit=0 array_count_unused=''
|
||||||
local array_count='' raid_event=''
|
local array_count='' raid_event='' b_print_lines='true'
|
||||||
|
|
||||||
get_raid_data
|
get_raid_data
|
||||||
# temp_array=${A_RAID_DATA[@]}
|
|
||||||
# echo $temp_array
|
|
||||||
# echo ${#A_RAID_DATA[@]}
|
|
||||||
for (( i=0; i < ${#A_RAID_DATA[@]}; i++ ))
|
for (( i=0; i < ${#A_RAID_DATA[@]}; i++ ))
|
||||||
do
|
do
|
||||||
IFS=","
|
IFS=","
|
||||||
a_partition_working=(${A_RAID_DATA[i]})
|
a_partition_working=(${A_RAID_DATA[i]})
|
||||||
IFS="$ORIGINAL_IFS"
|
IFS="$ORIGINAL_IFS"
|
||||||
|
|
||||||
|
# reset on each iteration
|
||||||
algorithm=''
|
algorithm=''
|
||||||
bitmap_values=''
|
bitmap_values=''
|
||||||
blocks=''
|
blocks=''
|
||||||
|
@ -7969,6 +7958,8 @@ print_raid_data()
|
||||||
fi
|
fi
|
||||||
if [[ ${a_partition_working[4]} != '' ]];then
|
if [[ ${a_partition_working[4]} != '' ]];then
|
||||||
device_report="${a_partition_working[4]}"
|
device_report="${a_partition_working[4]}"
|
||||||
|
else
|
||||||
|
device_report="N/A"
|
||||||
fi
|
fi
|
||||||
if [[ $B_EXTRA_DATA == 'true' ]];then
|
if [[ $B_EXTRA_DATA == 'true' ]];then
|
||||||
if [[ ${a_partition_working[6]} != '' ]];then
|
if [[ ${a_partition_working[6]} != '' ]];then
|
||||||
|
@ -8010,7 +8001,6 @@ print_raid_data()
|
||||||
if [[ $B_EXTRA_DATA != 'true' ]];then
|
if [[ $B_EXTRA_DATA != 'true' ]];then
|
||||||
component=$( sed 's/\[[0-9]\+\]//' <<< $component )
|
component=$( sed 's/\[[0-9]\+\]//' <<< $component )
|
||||||
fi
|
fi
|
||||||
# echo comp $component
|
|
||||||
if [[ -n $( grep 'F' <<< $component ) ]];then
|
if [[ -n $( grep 'F' <<< $component ) ]];then
|
||||||
component=$( sed -e 's/(F)//' -e 's/F//' <<< $component )
|
component=$( sed -e 's/(F)//' -e 's/F//' <<< $component )
|
||||||
failed="$failed $component"
|
failed="$failed $component"
|
||||||
|
@ -8033,7 +8023,9 @@ print_raid_data()
|
||||||
fi
|
fi
|
||||||
if [[ $device_components != '' ]];then
|
if [[ $device_components != '' ]];then
|
||||||
if [[ $B_EXTRA_DATA != 'true' ]];then
|
if [[ $B_EXTRA_DATA != 'true' ]];then
|
||||||
device_components="$device_report - $device_components"
|
if [[ $device_report != 'N/A' ]];then
|
||||||
|
device_components="$device_report - $device_components"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
device_components=" ${C1}components${SEP3}${C2} $device_components$failed$spare"
|
device_components=" ${C1}components${SEP3}${C2} $device_components$failed$spare"
|
||||||
fi
|
fi
|
||||||
|
@ -8043,7 +8035,7 @@ print_raid_data()
|
||||||
if [[ $B_EXTRA_DATA == 'true' && ${a_partition_working[1]} != 'inactive' ]];then
|
if [[ $B_EXTRA_DATA == 'true' && ${a_partition_working[1]} != 'inactive' ]];then
|
||||||
a_raid_data[$raid_counter]="${C1}Device$device_id${SEP3}${C2} $device$device_state$device_components"
|
a_raid_data[$raid_counter]="${C1}Device$device_id${SEP3}${C2} $device$device_state$device_components"
|
||||||
(( raid_counter++ ))
|
(( raid_counter++ ))
|
||||||
print_string="${C1}Info${SEP3}${C2}$raid_level ${C1}report${SEP}${C2} $device_report$u_data"
|
print_string="${C1}Info${SEP3}${C2}$raid_level ${C1}report${SEP3}${C2} $device_report$u_data"
|
||||||
print_string="$print_string$blocks$chunk_size$bitmap_value$super_blocks$algorithm"
|
print_string="$print_string$blocks$chunk_size$bitmap_value$super_blocks$algorithm"
|
||||||
a_raid_data[$raid_counter]="$print_string"
|
a_raid_data[$raid_counter]="$print_string"
|
||||||
else
|
else
|
||||||
|
@ -8109,44 +8101,60 @@ print_raid_data()
|
||||||
if [[ $B_SHOW_BASIC_RAID == 'true' && $basic_raid != '' ]];then
|
if [[ $B_SHOW_BASIC_RAID == 'true' && $basic_raid != '' ]];then
|
||||||
a_raid_data[0]="${C1}Device$basic_raid_plural${SEP3}${C2} $basic_raid"
|
a_raid_data[0]="${C1}Device$basic_raid_plural${SEP3}${C2} $basic_raid"
|
||||||
fi
|
fi
|
||||||
if [[ ${a_raid_data[0]} == '' ]];then
|
|
||||||
a_raid_data[0]="${C1}Device${SEP3}${C2} No RAID devices detected"
|
if [[ $B_MDSTAT_FILE != 'true' ]];then
|
||||||
fi
|
if [[ $B_SHOW_BASIC_RAID != 'true' ]];then
|
||||||
|
a_raid_data[0]="${C1}Error${SEP3}${C2} No $FILE_MDSTAT file detected!"
|
||||||
# now let's add on the system line and the unused device line. Only print on -xx
|
|
||||||
array_count=${#a_raid_data[@]}
|
|
||||||
a_raid_data[array_count]="${C1}System${SEP3}${C2}$kernel_support$read_ahead$raid_event"
|
|
||||||
loop_limit=1
|
|
||||||
if [[ $unused_devices != '' ]];then
|
|
||||||
array_count_unused=${#a_raid_data[@]}
|
|
||||||
a_raid_data[array_count_unused]="$unused_devices"
|
|
||||||
loop_limit=2
|
|
||||||
fi
|
|
||||||
|
|
||||||
# print out all lines, line starter on first line
|
|
||||||
for (( i=0; i < ${#a_raid_data[@]} - $loop_limit;i++ ))
|
|
||||||
do
|
|
||||||
if [[ $i -eq 0 ]];then
|
|
||||||
line_starter='RAID:'
|
|
||||||
else
|
else
|
||||||
line_starter=' '
|
b_print_lines='false'
|
||||||
fi
|
fi
|
||||||
if [[ $B_EXTRA_EXTRA_DATA == 'true' ]];then
|
else
|
||||||
if [[ $i == 0 ]];then
|
if [[ ${a_raid_data[0]} == '' ]];then
|
||||||
raid_data=$( create_print_line "$line_starter" "${a_raid_data[array_count]}" )
|
if [[ $B_SHOW_BASIC_RAID != 'true' ]];then
|
||||||
print_screen_output "$raid_data"
|
a_raid_data[0]="${C1}Device${SEP3}${C2} No RAID devices detected!"
|
||||||
|
else
|
||||||
|
b_print_lines='false'
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
# now let's add on the system line and the unused device line. Only print on -xx
|
||||||
|
if [[ $kernel_support$read_ahead$raid_event != '' ]];then
|
||||||
|
array_count=${#a_raid_data[@]}
|
||||||
|
a_raid_data[array_count]="${C1}System${SEP3}${C2}$kernel_support$read_ahead$raid_event"
|
||||||
|
loop_limit=1
|
||||||
|
fi
|
||||||
|
if [[ $unused_devices != '' ]];then
|
||||||
|
array_count_unused=${#a_raid_data[@]}
|
||||||
|
a_raid_data[array_count_unused]="$unused_devices"
|
||||||
|
loop_limit=2
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
# we don't want to print anything if it's -b and no data is present, just a waste of a line
|
||||||
|
if [[ $b_print_lines == 'true' ]];then
|
||||||
|
# print out all lines, line starter on first line
|
||||||
|
for (( i=0; i < ${#a_raid_data[@]} - $loop_limit;i++ ))
|
||||||
|
do
|
||||||
|
if [[ $i -eq 0 ]];then
|
||||||
|
line_starter='RAID:'
|
||||||
|
else
|
||||||
line_starter=' '
|
line_starter=' '
|
||||||
fi
|
fi
|
||||||
fi
|
if [[ $B_EXTRA_EXTRA_DATA == 'true' && $array_count != '' ]];then
|
||||||
raid_data=$( create_print_line "$line_starter" "${a_raid_data[i]}" )
|
if [[ $i == 0 ]];then
|
||||||
print_screen_output "$raid_data"
|
raid_data=$( create_print_line "$line_starter" "${a_raid_data[array_count]}" )
|
||||||
if [[ $B_EXTRA_EXTRA_DATA == 'true' && $array_count_unused != '' ]];then
|
print_screen_output "$raid_data"
|
||||||
if [[ $i == $(( array_count_unused - 2 )) ]];then
|
line_starter=' '
|
||||||
raid_data=$( create_print_line "$line_starter" "${a_raid_data[array_count_unused]}" )
|
fi
|
||||||
print_screen_output "$raid_data"
|
|
||||||
fi
|
fi
|
||||||
fi
|
raid_data=$( create_print_line "$line_starter" "${a_raid_data[i]}" )
|
||||||
done
|
print_screen_output "$raid_data"
|
||||||
|
if [[ $B_EXTRA_EXTRA_DATA == 'true' && $array_count_unused != '' ]];then
|
||||||
|
if [[ $i == $(( array_count_unused - 2 )) ]];then
|
||||||
|
raid_data=$( create_print_line "$line_starter" "${a_raid_data[array_count_unused]}" )
|
||||||
|
print_screen_output "$raid_data"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
eval $LOGFE
|
eval $LOGFE
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue