mirror of https://github.com/lukechilds/umbrel.git
Browse Source
Co-authored-by: Lounès Ksouri <dev@louneskmt.com> Co-authored-by: Mayank Chhabra <mayankchhabra9@gmail.com>dashboard-0.3.14
Aaron Dewes
4 years ago
committed by
GitHub
1 changed files with 185 additions and 0 deletions
@ -0,0 +1,185 @@ |
|||
#!/bin/bash |
|||
|
|||
# This script is based on raspinfo: https://github.com/raspberrypi/utils/blob/master/raspinfo/raspinfo |
|||
# raspinfo is Copyright: 2018-2019, Raspberry Pi (Trading) Ltd. |
|||
# This fork is Copyright 2020, Umbrel |
|||
# |
|||
# Redistribution and use in source and binary forms, with or without |
|||
# modification, are permitted provided that the following conditions |
|||
# are met: |
|||
# 1. Redistributions of source code must retain the above copyright |
|||
# notice, this list of conditions and the following disclaimer. |
|||
# 2. Redistributions in binary form must reproduce the above copyright |
|||
# notice, this list of conditions and the following disclaimer in the |
|||
# documentation and/or other materials provided with the distribution. |
|||
# 3. Neither the name of the University nor the names of its contributors |
|||
# may be used to endorse or promote products derived from this software |
|||
# without specific prior written permission. |
|||
# |
|||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
|||
# ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
|||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
|||
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE HOLDERS OR |
|||
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, |
|||
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |
|||
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
|||
# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
|||
# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
|||
# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
|||
# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
|||
|
|||
|
|||
# Try to load Umbrel OS version info to detect Umbrel OS |
|||
[[ -f "/etc/default/umbrel" ]] && source "/etc/default/umbrel" |
|||
|
|||
# function to upload the output to hastebin |
|||
# Source: https://github.com/seejohnrun/haste-client#lightweight-alternative |
|||
haste() { a=$(cat); curl -X POST -s -d "$a" https://hastebin.com/documents | awk -F '"' '{print "https://hastebin.com/"$4}'; } |
|||
|
|||
echo "=====================" |
|||
echo "= Umbrel debug info =" |
|||
echo "=====================" |
|||
|
|||
UMBREL_ROOT="$(dirname $(readlink -f "${BASH_SOURCE[0]}"))/.." |
|||
cd "${UMBREL_ROOT}" |
|||
|
|||
echo |
|||
echo "Umbrel version" |
|||
echo "--------------" |
|||
cat info.json | jq .version | sed 's/"//g' |
|||
|
|||
if [[ ! -z "${UMBREL_OS:-}" ]]; then |
|||
echo |
|||
echo "Umbrel OS version" |
|||
echo "-----------------" |
|||
echo $UMBREL_OS |
|||
|
|||
echo |
|||
echo "Raspberry Pi Model" |
|||
echo "------------------" |
|||
|
|||
cat /proc/cpuinfo | tail -3 |
|||
|
|||
echo |
|||
echo "Firmware" |
|||
echo "--------" |
|||
|
|||
vcgencmd version |
|||
|
|||
echo |
|||
echo "Temperature" |
|||
echo "-----------" |
|||
|
|||
vcgencmd measure_temp |
|||
|
|||
echo |
|||
echo "Throttling" |
|||
echo "----------" |
|||
|
|||
vcgencmd get_throttled |
|||
|
|||
echo |
|||
echo "Startup service logs" |
|||
echo "--------------------" |
|||
journalctl --unit=umbrel-startup.service | tail -n 30 | sed '/onion/d' |
|||
|
|||
echo |
|||
echo "External storage service logs" |
|||
echo "-----------------------------" |
|||
journalctl --unit=umbrel-external-storage.service | tail -n 30 |
|||
fi |
|||
echo |
|||
echo "Filesystem information" |
|||
echo "----------------------" |
|||
|
|||
df -h |
|||
echo |
|||
cat /proc/swaps |
|||
|
|||
|
|||
echo |
|||
echo "Karen logs" |
|||
echo "----------" |
|||
echo |
|||
|
|||
tail -n 50 logs/karen.log | sed '/onion/d' |
|||
|
|||
echo |
|||
echo "Docker containers" |
|||
echo "-----------------" |
|||
|
|||
docker ps --format="table {{.Names}}\t{{.Status}}" |
|||
|
|||
echo |
|||
echo "Bitcoin Core logs" |
|||
echo "-----------------" |
|||
echo |
|||
docker-compose logs --tail=30 bitcoin |
|||
|
|||
echo |
|||
echo "LND logs" |
|||
echo "--------" |
|||
echo |
|||
docker-compose logs --tail=30 lnd |
|||
|
|||
echo |
|||
echo "Tor logs" |
|||
echo "--------" |
|||
echo |
|||
docker-compose logs --tail=30 tor |
|||
|
|||
if [[ ! -z "${UMBREL_OS:-}" ]]; then |
|||
list_block_devices () { |
|||
# Documented in the mount script for Umbrel OS |
|||
sync |
|||
(ls -d /sys/block/sd* 2>/dev/null || true) | sed 's!.*/!!' |
|||
} |
|||
no_of_block_devices=$(list_block_devices | wc -l) |
|||
fi |
|||
|
|||
echo "================" |
|||
echo "==== Result ====" |
|||
echo "================" |
|||
if [[ ! -z "${UMBREL_OS:-}" ]]; then |
|||
if [[ $(vcgencmd get_throttled) != "throttled=0x0" ]]; then |
|||
if [[ $(vcgencmd get_throttled) = "throttled=0x5"* ]]; then |
|||
echo "There is probably issue with your power supply. We recommend using the official power supply to avoid this issue" |
|||
else |
|||
echo "The temperature of your Raspberry Pi is too high. We recommend either using a case that lowers the temperature of your Pi or a case with a builtin fan." |
|||
fi |
|||
exit 0 |
|||
fi |
|||
if [[ $no_of_block_devices -lt 1 ]]; then |
|||
echo "You have either no external drive connected to your Raspberry Pi or the drive is not being detected." |
|||
echo "Please shutdown your Raspberry Pi ('sudo shutdown'), then plug the SSD into the other USB3 port." |
|||
echo "After you've finished that, boot your Raspberry Pi back up. If it still still doesn't work," |
|||
echo "you can contact us on Telegram (t.me/getumbrel) and share the output of this script." |
|||
if [[ "${1}" == "--upload" ]]; then |
|||
echo "You can also share this link instead:" |
|||
./scripts/debug | sed '/onion/d' | haste |
|||
dmesg | haste |
|||
else |
|||
echo "Run this script again with the --upload flag to automatically generate a link to share." |
|||
fi |
|||
exit 0 |
|||
fi |
|||
if [[ $no_of_block_devices -gt 1 ]]; then |
|||
echo "================" |
|||
echo "==== Result ====" |
|||
echo "================" |
|||
echo "You have multiple external drives connected to your Raspberry Pi. Please remove the drive(s) you don't want to use for Umbrel." |
|||
exit 0 |
|||
fi |
|||
fi |
|||
|
|||
if [[ "${1}" == "--upload" ]]; then |
|||
# This runs the script twice, but it works |
|||
echo "This script could not automatically detect an issue with your Umbrel." |
|||
echo "Please share the following links and paste it in the Umbrel Telegram group (https://t.me/getumbrel) so we can help you with your problem." |
|||
./scripts/debug | sed '/onion/d' | haste |
|||
dmesg | haste |
|||
else |
|||
echo "This script could not automatically detect an issue with your Umbrel." |
|||
echo "Please copy the entire output of this script and paste it in the Umbrel Telegram group (https://t.me/getumbrel) so we can help you with your problem." |
|||
echo "It's recommended to upload the output somewhere and share a link to it. Run this script with '--upload' to automatically generate a link to share." |
|||
fi |
Loading…
Reference in new issue