mirror of
https://github.com/raspiblitz/raspiblitz.git
synced 2025-11-19 02:22:24 +01:00
Compare commits
143 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
99e43a999d | ||
|
|
fbc7b6f3d7 | ||
|
|
f2f19f23fb | ||
|
|
ddd48bb952 | ||
|
|
d375acdeff | ||
|
|
b865dd4837 | ||
|
|
47e260da8e | ||
|
|
c27cacf5ef | ||
|
|
209a1c7630 | ||
|
|
030ac88be5 | ||
|
|
c80a03cc30 | ||
|
|
04d6fca2cb | ||
|
|
6fb6b41f32 | ||
|
|
7628914295 | ||
|
|
4e14809214 | ||
|
|
6ae5184a68 | ||
|
|
85f083b931 | ||
|
|
5d0c39fa7e | ||
|
|
c9f7ce7ade | ||
|
|
ca708c83cd | ||
|
|
3213464efb | ||
|
|
b6048b5936 | ||
|
|
02587c519b | ||
|
|
8bf4c758f4 | ||
|
|
43882a763b | ||
|
|
57839ea8fd | ||
|
|
0f0dd71c61 | ||
|
|
4369c8ec01 | ||
|
|
3517996fc1 | ||
|
|
9f84c42ad3 | ||
|
|
52d97c8e8e | ||
|
|
24f15aa895 | ||
|
|
b91b148ea8 | ||
|
|
f955234408 | ||
|
|
3a9943fe81 | ||
|
|
2041ba1f87 | ||
|
|
4212ee1f5c | ||
|
|
e614aada02 | ||
|
|
4a283a2156 | ||
|
|
13254b476a | ||
|
|
5ab800b515 | ||
|
|
73a52244d8 | ||
|
|
e273923457 | ||
|
|
87c1e1f1f7 | ||
|
|
75eb88873b | ||
|
|
eb6fc65381 | ||
|
|
cfd6b5d359 | ||
|
|
cd612ae555 | ||
|
|
88ba165d27 | ||
|
|
6d603f88a7 | ||
|
|
39704568d8 | ||
|
|
090ac43b22 | ||
|
|
0450d40db4 | ||
|
|
3e8c6bb615 | ||
|
|
e37e01ec05 | ||
|
|
215deda60d | ||
|
|
88a26f881c | ||
|
|
c9cfeaa7d6 | ||
|
|
602be668ac | ||
|
|
1db3f008ef | ||
|
|
17b9fe2dc6 | ||
|
|
e38c48e545 | ||
|
|
92808aed7a | ||
|
|
e9efa4bd65 | ||
|
|
f80e32b95d | ||
|
|
1b908303b5 | ||
|
|
7d08df5756 | ||
|
|
17ee2be2c9 | ||
|
|
14ebd783a9 | ||
|
|
cca314d670 | ||
|
|
fd235d1d3b | ||
|
|
060c670c46 | ||
|
|
92be6ffa2d | ||
|
|
f8e4d4a276 | ||
|
|
adbd940331 | ||
|
|
d37e49b41a | ||
|
|
4dd993ce0d | ||
|
|
3a3c7d3492 | ||
|
|
9fc9188081 | ||
|
|
3756531b0e | ||
|
|
0b92392db9 | ||
|
|
97b8feaa1a | ||
|
|
e2d14aa4aa | ||
|
|
ae6f379408 | ||
|
|
f590d10672 | ||
|
|
ed4f7ec1f2 | ||
|
|
8ad3e67764 | ||
|
|
e25b60e322 | ||
|
|
6b25f90e52 | ||
|
|
deacf80948 | ||
|
|
3a96a9c337 | ||
|
|
e5da727014 | ||
|
|
0b0e4b9960 | ||
|
|
c6de3d3d2e | ||
|
|
3766caf68f | ||
|
|
08d4f76d18 | ||
|
|
cddfaeee3a | ||
|
|
737e808668 | ||
|
|
1ef1ef31a5 | ||
|
|
31a263cf15 | ||
|
|
e754d531c7 | ||
|
|
147687457e | ||
|
|
f291055f47 | ||
|
|
ebc5cd9573 | ||
|
|
e37a5336f9 | ||
|
|
c46a18f89f | ||
|
|
3b4edf53d7 | ||
|
|
5d8d5e9a23 | ||
|
|
3c39461928 | ||
|
|
becad8e301 | ||
|
|
cb7cd4f902 | ||
|
|
624f3b4dbd | ||
|
|
02b31c31d9 | ||
|
|
1007cfdf10 | ||
|
|
ffcf86ee02 | ||
|
|
dff1c47d89 | ||
|
|
0b6476cf6e | ||
|
|
26764dda28 | ||
|
|
6a9a63a93e | ||
|
|
04e301ecd2 | ||
|
|
e3ea3fde35 | ||
|
|
c18394d331 | ||
|
|
434b0ebd02 | ||
|
|
3c285ea44f | ||
|
|
857252e4e2 | ||
|
|
bcd865a0c8 | ||
|
|
14cf3e7dab | ||
|
|
9e8a42dc82 | ||
|
|
cf8cba1a59 | ||
|
|
657d0c5ea7 | ||
|
|
c9da1b72ee | ||
|
|
30b18e1342 | ||
|
|
28d1ab1750 | ||
|
|
f33915577b | ||
|
|
194406c831 | ||
|
|
f51985ba40 | ||
|
|
05fa28bdcf | ||
|
|
8e8aea083d | ||
|
|
617383f358 | ||
|
|
fc080288bb | ||
|
|
eff35f5f68 | ||
|
|
d2c9a110e1 | ||
|
|
8b23baea8a |
208
FAQ.md
208
FAQ.md
@@ -1,27 +1,61 @@
|
||||
# FAQ - Frequently Asked Questions
|
||||
|
||||
## How do I generate a Debug Report?
|
||||
## Whats new in Version 1.1 of RaspiBlitz?
|
||||
|
||||
If your RaspiBlitz is not working right and you like to get help from the community, its good to provide more debug information, so other can better diagnose your problem - please follow the following steps to generate a debug report:
|
||||
Version 1.1 packs some first fixes and enhancements to make the RaspiBlitz more stable, protect HDD data better and support you better in case of data corruption of the blockchain data.
|
||||
|
||||
- ssh into your raspiblitz as admin user with your password A
|
||||
- If you see the menu - use CTRL+C to get to the terminal
|
||||
- To generate debug report run: `./XXdebugLogs.sh`
|
||||
- Then copy all output beginning with `*** RASPIBLITZ LOGS ***` and share this
|
||||
- Update: RTL (Ride the Lightning) Web UI version 0.2.15-beta
|
||||
- Fix: Preventing logs from filling up the sd card
|
||||
- Fix: Pairing for latest Zap iOS Mobile Wallet
|
||||
- Fix: Pairing for latest Shango Mobile Wallet
|
||||
- Fix: Open LND port check when custom port
|
||||
- New: Undervoltage Reports on LCD
|
||||
- New: fsk (file system consistency check) of HDD on every boot
|
||||
- New: Repair Help Menu in case if blockchain data corruption
|
||||
- New: /config.scripts/lnd.setport.sh (set custom LND port)
|
||||
- New: /config.scripts/lnd.rescue.sh (backup/replay LND data)
|
||||
- Removed: FTP download option for blockchain
|
||||
|
||||
*PLEASE NOTICE: Its possible that this logs can contain private information (like IPs, node IDs, ...) - just share publicly what you feel OK with.*
|
||||
For full details see issue list of [Release 1.1 Milestone](https://github.com/rootzoll/raspiblitz/milestone/3?closed=1).
|
||||
|
||||
Instructions on how to update see FAQ info below.
|
||||
|
||||
## How to update my RaspiBlitz (AFTER version 0.98)?
|
||||
|
||||
To prepare the RaspiBlitz update:
|
||||
For update you dont need to close any channels, remove funding or download the blockchain again.
|
||||
|
||||
Simply [Ddwnload the new RaspiBlitz SD card image](https://github.com/rootzoll/raspiblitz#installing-the-software) to your laptop and have an sd card writer ready. Then login into your RaspiBlitz with SSH and:
|
||||
|
||||
- main menu > OFF
|
||||
- remove power
|
||||
- remove SD card
|
||||
|
||||
Now download the new RaspiBlitz SD card image and write it to your SD card .. yes you simply overwrite the old one, it's OK, all your personal data is on the HDD (if you haven't done any manual changes to the system). See details about latest SD card image here: https://github.com/rootzoll/raspiblitz#scenario-2-start-at-home
|
||||
Write the new image it to your SD card .. yes you simply overwrite the old one, it's OK, all your personal data is on the HDD. If you want to be extra safe you can make a image backup of your old sd card first - but that is optional. If you made manual changes to your RaspiBlitz with scripts on the sd card you might wanna check on this FAQ question first: [Why do I need to re-burn my SD card for an update?](FAQ.md#why-do-i-need-to-re-burn-my-sd-card-for-an-update).
|
||||
|
||||
If done successfully, simply put the SD card into the RaspiBlitz and power on again. Then follow the instructions on the display ... and dont worry, you dont need to re-download the blockchain again.
|
||||
- insert new sd card image
|
||||
- power on the RaspiBlitz again
|
||||
|
||||
You should see that it switched into recover/backup mode. Its now provisioning the fresh OS on the sd card your old settings and data. This process can take some while especially if you had RTL Web UI activated. Follow the instructions on the display ... if it takes longer then an hour .. [get support](https://github.com/rootzoll/raspiblitz#support).
|
||||
|
||||
When update/recover process is ready you will see a `FINAL RECOVER LOGIN NEEDED` message on the display. Login per SSH by using the password `raspiblitz` and set your Password A again. It can be the same as the old one, but maybe use the occasion to make password change for security reasons. If you had auto-unlock activated you might also be asked to enter your old Password C again. Then it wil make a final reboot.
|
||||
|
||||
After your RaspiBlitz is done with catching up the latest blockchain data you should see your status screen displaying your funds and channels. Your backup is complete.
|
||||
|
||||
## Can I downgrade from v1.1 to v1.0?
|
||||
|
||||
Yes - it was tested one time and worked. Just follow the normal update mechanism - just use the old v1.0 image or your own backup image of the old sd card.
|
||||
|
||||
## Can I still get version 1.0 of RaspiBlitz?
|
||||
|
||||
Yes here are the links:
|
||||
|
||||
HTTP: http://wiki.fulmo.org/downloads/raspiblitz-v1.0-2019-02-18.img.gz
|
||||
|
||||
Torrent: https://github.com/rootzoll/raspiblitz/raw/master/raspiblitz-v1.0-2019-02-18.torrent
|
||||
|
||||
SHA-256: 99ca96d214657388305ca117e2343ead45f9d907f185bef36c712a9a3e75568f
|
||||
|
||||
Code: https://github.com/rootzoll/raspiblitz/tree/v1.0
|
||||
|
||||
## How to update a old RaspiBlitz (BEFORE version 0.98)?
|
||||
|
||||
@@ -55,11 +89,11 @@ Of course, people should modify the system, add own scripts, etc ... but if you
|
||||
|
||||
## How can I avoid using a prepared blockchain and validate myself?
|
||||
|
||||
The torrent and FTP download use a prepared blockchain to kick start the RaspiBlitz. If you want to selft validate you could do this on another more powerful computer and then transfere your own validated blockchain over to the RaspiBlitz. Check the options `Copying from another Computer` & `Cloning from a 2nd HDD` described in the [README](README.md) for more details.
|
||||
The torrent download use a prepared blockchain to kick start the RaspiBlitz. If you want to selft validate you could do this on another more powerful computer and then transfere your own validated blockchain over to the RaspiBlitz. Check the options `Copying from another Computer` & `Cloning from a 2nd HDD` described in the [README](README.md) for more details.
|
||||
|
||||
## I have the full blockchain on another computer. How do I copy it to the RaspiBlitz?
|
||||
|
||||
Copying a already synced blockchain from another computer (for example your Laptop) can be a quick way to get the RaspiBlitz started or replacing a corrupted blockchain with a fresh one. Also that way you synced and verified the blockchain yourself and not trusting the RaspiBlitz FTP/Torrent downloads (dont trust, verify).
|
||||
Copying a already synced blockchain from another computer (for example your Laptop) can be a quick way to get the RaspiBlitz started or replacing a corrupted blockchain with a fresh one. Also that way you synced and verified the blockchain yourself and not trusting the RaspiBlitz Torrent downloads (dont trust, verify).
|
||||
|
||||
One requirement is that the blockchain is from another bitcoin-core client with version greater or equal to 0.17.1 with transaction index switched on (`txindex=1` in the `bitcoin.conf`).
|
||||
|
||||
@@ -105,9 +139,20 @@ To connect the 2nd HDD to the RaspiBlitz, the use of a Y cable to provide extra
|
||||
|
||||

|
||||
|
||||
## How do I generate a Debug Report?
|
||||
|
||||
If your RaspiBlitz is not working right and you like to get help from the community, its good to provide more debug information, so other can better diagnose your problem - please follow the following steps to generate a debug report:
|
||||
|
||||
- ssh into your raspiblitz as admin user with your password A
|
||||
- If you see the menu - use CTRL+C to get to the terminal
|
||||
- To generate debug report run: `./XXdebugLogs.sh`
|
||||
- Then copy all output beginning with `*** RASPIBLITZ LOGS ***` and share this
|
||||
|
||||
*PLEASE NOTICE: Its possible that this logs can contain private information (like IPs, node IDs, ...) - just share publicly what you feel OK with.*
|
||||
|
||||
## Why is my "final sync" taking so long?
|
||||
|
||||
First of all if you see a final sync over 90% and you can see from time to time small increase - you should be OK ... this can take some looong time to catch up with the network. Only in the case that you activly choose the `SYNC` option in the `Getting the Blockchain` a final sync under 90% is OK. If you did a torrent, a FTP or a copy from another computer and seeing under 90% somthing went wrong and the setup process is ignoring your prepared Blockchain and doing a full sync - which can almost take forever on a raspberryPi.
|
||||
First of all if you see a final sync over 90% and you can see from time to time small increase - you should be OK ... this can take some looong time to catch up with the network. Only in the case that you activly choose the `SYNC` option in the `Getting the Blockchain` a final sync under 90% is OK. If you did a torrent or a copy from another computer and seeing under 90% somthing went wrong and the setup process is ignoring your prepared Blockchain and doing a full sync - which can almost take forever on a raspberryPi.
|
||||
|
||||
So if something is wrong (like mentioned above) then try again from the beginning. You need to reset your HDD for a fresh start: SSH in as admin user. Abort the final sync info with CTRL+c to get to the terminal. There run `sudo /home/admin/XXcleanHDD.sh -all` and follow the script to delete all data in HDD. When finsihed power down with `sudo shutdown now`. Then make a fresh SD card from image and this time try another option to get the blockchain. If you run into trouble the second time, please report an issue on GitHub.
|
||||
|
||||
@@ -119,45 +164,45 @@ But there is one safe way to start: Store your LND wallet seed (list of words yo
|
||||
|
||||
Recovering the coins that you have in an active channel is a bit more complicated. Because you have to be sure that you really have an up to date backup of your channel state data. The problem is: If you post an old state of your channel, to the network this looks like an atempt to cheat, and your channel partner is allowed claim all the funds in the channel.
|
||||
|
||||
To really have a reliable backup, such feature needs to be part of the LND software. Almost every other solution would not be perfect. Thats why RaspiBlitz is not trying to provide a backup feature at the moment.
|
||||
To really have a reliable backup, such feature needs to be part of the LND software. Almost every other solution would not be perfect. Thats why RaspiBlitz is not trying to provide a backup feature at the moment. But if you feel experimental and you look for a continues backup you may want to check out the following script to integrate into your RaspiBlitz: https://github.com/vindard/lnd-backup/blob/master/do-lndbackup.sh
|
||||
|
||||
But you can try to backup at your own risk. All your Lightning Node data is within the `/mnt/hdd/lnd` directory. Just run a backup of that data when the lnd service is stopped -> `sudo systemctl stop lnd` Then on your laptop you go with the terminal into the directory you want to store the backup in and use the following SCP command to download:
|
||||
|
||||
`scp -r bitcoin@[LOCAL-IP-OF-RASPIBLITZ]:/mnt/hdd/lnd/ ./` use your password A
|
||||
|
||||
And if you want to put a LND backup state back. Make a fresh RaspiBlitz (new sd card image and a clean HDD), set it up until its ready (you see the status screen on LCD) and then go to terminal, stop lnd service with `sudo systemctl stop lnd` delete the content of the lnd data dir with `sudo rm -rf /mnt/hdd/lnd/*`. Then on your laptop being in terminal in the same directory you did the backup in (the backuped lnd directory is listed there) run the following SCP command:
|
||||
|
||||
`scp -r ./lnd/* bitcoin@[LOCAL-IP-OF-RASPIBLITZ]:/mnt/hdd/lnd/` use password A
|
||||
|
||||
No run a reboot with: `sudo shutdown -r now` ... LND may need some longer rescan after reboot, but then you should see your old channels and balances.
|
||||
|
||||
**Be aware that if backup is some hours/days old, channels could have been closed by the other party and it may take some time until you see funds back on-chain. If backup is somewhat older also the channel counter parties may have used your offline time to cheat you with an old state. And if your backup was not the latest state and LND is closing channels it could also been happening that you are posting an old channel state (seen as cheating) and funds of that channel get lost as punishment. So again .. this backup method can be risky, use with caution.**
|
||||
|
||||
## What is this mnemonic seed word list?
|
||||
|
||||
With the 24 word list given you by LND on wallet creation you can recover your private key (BIP 39). You should write it down and store it at a save place.
|
||||
|
||||
For more background on mnemonic seeds see this video: https://www.youtube.com/watch?v=wWCIQFNf_8g
|
||||
|
||||
## How does PASSWORD D effects the word seed?
|
||||
|
||||
On wallet creation you get asked if you want to protect your word seed list with an additional password. If you choose so, RaspiBlitz recommends you to use your PASSWORD D at this point.
|
||||
|
||||
To use a an additional password for your seed words is optional. If you choose so, you will need the password to recover your private key from your your seed words later on. Without this password your private key cannot be recovered from your seed words. So the password adds an additional layer of security, if someone finds your written down word list.
|
||||
How to backup LND data in a rescue situation see next question "How can I recover my coins from a failing RaspiBlitz?".
|
||||
|
||||
## How can I recover my coins from a failing RaspiBlitz?
|
||||
|
||||
You might run into a situation where your hardware fails or the software starts to act buggy. So you decide to setup a fresh RaspiBlitz, like in the chapter above "Update to a new SD Card Release" - but the closing channels and cashing out is not working anymore. So whats about the funds you already have on your failing setup?
|
||||
On a RaspiBlitz you have coins in your on-chain wallet (bitcoin wallet) and also coins in lightning channels. First we will try to recover all of them and even trying to keep your channels open with "Recover LND data". This that is not possible you can fall back to the second option "Recover from Wallet Seed".
|
||||
|
||||
There is not a perfect way yet to backup/recover your coins, but you can try the following to make the best out of the situation:
|
||||
### 1) Recover LND data
|
||||
|
||||
### 1) Recover from Wallet Seed
|
||||
To recover all your LND data you must still be able to SSH into the RaspiBlitz (minimum v1.1) and the HDD should be still useable/reachable (mounted) - even it shows some errors. If this is not possible anymore you should skip to the second option "Recover from Wallet Seed".
|
||||
|
||||
If you still can SSH in and HDD is readable, we can try to rescue/export your LND data (funds and channels) from a RaspiBlitz to then be able to restore it back to a fresh one. For this you can use the following procedure ...
|
||||
|
||||
To rescue/export your Lightning data from a RaspiBlitz:
|
||||
|
||||
* SSH into your RaspiBlitz and EXIT to terminal from the menu.
|
||||
* then run: `/home/admin/config.scripts/lnd.rescue.sh backup`
|
||||
* follow the instructions of the script.
|
||||
|
||||
This will create a lnd-rescue file (ends on gz.tar) that contains all the data from the LND. The script offers you a command to transfere the lnd-rescue file to your laptop. If transfere was successfull. You can now setup a fresh RaspiBlitz. Do all the setup until you have a clean new Lightning node running - just without any funding or channels.
|
||||
|
||||
Then to restore your old LND data and to recover your funds and channels:
|
||||
|
||||
* SSH into your new RaspiBlitz and EXIT to terminal from the menu.
|
||||
* then run: `/home/admin/config.scripts/lnd.rescue.sh restore`
|
||||
* follow the instructions of the script.
|
||||
|
||||
This script will offer you a way to transfere the lnd-rescue file from your laptop to the new RaspiBlitz and will restore the old data. LND gets then restarted for you and after some time it should show you the status screen again with your old funds and channels.
|
||||
|
||||
**Be aware that if backup is some hours old, channels could have been closed by the other party and it may take some time until you see funds back on-chain. If backup is somewhat older then 1 day also the channel counter parties may have used your offline time to cheat you with an old state. And if your backup was not the latest state it could also been happening that you are posting an old channel state (seen as cheating) and funds of that channel get lost as punishment. So again .. this backup method can be risky, use with caution. But its recommended to try in recover and rescue situations - its not for regular backups.**
|
||||
|
||||
### 2) Recover from Wallet Seed
|
||||
|
||||
Remember those 24 words you were writing down during the setup? Thats your "cipher seed" - now this words are important to recover your wallet. If you dont have them anymore: skip this chapter and read option 2. If you still have the cypher seed: good, but read the following carefully:
|
||||
|
||||
With the cypher seed you can recover the bitcoin wallet that LND was managing for you - but it does not contain all the details about the channels you have open - its just the key to your funding wallet. If you were able to close all channels or never opened any channels, then everything is OK and you can go on. If you had open channels with funds in there, the following is to consider:
|
||||
|
||||
* You now rely on your channel counter parts to force close the channel at one point. If they do, the coins will be available to use in your funding wallet again at one point in the future - after force close delay.
|
||||
* You now rely on your channel counter parts to force close the channel at one point. If they do, the coins will be available to use in your funding wallet again at one point in the future - after force close delay (but see also [#278](https://github.com/rootzoll/raspiblitz/issues/278) ).
|
||||
* If your channel counter parts never force close the channel (because they are offline too) your channel funds can be frozen forever.
|
||||
|
||||
So going this way there is a small risk, that you will not recover your funds. But normally if your channel counter parts are still online, see that you will not come back online and they have themselves some funds on their channel side with you: They have an incentive to force close the channel to make use of their funds again.
|
||||
@@ -178,19 +223,17 @@ Then give LND some time to rescan the blockchain. In the end you will have resto
|
||||
|
||||
*Important: If you see a zero balance for on-chain funds after restoring from seed ... see details discussed [here](https://github.com/rootzoll/raspiblitz/issues/278) - you might try setup fresh this time with bigger look-ahead number.*
|
||||
|
||||
### 2) LND Channel State Backup
|
||||
## What is this mnemonic seed word list?
|
||||
|
||||
This second option is very very risky and can lead to complete loss of funds. And it olny can work, if you can still access the HDD content of your failing RaspiBlitz. It should only be used if you lost your cypher seed for the option above, forgot your cypher seed encryption password or your old channel counter parts are offline, too.
|
||||
With the 24 word list given you by LND on wallet creation you can recover your private key (BIP 39). You should write it down and store it at a save place.
|
||||
|
||||
What you do is in priciple:
|
||||
- Make a copy of the HDD directory `/mnt/hdd/lnd`
|
||||
- Setup a fresh RaspiBlitz
|
||||
- Stop LND with `sudo systemctl stop lnd`
|
||||
- Replace the new `/mnt/hdd/lnd` with your backuped version
|
||||
- Make sure everything in `/mnt/hdd/lnd` is owned by bitcoin:bitcoin
|
||||
- Reboot the RaspiBlitz
|
||||
For more background on mnemonic seeds see this video: https://www.youtube.com/watch?v=wWCIQFNf_8g
|
||||
|
||||
This is highly experimental. And again: If you restore the LND with an backup that is not representing the latest channel state, this will trigger the lightning "penalty" mechanism - allowing your channel counter part to grab all the funds from a channel. Its a measure of last resort. But if its working for you, let us know.
|
||||
## How does PASSWORD D effects the word seed?
|
||||
|
||||
On wallet creation you get asked if you want to protect your word seed list with an additional password. If you choose so, RaspiBlitz recommends you to use your PASSWORD D at this point.
|
||||
|
||||
To use a an additional password for your seed words is optional. If you choose so, you will need the password to recover your private key from your your seed words later on. Without this password your private key cannot be recovered from your seed words. So the password adds an additional layer of security, if someone finds your written down word list.
|
||||
|
||||
## How do I change the Name/Alias of my lightning node
|
||||
|
||||
@@ -323,7 +366,7 @@ Also there are first free 3D open source files in this repo in the directory `ca
|
||||
|
||||
## Are those "Under-Voltage detected" warnings a problem?
|
||||
|
||||
When your USB power adapter for the RaspiBlitz delivers too low power those messages with "Under-Voltage detected" (undervoltage) are shortly seen on the display. If you see those just one or two times that's not OK, but can be in a tolerant window. Nevertheless make sure your USB power adapter can deliver at least 3A. If you still see those warnings maybe get a second USB Power adapter just for the HDD and power the HDD through a Y-Cable - see https://en.wikipedia.org/wiki/Y-cable#USB
|
||||
When your USB power adapter for the RaspiBlitz delivers too low power those messages with "Under-Voltage detected" (undervoltage) are shortly seen on the display. This can lead to data loss/corruption on the HDD. If you see those just one or two times that's not OK, but can be in a tolerant window. Nevertheless it make sure your USB power adapter can deliver at least 3A (big and stable is good). If you still see those warnings maybe get a second USB Power adapter just for the HDD and power the HDD through a Y-Cable - see https://en.wikipedia.org/wiki/Y-cable#USB or put a USB Hub with extra power between the raspberry and the HDD.
|
||||
|
||||
## Why do we need to download the blockchain and not syncing it?
|
||||
|
||||
@@ -339,10 +382,14 @@ The best way would be to build the sd card yourself. You use the script `build_s
|
||||
|
||||
To download a blockchain from a third party (torrent/ftp) is not optimal and for the future with more cheap & powerfull SingleBoardComputers we could get rid of this 'patch'.
|
||||
|
||||
The downloaded blockchain is pre-indexed and pre-validated. That should be practically secure enough, because if the user gets a "manipulated" blockchain it would not work after setup. The beginning of the downloaded blockchain needs to fit the genesis block (in bitcoind software) and the end of the downloaded blockchain needs not match with the rest of the bitcoin network state - hashes of new block distrubuted within the peer-2-peer network need to match the downloaded blockchain head. So if you downloaded a manipulated blockchain it would simply just don't work in practice. As long as you are not in a totally hostile environment where someone would be able to fake a whole network of peers and miners around you - this is secure enough for running a small funded full node to try out the lightning network.
|
||||
The downloaded blockchain is pre-indexed and pre-validated. That should be practically secure enough, because if the user gets a "manipulated" blockchain it would not work after setup. The beginning of the downloaded blockchain needs to fit the genesis block (in bitcoind software) and the end of the downloaded blockchain needs not match with the rest of the bitcoin network state - hashes of new block distrubuted within the peer-2-peer network need to match the downloaded blockchain head. So if you downloaded a manipulated blockchain it simply wouldn't work in practice. As long as you are not in a totally hostile environment where someone would be able to fake a whole network of peers and miners around you - this is secure enough for running a small funded full node to try out the lightning network.
|
||||
|
||||
If you dont trust the download or you want to run the RaspiBlitz in a more production like setup (on your own risk) then don't use the torrent/ftp download and choose the option to COPY the blockchain data from a more powerful computer (laptop or desktop) where you synced, verified and indexed the blockchain all by your yourself - see [README](README.md#4-copying-from-another-computer) for more details.
|
||||
|
||||
## Why is taking my torrent download of the blockchain so long?
|
||||
|
||||
Other users reported that opening up and forwarding the following port from their router to the RaspiBlitz helped speed up and getting started the torrent download: 6881-6889, 6969, 1337
|
||||
|
||||
## What is the "Base Torrent File"?
|
||||
|
||||
Inspired by the website getbitcoinblockchain.com we use one of their base torrent files to have a basic set of blocks - that will not change for the future. This torrent contains most of the data (the big file) and we dont need to change the torrent for a long time. This way the torrent can get establish a wide spread seeding and the torrent network can take the heavy load.
|
||||
@@ -491,6 +538,11 @@ Work Nodes for the process of producing a new sd card image release:
|
||||
|
||||
There is an experimental section in this GitHub that tries to build for other SingleBoardComputers. Feel free to try it out and share your experience: [dietpi/README.md](dietpi/README.md)
|
||||
|
||||
## Can I flip the screen?
|
||||
|
||||
For the default 3.5" LCD you need to edit the /boot/config.txt. Run `sudo nano /boot/config.txt`
|
||||
look for the line `dtoverlay=tft35a:rotate=270` towards the end. To flip the screen with 180 degrees change the line to `dtoverlay=tft35a:rotate=90` and reboot with `sudo reboot`. Reference: https://github.com/goodtft/LCD-show/issues/34
|
||||
|
||||
## How to setup fresh/clean/reset and not getting into recovery mode?
|
||||
|
||||
When you put in a sd card with a new/clean RaspiBlitz image the RaspiBlitz will get into recovery mode because it detects the old data on your HDD and assumes you just want to continue to work with this data.
|
||||
@@ -501,8 +553,54 @@ When the HDD is clean, then flash a new RaspiBlitz sd card and your setup should
|
||||
|
||||
## My blockchain data is corrupted - what can I do?
|
||||
|
||||
You could try to re-index, but that can take some very long time - multiple days or even weeks.
|
||||
You could try to re-index, but that can take some very long time - multiple days or even weeks. But there are other options:
|
||||
|
||||
Another option would be to delete the old blockchain and get a new one. See for details the FAQ question: [I have the full blockchain on another computer. How do I copy it to the RaspiBlitz?](FAQ.md#i-have-the-full-blockchain-on-another-computer-how-do-i-copy-it-to-the-raspiblitz). And even if you are not able to delete the data, first rename the undeletable folders and then follow the instructions.
|
||||
1. Copy Blockchain from another Computer
|
||||
|
||||
You can delete the old blockchain and get a new one. See for details the FAQ question: [I have the full blockchain on another computer. How do I copy it to the RaspiBlitz?](FAQ.md#i-have-the-full-blockchain-on-another-computer-how-do-i-copy-it-to-the-raspiblitz). And even if you are not able to delete the data, first rename the undeletable folders and then follow the instructions.
|
||||
|
||||
2. Re-Torrent download prepared Blockchain
|
||||
|
||||
You can also start a new Torrent-Download and replace the old blockchain with a new download once its finished. Go to terminal and run script `/mnt/hdd/50torrentHDD.sh`
|
||||
|
||||
3. Backup LND Data, make fresh Blitz, Replay LND Data
|
||||
|
||||
You can backup your channel and wallet data, make a complete fresh RaspiBlitz and after that one is setup you replace the LND data with your old one. Also make sure to check again on your power supply - it needs to deliver equal or more then 3A and should deliver a stable current. If you think your HDD or SD card is degrading - maybe this is a good time to replace. See for details the FAQ question: [How can I recover my coins from a failing RaspiBlitz?](FAQ.md#how-can-i-recover-my-coins-from-a-failing-raspiblitz)*
|
||||
|
||||
## Can I run the RaspiBlitz without a display/LCD?
|
||||
|
||||
The display is one of the nice features of the RaspiBlitz but the raspberry can un without it. Maybe not all add-on feature could be used to the full extend, but you can get started without the LCD and even plug it on later.
|
||||
|
||||
Normally with the LCD its easy to see your local IP changes and you can get started quickly. Without it needs a bit more digging thru your network - you can find a good tutorial on that on the RaspiBolt tutorial (origin of RaspiBlitz):
|
||||
|
||||
https://github.com/Stadicus/guides/blob/master/raspibolt/raspibolt_20_pi.md#connecting-to-the-network
|
||||
|
||||
*Please Note: Without a LCD-Hat you cannot simply use the HDMI as alternative, because screen signal is routed to the GPIO pins. On how to switch that back manually - see [waveshare documentation](https://www.waveshare.com/wiki/3.5inch_RPi_LCD_(A)).*
|
||||
|
||||
## I have two RaspiBlitz in my network - can they both be public?
|
||||
|
||||
Yes but you need to change at least on one RaspiBlitz the port number (for example to 9736) on one of your RaspiBlitzes - see how to change a port below. Then you can forward both ports from your home internet router to the matching RaspiBlitzes.
|
||||
|
||||
## How to change the public port LND/Lightning node is running on?
|
||||
|
||||
There is a experimental script you can call from the terminal that will make all changes for you ... see details here: https://github.com/rootzoll/raspiblitz/issues/100#issuecomment-466722712
|
||||
|
||||
## How to solve a "signature mismatch after caveat verification" error?
|
||||
|
||||
If you get this error by LND that means that something is wrong with the macaroons being used to communicate with LND .. see: https://github.com/lightningnetwork/lnd/blob/master/docs/macaroons.md
|
||||
|
||||
To fix this depends on where you get this error:
|
||||
|
||||
* If you get it in a mobile wallet, then redo the connection with the RaspiBlitz to get fresh macaroons.
|
||||
* If you get this from RTL or from the scripts of the SSH menus of the RaspiBlitz, then go to "EXPORT Macacroons and TLS.cert" in SSH main menu and choose the the "RESET Macaroons & TLS" option.
|
||||
|
||||
Also make sure to check again on your power supply - it needs to deliver equal or more then 3A and should deliver a stable current. If you think your HDD is degrading - maybe this is a good time to replace it. See for details the FAQ question: [How can I recover my coins from a failing RaspiBlitz?](FAQ.md#how-can-i-recover-my-coins-from-a-failing-raspiblitz)
|
||||
|
||||
## Why is my node not routing?
|
||||
|
||||
1. You don't have inbound liquidity
|
||||
2. Low uptime
|
||||
3. Capital is committed to competitive destinations
|
||||
4. Capital committed to destinations no one wants to send to
|
||||
5. Fees are too high
|
||||
6. Your inbound liquidity doesn't have good inbound liquidity itself
|
||||
41
README.md
41
README.md
@@ -1,7 +1,7 @@
|
||||
# RaspiBlitz
|
||||
*Build your own Lightning Node on a RaspberryPi with a nice Display.*
|
||||
|
||||
`Version 1.0 with lnd 0.5.2-beta and bitcoin 0.17.0.1 or litecoin 0.16.3.`
|
||||
`Version 1.1 with lnd 0.5.2-beta and bitcoin 0.17.0.1 or litecoin 0.16.3.`
|
||||
|
||||

|
||||
|
||||
@@ -38,8 +38,8 @@ The RaspiBlitz is build from the following parts:
|
||||
* RaspBerryPi 3 B+
|
||||
* 1TB Hard Drive
|
||||
* LCD-Display
|
||||
* Micro SD-Card 16GB
|
||||
* Powersupply >=3A (big & stable)
|
||||
* Micro SD-Card (min 16GB - go for quality)
|
||||
* Powersupply >=3A (choose big & stable output)
|
||||
* Cheap Casing
|
||||
|
||||
**All together under 150 USD / 130 EUR (depending on country & shop)**
|
||||
@@ -50,6 +50,7 @@ These are the community currated shopping lists based on country:
|
||||
|
||||
* [Germany](shoppinglist_de.md) *(reference shopping list)*
|
||||
* [USA](shoppinglist_usa.md)
|
||||
* [Canada](shoppinglist_ca.md)
|
||||
* [UK](shoppinglist_uk.md)
|
||||
* [Switzerland](shoppinglist_ch.md)
|
||||
* [France](shoppinglist_fr.md)
|
||||
@@ -79,15 +80,18 @@ Connect the HDD to one of the USB ports. In the end your RaspiBlitz should look
|
||||
|
||||
Your SD-card needs to contain the RaspiBlitz software. You can take the long road by [building the SD-card image yourself](#build-the-sd-card-image) or use the already prepared SD-Card image:
|
||||
|
||||
1. Download SD-Card image - **Version 1.0**:
|
||||
**-->** Download SD-Card image - **Version 1.1**:
|
||||
|
||||
HTTP: http://wiki.fulmo.org/downloads/raspiblitz-v1.0-2019-02-18.img.gz
|
||||
HTTP: http://wiki.fulmo.org/downloads/raspiblitz-v1.1-2019-03-18.img.gz
|
||||
|
||||
Torrent: https://github.com/rootzoll/raspiblitz/raw/master/raspiblitz-v1.0-2018-02-18.torrent
|
||||
Torrent: https://github.com/rootzoll/raspiblitz/raw/master/raspiblitz-v1.1-2019-03-18.torrent
|
||||
|
||||
SHA-256: 99ca96d214657388305ca117e2343ead45f9d907f185bef36c712a9a3e75568f
|
||||
SHA-256: b7a449ce6444f9e7e9fd05156ff09c70a6e200be0b5e580d3317049eefc4f3b7
|
||||
|
||||
2. Write the SD-Card image to your SD Card - if you need details, see here:
|
||||
* [How to update my RaspiBlitz?](FAQ.md#how-to-update-my-raspiblitz-after-version-098)
|
||||
* [Can I still get version 1.0 of RaspiBlitz?](FAQ.md#can-i-still-get-version-10-of-raspiblitz)
|
||||
|
||||
**-->** Write the SD-Card image to your SD Card - if you need details, see here:
|
||||
https://www.raspberrypi.org/documentation/installation/installing-images/README.md
|
||||
|
||||
## Boot your RaspiBlitz
|
||||
@@ -188,26 +192,17 @@ This is the default way to download the blockchain data for the RaspiBlitz. If y
|
||||
|
||||

|
||||
|
||||
*This can take a while - normally it should be done if you keep it running over night, but some users reported that it took up to 3 days. If it takes longer than that or you cannot see any progress (downloading starting) for over an hour after you started thsi option consider to cancel the download and choose the FTP download option.*
|
||||
*This can take a while - normally it should be done if you keep it running over night, but some users reported that it took up to 3 days. If it takes longer than that or you cannot see any progress (downloading starting) for over an hour after you started this option consider to cancel the download and go with the COPY option or retry fresh.*
|
||||
|
||||
It is safe to close the terminal window (shutdown your laptop) while the RaspiBlitz is doing the torrent download. To check on progress and to continue the setup you need to ssh back in again.
|
||||
|
||||
You can cancel the torrent download by keeping the key `x` pressed. Then the download will stop and you will be asked if you want to keep the progress so far. This makes sense if you need to shutdown the RaspiBlitz and you want to continue later or when you want to try another download option but want to keep the option to continue on torrent if the other option is slower or not working.
|
||||
|
||||
* [How can I avoid using a prepared blockchain and validate myself?](FAQ.md#how-can-i-avoid-using-a-prepared-blockchain-and-validate-myself)
|
||||
* [Why is taking my torrent download of the blockchain so long?]()
|
||||
* [Why is taking my torrent download of the blockchain so long?](FAQ.md#why-is-taking-my-torrent-download-of-the-blockchain-so-long)
|
||||
|
||||
#### 2. FTP-Download
|
||||
|
||||
You should try the FTP download if the torrent option is not working for you. Please be aware that the files are hosted on a central server by us and up-time and bandwidth is not guaranteed. If you start it, you should see the following screen:
|
||||
|
||||

|
||||
|
||||
It is safe to close the terminal window (shutdown your laptop) while the RaspiBlitz is doing the FTP download. To check on progress and to continue the setup you need to ssh back in again.
|
||||
|
||||
You can cancel the FTP download by keeping the key `x` pressed. Then the download will stop and you will be asked if you want to keep the progress so far. This makes sense if you need to shutdown the RaspiBlitz and you want to continue later or when you want to try another download option but want to keep the option to continue on FTP download if the other option is slower or not working.
|
||||
|
||||
#### 4. Copying from another Computer
|
||||
#### 2. Copying from another Computer
|
||||
|
||||
If you have another computer available (laptop, desktop or another raspiblitz) that already runs a working blockchain (with txindex=1) you can use this option to copy it over to the RaspiBlitz. This will be done over the local network by SCP (SSH file transfere). Choose this option and follow the given instructions.
|
||||
|
||||
@@ -215,11 +210,11 @@ This is also the best option if you dont like to run your RaspiBlitz with a prep
|
||||
|
||||
More details: [I have the full blockchain on another computer. How do I copy it to the RaspiBlitz?](FAQ.md#i-have-the-full-blockchain-on-another-computer-how-do-i-copy-it-to-the-raspiblitz)
|
||||
|
||||
#### 5. Cloning from a 2nd HDD
|
||||
#### 3. Cloning from a 2nd HDD
|
||||
|
||||
If is a backup way to transfere a blockchain from another computer if copying over the network is not working. More details on the setup can be found [here](FAQ.md#how-do-i-clone-the-blockchain-from-a-2nd-hdd).
|
||||
|
||||
#### 6. Sync from Bitcoin-Network
|
||||
#### 4. Sync from Bitcoin-Network
|
||||
|
||||
This is the fallback of last resort. A RaspberryPi has a very low power CPU and syncing+validating the blockchain directly with the peer2peer network can take multiple weeks - thats why the other options above where invented.
|
||||
|
||||
@@ -410,8 +405,6 @@ But this also comes with the following side effects:
|
||||
|
||||
To try it out just switch on the service - you can deactivate later on if its not working for you.
|
||||
|
||||
The TOR integration is experimental and at the moment there is no way to switch off TOR again.
|
||||
|
||||
##### RTL Webinterface
|
||||
|
||||
The RTL Webinterface is a LND Control Dashboard you can run in your browser with a nice GUI - it offers much more control over your Lightning node than the RaspiBlitu SSH menus. Its recommended to give it a try.
|
||||
|
||||
104
build_sdcard.sh
104
build_sdcard.sh
@@ -12,7 +12,7 @@
|
||||
|
||||
echo ""
|
||||
echo "*****************************************"
|
||||
echo "* RASPIBLITZ SD CARD IMAGE SETUP v1.00 *"
|
||||
echo "* RASPIBLITZ SD CARD IMAGE SETUP v1.1 *"
|
||||
echo "*****************************************"
|
||||
echo ""
|
||||
|
||||
@@ -71,6 +71,11 @@ else
|
||||
echo "OK running ${baseImage}"
|
||||
fi
|
||||
|
||||
# setting static DNS server
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/322#issuecomment-466733550
|
||||
sudo sed -i "s/^#static domain_name_servers=192.168.0.1*/static domain_name_servers=1.1.1.1/g" /etc/dhcpcd.conf
|
||||
systemctl daemon-reload
|
||||
|
||||
# fixing locales for build
|
||||
# https://github.com/rootzoll/raspiblitz/issues/138
|
||||
# https://daker.me/2014/10/how-to-fix-perl-warning-setting-locale-failed-in-raspbian.html
|
||||
@@ -127,6 +132,8 @@ if [ "${baseImage}" = "raspbian" ]; then
|
||||
sudo raspi-config nonint do_boot_wait 0
|
||||
# set WIFI country so boot does not block
|
||||
sudo raspi-config nonint do_wifi_country US
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/428#issuecomment-472822840
|
||||
echo "max_usb_current=1" | sudo tee -a /boot/config.txt
|
||||
# extra: remove some big packages not needed
|
||||
sudo apt-get remove -y --purge libreoffice* oracle-java* chromium-browser nuscratch scratch sonic-pi minecraft-pi python-pygame
|
||||
sudo apt-get clean
|
||||
@@ -148,6 +155,75 @@ sudo bash -c "echo '[Service]' >> /etc/systemd/system/getty@tty1.service.d/autol
|
||||
sudo bash -c "echo 'ExecStart=' >> /etc/systemd/system/getty@tty1.service.d/autologin.conf"
|
||||
sudo bash -c "echo 'ExecStart=-/sbin/agetty --autologin pi --noclear %I 38400 linux' >> /etc/systemd/system/getty@tty1.service.d/autologin.conf"
|
||||
|
||||
# change log rotates
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/394#issuecomment-471535483
|
||||
echo "/var/log/syslog" >> ./rsyslog
|
||||
echo "{" >> ./rsyslog
|
||||
echo " rotate 7" >> ./rsyslog
|
||||
echo " daily" >> ./rsyslog
|
||||
echo " missingok" >> ./rsyslog
|
||||
echo " notifempty" >> ./rsyslog
|
||||
echo " delaycompress" >> ./rsyslog
|
||||
echo " compress" >> ./rsyslog
|
||||
echo " postrotate" >> ./rsyslog
|
||||
echo " invoke-rc.d rsyslog rotate > /dev/null" >> ./rsyslog
|
||||
echo " endscript" >> ./rsyslog
|
||||
echo "}" >> ./rsyslog
|
||||
echo "" >> ./rsyslog
|
||||
echo "/var/log/mail.info" >> ./rsyslog
|
||||
echo "/var/log/mail.warn" >> ./rsyslog
|
||||
echo "/var/log/mail.err" >> ./rsyslog
|
||||
echo "/var/log/mail.log" >> ./rsyslog
|
||||
echo "/var/log/daemon.log" >> ./rsyslog
|
||||
echo "{" >> ./rsyslog
|
||||
echo " rotate 4" >> ./rsyslog
|
||||
echo " size=100M" >> ./rsyslog
|
||||
echo " missingok" >> ./rsyslog
|
||||
echo " notifempty" >> ./rsyslog
|
||||
echo " compress" >> ./rsyslog
|
||||
echo " delaycompress" >> ./rsyslog
|
||||
echo " sharedscripts" >> ./rsyslog
|
||||
echo " postrotate" >> ./rsyslog
|
||||
echo " invoke-rc.d rsyslog rotate > /dev/null" >> ./rsyslog
|
||||
echo " endscript" >> ./rsyslog
|
||||
echo "}" >> ./rsyslog
|
||||
echo "" >> ./rsyslog
|
||||
echo "/var/log/kern.log" >> ./rsyslog
|
||||
echo "/var/log/auth.log" >> ./rsyslog
|
||||
echo "{" >> ./rsyslog
|
||||
echo " rotate 4" >> ./rsyslog
|
||||
echo " size=100M" >> ./rsyslog
|
||||
echo " missingok" >> ./rsyslog
|
||||
echo " notifempty" >> ./rsyslog
|
||||
echo " compress" >> ./rsyslog
|
||||
echo " delaycompress" >> ./rsyslog
|
||||
echo " sharedscripts" >> ./rsyslog
|
||||
echo " postrotate" >> ./rsyslog
|
||||
echo " invoke-rc.d rsyslog rotate > /dev/null" >> ./rsyslog
|
||||
echo " endscript" >> ./rsyslog
|
||||
echo "}" >> ./rsyslog
|
||||
echo "" >> ./rsyslog
|
||||
echo "/var/log/user.log" >> ./rsyslog
|
||||
echo "/var/log/lpr.log" >> ./rsyslog
|
||||
echo "/var/log/cron.log" >> ./rsyslog
|
||||
echo "/var/log/debug" >> ./rsyslog
|
||||
echo "/var/log/messages" >> ./rsyslog
|
||||
echo "{" >> ./rsyslog
|
||||
echo " rotate 4" >> ./rsyslog
|
||||
echo " weekly" >> ./rsyslog
|
||||
echo " missingok" >> ./rsyslog
|
||||
echo " notifempty" >> ./rsyslog
|
||||
echo " compress" >> ./rsyslog
|
||||
echo " delaycompress" >> ./rsyslog
|
||||
echo " sharedscripts" >> ./rsyslog
|
||||
echo " postrotate" >> ./rsyslog
|
||||
echo " invoke-rc.d rsyslog rotate > /dev/null" >> ./rsyslog
|
||||
echo " endscript" >> ./rsyslog
|
||||
echo "}" >> ./rsyslog
|
||||
sudo mv ./rsyslog /etc/logrotate.d/rsyslog
|
||||
sudo chown root:root /etc/logrotate.d/rsyslog
|
||||
sudo service rsyslog restart
|
||||
|
||||
echo ""
|
||||
echo "*** SOFTWARE UPDATE ***"
|
||||
# based on https://github.com/Stadicus/guides/blob/master/raspibolt/raspibolt_20_pi.md#software-update
|
||||
@@ -158,6 +234,18 @@ sudo apt-get install -y htop git curl bash-completion jq dphys-swapfile
|
||||
# installs bandwidth monitoring for future statistics
|
||||
sudo apt-get install -y vnstat
|
||||
|
||||
# prepare for BTRFS data drive raid
|
||||
sudo apt-get install -y btrfs-tools
|
||||
|
||||
# prepare for display graphics mode
|
||||
# see https://github.com/rootzoll/raspiblitz/pull/334
|
||||
sudo apt-get install -y fbi
|
||||
|
||||
# prepare dor display service
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/88#issuecomment-471342311
|
||||
sudo apt-get install -y redis-server
|
||||
sudo -H pip3 install redis
|
||||
|
||||
echo ""
|
||||
echo "*** ADDING MAIN USER admin ***"
|
||||
# based on https://github.com/Stadicus/guides/blob/master/raspibolt/raspibolt_20_pi.md#adding-main-user-admin
|
||||
@@ -243,11 +331,14 @@ then
|
||||
echo "!!! FAIL !!! Download laanwj-releases.asc not success."
|
||||
exit 1
|
||||
fi
|
||||
gpg ./laanwj-releases.asc
|
||||
fingerprint=$(gpg ./laanwj-releases.asc 2>/dev/null | grep "${laanwjPGP}" -c)
|
||||
if [ ${fingerprint} -lt 1 ]; then
|
||||
echo ""
|
||||
echo "!!! BUILD FAILED --> Bitcoin download PGP author not OK"
|
||||
exit 1
|
||||
echo "!!! BUILD WARNING --> Bitcoin PGP author not as expected"
|
||||
echo "Should contain laanwjPGP: ${laanwjPGP}"
|
||||
echo "PRESS ENTER to TAKE THE RISK if you think all is OK"
|
||||
read key
|
||||
fi
|
||||
gpg --import ./laanwj-releases.asc
|
||||
sudo -u admin wget https://bitcoin.org/bin/bitcoin-core-${bitcoinVersion}/SHA256SUMS.asc
|
||||
@@ -332,11 +423,14 @@ if [ "${binaryChecksum}" != "${lndSHA256}" ]; then
|
||||
fi
|
||||
|
||||
# check gpg finger print
|
||||
gpg ./pgp_keys.asc
|
||||
fingerprint=$(gpg ./pgp_keys.asc 2>/dev/null | grep "${olaoluwaPGP}" -c)
|
||||
if [ ${fingerprint} -lt 1 ]; then
|
||||
echo ""
|
||||
echo "!!! BUILD FAILED --> LND download author PGP not OK"
|
||||
exit 1
|
||||
echo "!!! BUILD WARNING --> Bitcoin PGP author not as expected"
|
||||
echo "Should contain olaoluwaPGP: ${olaoluwaPGP}"
|
||||
echo "PRESS ENTER to TAKE THE RISK if you think all is OK"
|
||||
read key
|
||||
fi
|
||||
gpg --import ./pgp_keys.asc
|
||||
sleep 3
|
||||
|
||||
BIN
case.3dprint/standard/RaspiBlitz_Standard_Bottom.stl
Normal file
BIN
case.3dprint/standard/RaspiBlitz_Standard_Bottom.stl
Normal file
Binary file not shown.
BIN
case.3dprint/standard/RaspiBlitz_Standard_Top.stl
Normal file
BIN
case.3dprint/standard/RaspiBlitz_Standard_Top.stl
Normal file
Binary file not shown.
126
dietpi/Odroid_HC1_HC2.md
Normal file
126
dietpi/Odroid_HC1_HC2.md
Normal file
@@ -0,0 +1,126 @@
|
||||
|
||||
# ⚡️ RaspiBlitz-on-DietPi ⚡️
|
||||
# For the Odroid HC1 / HC2 / XU3 / XU4
|
||||
|
||||

|
||||
|
||||
## There are 3 options provided:
|
||||
* a trusted fully prebuilt SDcard image
|
||||
* building your own SDcard from an updated DietPi image.
|
||||
* Build your own SDcard from the image downloaded from [Dietpi.com](dietpi.com#download)
|
||||
---
|
||||
### Download the fully prebuilt RaspiBlitz-on-DietPi SDcard image
|
||||
* [torrent](https://github.com/openoms/raspiblitz/blob/raspiblitz-dev/dietpi/RaspiBlitz1.0_OdroidHC1_DietPi6.21.1.torrent)
|
||||
* [mega.nz link](https://mega.nz/#F!EVNAAQiB!ZyLHP2dJMRSVjZOTCQMIYA)
|
||||
|
||||
sha256sum RaspiBlitz1.0_OdroidHC1_DietPi6.21.1.img: 96ee8700f52a12fb5b13fab3fffcdcf5d364c6dd16c580d969e421cef2cd7cc2
|
||||
|
||||
Steps to run:
|
||||
- download the .img file,
|
||||
- burn to a 16 GB SD with [Etcher](https://www.balena.io/etcher/)
|
||||
- extend the rootFS partition with a partition manager (disks, Gparted, etc.)
|
||||
- boot the Odroid with the SDcard
|
||||
- login with `ssh admin@at.your.raspiblitz.ip`
|
||||
password: `raspiblitz`
|
||||
|
||||
Using this image you can skip the rest of this guide as it is mostly about how this image was built.
|
||||
|
||||
The setup continues with the [RaspiBlitz Setup Process](https://github.com/rootzoll/raspiblitz/blob/master/README.md#setup-process-detailed-documentation)
|
||||
|
||||
---
|
||||
### Download the updated DietPi image
|
||||
|
||||
For the Odroid HC1 / HC2 / XU3 / XU4 a v6.20.6 DietPi image with fail2ban installed is uploaded [here](
|
||||
https://mega.nz/#!AcdVBAbR!O-W3jP5LUgw7lMY8S9XcBWcKX3IhRNAAFmaYzDXIUC0).
|
||||
sha256sum DietPi_v6.20.6_OdroidXU4-ARMv7-Stretch.img:
|
||||
1459b91f66b9db98f3437c31231e44497b7b7dcd9146d2cc41a3da653f9a9215
|
||||
|
||||
* Burn the image to the SDCard with [Etcher](https://www.balena.io/etcher/) and extend the rootfs partition to the size of your card with a partition manager (disks, Gparted, etc).
|
||||
|
||||
* Insert the SDcard into the Odroid.
|
||||
|
||||
* Power up and continue with [running the RaspiBlitz build_sdcard.sh script](#Run-the-RaspiBlitz-build_sdcard.sh-script)
|
||||
|
||||
---
|
||||
|
||||
### Build your own DietPi image:
|
||||
|
||||
Watch out this is an ardous process.
|
||||
Updating from a v6.14 DietPi image is causing a bootloop under some circumstances. Will be sorted once the current, >6.2 version is uploaded for the Odroids.
|
||||
|
||||
* For the Odroid HC1 / HC2 / XU3 / XU4 the start is this image:
|
||||
https://dietpi.com/downloads/images/DietPi_OdroidXU4-ARMv7-Stretch.7z
|
||||
* Burn it to the SD with [Etcher](https://www.balena.io/etcher/)
|
||||
|
||||
|
||||
* In the desktop terminal on Linux / MacOS or Putty on Windows:
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
password: `dietpi`
|
||||
Getting started with DietPi: https://dietpi.com/phpbb/viewtopic.php?f=8&t=9#p9
|
||||
|
||||
* Ok > Cancel > Cancel
|
||||
automatic apt update & apt upgrade and asks to reboot
|
||||

|
||||
|
||||
* Log back in:
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
password: `dietpi`
|
||||
* after the update the ssh keys might change:
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
run (can be copied from the terminal output):
|
||||
`ssh-keygen -f "/home/[your-linux-username]/.ssh/known_hosts" -R "dietpi.IP"`
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
yes >
|
||||
password: `dietpi`
|
||||
|
||||
* At this point if the DietPi OS was not updated from 6.14 it does not manage to save settings going forward.
|
||||
Exit the software installer (press Tab to jump to Exit)
|
||||

|
||||
|
||||
* in the bash prompt run:
|
||||
`dietpi-update`
|
||||
Ok > Cancel the recovery point
|
||||
update > Opt out of survey > Ok
|
||||
Reboots
|
||||
|
||||
* Log back in:
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
password: `dietpi`
|
||||
* In the DietPi software menu install fail2ban and make OpenSSH server the default SSH server.
|
||||
Ok > Cancel > Cancel
|
||||
Search `fail2ban` > Space to select > Enter
|
||||
SSH server > switch from Dropbear to the OpenSSH-server
|
||||
Install > Ok
|
||||
Opt out of survey > Ok
|
||||
Reboots again
|
||||
|
||||
* Log back in:
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
password: `dietpi`
|
||||
Changing the SSH server will change the SSH keys again. To clear:
|
||||
`ssh-keygen -f "/home/[your-linux-username]/.ssh/known_hosts" -R "dietpi.IP"`
|
||||
|
||||
|
||||
### Run the RaspiBlitz build_sdcard.sh script
|
||||
|
||||
* Format of the command to build the SDcard:
|
||||
`wget https://raw.githubusercontent.com/[GITHUB-USERNAME]/raspiblitz/[BRANCH]/build_sdcard.sh && sudo bash build_sdcard.sh [BRANCH] [GITHUB-USERNAME]`
|
||||
If you are working from a forked repo be aware of that the fork needs to be called `raspiblitz` for the git downloads to work.
|
||||
|
||||
* Run the forked version of @openoms:
|
||||
`wget https://raw.githubusercontent.com/openoms/raspiblitz/raspiblitz-dev/build_sdcard.sh && sudo bash build_sdcard.sh raspiblitz-dev openoms`
|
||||
This will take a couple minutes depending on your internet ceonnection and the processing power of the SBC.
|
||||
|
||||
* Restart when done and log back in now as `admin`:
|
||||
`ssh admin@[IP-OF-DROIDBLITZ]`
|
||||
password: `raspiblitz`
|
||||
|
||||
* From here he setup continues with the [RaspiBlitz Setup Process](https://github.com/rootzoll/raspiblitz/blob/master/README.md#setup-process-detailed-documentation)
|
||||
|
||||
---
|
||||
### Examples of copying the blockchain data from a HDD using a powered USB to SATA adapter
|
||||
|
||||

|
||||

|
||||
116
dietpi/README.md
116
dietpi/README.md
@@ -1,4 +1,4 @@
|
||||
# ⚡️ RaspiBlitz on DietPi ⚡️
|
||||
# ⚡️ RaspiBlitz-on-DietPi ⚡️
|
||||
# A hardware agnostic platform
|
||||
|
||||
|
||||
@@ -9,105 +9,69 @@ This guide was tested on:
|
||||
* Raspberry Pi 3 B Plus - no LCD support so far
|
||||
* hoping to extend this list with more compatible boards especially the ROCK64
|
||||
|
||||
See the hardware specs: [hardware specs](hw_comparison.md).
|
||||
See the [hardware comparison](hw_comparison.md).
|
||||
|
||||
---
|
||||
|
||||
|
||||

|
||||
### Downloads and walkthrough for the [Odroid HC1 / HC2 / XU3 / XU4](Odroid_HC1_HC2.md)
|
||||
---
|
||||
## General guide for the RaspiBlitz-on-DietPi
|
||||
|
||||
### Setting up the DietPi OS
|
||||
|
||||
## Setting up the DietPi OS
|
||||
Getting started with DietPi: https://dietpi.com/phpbb/viewtopic.php?f=8&t=9#p9
|
||||
|
||||
### Download the updated DietPi image
|
||||
* Start with an ARM based Single Board Computer listed on DietPi.com.
|
||||
At least 1GB RAM is recommended.
|
||||
Look for the SD card image for the specific SBC in the [download section](https://dietpi.com/#download).
|
||||
|
||||
For the Odroid HC1 / HC2 / XU3 / XU4 a v6.20.6 DietPi image with fail2ban installed is uploaded here:
|
||||
https://mega.nz/#!AcdVBAbR!O-W3jP5LUgw7lMY8S9XcBWcKX3IhRNAAFmaYzDXIUC0
|
||||
* Burn the image to the SDCard with [Etcher](https://www.balena.io/etcher/) and extend the rootfs partition to the size of your card with a partition manager.
|
||||
|
||||
Burn the SDCard with [Etcher](https://www.balena.io/etcher/) and extend the rootfs partition to the size of your card with a partition manager.
|
||||
* Insert the SDcard into your SBC.
|
||||
|
||||
Insert the SDcard into the Odroid.
|
||||
|
||||
Power up and continue with: [Run the DietPi optimized Raspiblitz SDcard build script](#Run-the-DietPi-optimized-Raspiblitz-SDcard-build-script)
|
||||
|
||||
### Build your own DietPi image:
|
||||
|
||||
For the Odroid HC1 / HC2 / XU3 / XU4 download this image:
|
||||
https://dietpi.com/downloads/images/DietPi_OdroidXU4-ARMv7-Stretch.7z
|
||||
and burn it to the SD with [Etcher](https://www.balena.io/etcher/)
|
||||
|
||||
Getting started with DietPi: https://dietpi.com/phpbb/viewtopic.php?f=8&t=9#p9
|
||||
|
||||
In the desktop terminal on Linux / MacOS or Putty on Windows:
|
||||
* Connect the HDD with a powered suitably powered adapter.
|
||||
A USB 2.0 port will not be able to power an HDD so you will need extra cable
|
||||
If you are connecting the HDD to a USB 3.0 port and have an at least 2A power supply, you might be able to run without an extra cable.
|
||||
|
||||
* Power up and log in with the desktop terminal on Linux / MacOS or Putty on Windows:
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
password: `dietpi`
|
||||
|
||||
Ok > Cancel > Cancel
|
||||
automatic apt update & apt upgrade and asks to reboot
|
||||

|
||||
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
after the previous update the ssh keys might change:
|
||||
* You might be asked about updating DietPi. This is not a straightforward process if starting from a version <6.20. Try to update, it is best to build on the latest version.
|
||||
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
|
||||
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
|
||||
|
||||
run (can be copied from the terminal output):
|
||||
* In the DietPi software menu install `fail2ban` and make `OpenSSH server` the default SSH server.
|
||||
Changing the SSH server will change the SSH keys again. To clear:
|
||||
`ssh-keygen -f "/home/[your-linux-username]/.ssh/known_hosts" -R "dietpi.IP"`
|
||||
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
yes >
|
||||
password: `dietpi`
|
||||
|
||||
At this point if the DietPi was not updated from 6.14 it does not manage to save settings going forward.
|
||||
Exit the sotware installer (press Tab to jump to Exit)
|
||||

|
||||
|
||||
in the bash prompt run:
|
||||
`dietpi-update`
|
||||
>Ok > Cancel the recovery point
|
||||
update > >Opt out of survey > Ok
|
||||
Reboots
|
||||
|
||||
* After every reboot log back in:
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
password: `dietpi`
|
||||
password: `dietpi`
|
||||
|
||||
>Ok > Cancel > Cancel
|
||||
Search `fail2ban` > Space to select > Enter
|
||||
> Install > Ok
|
||||
>Opt out of survey > Ok
|
||||
Reboots again
|
||||
|
||||
## Run the DietPi optimized Raspiblitz SDcard build script
|
||||
|
||||
In the desktop terminal in Linux / MacOS or Putty in Windows:
|
||||
|
||||
`ssh root@[IP-OF-DIETPI]`
|
||||
password: `dietpi`
|
||||
Should end up here on version v6.20.6 or higher:
|
||||
* Should end up here on version v6.20.6 or higher:
|
||||

|
||||
|
||||
run the SDcard build script in this format:
|
||||
`wget https://raw.githubusercontent.com/[GITHUB-USERNAME]/raspiblitz/[BRANCH]/build_sdcard.sh && sudo bash build_sdcard.sh [BRANCH] [GITHUB-USERNAME]`
|
||||
|
||||
Be aware of that the fork needs to be called `raspiblitz` for the git download to work.
|
||||
if you intend to use @openoms`s forked version:
|
||||
### Run the RaspiBlitz build_sdcard.sh script
|
||||
|
||||
`wget https://raw.githubusercontent.com/openoms/raspiblitz/raspiblitz-dev/build_sdcard.sh && sudo bash build_sdcard.sh raspiblitz-dev openoms`
|
||||
* Use this format to build the SDcard with the Raspiblitz script:
|
||||
`wget https://raw.githubusercontent.com/[GITHUB-USERNAME]/raspiblitz/[BRANCH]/build_sdcard.sh && sudo bash build_sdcard.sh [BRANCH] [GITHUB-USERNAME]`
|
||||
If you are working from a forked repo be aware of that the fork needs to be called `raspiblitz` for the git downloads to work.
|
||||
|
||||
See my example output on the Odorid HC1: [HC1_sdcard_build_output](logs/HC1_sdcard_build_output)
|
||||
* Run the forked version of @openoms:
|
||||
`wget https://raw.githubusercontent.com/openoms/raspiblitz/raspiblitz-dev/build_sdcard.sh && sudo bash build_sdcard.sh raspiblitz-dev openoms`
|
||||
This will take a couple minutes depending on your internet connection and the processing power of the SBC.
|
||||
|
||||
* Restart when done and log back in now as `admin`:
|
||||
`ssh admin@[IP-OF-DROIDBLITZ]`
|
||||
password: raspiblitz
|
||||
password: `raspiblitz`
|
||||
|
||||
### The setup continues as described in the RaspiBlitz setup [README.md](/README.md#documentation)
|
||||
* From here he setup continues with the [RaspiBlitz Setup Process](https://github.com/rootzoll/raspiblitz/blob/master/README.md#setup-process-detailed-documentation)
|
||||
|
||||
### Examples of copying the blockchain data from a HDD using a powered USB to SATA adapter
|
||||
|
||||

|
||||

|
||||

|
||||
|
||||
---
|
||||
### Useful commands for debugging:
|
||||
To test a new configuration run XXcleanHDD.sh and strictly restart
|
||||
(this makes _bootstrap.sh and 00mainMenu.sh run in the right order)
|
||||
@@ -119,14 +83,13 @@ To test a new configuration run XXcleanHDD.sh and strictly restart
|
||||
`sudo tail -n100 /mnt/hdd/bitcoin/debug.log` - shows the last 100 lines
|
||||
`sudo systemctl status lnd`
|
||||
`sudo journalctl -f -u lnd`
|
||||
`./home/admin/XXdebugLogs.sh` - debug log collection on the raspiblitz
|
||||
`./home/admin/XXdebugLogs.sh` - debug log collection on the RaspiBlitz
|
||||
|
||||
---
|
||||
|
||||
Currently the DietPi update process has a bug causing bootloop if left alone. Will be sorted once the current, >6.2 version is uploaded as the starting image.
|
||||
|
||||
## Excerpts from the default dietpi.txt
|
||||
(https://github.com/Fourdee/DietPi/blob/master/dietpi.txt) to be used once the automatic install is feasible.
|
||||
## Excerpts from the default [dietpi.txt](https://github.com/Fourdee/DietPi/blob/master/dietpi.txt)
|
||||
to be used for a fully automatic SDcard building process.
|
||||
|
||||
### Automate installation with the dietpi.txt
|
||||
Need to copy to SDcard /boot/dietpi.txt after burning the image with Etcher.
|
||||
@@ -158,3 +121,6 @@ Allows you to automatically execute a custom script at the end of DietPi install
|
||||
Option 1 = Copy your script to /boot/Automation_Custom_Script.sh and it will be executed automatically.
|
||||
Option 2 = Host your script online, then use AUTO_SETUP_CUSTOM_SCRIPT_EXEC=http://myweb.com/myscript.sh, it will be downloaded and executed automatically. | 0=disabled
|
||||
NB: Executed script log /var/tmp/dietpi/logs/dietpi-automation_custom_script.log
|
||||
|
||||
### Guide to clone your SD-cards in Windows, MacOS and Linux and shrink the image in Linux:
|
||||
https://beebom.com/how-clone-raspberry-pi-sd-card-windows-linux-macos/
|
||||
262
dietpi/RaspiBlitz1.0_OdroidHC1_DietPi6.21.1.torrent
Normal file
262
dietpi/RaspiBlitz1.0_OdroidHC1_DietPi6.21.1.torrent
Normal file
File diff suppressed because one or more lines are too long
@@ -1,986 +0,0 @@
|
||||
────────────────────────────────────────────────
|
||||
DietPi | Mon 04/02/19 - 10:02
|
||||
────────────────────────────────────────────────
|
||||
v6.20.6 | Odroid XU3/XU4/HC1/HC2 (armv7l)
|
||||
────────────────────────────────────────────────
|
||||
eth0 | 192.168.1.175
|
||||
────────────────────────────────────────────────
|
||||
DietPi Team : Daniel Knight (founder), MichaIng, K-Plan
|
||||
Image : DietPi Core Team (pre-image: Meveric)
|
||||
Web : https://DietPi.com | https://twitter.com/dietpi_
|
||||
Patreon Legends : PINE64 community
|
||||
Donate : https://DietPi.com/#donate
|
||||
DietPi Hosting : Powered by https://MyVirtualServer.com
|
||||
|
||||
dietpi-launcher = All the DietPi programs in one place.
|
||||
dietpi-config = Feature rich configuration tool for your device.
|
||||
dietpi-software = Select optimized software for installation.
|
||||
htop = Resource monitor.
|
||||
cpu = Shows CPU information and stats.
|
||||
|
||||
root@DietPi:~# wget https://raw.githubusercontent.com/openoms/raspiblitz/raspiblitz-dev/build.sdcard/raspbianStretchDesktop.sh && sudo bash raspbianStretchDesktop.sh raspiblitz-dev openoms
|
||||
--2019-02-04 10:02:34-- https://raw.githubusercontent.com/openoms/raspiblitz/raspiblitz-dev/build.sdcard/raspbianStretchDesktop.sh
|
||||
Resolving raw.githubusercontent.com (raw.githubusercontent.com)... 151.101.60.133
|
||||
Connecting to raw.githubusercontent.com (raw.githubusercontent.com)|151.101.60.133|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 21481 (21K) [text/plain]
|
||||
Saving to: ‘raspbianStretchDesktop.sh’
|
||||
|
||||
raspbianStretchDesktop.sh 100%[====================================>] 20.98K --.-KB/s in 0.03s
|
||||
|
||||
2019-02-04 10:02:34 (649 KB/s) - ‘raspbianStretchDesktop.sh’ saved [21481/21481]
|
||||
|
||||
|
||||
*****************************************
|
||||
* RASPIBLITZ SD CARD IMAGE SETUP v0.99 *
|
||||
*****************************************
|
||||
|
||||
*** CHECK INPUT PARAMETERS ***
|
||||
will use code from branch --> 'raspiblitz-dev'
|
||||
*** CHECK INPUT PARAMETERS ***
|
||||
will use code from user --> 'openoms'
|
||||
|
||||
*** CHECK BASE IMAGE ***
|
||||
Check if Linux ARM based ...
|
||||
OK running on Linux ARM architecture.
|
||||
Detect Base Image ...
|
||||
OK running dietpi
|
||||
|
||||
*** FIXING LOCALES FOR BUILD ***
|
||||
Generating locales (this might take a while)...
|
||||
en_GB.UTF-8... done
|
||||
en_US.ISO-8859-1... done
|
||||
en_US.UTF-8... done
|
||||
Generation complete.
|
||||
|
||||
*** UPDATE DEBIAN ***
|
||||
Hit:1 http://fuzon.co.uk/meveric all InRelease
|
||||
Hit:2 http://fuzon.co.uk/meveric stretch InRelease
|
||||
Hit:3 https://oph.mdrjr.net/meveric all InRelease
|
||||
Ign:4 https://cdn-aws.deb.debian.org/debian stretch InRelease
|
||||
Get:5 https://cdn-aws.deb.debian.org/debian stretch-updates InRelease [91.0 kB]
|
||||
Hit:6 https://cdn-aws.deb.debian.org/debian-security stretch/updates InRelease
|
||||
Get:7 https://cdn-aws.deb.debian.org/debian stretch-backports InRelease [91.8 kB]
|
||||
Hit:8 https://cdn-aws.deb.debian.org/debian stretch Release
|
||||
Fetched 183 kB in 3s (58.9 kB/s)
|
||||
Reading package lists... Done
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
Calculating upgrade... Done
|
||||
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
|
||||
|
||||
*** PREPARE DietPi ***
|
||||
renaming dietpi user to pi
|
||||
The user `pi' is already a member of `sudo'.
|
||||
install pip
|
||||
Hit:1 http://fuzon.co.uk/meveric all InRelease
|
||||
Hit:2 http://fuzon.co.uk/meveric stretch InRelease
|
||||
Hit:3 https://oph.mdrjr.net/meveric all InRelease
|
||||
Ign:4 https://cdn-aws.deb.debian.org/debian stretch InRelease
|
||||
Hit:5 https://cdn-aws.deb.debian.org/debian stretch-updates InRelease
|
||||
Hit:6 https://cdn-aws.deb.debian.org/debian-security stretch/updates InRelease
|
||||
Hit:7 https://cdn-aws.deb.debian.org/debian stretch-backports InRelease
|
||||
Hit:8 https://cdn-aws.deb.debian.org/debian stretch Release
|
||||
Reading package lists... Done
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following packages will be REMOVED:
|
||||
fail2ban
|
||||
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
|
||||
After this operation, 1,321 kB disk space will be freed.
|
||||
(Reading database ... 15499 files and directories currently installed.)
|
||||
Removing fail2ban (0.9.6-2) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following additional packages will be installed:
|
||||
binutils cpp cpp-6 dpkg-dev g++ g++-6 gcc gcc-6 libasan3 libatomic1 libc-dev-bin libc6-dev libcc1-0
|
||||
libdpkg-perl libgcc-6-dev libgdbm3 libgomp1 libisl15 libmpc3 libmpfr4 libperl5.24 libstdc++-6-dev
|
||||
libubsan0 linux-libc-dev make patch perl perl-modules-5.24 xz-utils
|
||||
Suggested packages:
|
||||
binutils-doc cpp-doc gcc-6-locales debian-keyring gcc-6-doc libstdc++6-6-dbg gcc-multilib
|
||||
manpages-dev autoconf automake libtool flex bison gdb gcc-doc libgcc1-dbg libgomp1-dbg libitm1-dbg
|
||||
libatomic1-dbg libasan3-dbg liblsan0-dbg libtsan0-dbg libubsan0-dbg libcilkrts5-dbg libmpx2-dbg
|
||||
libquadmath0-dbg glibc-doc libstdc++-6-doc make-doc ed diffutils-doc perl-doc
|
||||
libterm-readline-gnu-perl | libterm-readline-perl-perl
|
||||
Recommended packages:
|
||||
fakeroot libalgorithm-merge-perl manpages manpages-dev libfile-fcntllock-perl netbase rename
|
||||
The following NEW packages will be installed:
|
||||
binutils build-essential cpp cpp-6 dpkg-dev g++ g++-6 gcc gcc-6 libasan3 libatomic1 libc-dev-bin
|
||||
libc6-dev libcc1-0 libdpkg-perl libgcc-6-dev libgdbm3 libgomp1 libisl15 libmpc3 libmpfr4
|
||||
libperl5.24 libstdc++-6-dev libubsan0 linux-libc-dev make patch perl perl-modules-5.24 xz-utils
|
||||
0 upgraded, 30 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 36.8 MB of archives.
|
||||
After this operation, 138 MB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian-security stretch/updates/main armhf perl-modules-5.24 all 5.24.1-3+deb9u5 [2,722 kB]
|
||||
Get:2 https://cdn-aws.deb.debian.org/debian stretch/main armhf libgdbm3 armhf 1.8.3-14 [28.5 kB]
|
||||
Get:3 https://cdn-aws.deb.debian.org/debian-security stretch/updates/main armhf libperl5.24 armhf 5.24.1-3+deb9u5 [2,850 kB]
|
||||
Get:4 https://cdn-aws.deb.debian.org/debian-security stretch/updates/main armhf perl armhf 5.24.1-3+deb9u5 [219 kB]
|
||||
Get:5 https://cdn-aws.deb.debian.org/debian stretch/main armhf xz-utils armhf 5.2.2-1.2+b1 [263 kB]
|
||||
Get:6 https://cdn-aws.deb.debian.org/debian stretch/main armhf binutils armhf 2.28-5 [3,900 kB]
|
||||
Get:7 https://cdn-aws.deb.debian.org/debian stretch/main armhf libc-dev-bin armhf 2.24-11+deb9u3 [253 kB]
|
||||
Get:8 https://cdn-aws.deb.debian.org/debian stretch/main armhf linux-libc-dev armhf 4.9.130-2 [1,350 kB]
|
||||
Get:9 https://cdn-aws.deb.debian.org/debian stretch/main armhf libc6-dev armhf 2.24-11+deb9u3 [1,995 kB]
|
||||
Get:10 https://cdn-aws.deb.debian.org/debian stretch/main armhf libisl15 armhf 0.18-1 [441 kB]
|
||||
Get:11 https://cdn-aws.deb.debian.org/debian stretch/main armhf libmpfr4 armhf 3.1.5-1 [536 kB]
|
||||
Get:12 https://cdn-aws.deb.debian.org/debian stretch/main armhf libmpc3 armhf 1.0.3-1+b2 [32.6 kB]
|
||||
Get:13 https://cdn-aws.deb.debian.org/debian stretch/main armhf cpp-6 armhf 6.3.0-18+deb9u1 [5,239 kB]
|
||||
Get:14 https://cdn-aws.deb.debian.org/debian stretch/main armhf cpp armhf 4:6.3.0-4 [18.7 kB]
|
||||
Get:15 https://cdn-aws.deb.debian.org/debian stretch/main armhf libcc1-0 armhf 6.3.0-18+deb9u1 [25.2 kB]
|
||||
Get:16 https://cdn-aws.deb.debian.org/debian stretch/main armhf libgomp1 armhf 6.3.0-18+deb9u1 [64.6 kB]
|
||||
Get:17 https://cdn-aws.deb.debian.org/debian stretch/main armhf libatomic1 armhf 6.3.0-18+deb9u1 [6,010 B]
|
||||
Get:18 https://cdn-aws.deb.debian.org/debian stretch/main armhf libasan3 armhf 6.3.0-18+deb9u1 [284 kB]
|
||||
Get:19 https://cdn-aws.deb.debian.org/debian stretch/main armhf libubsan0 armhf 6.3.0-18+deb9u1 [92.9 kB]
|
||||
Get:20 https://cdn-aws.deb.debian.org/debian stretch/main armhf libgcc-6-dev armhf 6.3.0-18+deb9u1 [531 kB]
|
||||
Get:21 https://cdn-aws.deb.debian.org/debian stretch/main armhf gcc-6 armhf 6.3.0-18+deb9u1 [5,511 kB]
|
||||
Get:22 https://cdn-aws.deb.debian.org/debian stretch/main armhf gcc armhf 4:6.3.0-4 [5,212 B]
|
||||
Get:23 https://cdn-aws.deb.debian.org/debian stretch/main armhf libstdc++-6-dev armhf 6.3.0-18+deb9u1 [1,487 kB]
|
||||
Get:24 https://cdn-aws.deb.debian.org/debian stretch/main armhf g++-6 armhf 6.3.0-18+deb9u1 [5,665 kB]
|
||||
Get:25 https://cdn-aws.deb.debian.org/debian stretch/main armhf g++ armhf 4:6.3.0-4 [1,520 B]
|
||||
Get:26 https://cdn-aws.deb.debian.org/debian stretch/main armhf make armhf 4.1-9.1 [290 kB]
|
||||
Get:27 https://cdn-aws.deb.debian.org/debian stretch/main armhf libdpkg-perl all 1.18.25 [1,287 kB]
|
||||
Get:28 https://cdn-aws.deb.debian.org/debian stretch/main armhf patch armhf 2.7.5-1+deb9u1 [106 kB]
|
||||
Get:29 https://cdn-aws.deb.debian.org/debian stretch/main armhf dpkg-dev all 1.18.25 [1,595 kB]
|
||||
Get:30 https://cdn-aws.deb.debian.org/debian stretch/main armhf build-essential armhf 12.3 [7,342 B]
|
||||
Fetched 36.8 MB in 6s (5,292 kB/s)
|
||||
Selecting previously unselected package perl-modules-5.24.
|
||||
(Reading database ... 15254 files and directories currently installed.)
|
||||
Preparing to unpack .../00-perl-modules-5.24_5.24.1-3+deb9u5_all.deb ...
|
||||
Unpacking perl-modules-5.24 (5.24.1-3+deb9u5) ...
|
||||
Selecting previously unselected package libgdbm3:armhf.
|
||||
Preparing to unpack .../01-libgdbm3_1.8.3-14_armhf.deb ...
|
||||
Unpacking libgdbm3:armhf (1.8.3-14) ...
|
||||
Selecting previously unselected package libperl5.24:armhf.
|
||||
Preparing to unpack .../02-libperl5.24_5.24.1-3+deb9u5_armhf.deb ...
|
||||
Unpacking libperl5.24:armhf (5.24.1-3+deb9u5) ...
|
||||
Selecting previously unselected package perl.
|
||||
Preparing to unpack .../03-perl_5.24.1-3+deb9u5_armhf.deb ...
|
||||
Unpacking perl (5.24.1-3+deb9u5) ...
|
||||
Selecting previously unselected package xz-utils.
|
||||
Preparing to unpack .../04-xz-utils_5.2.2-1.2+b1_armhf.deb ...
|
||||
Unpacking xz-utils (5.2.2-1.2+b1) ...
|
||||
Selecting previously unselected package binutils.
|
||||
Preparing to unpack .../05-binutils_2.28-5_armhf.deb ...
|
||||
Unpacking binutils (2.28-5) ...
|
||||
Selecting previously unselected package libc-dev-bin.
|
||||
Preparing to unpack .../06-libc-dev-bin_2.24-11+deb9u3_armhf.deb ...
|
||||
Unpacking libc-dev-bin (2.24-11+deb9u3) ...
|
||||
Selecting previously unselected package linux-libc-dev:armhf.
|
||||
Preparing to unpack .../07-linux-libc-dev_4.9.130-2_armhf.deb ...
|
||||
Unpacking linux-libc-dev:armhf (4.9.130-2) ...
|
||||
Selecting previously unselected package libc6-dev:armhf.
|
||||
Preparing to unpack .../08-libc6-dev_2.24-11+deb9u3_armhf.deb ...
|
||||
Unpacking libc6-dev:armhf (2.24-11+deb9u3) ...
|
||||
Selecting previously unselected package libisl15:armhf.
|
||||
Preparing to unpack .../09-libisl15_0.18-1_armhf.deb ...
|
||||
Unpacking libisl15:armhf (0.18-1) ...
|
||||
Selecting previously unselected package libmpfr4:armhf.
|
||||
Preparing to unpack .../10-libmpfr4_3.1.5-1_armhf.deb ...
|
||||
Unpacking libmpfr4:armhf (3.1.5-1) ...
|
||||
Selecting previously unselected package libmpc3:armhf.
|
||||
Preparing to unpack .../11-libmpc3_1.0.3-1+b2_armhf.deb ...
|
||||
Unpacking libmpc3:armhf (1.0.3-1+b2) ...
|
||||
Selecting previously unselected package cpp-6.
|
||||
Preparing to unpack .../12-cpp-6_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking cpp-6 (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package cpp.
|
||||
Preparing to unpack .../13-cpp_4%3a6.3.0-4_armhf.deb ...
|
||||
Unpacking cpp (4:6.3.0-4) ...
|
||||
Selecting previously unselected package libcc1-0:armhf.
|
||||
Preparing to unpack .../14-libcc1-0_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking libcc1-0:armhf (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package libgomp1:armhf.
|
||||
Preparing to unpack .../15-libgomp1_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking libgomp1:armhf (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package libatomic1:armhf.
|
||||
Preparing to unpack .../16-libatomic1_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking libatomic1:armhf (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package libasan3:armhf.
|
||||
Preparing to unpack .../17-libasan3_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking libasan3:armhf (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package libubsan0:armhf.
|
||||
Preparing to unpack .../18-libubsan0_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking libubsan0:armhf (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package libgcc-6-dev:armhf.
|
||||
Preparing to unpack .../19-libgcc-6-dev_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking libgcc-6-dev:armhf (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package gcc-6.
|
||||
Preparing to unpack .../20-gcc-6_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking gcc-6 (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package gcc.
|
||||
Preparing to unpack .../21-gcc_4%3a6.3.0-4_armhf.deb ...
|
||||
Unpacking gcc (4:6.3.0-4) ...
|
||||
Selecting previously unselected package libstdc++-6-dev:armhf.
|
||||
Preparing to unpack .../22-libstdc++-6-dev_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking libstdc++-6-dev:armhf (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package g++-6.
|
||||
Preparing to unpack .../23-g++-6_6.3.0-18+deb9u1_armhf.deb ...
|
||||
Unpacking g++-6 (6.3.0-18+deb9u1) ...
|
||||
Selecting previously unselected package g++.
|
||||
Preparing to unpack .../24-g++_4%3a6.3.0-4_armhf.deb ...
|
||||
Unpacking g++ (4:6.3.0-4) ...
|
||||
Selecting previously unselected package make.
|
||||
Preparing to unpack .../25-make_4.1-9.1_armhf.deb ...
|
||||
Unpacking make (4.1-9.1) ...
|
||||
Selecting previously unselected package libdpkg-perl.
|
||||
Preparing to unpack .../26-libdpkg-perl_1.18.25_all.deb ...
|
||||
Unpacking libdpkg-perl (1.18.25) ...
|
||||
Selecting previously unselected package patch.
|
||||
Preparing to unpack .../27-patch_2.7.5-1+deb9u1_armhf.deb ...
|
||||
Unpacking patch (2.7.5-1+deb9u1) ...
|
||||
Selecting previously unselected package dpkg-dev.
|
||||
Preparing to unpack .../28-dpkg-dev_1.18.25_all.deb ...
|
||||
Unpacking dpkg-dev (1.18.25) ...
|
||||
Selecting previously unselected package build-essential.
|
||||
Preparing to unpack .../29-build-essential_12.3_armhf.deb ...
|
||||
Unpacking build-essential (12.3) ...
|
||||
Setting up libgomp1:armhf (6.3.0-18+deb9u1) ...
|
||||
Setting up libatomic1:armhf (6.3.0-18+deb9u1) ...
|
||||
Setting up perl-modules-5.24 (5.24.1-3+deb9u5) ...
|
||||
Setting up libgdbm3:armhf (1.8.3-14) ...
|
||||
Setting up libperl5.24:armhf (5.24.1-3+deb9u5) ...
|
||||
Setting up libcc1-0:armhf (6.3.0-18+deb9u1) ...
|
||||
Setting up make (4.1-9.1) ...
|
||||
Setting up libasan3:armhf (6.3.0-18+deb9u1) ...
|
||||
Setting up libubsan0:armhf (6.3.0-18+deb9u1) ...
|
||||
Setting up linux-libc-dev:armhf (4.9.130-2) ...
|
||||
Setting up perl (5.24.1-3+deb9u5) ...
|
||||
update-alternatives: using /usr/bin/prename to provide /usr/bin/rename (rename) in auto mode
|
||||
Setting up libisl15:armhf (0.18-1) ...
|
||||
Setting up patch (2.7.5-1+deb9u1) ...
|
||||
Processing triggers for libc-bin (2.24-11+deb9u3) ...
|
||||
Setting up xz-utils (5.2.2-1.2+b1) ...
|
||||
update-alternatives: using /usr/bin/xz to provide /usr/bin/lzma (lzma) in auto mode
|
||||
Setting up libmpfr4:armhf (3.1.5-1) ...
|
||||
Setting up libmpc3:armhf (1.0.3-1+b2) ...
|
||||
Setting up binutils (2.28-5) ...
|
||||
Setting up cpp-6 (6.3.0-18+deb9u1) ...
|
||||
Setting up libc-dev-bin (2.24-11+deb9u3) ...
|
||||
Setting up libc6-dev:armhf (2.24-11+deb9u3) ...
|
||||
Setting up cpp (4:6.3.0-4) ...
|
||||
Setting up libgcc-6-dev:armhf (6.3.0-18+deb9u1) ...
|
||||
Setting up libstdc++-6-dev:armhf (6.3.0-18+deb9u1) ...
|
||||
Setting up libdpkg-perl (1.18.25) ...
|
||||
Setting up gcc-6 (6.3.0-18+deb9u1) ...
|
||||
Setting up g++-6 (6.3.0-18+deb9u1) ...
|
||||
Setting up dpkg-dev (1.18.25) ...
|
||||
Setting up gcc (4:6.3.0-4) ...
|
||||
Setting up g++ (4:6.3.0-4) ...
|
||||
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
|
||||
Setting up build-essential (12.3) ...
|
||||
Processing triggers for libc-bin (2.24-11+deb9u3) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following additional packages will be installed:
|
||||
libpython-stdlib libpython2.7-minimal libpython2.7-stdlib python python-minimal python-pip-whl
|
||||
python2.7 python2.7-minimal
|
||||
Suggested packages:
|
||||
python-doc python-tk python2.7-doc binfmt-support
|
||||
Recommended packages:
|
||||
python-all-dev python-setuptools python-wheel
|
||||
The following NEW packages will be installed:
|
||||
libpython-stdlib libpython2.7-minimal libpython2.7-stdlib python python-minimal python-pip
|
||||
python-pip-whl python2.7 python2.7-minimal
|
||||
0 upgraded, 9 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 5,470 kB of archives.
|
||||
After this operation, 17.2 MB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf libpython2.7-minimal armhf 2.7.13-2+deb9u3 [389 kB]
|
||||
Get:2 https://cdn-aws.deb.debian.org/debian stretch/main armhf python2.7-minimal armhf 2.7.13-2+deb9u3 [1,176 kB]
|
||||
Get:3 https://cdn-aws.deb.debian.org/debian stretch/main armhf python-minimal armhf 2.7.13-2 [40.5 kB]
|
||||
Get:4 https://cdn-aws.deb.debian.org/debian stretch/main armhf libpython2.7-stdlib armhf 2.7.13-2+deb9u3 [1,821 kB]
|
||||
Get:5 https://cdn-aws.deb.debian.org/debian stretch/main armhf python2.7 armhf 2.7.13-2+deb9u3 [285 kB]
|
||||
Get:6 https://cdn-aws.deb.debian.org/debian stretch/main armhf libpython-stdlib armhf 2.7.13-2 [20.0 kB]
|
||||
Get:7 https://cdn-aws.deb.debian.org/debian stretch/main armhf python armhf 2.7.13-2 [154 kB]
|
||||
Get:8 https://cdn-aws.deb.debian.org/debian stretch/main armhf python-pip-whl all 9.0.1-2 [1,406 kB]
|
||||
Get:9 https://cdn-aws.deb.debian.org/debian stretch/main armhf python-pip all 9.0.1-2 [179 kB]
|
||||
Fetched 5,470 kB in 2s (2,280 kB/s)
|
||||
Selecting previously unselected package libpython2.7-minimal:armhf.
|
||||
(Reading database ... 20063 files and directories currently installed.)
|
||||
Preparing to unpack .../0-libpython2.7-minimal_2.7.13-2+deb9u3_armhf.deb ...
|
||||
Unpacking libpython2.7-minimal:armhf (2.7.13-2+deb9u3) ...
|
||||
Selecting previously unselected package python2.7-minimal.
|
||||
Preparing to unpack .../1-python2.7-minimal_2.7.13-2+deb9u3_armhf.deb ...
|
||||
Unpacking python2.7-minimal (2.7.13-2+deb9u3) ...
|
||||
Selecting previously unselected package python-minimal.
|
||||
Preparing to unpack .../2-python-minimal_2.7.13-2_armhf.deb ...
|
||||
Unpacking python-minimal (2.7.13-2) ...
|
||||
Selecting previously unselected package libpython2.7-stdlib:armhf.
|
||||
Preparing to unpack .../3-libpython2.7-stdlib_2.7.13-2+deb9u3_armhf.deb ...
|
||||
Unpacking libpython2.7-stdlib:armhf (2.7.13-2+deb9u3) ...
|
||||
Selecting previously unselected package python2.7.
|
||||
Preparing to unpack .../4-python2.7_2.7.13-2+deb9u3_armhf.deb ...
|
||||
Unpacking python2.7 (2.7.13-2+deb9u3) ...
|
||||
Selecting previously unselected package libpython-stdlib:armhf.
|
||||
Preparing to unpack .../5-libpython-stdlib_2.7.13-2_armhf.deb ...
|
||||
Unpacking libpython-stdlib:armhf (2.7.13-2) ...
|
||||
Setting up libpython2.7-minimal:armhf (2.7.13-2+deb9u3) ...
|
||||
Setting up python2.7-minimal (2.7.13-2+deb9u3) ...
|
||||
Linking and byte-compiling packages for runtime python2.7...
|
||||
Setting up python-minimal (2.7.13-2) ...
|
||||
Selecting previously unselected package python.
|
||||
(Reading database ... 20811 files and directories currently installed.)
|
||||
Preparing to unpack .../python_2.7.13-2_armhf.deb ...
|
||||
Unpacking python (2.7.13-2) ...
|
||||
Selecting previously unselected package python-pip-whl.
|
||||
Preparing to unpack .../python-pip-whl_9.0.1-2_all.deb ...
|
||||
Unpacking python-pip-whl (9.0.1-2) ...
|
||||
Selecting previously unselected package python-pip.
|
||||
Preparing to unpack .../python-pip_9.0.1-2_all.deb ...
|
||||
Unpacking python-pip (9.0.1-2) ...
|
||||
Setting up python-pip-whl (9.0.1-2) ...
|
||||
Processing triggers for mime-support (3.60) ...
|
||||
Setting up libpython2.7-stdlib:armhf (2.7.13-2+deb9u3) ...
|
||||
Setting up python2.7 (2.7.13-2+deb9u3) ...
|
||||
Setting up libpython-stdlib:armhf (2.7.13-2) ...
|
||||
Setting up python (2.7.13-2) ...
|
||||
Setting up python-pip (9.0.1-2) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
Suggested packages:
|
||||
openssh-client openssh-server
|
||||
The following NEW packages will be installed:
|
||||
rsync
|
||||
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 380 kB of archives.
|
||||
After this operation, 573 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf rsync armhf 3.1.2-1+deb9u1 [380 kB]
|
||||
Fetched 380 kB in 0s (495 kB/s)
|
||||
Selecting previously unselected package rsync.
|
||||
(Reading database ... 21001 files and directories currently installed.)
|
||||
Preparing to unpack .../rsync_3.1.2-1+deb9u1_armhf.deb ...
|
||||
Unpacking rsync (3.1.2-1+deb9u1) ...
|
||||
Setting up rsync (3.1.2-1+deb9u1) ...
|
||||
Created symlink /etc/systemd/system/multi-user.target.wants/rsync.service → /lib/systemd/system/rsync.service.
|
||||
Processing triggers for systemd (232-25+deb9u8) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following NEW packages will be installed:
|
||||
net-tools
|
||||
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 234 kB of archives.
|
||||
After this operation, 797 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf net-tools armhf 1.60+git20161116.90da8a0-1 [234 kB]
|
||||
Fetched 234 kB in 1s (205 kB/s)
|
||||
Selecting previously unselected package net-tools.
|
||||
(Reading database ... 21032 files and directories currently installed.)
|
||||
Preparing to unpack .../net-tools_1.60+git20161116.90da8a0-1_armhf.deb ...
|
||||
Unpacking net-tools (1.60+git20161116.90da8a0-1) ...
|
||||
Setting up net-tools (1.60+git20161116.90da8a0-1) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following NEW packages will be installed:
|
||||
xxd
|
||||
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 131 kB of archives.
|
||||
After this operation, 166 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf xxd armhf 2:8.0.0197-4+deb9u1 [131 kB]
|
||||
Fetched 131 kB in 0s (167 kB/s)
|
||||
Selecting previously unselected package xxd.
|
||||
(Reading database ... 21088 files and directories currently installed.)
|
||||
Preparing to unpack .../xxd_2%3a8.0.0197-4+deb9u1_armhf.deb ...
|
||||
Unpacking xxd (2:8.0.0197-4+deb9u1) ...
|
||||
Setting up xxd (2:8.0.0197-4+deb9u1) ...
|
||||
Collecting setuptools
|
||||
Downloading https://files.pythonhosted.org/packages/82/9c/e812a9838feaf76cd9a960ca4ced3be7f2db31e473677a621d006e128db2/setuptools-40.7.3-py2.py3-none-any.whl (574kB)
|
||||
100% |████████████████████████████████| 583kB 695kB/s
|
||||
Installing collected packages: setuptools
|
||||
Successfully installed setuptools-40.7.3
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following additional packages will be installed:
|
||||
netcat-traditional
|
||||
The following NEW packages will be installed:
|
||||
netcat netcat-traditional
|
||||
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 74.7 kB of archives.
|
||||
After this operation, 164 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf netcat-traditional armhf 1.10-41+b1 [65.7 kB]
|
||||
Get:2 https://cdn-aws.deb.debian.org/debian stretch/main armhf netcat all 1.10-41 [8,962 B]
|
||||
Fetched 74.7 kB in 1s (48.7 kB/s)
|
||||
Selecting previously unselected package netcat-traditional.
|
||||
(Reading database ... 21099 files and directories currently installed.)
|
||||
Preparing to unpack .../netcat-traditional_1.10-41+b1_armhf.deb ...
|
||||
Unpacking netcat-traditional (1.10-41+b1) ...
|
||||
Selecting previously unselected package netcat.
|
||||
Preparing to unpack .../netcat_1.10-41_all.deb ...
|
||||
Unpacking netcat (1.10-41) ...
|
||||
Setting up netcat-traditional (1.10-41+b1) ...
|
||||
update-alternatives: using /bin/nc.traditional to provide /bin/nc (nc) in auto mode
|
||||
Setting up netcat (1.10-41) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following additional packages will be installed:
|
||||
libbsd0 libedit2
|
||||
Suggested packages:
|
||||
keychain libpam-ssh monkeysphere ssh-askpass
|
||||
Recommended packages:
|
||||
xauth
|
||||
The following NEW packages will be installed:
|
||||
libbsd0 libedit2 openssh-client
|
||||
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 900 kB of archives.
|
||||
After this operation, 3,993 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf libbsd0 armhf 0.8.3-1 [89.6 kB]
|
||||
Get:2 https://cdn-aws.deb.debian.org/debian stretch/main armhf libedit2 armhf 3.1-20160903-3 [69.9 kB]
|
||||
Get:3 https://cdn-aws.deb.debian.org/debian stretch/main armhf openssh-client armhf 1:7.4p1-10+deb9u4 [740 kB]
|
||||
Fetched 900 kB in 1s (716 kB/s)
|
||||
Selecting previously unselected package libbsd0:armhf.
|
||||
(Reading database ... 21141 files and directories currently installed.)
|
||||
Preparing to unpack .../libbsd0_0.8.3-1_armhf.deb ...
|
||||
Unpacking libbsd0:armhf (0.8.3-1) ...
|
||||
Selecting previously unselected package libedit2:armhf.
|
||||
Preparing to unpack .../libedit2_3.1-20160903-3_armhf.deb ...
|
||||
Unpacking libedit2:armhf (3.1-20160903-3) ...
|
||||
Selecting previously unselected package openssh-client.
|
||||
Preparing to unpack .../openssh-client_1%3a7.4p1-10+deb9u4_armhf.deb ...
|
||||
Unpacking openssh-client (1:7.4p1-10+deb9u4) ...
|
||||
Setting up libbsd0:armhf (0.8.3-1) ...
|
||||
Processing triggers for libc-bin (2.24-11+deb9u3) ...
|
||||
Setting up libedit2:armhf (3.1-20160903-3) ...
|
||||
Setting up openssh-client (1:7.4p1-10+deb9u4) ...
|
||||
Processing triggers for libc-bin (2.24-11+deb9u3) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following NEW packages will be installed:
|
||||
openssh-sftp-server
|
||||
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 35.2 kB of archives.
|
||||
After this operation, 74.8 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf openssh-sftp-server armhf 1:7.4p1-10+deb9u4 [35.2 kB]
|
||||
Fetched 35.2 kB in 1s (35.2 kB/s)
|
||||
Selecting previously unselected package openssh-sftp-server.
|
||||
(Reading database ... 21211 files and directories currently installed.)
|
||||
Preparing to unpack .../openssh-sftp-server_1%3a7.4p1-10+deb9u4_armhf.deb ...
|
||||
Unpacking openssh-sftp-server (1:7.4p1-10+deb9u4) ...
|
||||
Setting up openssh-sftp-server (1:7.4p1-10+deb9u4) ...
|
||||
|
||||
*** CONFIG ***
|
||||
sudo: raspi-config: command not found
|
||||
bash: /etc/systemd/system/getty@tty1.service.d/autologin.conf: No such file or directory
|
||||
bash: /etc/systemd/system/getty@tty1.service.d/autologin.conf: No such file or directory
|
||||
bash: /etc/systemd/system/getty@tty1.service.d/autologin.conf: No such file or directory
|
||||
|
||||
*** SOFTWARE UPDATE ***
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
bash-completion is already the newest version (1:2.1-4.3).
|
||||
curl is already the newest version (7.52.1-5+deb9u8).
|
||||
htop is already the newest version (2.0.2-1).
|
||||
The following additional packages will be installed:
|
||||
dc git-man liberror-perl libjq1 libonig4
|
||||
Suggested packages:
|
||||
gettext-base git-daemon-run | git-daemon-sysvinit git-doc git-el git-email git-gui gitk gitweb
|
||||
git-arch git-cvs git-mediawiki git-svn
|
||||
Recommended packages:
|
||||
less
|
||||
The following NEW packages will be installed:
|
||||
dc dphys-swapfile git git-man jq liberror-perl libjq1 libonig4
|
||||
0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 5,514 kB of archives.
|
||||
After this operation, 23.4 MB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf liberror-perl all 0.17024-1 [26.9 kB]
|
||||
Get:2 https://cdn-aws.deb.debian.org/debian stretch/main armhf git-man all 1:2.11.0-3+deb9u4 [1,433 kB]
|
||||
Get:3 https://cdn-aws.deb.debian.org/debian stretch/main armhf git armhf 1:2.11.0-3+deb9u4 [3,661 kB]
|
||||
Get:4 https://cdn-aws.deb.debian.org/debian stretch/main armhf dc armhf 1.06.95-9+b3 [64.8 kB]
|
||||
Get:5 https://cdn-aws.deb.debian.org/debian stretch/main armhf dphys-swapfile all 20100506-3 [19.7 kB]
|
||||
Get:6 https://cdn-aws.deb.debian.org/debian stretch/main armhf libonig4 armhf 6.1.3-2 [128 kB]
|
||||
Get:7 https://cdn-aws.deb.debian.org/debian stretch/main armhf libjq1 armhf 1.5+dfsg-1.3 [122 kB]
|
||||
Get:8 https://cdn-aws.deb.debian.org/debian stretch/main armhf jq armhf 1.5+dfsg-1.3 [59.2 kB]
|
||||
Fetched 5,514 kB in 2s (2,743 kB/s)
|
||||
Selecting previously unselected package liberror-perl.
|
||||
(Reading database ... 21215 files and directories currently installed.)
|
||||
Preparing to unpack .../0-liberror-perl_0.17024-1_all.deb ...
|
||||
Unpacking liberror-perl (0.17024-1) ...
|
||||
Selecting previously unselected package git-man.
|
||||
Preparing to unpack .../1-git-man_1%3a2.11.0-3+deb9u4_all.deb ...
|
||||
Unpacking git-man (1:2.11.0-3+deb9u4) ...
|
||||
Selecting previously unselected package git.
|
||||
Preparing to unpack .../2-git_1%3a2.11.0-3+deb9u4_armhf.deb ...
|
||||
Unpacking git (1:2.11.0-3+deb9u4) ...
|
||||
Selecting previously unselected package dc.
|
||||
Preparing to unpack .../3-dc_1.06.95-9+b3_armhf.deb ...
|
||||
Unpacking dc (1.06.95-9+b3) ...
|
||||
Selecting previously unselected package dphys-swapfile.
|
||||
Preparing to unpack .../4-dphys-swapfile_20100506-3_all.deb ...
|
||||
Unpacking dphys-swapfile (20100506-3) ...
|
||||
Selecting previously unselected package libonig4:armhf.
|
||||
Preparing to unpack .../5-libonig4_6.1.3-2_armhf.deb ...
|
||||
Unpacking libonig4:armhf (6.1.3-2) ...
|
||||
Selecting previously unselected package libjq1:armhf.
|
||||
Preparing to unpack .../6-libjq1_1.5+dfsg-1.3_armhf.deb ...
|
||||
Unpacking libjq1:armhf (1.5+dfsg-1.3) ...
|
||||
Selecting previously unselected package jq.
|
||||
Preparing to unpack .../7-jq_1.5+dfsg-1.3_armhf.deb ...
|
||||
Unpacking jq (1.5+dfsg-1.3) ...
|
||||
Setting up git-man (1:2.11.0-3+deb9u4) ...
|
||||
Setting up liberror-perl (0.17024-1) ...
|
||||
Setting up libonig4:armhf (6.1.3-2) ...
|
||||
Setting up libjq1:armhf (1.5+dfsg-1.3) ...
|
||||
Processing triggers for libc-bin (2.24-11+deb9u3) ...
|
||||
Setting up dc (1.06.95-9+b3) ...
|
||||
Processing triggers for systemd (232-25+deb9u8) ...
|
||||
Setting up git (1:2.11.0-3+deb9u4) ...
|
||||
Setting up jq (1.5+dfsg-1.3) ...
|
||||
Setting up dphys-swapfile (20100506-3) ...
|
||||
Processing triggers for systemd (232-25+deb9u8) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
Suggested packages:
|
||||
vnstati
|
||||
The following NEW packages will be installed:
|
||||
vnstat
|
||||
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 78.6 kB of archives.
|
||||
After this operation, 206 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf vnstat armhf 1.15-2 [78.6 kB]
|
||||
Fetched 78.6 kB in 1s (56.9 kB/s)
|
||||
Selecting previously unselected package vnstat.
|
||||
(Reading database ... 22140 files and directories currently installed.)
|
||||
Preparing to unpack .../vnstat_1.15-2_armhf.deb ...
|
||||
Unpacking vnstat (1.15-2) ...
|
||||
Setting up vnstat (1.15-2) ...
|
||||
Created symlink /etc/systemd/system/multi-user.target.wants/vnstat.service → /lib/systemd/system/vnstat.service.
|
||||
Processing triggers for systemd (232-25+deb9u8) ...
|
||||
|
||||
*** ADDING MAIN USER admin ***
|
||||
Adding user `admin' ...
|
||||
Adding new group `admin' (1001) ...
|
||||
Adding new user `admin' (1001) with group `admin' ...
|
||||
Creating home directory `/home/admin' ...
|
||||
Copying files from `/etc/skel' ...
|
||||
Adding user `admin' to group `sudo' ...
|
||||
Adding user admin to group sudo
|
||||
Done.
|
||||
%sudo ALL=(ALL) NOPASSWD:ALL
|
||||
*** ADDING SERVICE USER bitcoin
|
||||
Adding user `bitcoin' ...
|
||||
Adding new group `bitcoin' (1002) ...
|
||||
Adding new user `bitcoin' (1002) with group `bitcoin' ...
|
||||
Creating home directory `/home/bitcoin' ...
|
||||
Copying files from `/etc/skel' ...
|
||||
|
||||
*** SWAP FILE ***
|
||||
|
||||
*** INCREASE OPEN FILE LIMIT ***
|
||||
|
||||
*** BITCOIN ***
|
||||
--2019-02-04 10:05:05-- https://bitcoin.org/bin/bitcoin-core-0.17.0.1/bitcoin-0.17.0.1-arm-linux-gnueabihf.tar.gz
|
||||
Resolving bitcoin.org (bitcoin.org)... 138.68.248.245
|
||||
Connecting to bitcoin.org (bitcoin.org)|138.68.248.245|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 24306145 (23M) [application/octet-stream]
|
||||
Saving to: ‘bitcoin-0.17.0.1-arm-linux-gnueabihf.tar.gz’
|
||||
|
||||
bitcoin-0.17.0.1-arm-linu 100%[====================================>] 23.18M 202KB/s in 1m 59s
|
||||
|
||||
2019-02-04 10:07:04 (200 KB/s) - ‘bitcoin-0.17.0.1-arm-linux-gnueabihf.tar.gz’ saved [24306145/24306145]
|
||||
|
||||
--2019-02-04 10:07:05-- https://bitcoin.org/laanwj-releases.asc
|
||||
Resolving bitcoin.org (bitcoin.org)... 138.68.248.245
|
||||
Connecting to bitcoin.org (bitcoin.org)|138.68.248.245|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 17940 (18K) [application/octet-stream]
|
||||
Saving to: ‘laanwj-releases.asc’
|
||||
|
||||
laanwj-releases.asc 100%[====================================>] 17.52K --.-KB/s in 0.001s
|
||||
|
||||
2019-02-04 10:07:06 (19.1 MB/s) - ‘laanwj-releases.asc’ saved [17940/17940]
|
||||
|
||||
key 90C8019E36C2E964:
|
||||
25 signatures not checked due to missing keys
|
||||
gpg: /root/.gnupg/trustdb.gpg: trustdb created
|
||||
gpg: key 90C8019E36C2E964: public key "Wladimir J. van der Laan (Bitcoin Core binary release signing key) <laanwj@gmail.com>" imported
|
||||
gpg: Total number processed: 1
|
||||
gpg: imported: 1
|
||||
gpg: no ultimately trusted keys found
|
||||
--2019-02-04 10:07:07-- https://bitcoin.org/bin/bitcoin-core-0.17.0.1/SHA256SUMS.asc
|
||||
Resolving bitcoin.org (bitcoin.org)... 138.68.248.245
|
||||
Connecting to bitcoin.org (bitcoin.org)|138.68.248.245|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 1979 (1.9K) [application/octet-stream]
|
||||
Saving to: ‘SHA256SUMS.asc’
|
||||
|
||||
SHA256SUMS.asc 100%[====================================>] 1.93K --.-KB/s in 0.006s
|
||||
|
||||
2019-02-04 10:07:08 (303 KB/s) - ‘SHA256SUMS.asc’ saved [1979/1979]
|
||||
|
||||
goodSignature(1)
|
||||
correctKey(1)
|
||||
bitcoin-0.17.0/
|
||||
bitcoin-0.17.0/bin/
|
||||
bitcoin-0.17.0/bin/bitcoin-cli
|
||||
bitcoin-0.17.0/bin/bitcoind
|
||||
bitcoin-0.17.0/bin/bitcoin-qt
|
||||
bitcoin-0.17.0/bin/bitcoin-tx
|
||||
bitcoin-0.17.0/bin/test_bitcoin
|
||||
bitcoin-0.17.0/include/
|
||||
bitcoin-0.17.0/include/bitcoinconsensus.h
|
||||
bitcoin-0.17.0/lib/
|
||||
bitcoin-0.17.0/lib/libbitcoinconsensus.so
|
||||
bitcoin-0.17.0/lib/libbitcoinconsensus.so.0
|
||||
bitcoin-0.17.0/lib/libbitcoinconsensus.so.0.0.0
|
||||
bitcoin-0.17.0/share/
|
||||
bitcoin-0.17.0/share/man/
|
||||
bitcoin-0.17.0/share/man/man1/
|
||||
bitcoin-0.17.0/share/man/man1/bitcoin-cli.1
|
||||
bitcoin-0.17.0/share/man/man1/bitcoind.1
|
||||
bitcoin-0.17.0/share/man/man1/bitcoin-qt.1
|
||||
bitcoin-0.17.0/share/man/man1/bitcoin-tx.1
|
||||
|
||||
*** LITECOIN ***
|
||||
--2019-02-04 10:07:13-- https://download.litecoin.org/litecoin-0.16.3/linux/litecoin-0.16.3-arm-linux-gnueabihf.tar.gz
|
||||
Resolving download.litecoin.org (download.litecoin.org)... 104.27.4.55, 104.27.5.55
|
||||
Connecting to download.litecoin.org (download.litecoin.org)|104.27.4.55|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 9568024 (9.1M) [application/octet-stream]
|
||||
Saving to: ‘litecoin-0.16.3-arm-linux-gnueabihf.tar.gz’
|
||||
|
||||
litecoin-0.16.3-arm-linux 100%[====================================>] 9.12M 5.23MB/s in 1.7s
|
||||
|
||||
2019-02-04 10:07:15 (5.23 MB/s) - ‘litecoin-0.16.3-arm-linux-gnueabihf.tar.gz’ saved [9568024/9568024]
|
||||
|
||||
litecoin-0.16.3/
|
||||
litecoin-0.16.3/bin/
|
||||
litecoin-0.16.3/bin/litecoin-cli
|
||||
litecoin-0.16.3/bin/litecoind
|
||||
litecoin-0.16.3/bin/litecoin-tx
|
||||
litecoin-0.16.3/bin/test_litecoin
|
||||
litecoin-0.16.3/share/
|
||||
litecoin-0.16.3/share/man/
|
||||
litecoin-0.16.3/share/man/man1/
|
||||
litecoin-0.16.3/share/man/man1/litecoin-cli.1
|
||||
litecoin-0.16.3/share/man/man1/litecoind.1
|
||||
litecoin-0.16.3/share/man/man1/litecoin-tx.1
|
||||
|
||||
*** LND ***
|
||||
--2019-02-04 10:07:16-- https://github.com/lightningnetwork/lnd/releases/download/v0.5.1-beta/lnd-linux-armv7-v0.5.1-beta.tar.gz
|
||||
Resolving github.com (github.com)... 140.82.118.3, 140.82.118.4
|
||||
Connecting to github.com (github.com)|140.82.118.3|:443... connected.
|
||||
HTTP request sent, awaiting response... 302 Found
|
||||
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/49765480/fd08b500-f311-11e8-8398-419cca1df903?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190204%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190204T100716Z&X-Amz-Expires=300&X-Amz-Signature=55bf712cd42a2425f68d2a08b5a05c37303ec6334d4cbdd0941b53304aa1fc8d&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dlnd-linux-armv7-v0.5.1-beta.tar.gz&response-content-type=application%2Foctet-stream [following]
|
||||
--2019-02-04 10:07:16-- https://github-production-release-asset-2e65be.s3.amazonaws.com/49765480/fd08b500-f311-11e8-8398-419cca1df903?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190204%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190204T100716Z&X-Amz-Expires=300&X-Amz-Signature=55bf712cd42a2425f68d2a08b5a05c37303ec6334d4cbdd0941b53304aa1fc8d&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dlnd-linux-armv7-v0.5.1-beta.tar.gz&response-content-type=application%2Foctet-stream
|
||||
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.108.139
|
||||
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.108.139|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 19198203 (18M) [application/octet-stream]
|
||||
Saving to: ‘lnd-linux-armv7-v0.5.1-beta.tar.gz’
|
||||
|
||||
lnd-linux-armv7-v0.5.1-be 100%[====================================>] 18.31M 5.28MB/s in 4.9s
|
||||
|
||||
2019-02-04 10:07:22 (3.73 MB/s) - ‘lnd-linux-armv7-v0.5.1-beta.tar.gz’ saved [19198203/19198203]
|
||||
|
||||
--2019-02-04 10:07:22-- https://github.com/lightningnetwork/lnd/releases/download/v0.5.1-beta/manifest-v0.5.1-beta.txt
|
||||
Resolving github.com (github.com)... 140.82.118.4, 140.82.118.3
|
||||
Connecting to github.com (github.com)|140.82.118.4|:443... connected.
|
||||
HTTP request sent, awaiting response... 302 Found
|
||||
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/49765480/fe39e200-f311-11e8-9178-5d26551a454e?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190204%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190204T100725Z&X-Amz-Expires=300&X-Amz-Signature=838d29594d525c1ab751e105b36d4e7838cfe37b2ee5c10e9ddd8582691beb58&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dmanifest-v0.5.1-beta.txt&response-content-type=application%2Foctet-stream [following]
|
||||
--2019-02-04 10:07:25-- https://github-production-release-asset-2e65be.s3.amazonaws.com/49765480/fe39e200-f311-11e8-9178-5d26551a454e?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190204%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190204T100725Z&X-Amz-Expires=300&X-Amz-Signature=838d29594d525c1ab751e105b36d4e7838cfe37b2ee5c10e9ddd8582691beb58&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dmanifest-v0.5.1-beta.txt&response-content-type=application%2Foctet-stream
|
||||
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.238.51
|
||||
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.238.51|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 2026 (2.0K) [application/octet-stream]
|
||||
Saving to: ‘manifest-v0.5.1-beta.txt’
|
||||
|
||||
manifest-v0.5.1-beta.txt 100%[====================================>] 1.98K --.-KB/s in 0.002s
|
||||
|
||||
2019-02-04 10:07:26 (1007 KB/s) - ‘manifest-v0.5.1-beta.txt’ saved [2026/2026]
|
||||
|
||||
--2019-02-04 10:07:26-- https://github.com/lightningnetwork/lnd/releases/download/v0.5.1-beta/manifest-v0.5.1-beta.txt.sig
|
||||
Resolving github.com (github.com)... 140.82.118.3, 140.82.118.4
|
||||
Connecting to github.com (github.com)|140.82.118.3|:443... connected.
|
||||
HTTP request sent, awaiting response... 302 Found
|
||||
Location: https://github-production-release-asset-2e65be.s3.amazonaws.com/49765480/fe39e200-f311-11e8-8fb5-c3aa7d97cb88?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190204%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190204T100726Z&X-Amz-Expires=300&X-Amz-Signature=ce7ec6f0a9944f66f01b5cac9babfc21c8ffb52fb85b90a78b30a76115661da5&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dmanifest-v0.5.1-beta.txt.sig&response-content-type=application%2Foctet-stream [following]
|
||||
--2019-02-04 10:07:26-- https://github-production-release-asset-2e65be.s3.amazonaws.com/49765480/fe39e200-f311-11e8-8fb5-c3aa7d97cb88?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAIWNJYAX4CSVEH53A%2F20190204%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20190204T100726Z&X-Amz-Expires=300&X-Amz-Signature=ce7ec6f0a9944f66f01b5cac9babfc21c8ffb52fb85b90a78b30a76115661da5&X-Amz-SignedHeaders=host&actor_id=0&response-content-disposition=attachment%3B%20filename%3Dmanifest-v0.5.1-beta.txt.sig&response-content-type=application%2Foctet-stream
|
||||
Resolving github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)... 52.216.238.51
|
||||
Connecting to github-production-release-asset-2e65be.s3.amazonaws.com (github-production-release-asset-2e65be.s3.amazonaws.com)|52.216.238.51|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 566 [application/octet-stream]
|
||||
Saving to: ‘manifest-v0.5.1-beta.txt.sig’
|
||||
|
||||
manifest-v0.5.1-beta.txt. 100%[====================================>] 566 --.-KB/s in 0.001s
|
||||
|
||||
2019-02-04 10:07:27 (935 KB/s) - ‘manifest-v0.5.1-beta.txt.sig’ saved [566/566]
|
||||
|
||||
--2019-02-04 10:07:27-- https://keybase.io/roasbeef/pgp_keys.asc
|
||||
Resolving keybase.io (keybase.io)... 52.55.1.130, 52.6.136.121
|
||||
Connecting to keybase.io (keybase.io)|52.55.1.130|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 6909 (6.7K) [text/plain]
|
||||
Saving to: ‘pgp_keys.asc’
|
||||
|
||||
pgp_keys.asc 100%[====================================>] 6.75K --.-KB/s in 0s
|
||||
|
||||
2019-02-04 10:07:28 (59.0 MB/s) - ‘pgp_keys.asc’ saved [6909/6909]
|
||||
|
||||
gpg: key 8B80CD2BB8BD8132: public key "Olaoluwa Osuntokun <laolu32@gmail.com>" imported
|
||||
gpg: Total number processed: 1
|
||||
gpg: imported: 1
|
||||
goodSignature(1)
|
||||
correctKey(1)
|
||||
*** Installing Go ***
|
||||
--2019-02-04 10:07:35-- https://storage.googleapis.com/golang/go1.11.linux-armv6l.tar.gz
|
||||
Resolving storage.googleapis.com (storage.googleapis.com)... 216.58.206.80, 2a00:1450:4009:809::2010
|
||||
Connecting to storage.googleapis.com (storage.googleapis.com)|216.58.206.80|:443... connected.
|
||||
HTTP request sent, awaiting response... 200 OK
|
||||
Length: 101718267 (97M) [application/octet-stream]
|
||||
Saving to: ‘go1.11.linux-armv6l.tar.gz’
|
||||
|
||||
go1.11.linux-armv6l.tar.g 100%[====================================>] 97.01M 8.63MB/s in 11s
|
||||
|
||||
2019-02-04 10:07:47 (8.86 MB/s) - ‘go1.11.linux-armv6l.tar.gz’ saved [101718267/101718267]
|
||||
|
||||
|
||||
|
||||
*** RASPIBLITZ EXTRAS ***
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
bc is already the newest version (1.06.95-9+b3).
|
||||
The following NEW packages will be installed:
|
||||
dialog
|
||||
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 240 kB of archives.
|
||||
After this operation, 883 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf dialog armhf 1.3-20160828-2 [240 kB]
|
||||
Fetched 240 kB in 0s (248 kB/s)
|
||||
Selecting previously unselected package dialog.
|
||||
(Reading database ... 22155 files and directories currently installed.)
|
||||
Preparing to unpack .../dialog_1.3-20160828-2_armhf.deb ...
|
||||
Unpacking dialog (1.3-20160828-2) ...
|
||||
Setting up dialog (1.3-20160828-2) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following additional packages will be installed:
|
||||
fuse libfuse2
|
||||
Recommended packages:
|
||||
exfat-utils
|
||||
The following NEW packages will be installed:
|
||||
exfat-fuse fuse libfuse2
|
||||
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 214 kB of archives.
|
||||
After this operation, 426 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf libfuse2 armhf 2.9.7-1+deb9u2 [116 kB]
|
||||
Get:2 https://cdn-aws.deb.debian.org/debian stretch/main armhf fuse armhf 2.9.7-1+deb9u2 [70.3 kB]
|
||||
Get:3 https://cdn-aws.deb.debian.org/debian stretch/main armhf exfat-fuse armhf 1.2.5-2 [27.6 kB]
|
||||
Fetched 214 kB in 1s (148 kB/s)
|
||||
Selecting previously unselected package libfuse2:armhf.
|
||||
(Reading database ... 22313 files and directories currently installed.)
|
||||
Preparing to unpack .../libfuse2_2.9.7-1+deb9u2_armhf.deb ...
|
||||
Unpacking libfuse2:armhf (2.9.7-1+deb9u2) ...
|
||||
Selecting previously unselected package fuse.
|
||||
Preparing to unpack .../fuse_2.9.7-1+deb9u2_armhf.deb ...
|
||||
Unpacking fuse (2.9.7-1+deb9u2) ...
|
||||
Selecting previously unselected package exfat-fuse.
|
||||
Preparing to unpack .../exfat-fuse_1.2.5-2_armhf.deb ...
|
||||
Unpacking exfat-fuse (1.2.5-2) ...
|
||||
Setting up libfuse2:armhf (2.9.7-1+deb9u2) ...
|
||||
Processing triggers for libc-bin (2.24-11+deb9u3) ...
|
||||
Setting up fuse (2.9.7-1+deb9u2) ...
|
||||
update-initramfs: deferring update (trigger activated)
|
||||
Setting up exfat-fuse (1.2.5-2) ...
|
||||
Processing triggers for initramfs-tools (0.130) ...
|
||||
ln: failed to create hard link '/boot/initrd.img-4.14.66+.dpkg-bak' => '/boot/initrd.img-4.14.66+': Operation not permitted
|
||||
update-initramfs: Generating /boot/initrd.img-4.14.66+
|
||||
Image Name: uInitrd
|
||||
Created: Mon Feb 4 10:08:42 2019
|
||||
Image Type: ARM Linux RAMDisk Image (uncompressed)
|
||||
Data Size: 5715880 Bytes = 5581.91 kB = 5.45 MB
|
||||
Load Address: 00000000
|
||||
Entry Point: 00000000
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following additional packages will be installed:
|
||||
libevent-2.0-5 libminiupnpc10 libnatpmp1 transmission-common
|
||||
Suggested packages:
|
||||
minissdpd natpmp-utils transmission-daemon transmission-gtk
|
||||
Recommended packages:
|
||||
minissdpd
|
||||
The following NEW packages will be installed:
|
||||
libevent-2.0-5 libminiupnpc10 libnatpmp1 transmission-cli transmission-common
|
||||
0 upgraded, 5 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 776 kB of archives.
|
||||
After this operation, 2,814 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf libevent-2.0-5 armhf 2.0.21-stable-3 [134 kB]
|
||||
Get:2 https://cdn-aws.deb.debian.org/debian stretch/main armhf libminiupnpc10 armhf 1.9.20140610-4 [25.7 kB]
|
||||
Get:3 https://cdn-aws.deb.debian.org/debian stretch/main armhf libnatpmp1 armhf 20110808-4+b1 [8,338 B]
|
||||
Get:4 https://cdn-aws.deb.debian.org/debian stretch/main armhf transmission-common all 2.92-2+deb9u1 [288 kB]
|
||||
Get:5 https://cdn-aws.deb.debian.org/debian stretch/main armhf transmission-cli armhf 2.92-2+deb9u1 [320 kB]
|
||||
Fetched 776 kB in 0s (823 kB/s)
|
||||
Selecting previously unselected package libevent-2.0-5:armhf.
|
||||
(Reading database ... 22348 files and directories currently installed.)
|
||||
Preparing to unpack .../libevent-2.0-5_2.0.21-stable-3_armhf.deb ...
|
||||
Unpacking libevent-2.0-5:armhf (2.0.21-stable-3) ...
|
||||
Selecting previously unselected package libminiupnpc10:armhf.
|
||||
Preparing to unpack .../libminiupnpc10_1.9.20140610-4_armhf.deb ...
|
||||
Unpacking libminiupnpc10:armhf (1.9.20140610-4) ...
|
||||
Selecting previously unselected package libnatpmp1:armhf.
|
||||
Preparing to unpack .../libnatpmp1_20110808-4+b1_armhf.deb ...
|
||||
Unpacking libnatpmp1:armhf (20110808-4+b1) ...
|
||||
Selecting previously unselected package transmission-common.
|
||||
Preparing to unpack .../transmission-common_2.92-2+deb9u1_all.deb ...
|
||||
Unpacking transmission-common (2.92-2+deb9u1) ...
|
||||
Selecting previously unselected package transmission-cli.
|
||||
Preparing to unpack .../transmission-cli_2.92-2+deb9u1_armhf.deb ...
|
||||
Unpacking transmission-cli (2.92-2+deb9u1) ...
|
||||
Setting up libminiupnpc10:armhf (1.9.20140610-4) ...
|
||||
Setting up libnatpmp1:armhf (20110808-4+b1) ...
|
||||
Setting up transmission-common (2.92-2+deb9u1) ...
|
||||
Processing triggers for libc-bin (2.24-11+deb9u3) ...
|
||||
Setting up libevent-2.0-5:armhf (2.0.21-stable-3) ...
|
||||
Setting up transmission-cli (2.92-2+deb9u1) ...
|
||||
Processing triggers for libc-bin (2.24-11+deb9u3) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
The following additional packages will be installed:
|
||||
libtorrent19 libxmlrpc-core-c3
|
||||
Suggested packages:
|
||||
screen | dtach
|
||||
The following NEW packages will be installed:
|
||||
libtorrent19 libxmlrpc-core-c3 rtorrent
|
||||
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 891 kB of archives.
|
||||
After this operation, 2,281 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf libxmlrpc-core-c3 armhf 1.33.14-4 [128 kB]
|
||||
Get:2 https://cdn-aws.deb.debian.org/debian stretch/main armhf libtorrent19 armhf 0.13.6-1.1 [345 kB]
|
||||
Get:3 https://cdn-aws.deb.debian.org/debian stretch/main armhf rtorrent armhf 0.9.6-2+b1 [418 kB]
|
||||
Fetched 891 kB in 1s (630 kB/s)
|
||||
Selecting previously unselected package libxmlrpc-core-c3.
|
||||
(Reading database ... 22489 files and directories currently installed.)
|
||||
Preparing to unpack .../libxmlrpc-core-c3_1.33.14-4_armhf.deb ...
|
||||
Unpacking libxmlrpc-core-c3 (1.33.14-4) ...
|
||||
Selecting previously unselected package libtorrent19:armhf.
|
||||
Preparing to unpack .../libtorrent19_0.13.6-1.1_armhf.deb ...
|
||||
Unpacking libtorrent19:armhf (0.13.6-1.1) ...
|
||||
Selecting previously unselected package rtorrent.
|
||||
Preparing to unpack .../rtorrent_0.9.6-2+b1_armhf.deb ...
|
||||
Unpacking rtorrent (0.9.6-2+b1) ...
|
||||
Setting up libtorrent19:armhf (0.13.6-1.1) ...
|
||||
Setting up libxmlrpc-core-c3 (1.33.14-4) ...
|
||||
Setting up rtorrent (0.9.6-2+b1) ...
|
||||
Processing triggers for libc-bin (2.24-11+deb9u3) ...
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
Suggested packages:
|
||||
byobu | screenie | iselect ncurses-term
|
||||
The following NEW packages will be installed:
|
||||
screen
|
||||
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 568 kB of archives.
|
||||
After this operation, 860 kB of additional disk space will be used.
|
||||
Get:1 https://cdn-aws.deb.debian.org/debian stretch/main armhf screen armhf 4.5.0-6 [568 kB]
|
||||
Fetched 568 kB in 0s (677 kB/s)
|
||||
Selecting previously unselected package screen.
|
||||
(Reading database ... 22526 files and directories currently installed.)
|
||||
Preparing to unpack .../screen_4.5.0-6_armhf.deb ...
|
||||
Unpacking screen (4.5.0-6) ...
|
||||
Processing triggers for systemd (232-25+deb9u8) ...
|
||||
Setting up screen (4.5.0-6) ...
|
||||
Processing triggers for systemd (232-25+deb9u8) ...
|
||||
Cloning into 'raspiblitz'...
|
||||
remote: Enumerating objects: 61, done.
|
||||
remote: Counting objects: 100% (61/61), done.
|
||||
remote: Compressing objects: 100% (33/33), done.
|
||||
remote: Total 5134 (delta 32), reused 51 (delta 27), pack-reused 5073
|
||||
Receiving objects: 100% (5134/5134), 23.70 MiB | 5.49 MiB/s, done.
|
||||
Resolving deltas: 100% (3603/3603), done.
|
||||
cp: -r not specified; omitting directory '/home/admin/raspiblitz/home.admin/config.scripts'
|
||||
bash: /home/pi/.bashrc: No such file or directory
|
||||
bash: /home/pi/.bashrc: No such file or directory
|
||||
bash: /home/pi/.bashrc: No such file or directory
|
||||
bash: /home/pi/.bashrc: No such file or directory
|
||||
|
||||
*** HARDENING ***
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
Suggested packages:
|
||||
mailx system-log-daemon monit
|
||||
Recommended packages:
|
||||
iptables whois python3-pyinotify
|
||||
The following NEW packages will be installed:
|
||||
fail2ban
|
||||
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
|
||||
Need to get 0 B/288 kB of archives.
|
||||
After this operation, 1,321 kB of additional disk space will be used.
|
||||
Selecting previously unselected package fail2ban.
|
||||
(Reading database ... 22586 files and directories currently installed.)
|
||||
Preparing to unpack .../fail2ban_0.9.6-2_all.deb ...
|
||||
Unpacking fail2ban (0.9.6-2) ...
|
||||
Setting up fail2ban (0.9.6-2) ...
|
||||
Processing triggers for systemd (232-25+deb9u8) ...
|
||||
|
||||
*** RASPI BOOSTRAP SERVICE ***
|
||||
Created symlink /etc/systemd/system/multi-user.target.wants/bootstrap.service → /etc/systemd/system/bootstrap.service.
|
||||
|
||||
*** RASPI BACKGROUND SERVICE ***
|
||||
Created symlink /etc/systemd/system/multi-user.target.wants/background.service → /etc/systemd/system/background.service.
|
||||
*** Adding Tor Sources to sources.list ***
|
||||
deb http://deb.torproject.org/torproject.org stretch main
|
||||
deb-src http://deb.torproject.org/torproject.org stretch main
|
||||
OK
|
||||
|
||||
*** Installing dirmngr ***
|
||||
Reading package lists... Done
|
||||
Building dependency tree
|
||||
Reading state information... Done
|
||||
dirmngr is already the newest version (2.1.18-8~deb9u3).
|
||||
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
|
||||
|
||||
*** Fetching GPG key ***
|
||||
gpg: packet(13) too large
|
||||
gpg: read_block: read error: Invalid packet
|
||||
gpg: no valid OpenPGP data found.
|
||||
gpg: Total number processed: 0
|
||||
gpg: WARNING: nothing exported
|
||||
gpg: no valid OpenPGP data found.
|
||||
gpg: keyserver receive failed: No data
|
||||
gpg: WARNING: nothing exported
|
||||
gpg: no valid OpenPGP data found.
|
||||
!!!!!! Please check if the above really worked!
|
||||
|
||||
**********************************************
|
||||
ALMOST READY
|
||||
**********************************************
|
||||
|
||||
Your SD Card Image for RaspiBlitz is almost ready.
|
||||
Last step is to install LCD drivers. This will reboot your Pi when done.
|
||||
|
||||
Maybe take the chance and look thru the output above if you can spot any errror.
|
||||
|
||||
After final reboot - your SD Card Image is ready.
|
||||
|
||||
IMPORTANT IF WANT TO MAKE A RELEASE IMAGE FROM THIS BUILD:
|
||||
login once after reboot without HDD and run 'XXprepareRelease.sh'
|
||||
|
||||
Press ENTER to install LCD and reboot ...
|
||||
sudo: raspi-config: command not found
|
||||
E: Unable to locate package raspberrypi-bootloader
|
||||
E: No packages found
|
||||
Cloning into 'LCD-show'...
|
||||
remote: Enumerating objects: 8, done.
|
||||
remote: Counting objects: 100% (8/8), done.
|
||||
remote: Compressing objects: 100% (8/8), done.
|
||||
remote: Total 861 (delta 1), reused 0 (delta 0), pack-reused 853
|
||||
Receiving objects: 100% (861/861), 460.67 KiB | 0 bytes/s, done.
|
||||
Resolving deltas: 100% (548/548), done.
|
||||
cp: cannot create regular file '/boot/overlays/': Not a directory
|
||||
cp: cannot create regular file '/boot/overlays/tft35a.dtbo': No such file or directory
|
||||
cp: cannot create regular file '/usr/share/X11/xorg.conf.d/': Not a directory
|
||||
this is not raspberrypi kernel, no need to update touch configure, reboot
|
||||
Connection to 192.168.1.175 closed by remote host.
|
||||
Connection to 192.168.1.175 closed.
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 37 KiB |
@@ -215,6 +215,10 @@ ln_channelInfo="\n"
|
||||
ln_external="\n"
|
||||
ln_alias="${hostname}"
|
||||
ln_publicColor=""
|
||||
ln_port=$(sudo cat /mnt/hdd/lnd/lnd.conf | grep "^listen=*" | cut -f2 -d':')
|
||||
if [ ${#ln_port} -eq 0 ]; then
|
||||
ln_port="9735"
|
||||
fi
|
||||
|
||||
wallet_unlocked=$(sudo tail -n 1 /mnt/hdd/lnd/logs/${network}/${chain}net/lnd.log 2> /dev/null | grep -c unlock)
|
||||
if [ "$wallet_unlocked" -gt 0 ] ; then
|
||||
@@ -227,7 +231,7 @@ else
|
||||
if [ ${ln_tor} -eq 1 ]; then
|
||||
ln_publicColor="${color_green}"
|
||||
else
|
||||
public_check=$(nc -z -w6 ${public_ip} 9735 2>/dev/null; echo $?)
|
||||
public_check=$(nc -z -w6 ${public_ip} ${ln_port} 2>/dev/null; echo $?)
|
||||
if [ $public_check = "0" ]; then
|
||||
# only set yellow/normal because netcat can only say that the port is open - not that it points to this device for sure
|
||||
ln_publicColor="${color_yellow}"
|
||||
@@ -282,14 +286,14 @@ ${color_yellow} /,' ${color_gray}
|
||||
${color_yellow} /' ${color_gray}LND ${color_green}${ln_version} ${ln_baseInfo}
|
||||
${color_yellow} ${color_gray}${ln_channelInfo} ${ln_peersInfo}
|
||||
${color_yellow}
|
||||
${color_yellow}${ln_publicColor}${ln_external}
|
||||
${color_yellow}${ln_publicColor}${ln_external}${color_red}
|
||||
|
||||
" \
|
||||
"RaspiBlitz v${codeVersion}" \
|
||||
"-------------------------------------------" \
|
||||
"load average:${load##up*, }" "${temp}" \
|
||||
"${hdd}" "${sync_percentage}"
|
||||
if [ "${runBehindTor}" != "on" ]; then
|
||||
# one extra space line at the end if nodeaddress is not TOR
|
||||
echo ""
|
||||
|
||||
if [ ${#undervoltageReports} -gt 0 ] && [ "${undervoltageReports}" != "0" ]; then
|
||||
echo "${undervoltageReports} undervoltage reports found - maybe upgrade power supply"
|
||||
fi
|
||||
|
||||
@@ -160,6 +160,36 @@ while :
|
||||
# DISPLAY AFTER SETUP
|
||||
###########################
|
||||
|
||||
if [ "${state}" = "repair" ]; then
|
||||
l1="Repair Mode\n"
|
||||
l2="ssh admin@${localip}\n"
|
||||
l3="Use password: PasswordA\n"
|
||||
boxwidth=$((${#localip} + 28))
|
||||
dialog --backtitle "RaspiBlitz ${codeVersion} (${state}) ${setupStep} ${localip}" --infobox "$l1$l2$l3" 5 ${boxwidth}
|
||||
sleep 3
|
||||
continue
|
||||
fi
|
||||
|
||||
if [ "${state}" = "retorrent" ]; then
|
||||
l1="Repair Mode- TORRENT\n"
|
||||
l2="ssh admin@${localip}\n"
|
||||
l3="Use password: PasswordA\n"
|
||||
boxwidth=$((${#localip} + 28))
|
||||
dialog --backtitle "RaspiBlitz ${codeVersion} (${state}) ${setupStep} ${localip}" --infobox "$l1$l2$l3" 5 ${boxwidth}
|
||||
sleep 3
|
||||
continue
|
||||
fi
|
||||
|
||||
if [ "${state}" = "recopy" ]; then
|
||||
l1="Repair Mode - COPY\n"
|
||||
l2="ssh admin@${localip}\n"
|
||||
l3="Use password: PasswordA\n"
|
||||
boxwidth=$((${#localip} + 28))
|
||||
dialog --backtitle "RaspiBlitz ${codeVersion} (${state}) ${setupStep} ${localip}" --infobox "$l1$l2$l3" 5 ${boxwidth}
|
||||
sleep 3
|
||||
continue
|
||||
fi
|
||||
|
||||
# check if bitcoin is ready
|
||||
sudo -u bitcoin ${network}-cli -datadir=/home/bitcoin/.${network} getblockchaininfo 1>/dev/null 2>error.tmp
|
||||
clienterror=`cat error.tmp`
|
||||
|
||||
@@ -65,6 +65,15 @@ if [ "${state}" = "reindex" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# singal that torrent is in re-download
|
||||
if [ "${state}" = "retorrent" ]; then
|
||||
echo "Re-Index in progress ... start monitoring:"
|
||||
/home/admin/50torrentHDD.sh
|
||||
sudo sed -i "s/^state=.*/state=repair/g" /home/admin/raspiblitz.info
|
||||
/home/admin/00mainMenu.sh
|
||||
exit
|
||||
fi
|
||||
|
||||
# if pre-sync is running - stop it - before continue
|
||||
if [ "${state}" = "presync" ]; then
|
||||
# stopping the pre-sync
|
||||
@@ -134,18 +143,92 @@ waitUntilChainNetworkIsReady()
|
||||
echo "can take longer if device was off or first time"
|
||||
while :
|
||||
do
|
||||
|
||||
# check for error on network
|
||||
sudo -u bitcoin ${network}-cli -datadir=/home/bitcoin/.${network} getblockchaininfo 1>/dev/null 2>error.tmp
|
||||
clienterror=`cat error.tmp`
|
||||
rm error.tmp
|
||||
|
||||
# check for missing blockchain data
|
||||
minSize=250000000000
|
||||
if [ "${network}" = "litecoin" ]; then
|
||||
minSize=20000000000
|
||||
fi
|
||||
blockchainsize=$(sudo du -shbc /mnt/hdd/${network} | head -n1 | awk '{print $1;}')
|
||||
if [ ${#blockchainsize} -gt 0 ]; then
|
||||
if [ ${blockchainsize} -lt ${minSize} ]; then
|
||||
echo "blockchainsize(${blockchainsize})"
|
||||
echo "Missing Blockchain Data (<${minSize}) ..."
|
||||
clienterror="missing blockchain"
|
||||
sleep 3
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ${#clienterror} -gt 0 ]; then
|
||||
|
||||
# analyse LOGS for possible reindex
|
||||
reindex=$(sudo cat /mnt/hdd/${network}/debug.log | grep -c 'Please restart with -reindex or -reindex-chainstate to recover')
|
||||
if [ ${reindex} -gt 0 ]; then
|
||||
echo "!! DETECTED NEED FOR RE-INDEX in debug.log ... starting repair script."
|
||||
if [ ${reindex} -gt 0 ] || [ "${clienterror}" = "missing blockchain" ]; then
|
||||
echo "!! DETECTED NEED FOR RE-INDEX in debug.log ... starting repair options."
|
||||
sudo sed -i "s/^state=.*/state=repair/g" /home/admin/raspiblitz.info
|
||||
sleep 3
|
||||
sudo /home/admin/config.scripts/network.reindex.sh
|
||||
exit
|
||||
|
||||
dialog --backtitle "RaspiBlitz - Repair Script" --msgbox "Your blockchain data needs to be repaired.
|
||||
This can be due to power problems or a failing HDD.
|
||||
Please check the FAQ on RaspiBlitz Github
|
||||
'My blockchain data is corrupted - what can I do?'
|
||||
https://github.com/rootzoll/raspiblitz/blob/master/FAQ.md
|
||||
|
||||
The RaspiBlitz will now try to help you on with the repair.
|
||||
To run a BACKUP of funds & channels first is recommended.
|
||||
" 13 65
|
||||
|
||||
clear
|
||||
# Basic Options
|
||||
OPTIONS=(TORRENT "Redownload Prepared Torrent (DEFAULT)" \
|
||||
COPY "Copy from another Computer (SKILLED)" \
|
||||
REINDEX "Resync thru ${network}d (TAKES VERY VERY LONG)" \
|
||||
BACKUP "Run Backup LND data first (optional)"
|
||||
)
|
||||
|
||||
CHOICE=$(dialog --backtitle "RaspiBlitz - Repair Script" --clear --title "Repair Blockchain Data" --menu "Choose a repair/recovery option:" 11 60 6 "${OPTIONS[@]}" 2>&1 >/dev/tty)
|
||||
|
||||
clear
|
||||
if [ "${CHOICE}" = "TORRENT" ]; then
|
||||
echo "Starting TORRENT ..."
|
||||
sudo sed -i "s/^state=.*/state=retorrent/g" /home/admin/raspiblitz.info
|
||||
/home/admin/50torrentHDD.sh
|
||||
sudo sed -i "s/^state=.*/state=repair/g" /home/admin/raspiblitz.info
|
||||
/home/admin/00mainMenu.sh
|
||||
exit
|
||||
|
||||
elif [ "${CHOICE}" = "COPY" ]; then
|
||||
echo "Starting COPY ..."
|
||||
sudo sed -i "s/^state=.*/state=recopy/g" /home/admin/raspiblitz.info
|
||||
/home/admin/50copyHDD.sh
|
||||
sudo sed -i "s/^state=.*/state=repair/g" /home/admin/raspiblitz.info
|
||||
/home/admin/00mainMenu.sh
|
||||
exit
|
||||
|
||||
elif [ "${CHOICE}" = "REINDEX" ]; then
|
||||
echo "Starting REINDEX ..."
|
||||
sudo /home/admin/config.scripts/network.reindex.sh
|
||||
exit
|
||||
|
||||
elif [ "${CHOICE}" = "BACKUP" ]; then
|
||||
sudo /home/admin/config.scripts/lnd.rescue.sh backup
|
||||
echo "PRESS ENTER to return to menu."
|
||||
read key
|
||||
/home/admin/00mainMenu.sh
|
||||
exit
|
||||
|
||||
else
|
||||
echo "CANCEL"
|
||||
exit
|
||||
fi
|
||||
|
||||
else
|
||||
echo "${network} error: ${clienterror}"
|
||||
fi
|
||||
|
||||
# normal info
|
||||
|
||||
@@ -172,13 +172,21 @@ if [ "${rtlWebinterface}" != "${choice}" ]; then
|
||||
echo "RTL Webinterface Setting changed .."
|
||||
anychange=1
|
||||
sudo /home/admin/config.scripts/bonus.rtl.sh ${choice}
|
||||
errorOnInstall=$?
|
||||
if [ "${choice}" = "on" ]; then
|
||||
localip=$(ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d'/')
|
||||
l1="RTL web servcie will be ready AFTER NEXT REBOOT:"
|
||||
l2="Try to open the following URL in your local webrowser"
|
||||
l3="and login with your PASSWORD B."
|
||||
l4="---> http://${localip}:3000"
|
||||
dialog --title 'OK' --msgbox "${l1}\n${l2}\n${l3}\n${l4}" 11 65
|
||||
if [ ${errorOnInstall} -eq 0 ]; then
|
||||
localip=$(ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d'/')
|
||||
l1="RTL web servcie will be ready AFTER NEXT REBOOT:"
|
||||
l2="Try to open the following URL in your local webrowser"
|
||||
l3="and login with your PASSWORD B."
|
||||
l4="---> http://${localip}:3000"
|
||||
dialog --title 'OK' --msgbox "${l1}\n${l2}\n${l3}\n${l4}" 11 65
|
||||
else
|
||||
l1="!!! FAIL on RTL install !!!"
|
||||
l2="Try manual install on terminal after rebootwith:"
|
||||
l3="sudo /home/admin/config.scripts/bonus.rtl.sh on"
|
||||
dialog --title 'FAIL' --msgbox "${l1}\n${l2}\n${l3}" 10 65
|
||||
fi
|
||||
fi
|
||||
needsReboot=1
|
||||
else
|
||||
|
||||
@@ -188,7 +188,6 @@ if [ ${mountOK} -eq 1 ]; then
|
||||
menuitem=$(dialog --clear --beep --backtitle "RaspiBlitz" --title "Getting the Blockchain" \
|
||||
--menu "You need a copy of the Bitcoin Blockchain - you have 5 options:" 13 75 5 \
|
||||
T "TORRENT --> MAINNET + TESTNET thru Torrent (DEFAULT)" \
|
||||
D "DOWNLOAD --> MAINNET + TESTNET per FTP (FALLBACK)" \
|
||||
C "COPY --> BLOCKCHAINDATA from another node with SCP" \
|
||||
N "CLONE --> BLOCKCHAINDATA from 2nd HDD (extra cable)"\
|
||||
S "SYNC --> MAINNET thru Bitcoin Network (ULTRA SLOW)" 2>&1 >/dev/tty)
|
||||
@@ -199,7 +198,6 @@ if [ ${mountOK} -eq 1 ]; then
|
||||
menuitem=$(dialog --clear --beep --backtitle "RaspiBlitz" --title "Getting the Blockchain" \
|
||||
--menu "You need a copy of the Litecoin Blockchain - you have 3 options:" 13 75 4 \
|
||||
T "TORRENT --> MAINNET thru Torrent (DEFAULT)" \
|
||||
D "DOWNLOAD --> MAINNET per FTP (FALLBACK)" \
|
||||
S "SYNC --> MAINNET thru Litecoin Network (FALLBACK+SLOW)" 2>&1 >/dev/tty)
|
||||
|
||||
# error
|
||||
@@ -225,9 +223,6 @@ if [ ${mountOK} -eq 1 ]; then
|
||||
S)
|
||||
/home/admin/50syncHDD.sh
|
||||
;;
|
||||
D)
|
||||
/home/admin/50downloadHDD.sh
|
||||
;;
|
||||
esac
|
||||
exit 1
|
||||
|
||||
|
||||
@@ -25,7 +25,8 @@ if [ ${existsHDD} -gt 0 ]; then
|
||||
uuid=$1
|
||||
fstabOK=$(cat /etc/fstab | grep -c ${uuid})
|
||||
if [ ${fstabOK} -eq 0 ]; then
|
||||
fstabAdd="UUID=${uuid} /mnt/hdd ext4 noexec,defaults 0 0"
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/360#issuecomment-467567572
|
||||
fstabAdd="UUID=${uuid} /mnt/hdd ext4 noexec,defaults 0 2"
|
||||
echo "Adding line to /etc/fstab ..."
|
||||
echo ${fstabAdd}
|
||||
# adding the new line after line 3 to the /etc/fstab
|
||||
@@ -46,6 +47,10 @@ if [ ${existsHDD} -gt 0 ]; then
|
||||
echo "OK - HDD is mounted"
|
||||
echo ""
|
||||
|
||||
# setting fsk check intervall to 1
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/360#issuecomment-467567572
|
||||
sudo tune2fs -c 1 /dev/sda1
|
||||
|
||||
# init the RASPIBLITZ Config
|
||||
configFile="/mnt/hdd/raspiblitz.conf"
|
||||
configExists=$(sudo ls ${configFile} | grep -c 'raspiblitz.conf')
|
||||
@@ -64,6 +69,19 @@ if [ ${existsHDD} -gt 0 ]; then
|
||||
# try to determine publicIP and if not possible use localIP as placeholder
|
||||
# https://github.com/rootzoll/raspiblitz/issues/312#issuecomment-462675101
|
||||
freshPublicIP=$(curl -s http://v4.ipv6-test.com/api/myip.php)
|
||||
|
||||
# sanity check on IP data
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/371#issuecomment-472416349
|
||||
echo "-> sanity check of IP data: ${freshPublicIP}"
|
||||
if [[ $freshPublicIP =~ ^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$ ]]; then
|
||||
echo "OK IPv6"
|
||||
elif [[ $freshPublicIP =~ ^([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$ ]]; then
|
||||
echo "OK IPv4"
|
||||
else
|
||||
echo "FAIL - not an IPv4 or IPv6 address"
|
||||
freshPublicIP=""
|
||||
fi
|
||||
|
||||
if [ ${#freshPublicIP} -eq 0 ]; then
|
||||
localIP=$(ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d'/')
|
||||
echo "WARNING: No publicIP information at all yet - working with placeholder : ${localIP}"
|
||||
|
||||
@@ -6,29 +6,55 @@ source /home/admin/raspiblitz.info
|
||||
# get local ip
|
||||
localip=$(ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d'/')
|
||||
|
||||
# Basic Options
|
||||
OPTIONS=(UNIX "MacOS or Linux" \
|
||||
WINDOWS "Windows"
|
||||
)
|
||||
|
||||
CHOICE=$(dialog --clear --title "Which System is running on the other computer?" --menu "" 11 60 6 "${OPTIONS[@]}" 2>&1 >/dev/tty)
|
||||
|
||||
clear
|
||||
case $CHOICE in
|
||||
UNIX) echo "Linus";;
|
||||
WINDOWS) echo "Bill";;
|
||||
*) exit 1;;
|
||||
esac
|
||||
|
||||
# additional prep if this is used to replace corrupted blockchain
|
||||
if [ "${setupStep}" = "100" ]; then
|
||||
# warn user
|
||||
echo "!! Press ENTER to delete the old blockchain .. CTRL+C to CANCEL"
|
||||
read key
|
||||
# make sure services are not running
|
||||
echo "stopping servcies ..."
|
||||
sudo systemctl stop lnd
|
||||
sudo systemctl stop bitcoind
|
||||
sudo systemctl disable bitcoind
|
||||
sudo cp -f /mnt/hdd/bitcoin/bitcoin.conf /home/admin/assets/bitcoin.conf
|
||||
fi
|
||||
|
||||
# delete all IN bitcoin directory but not itself if it exists
|
||||
# so that possibel link to /home/bitcoin/.bitcoin nicht beschädigt wird
|
||||
sudo rm -rfv /mnt/hdd/bitcoin/* 2>/dev/null
|
||||
if [ -d "/mnt/hdd/bitcoin" ]; then
|
||||
dialog --title "Fresh or Repair" --yesno "Do you want to delete the old/local blockchain data now?" 8 60
|
||||
response=$?
|
||||
echo "response(${response})"
|
||||
if [ "${response}" = "1" ]; then
|
||||
echo "OK - keep old blockchain - just try to repair by copying over it"
|
||||
sleep 3
|
||||
else
|
||||
echo "OK - delete old blockchain"
|
||||
# delete all IN bitcoin directory but not itself if it exists
|
||||
# so that possibel link to /home/bitcoin/.bitcoin nicht beschädigt wird
|
||||
# also keep debug logs for repair script
|
||||
sudo mv /mnt/hdd/bitcoin/debug.log /home/admin/debug.log 2>/dev/null
|
||||
sudo rm -rfv /mnt/hdd/bitcoin/* 2>/dev/null
|
||||
sudo mv /home/admin/debug.log /mnt/hdd/bitcoin/debug.log 2>/dev/null
|
||||
sleep 3
|
||||
fi
|
||||
fi
|
||||
|
||||
# make sure /mnt/hdd/bitcoin exists
|
||||
sudo mkdir /mnt/hdd/bitcoin 2>/dev/null
|
||||
|
||||
# allow all users write to it ()
|
||||
# allow all users write to it
|
||||
sudo chmod 777 /mnt/hdd/bitcoin
|
||||
|
||||
echo
|
||||
clear
|
||||
echo "************************************************************************************"
|
||||
echo "Instructions to COPY/TRANSFER SYNCED BLOCKCHAIN from another computer"
|
||||
@@ -45,7 +71,11 @@ echo "blockchain data. You should see directories 'blocks', 'chainstate' & 'inde
|
||||
echo "Make sure the bitcoin client on that computer is stopped."
|
||||
echo ""
|
||||
echo "COPY, PASTE & EXECUTE the following command on the blockchain source computer:"
|
||||
echo "sudo scp -r ./chainstate ./indexes ./testnet3 ./blocks bitcoin@${localip}:/mnt/hdd/bitcoin"
|
||||
if [ "${CHOICE}" = "WINDOWS" ]; then
|
||||
echo "sudo scp -r ./chainstate ./indexes ./blocks bitcoin@${localip}:/mnt/hdd/bitcoin"
|
||||
else
|
||||
echo "sudo rsync -avhW --progress ./chainstate ./indexes ./blocks bitcoin@${localip}:/mnt/hdd/bitcoin"
|
||||
fi
|
||||
echo ""
|
||||
echo "This command may ask you first about the admin password of the other computer (because sudo)."
|
||||
echo "Then it will ask for your SSH PASSWORD A from this RaspiBlitz."
|
||||
@@ -101,6 +131,7 @@ if [ ${anyDataAtAll} -eq 1 ]; then
|
||||
else
|
||||
|
||||
echo "OK -> DATA LOOKS GOOD :D"
|
||||
sudo rm /mnt/hdd/bitcoin/debug.log
|
||||
|
||||
fi
|
||||
|
||||
@@ -115,15 +146,17 @@ echo "*********************************************"
|
||||
# if started after intial setup - quit here
|
||||
if [ "${setupStep}" = "100" ]; then
|
||||
sudo cp /home/admin/assets/bitcoin.conf /mnt/hdd/bitcoin/bitcoin.conf
|
||||
rpcpass=$(sudo cat /mnt/hdd/lnd/lnd.conf | grep 'bitcoind.rpcpass' | cut -d "=" -f2)
|
||||
sudo chown bitcoin:bitcoin /mnt/hdd/bitcoin/bitcoin.conf
|
||||
sudo sed -i "s/^rpcpassword=.*/rpcpassword=${rpcpass}/g" /mnt/hdd/bitcoin/bitcoin.conf 2>/dev/null
|
||||
sudo systemctl enable bitcoind
|
||||
echo "DONE - reboot is needed: sudo shutdown -r now"
|
||||
echo "DONE - rebooting: sudo shutdown -r now"
|
||||
sudo shutdown -r now
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# REACT ON QUICK CHECK DURING INITAL SETUP
|
||||
|
||||
|
||||
if [ ${quickCheckOK} -eq 0 ]; then
|
||||
|
||||
echo "*********************************************"
|
||||
|
||||
@@ -7,6 +7,14 @@ echo ""
|
||||
## get basic info
|
||||
source /home/admin/raspiblitz.info
|
||||
|
||||
|
||||
# if setup was done - remove old data
|
||||
if [ "${setupStep}" = "100" ]; then
|
||||
echo "stopping servcies ..."
|
||||
sudo systemctl stop lnd
|
||||
sudo systemctl stop ${network}d
|
||||
fi
|
||||
|
||||
# make sure rtorrent is available
|
||||
sudo apt-get install rtorrent -y
|
||||
echo ""
|
||||
@@ -245,7 +253,7 @@ if [ ${torrentError} -gt 0 ]; then
|
||||
# User Cancel --> Torrent incomplete
|
||||
sleep 3
|
||||
echo -ne '\007'
|
||||
dialog --title " WARNING (${torrentError})" --yesno "The Torrent download failed or is not complete - maybe try FTP download next time. Do you want keep already downloaded torrent data?" 8 57
|
||||
dialog --title " WARNING (${torrentError})" --yesno "The Torrent download failed or is not complete - maybe try COPY option. Do you want keep already downloaded torrent data?" 8 57
|
||||
response=$?
|
||||
case $response in
|
||||
1) sudo rm -rf ${targetDir}; sudo rm -rf ${sessionDir} ;;
|
||||
@@ -263,9 +271,10 @@ if [ "${setupStep}" = "100" ]; then
|
||||
sudo systemctl disable ${network}d
|
||||
sudo cp -f /mnt/hdd/${network}/${network}.conf /home/admin/assets/${network}.conf
|
||||
sudo rm -rfv /mnt/hdd/${network}/* 2>/dev/null
|
||||
sudo rm /mnt/hdd/${network}/debug.log
|
||||
fi
|
||||
|
||||
# Download worked / just move, copy on USB2 >4h
|
||||
# Download worked / just move, copy on USB2 would be >4h
|
||||
echo ""
|
||||
echo "*** Moving Files ***"
|
||||
date +%s
|
||||
@@ -279,9 +288,12 @@ date +%s
|
||||
|
||||
if [ "${setupStep}" = "100" ]; then
|
||||
sudo cp /home/admin/assets/${network}.conf /mnt/hdd/${network}/${network}.conf
|
||||
rpcpass=$(sudo cat /mnt/hdd/lnd/lnd.conf | grep "${network}d.rpcpass" | cut -d "=" -f2)
|
||||
sudo sed -i "s/^rpcpassword=.*/rpcpassword=${rpcpass}/g" /mnt/hdd/${network}/${network}.conf 2>/dev/null
|
||||
sudo chown -R bitcoin:bitcoin /mnt/hdd/${network}/
|
||||
sudo systemctl enable ${network}d
|
||||
echo "DONE - reboot needed: sudo shutdown -r now"
|
||||
echo "DONE - rebooting: sudo shutdown -r now"
|
||||
sudo shutdown -r now
|
||||
else
|
||||
# set SetupState
|
||||
sudo sed -i "s/^setupStep=.*/setupStep=50/g" /home/admin/raspiblitz.info
|
||||
|
||||
@@ -42,7 +42,8 @@ read key
|
||||
|
||||
clear
|
||||
echo "*** STEP 2 : SCAN MACAROON (make whole QR code fill camera) ***"
|
||||
echo -e "${myip}:10009,\n$(xxd -p -c2000 ./.lnd/data/chain/${network}/${chain}net/admin.macaroon)," > qr.txt && cat ./.lnd/tls.cert >>qr.txt && qrencode -t ANSI256 < qr.txt
|
||||
#echo -e "${myip}:10009,\n$(xxd -p -c2000 ~/.lnd/data/chain/${network}/${chain}net/admin.macaroon)," > qr.txt && qrencode -t ANSIUTF8 < qr.txt
|
||||
echo -e "${myip}:10009,\n$(xxd -p -c2000 ./.lnd/data/chain/${network}/${chain}net/admin.macaroon)," > qr.txt && qrencode -t ANSI256 < qr.txt
|
||||
echo "(To shrink QR code: OSX->CMD- / LINUX-> CTRL-) Press ENTER when finished."
|
||||
read key
|
||||
shred qr.txt
|
||||
|
||||
@@ -15,11 +15,13 @@ if [ ${#GOPATH} -eq 0 ]; then
|
||||
fi
|
||||
|
||||
# make sure go is installed
|
||||
goVersion="1.11"
|
||||
echo "### Check Framework: GO ###"
|
||||
goInstalled=$(go version 2>/dev/null | grep -c 'go')
|
||||
if [ ${goInstalled} -eq 0 ];then
|
||||
echo "### Installing GO ###"
|
||||
wget https://storage.googleapis.com/golang/go1.11.linux-armv6l.tar.gz
|
||||
sudo tar -C /usr/local -xzf go1.11.linux-armv6l.tar.gz
|
||||
echo "---> Installing GO"
|
||||
wget https://storage.googleapis.com/golang/go${goVersion}.linux-armv6l.tar.gz
|
||||
sudo tar -C /usr/local -xzf go${goVersion}.linux-armv6l.tar.gz
|
||||
sudo rm *.gz
|
||||
sudo mkdir /usr/local/gocode
|
||||
sudo chmod 777 /usr/local/gocode
|
||||
@@ -27,16 +29,24 @@ if [ ${goInstalled} -eq 0 ];then
|
||||
fi
|
||||
if [ ${goInstalled} -eq 0 ];then
|
||||
echo "FAIL: Was not able to install GO (needed to run LndConnect)"
|
||||
sleep 4
|
||||
exit 1
|
||||
fi
|
||||
clear
|
||||
correctGoVersion=$(go version | grep -c "go${goVersion}")
|
||||
if [ ${correctGoVersion} -eq 0 ]; then
|
||||
echo "WARNING: You work with a untested version of GO - should be ${goVersion} .. trying to continue"
|
||||
go version
|
||||
sleep 6
|
||||
echo ""
|
||||
fi
|
||||
|
||||
# make sure qrcode-encoder in installed
|
||||
clear
|
||||
echo "*** Setup ***"
|
||||
echo ""
|
||||
echo "Installing zapconnect. Please wait..."
|
||||
echo "Installing zapconnect."
|
||||
echo ""
|
||||
echo "Getting github.com/LN-Zap/lndconnect (please wait) ..."
|
||||
echo "Getting github.com/LN-Zap/lndconnect (please wait - can take several minutes) ..."
|
||||
go get -d github.com/LN-Zap/lndconnect
|
||||
cd $GOPATH/src/github.com/LN-Zap/lndconnect
|
||||
echo ""
|
||||
@@ -52,10 +62,10 @@ echo "******************************"
|
||||
echo ""
|
||||
echo "GETTING THE APP"
|
||||
echo "At the moment this app is in closed beta testing and the source code has not been published yet."
|
||||
echo "Go to http://www.zap-ios.jackmallers.com sign up with your email (confirmation can take time)"
|
||||
echo "iOS: Read https://developer.apple.com/testflight/testers/"
|
||||
echo "1. Install the app 'TestFlight' from Apple Appstore. Open it and agree to all terms of services."
|
||||
echo "2. Open on your iOS device https://github.com/LN-Zap/zap-iOS and follow 'Download the Alpha'"
|
||||
echo ""
|
||||
echo "*** STEP 1 ***"
|
||||
echo "*** PAIRING STEP 1 ***"
|
||||
if [ ${#dynDomain} -eq 0 ]; then
|
||||
echo "Once you have the app is running make sure you are on the same local network (WLAN same as LAN)."
|
||||
fi
|
||||
@@ -67,7 +77,7 @@ echo "Then PRESS ENTER here in the terminal to generare the QR code and scan it
|
||||
read key
|
||||
|
||||
clear
|
||||
echo "*** STEP 2 : Click on Scan (make whole QR code fill camera) ***"
|
||||
echo "*** PAIRING STEP 2 : Click on Scan (make whole QR code fill camera) ***"
|
||||
|
||||
if [ ${#dynDomain} -eq 0 ]; then
|
||||
# If you drop the -i parameter, lndconnect will use the external IP.
|
||||
|
||||
@@ -40,7 +40,10 @@ echo "*** CHAINNETWORK SYSTEMD STATUS ***"
|
||||
sudo systemctl status ${network}d -n2 --no-pager
|
||||
echo ""
|
||||
|
||||
echo "*** LAST 20 CHAINNETWORK LOGS ***"
|
||||
echo "*** LAST 5 ERROR LOGS ***"
|
||||
sudo journalctl -u ${network}d -b --no-pager -n5
|
||||
echo ""
|
||||
echo "*** LAST 20 INFO LOGS ***"
|
||||
pathAdd=""
|
||||
if [ "${chain}" = "test" ]; then
|
||||
pathAdd="/testnet3"
|
||||
@@ -52,8 +55,11 @@ echo "*** LND SYSTEMD STATUS ***"
|
||||
sudo systemctl status lnd -n2 --no-pager
|
||||
echo ""
|
||||
|
||||
echo "*** LAST 20 LND LOGS ***"
|
||||
sudo journalctl -u lnd -b --no-pager -n20
|
||||
echo "*** LAST 5 LND ERROR LOGS ***"
|
||||
sudo journalctl -u lnd -b --no-pager -n5
|
||||
echo ""
|
||||
echo "*** LAST 20 LND INFO LOGS ***"
|
||||
sudo tail -n 20 /mnt/hdd/lnd/logs/${network}/${chain}net/lnd.log
|
||||
echo ""
|
||||
|
||||
if [ "${rtlWebinterface}" = "on" ]; then
|
||||
|
||||
@@ -60,6 +60,25 @@ do
|
||||
|
||||
fi
|
||||
|
||||
####################################################
|
||||
# CHECK FOR UNDERVOLTAGE REPORTS
|
||||
# every 1 hour scan for undervoltage reports
|
||||
####################################################
|
||||
recheckUndervoltage=$(($counter % 3600))
|
||||
if [ ${recheckUndervoltage} -eq 1 ]; then
|
||||
echo "*** RECHECK UNDERVOLTAGE ***"
|
||||
countReports=$(sudo cat /var/log/syslog | grep -c "Under-voltage detected!")
|
||||
echo "${countReports} undervoltage reports found in syslog"
|
||||
if [ ${#undervoltageReports} -eq 0 ]; then
|
||||
# write new value to info file
|
||||
undervoltageReports="${countReports}"
|
||||
echo "undervoltageReports=${undervoltageReports}" >> ${infoFile}
|
||||
else
|
||||
# update value in info file
|
||||
sed -i "s/^undervoltageReports=.*/undervoltageReports=${countReports}/g" ${infoFile}
|
||||
fi
|
||||
fi
|
||||
|
||||
####################################################
|
||||
# RECHECK PUBLIC IP
|
||||
# when public IP changes, restart LND with new IP
|
||||
@@ -80,6 +99,18 @@ do
|
||||
echo "freshPublicIP(${freshPublicIP})"
|
||||
echo "publicIP(${publicIP})"
|
||||
|
||||
# sanity check on IP data
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/371#issuecomment-472416349
|
||||
echo "-> sanity check of IP data: ${freshPublicIP}"
|
||||
if [[ $freshPublicIP =~ ^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$ ]]; then
|
||||
echo "OK IPv6"
|
||||
elif [[ $freshPublicIP =~ ^([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$ ]]; then
|
||||
echo "OK IPv4"
|
||||
else
|
||||
echo "FAIL - not an IPv4 or IPv6 address"
|
||||
freshPublicIP=""
|
||||
fi
|
||||
|
||||
if [ ${#freshPublicIP} -eq 0 ]; then
|
||||
|
||||
echo "freshPublicIP is ZERO - ignoring"
|
||||
|
||||
@@ -156,6 +156,20 @@ else
|
||||
echo "Provisioning TOR - keep default" >> ${logFile}
|
||||
fi
|
||||
|
||||
# CUSTOM PORT
|
||||
echo "Provisioning LND Port" >> ${logFile}
|
||||
lndPort=$(sudo cat /mnt/hdd/lnd/lnd.conf | grep "^listen=*" | cut -f2 -d':')
|
||||
if [ ${#lndPort} -gt 0 ]; then
|
||||
if [ "${lndPort}" != "9735" ]; then
|
||||
echo "User is running custom LND port: ${lndPort}" >> ${logFile}
|
||||
sudo /home/admin/config.scripts/lnd.setport.sh ${lndPort} >> ${logFile} 2>&1
|
||||
else
|
||||
echo "User is running standard LND port: ${lndPort}" >> ${logFile}
|
||||
fi
|
||||
else
|
||||
echo "Was not able to get LND port from config." >> ${logFile}
|
||||
fi
|
||||
|
||||
sudo sed -i "s/^message=.*/message='Setup Done'/g" ${infoFile}
|
||||
|
||||
echo "DONE - Give raspi some cool off time after hard building .... 20 secs sleep" >> ${logFile}
|
||||
|
||||
@@ -38,6 +38,12 @@ echo "Running RaspiBlitz Bootstrap ${codeVersion}" >> $logFile
|
||||
date >> $logFile
|
||||
echo "***********************************************" >> $logFile
|
||||
|
||||
# display 3 secs logo - try to kickstart LCD
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/195#issuecomment-469918692
|
||||
sudo fbi -a -T 1 -d /dev/fb1 --noverbose /home/admin/raspiblitz/pictures/logoraspiblitz.png
|
||||
sleep 5
|
||||
sudo killall -3 fbi
|
||||
|
||||
# set default values for raspiblitz.info
|
||||
network=""
|
||||
chain=""
|
||||
@@ -58,6 +64,22 @@ if [ "${setupStep}" != "100" ]; then
|
||||
fi
|
||||
sudo chmod 777 ${infoFile}
|
||||
|
||||
# Emergency cleaning logs when over 1GB (to prevent SD card filling up)
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/418#issuecomment-472180944
|
||||
echo "*** Checking Log Size ***"
|
||||
logsMegaByte=$(sudo du -c -m /var/log | grep "total" | awk '{print $1;}')
|
||||
if [ ${logsMegaByte} -gt 1000 ]; then
|
||||
echo "WARN !! Logs /var/log in are bigger then 1GB"
|
||||
echo "ACTION --> DELETED ALL LOGS"
|
||||
sudo rm -r /var/log/*
|
||||
sleep 3
|
||||
echo "WARN !! Logs in /var/log in were bigger then 1GB and got emergency delete to prevent fillup."
|
||||
echo "If you see this in the logs please report to the GitHub issues, so LOG config needs to hbe optimized."
|
||||
else
|
||||
echo "OK - logs are at ${logsMegaByte} MB - within safety limit"
|
||||
fi
|
||||
echo ""
|
||||
|
||||
################################
|
||||
# GENERATE UNIQUE SSH PUB KEYS
|
||||
# on first boot up
|
||||
@@ -288,6 +310,19 @@ if [ ${configExists} -eq 1 ]; then
|
||||
# wait otherwise looking for publicIP fails
|
||||
sleep 5
|
||||
freshPublicIP=$(curl -s http://v4.ipv6-test.com/api/myip.php)
|
||||
|
||||
# sanity check on IP data
|
||||
# see https://github.com/rootzoll/raspiblitz/issues/371#issuecomment-472416349
|
||||
echo "-> sanity check of IP data: ${freshPublicIP}"
|
||||
if [[ $freshPublicIP =~ ^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$ ]]; then
|
||||
echo "OK IPv6"
|
||||
elif [[ $freshPublicIP =~ ^([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.([0-9]{1,2}|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$ ]]; then
|
||||
echo "OK IPv4"
|
||||
else
|
||||
echo "FAIL - not an IPv4 or IPv6 address"
|
||||
freshPublicIP=""
|
||||
fi
|
||||
|
||||
if [ ${#freshPublicIP} -eq 0 ]; then
|
||||
# prevent having no publicIP set at all and LND getting stuck
|
||||
# https://github.com/rootzoll/raspiblitz/issues/312#issuecomment-462675101
|
||||
|
||||
@@ -1,2 +1,2 @@
|
||||
# RaspiBlitz Version - always [main].[sub]
|
||||
codeVersion="1.0"
|
||||
codeVersion="1.1"
|
||||
@@ -12,6 +12,8 @@ User=root
|
||||
Restart=always
|
||||
TimeoutSec=120
|
||||
RestartSec=30
|
||||
StandardOutput=null
|
||||
StandardError=journal
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -18,6 +18,8 @@ KillMode=process
|
||||
Restart=always
|
||||
TimeoutSec=120
|
||||
RestartSec=30
|
||||
StandardOutput=null
|
||||
StandardError=journal
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -12,6 +12,7 @@ Type=oneshot
|
||||
RemainAfterExit=true
|
||||
ExecStart=/home/admin/_bootstrap.sh
|
||||
StandardOutput=journal
|
||||
StandardError=journal
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -1,7 +1,7 @@
|
||||
# lnd configuration
|
||||
|
||||
[Application Options]
|
||||
debuglevel=debug
|
||||
debuglevel=info
|
||||
maxpendingchannels=5
|
||||
alias=raspiblitz
|
||||
color=#68F442
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
# lnd configuration
|
||||
|
||||
[Application Options]
|
||||
debuglevel=debug
|
||||
debuglevel=info
|
||||
maxpendingchannels=5
|
||||
alias=raspiblitz
|
||||
color=#68F442
|
||||
|
||||
@@ -20,6 +20,8 @@ KillMode=process
|
||||
TimeoutSec=180
|
||||
Restart=always
|
||||
RestartSec=60
|
||||
StandardOutput=null
|
||||
StandardError=journal
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
@@ -29,9 +29,6 @@ sudo systemctl stop RTL 2>/dev/null
|
||||
if [ "$1" = "1" ] || [ "$1" = "on" ]; then
|
||||
echo "*** INSTALL RTL ***"
|
||||
|
||||
# setting value in raspi blitz config
|
||||
sudo sed -i "s/^rtlWebinterface=.*/rtlWebinterface=on/g" /mnt/hdd/raspiblitz.conf
|
||||
|
||||
isInstalled=$(sudo ls /etc/systemd/system/RTL.service 2>/dev/null | grep -c 'RTL.service')
|
||||
if [ ${isInstalled} -eq 0 ]; then
|
||||
|
||||
@@ -42,18 +39,42 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
|
||||
sudo apt-get install -y nodejs
|
||||
echo ""
|
||||
|
||||
# check if nodeJS was installed
|
||||
nodeJSInstalled=$(node -v | grep -c "v11.")
|
||||
if [ nodeJSInstalled -eq 0 ]; then
|
||||
echo "FAIL - Was not able to install nodeJS 11"
|
||||
echo "ABORT - RTL install"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# download source code and set to tag release
|
||||
echo "*** Get the RTL Source Code ***"
|
||||
git clone https://github.com/ShahanaFarooqui/RTL.git
|
||||
cd RTL
|
||||
git reset --hard v0.2.1
|
||||
#git reset --hard v0.1.14-alpha
|
||||
git reset --hard v0.2.15
|
||||
# check if node_modles exists now
|
||||
if [ -d "/home/admin/RTL" ]; then
|
||||
echo "OK - RTL code copy looks good"
|
||||
else
|
||||
echo "FAIL - code copy did not run correctly"
|
||||
echo "ABORT - RTL install"
|
||||
exit 1
|
||||
fi
|
||||
echo ""
|
||||
|
||||
|
||||
# install
|
||||
echo "*** Run: npm install ***"
|
||||
npm install
|
||||
cd ..
|
||||
# check if node_modles exists now
|
||||
if [ -d "/home/admin/RTL/node_modules" ]; then
|
||||
echo "OK - RTL install looks good"
|
||||
else
|
||||
echo "FAIL - npm install did not run correctly"
|
||||
echo "ABORT - RTL install"
|
||||
exit 1
|
||||
fi
|
||||
echo ""
|
||||
|
||||
# prepare RTL.conf file
|
||||
@@ -77,10 +98,14 @@ if [ "$1" = "1" ] || [ "$1" = "on" ]; then
|
||||
sudo sed -i "s|chain/bitcoin/mainnet|chain/${network}/${chain}net|" /etc/systemd/system/RTL.service
|
||||
sudo systemctl enable RTL
|
||||
echo "OK - RTL is now ACTIVE"
|
||||
|
||||
else
|
||||
echo "RTL already installed."
|
||||
fi
|
||||
|
||||
# setting value in raspi blitz config
|
||||
sudo sed -i "s/^rtlWebinterface=.*/rtlWebinterface=on/g" /mnt/hdd/raspiblitz.conf
|
||||
|
||||
echo "needs reboot to activate new setting"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
@@ -1,5 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
# requests missing in dietpi
|
||||
sudo pip install requests
|
||||
|
||||
# command info
|
||||
if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then
|
||||
echo "small config script to autounlock lnd after restart"
|
||||
|
||||
@@ -5,8 +5,10 @@
|
||||
echo "making sure services are not running"
|
||||
sudo systemctl stop lnd 2>/dev/null
|
||||
|
||||
echo "deleting TLSCert"
|
||||
sudo rm /mnt/hdd/lnd/tls.* 2>/dev/null
|
||||
echo "keep old tls data as backup"
|
||||
sudo mv /mnt/hdd/lnd/tls.cert /mnt/hdd/lnd/tls.cert.old
|
||||
sudo mv /mnt/hdd/lnd/tls.key /mnt/hdd/lnd/tls.key.old
|
||||
|
||||
echo "let lnd generate new TLSCert"
|
||||
sudo -u bitcoin /usr/local/bin/lnd &>/dev/null &
|
||||
echo "wait until generated"
|
||||
|
||||
151
home.admin/config.scripts/lnd.rescue.sh
Executable file
151
home.admin/config.scripts/lnd.rescue.sh
Executable file
@@ -0,0 +1,151 @@
|
||||
#!/bin/bash
|
||||
|
||||
# command info
|
||||
if [ $# -eq 0 ] || [ "$1" = "-h" ] || [ "$1" = "-help" ]; then
|
||||
echo "small rescue script to to backup or restore"
|
||||
echo "lnd.rescue.sh [backup|restore]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
localip=$(ip addr | grep 'state UP' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d'/')
|
||||
|
||||
mode="$1"
|
||||
if [ ${mode} = "backup" ]; then
|
||||
|
||||
################################
|
||||
# BACKUP
|
||||
################################
|
||||
|
||||
echo "*** LND.RESCUE --> BACKUP"
|
||||
|
||||
# stop LND
|
||||
echo "Stopping lnd..."
|
||||
sudo systemctl stop lnd
|
||||
sleep 5
|
||||
echo "OK"
|
||||
echo
|
||||
|
||||
# zip it
|
||||
sudo tar -zcvf /home/admin/lnd-rescue.tar.gz /mnt/hdd/lnd
|
||||
sudo chown admin:admin /home/admin/lnd-rescue.tar.gz
|
||||
|
||||
# name with md5 checksum
|
||||
md5checksum=$(md5sum /home/admin/lnd-rescue.tar.gz | head -n1 | cut -d " " -f1)
|
||||
mv /home/admin/lnd-rescue.tar.gz /home/admin/lnd-rescue-${md5checksum}.tar.gz
|
||||
|
||||
# offer SCP for download
|
||||
echo
|
||||
echo "****************************"
|
||||
echo "* DOWNLOAD THE BACKUP FILE *"
|
||||
echo "****************************"
|
||||
echo
|
||||
echo "RUN THE FOLLOWING COMMAND ON YOUR LAPTOP IN NEW TERMINAL:"
|
||||
echo "scp -r admin@${localip}:/home/admin/lnd-rescue-*.tar.gz ./"
|
||||
echo ""
|
||||
echo "Use password A to authenticate file transfere."
|
||||
echo
|
||||
echo "BEWARE: Your Lightning node is now stopped. So its safe to backup the data and restore it"
|
||||
echo "later on - for example on a fresh RaspiBlitz. But once this Lightning node gets started"
|
||||
echo "again by 'sudo systemctl start lnd' or a reboot its not adviced to restore the backup file"
|
||||
echo "anymore bacause it cointains outdated channel data and can lead to loss of channel funds."
|
||||
|
||||
elif [ ${mode} = "restore" ]; then
|
||||
|
||||
################################
|
||||
# RESTORE
|
||||
################################
|
||||
|
||||
echo "*** LND.RESCUE --> RESTORE"
|
||||
echo ""
|
||||
|
||||
filename=""
|
||||
while [ ${#filename} -eq 0 ]
|
||||
do
|
||||
countZips=$(sudo ls /home/admin/lnd-rescue-*.tar.gz 2>/dev/null | grep -c 'lnd-rescue')
|
||||
if [ ${countZips} -lt 1 ]; then
|
||||
echo "**************************"
|
||||
echo "* UPLOAD THE BACKUP FILE *"
|
||||
echo "**************************"
|
||||
echo
|
||||
echo "If you have a lnd-rescue backup file on your laptop you can now"
|
||||
echo "upload it and restore the your old LND state."
|
||||
echo
|
||||
echo "To make upload open a new terminal on your laptop,"
|
||||
echo "change into the directory where your lnd-rescue file is and"
|
||||
echo "COPY, PASTE AND EXECUTE THE FOLLOWING COMMAND:"
|
||||
echo "scp -r ./lnd-rescue-*.tar.gz admin@${localip}:/home/admin/"
|
||||
echo ""
|
||||
echo "Use password A to authenticate file transfere."
|
||||
echo
|
||||
echo "PRESS ENTER when upload is done. Use CTRL-C to abort."
|
||||
fi
|
||||
if [ ${countZips} -gt 1 ]; then
|
||||
echo "!! WARNING !!"
|
||||
echo "There are multiple lnd-rescue files in directory /home/admin."
|
||||
echo "Make sure there is only one file to work with and start again."
|
||||
echo
|
||||
exit 1
|
||||
fi
|
||||
if [ ${countZips} -eq 1 ]; then
|
||||
|
||||
clear
|
||||
echo
|
||||
echo "**************************"
|
||||
echo "* RESTORING BACKUP FILE *"
|
||||
echo "**************************"
|
||||
echo
|
||||
|
||||
filename=$(sudo ls /home/admin/lnd-rescue-*.tar.gz)
|
||||
echo "OK -> found file to restore: ${filename}"
|
||||
|
||||
md5checksum=$(md5sum ${filename} | head -n1 | cut -d " " -f1)
|
||||
isCorrect=$(echo ${filename} | grep -c ${md5checksum})
|
||||
if [ ${isCorrect} -eq 1 ]; then
|
||||
echo "OK -> checksum looks good: ${md5checksum}"
|
||||
else
|
||||
echo "!!! FAIL -> Checksum not correct."
|
||||
echo "Maybe transfere failed? Continue on your own risk!"
|
||||
echo "Recommend to abort and upload again!"
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "WARNING: This will delete the actual LND state/funds of this RaspiBlitz."
|
||||
echo
|
||||
echo "PRESS ENTER to start restore. Use CTRL-C to abort."
|
||||
fi
|
||||
read key
|
||||
done
|
||||
|
||||
# stop LND
|
||||
echo "Stopping lnd..."
|
||||
sudo systemctl stop lnd
|
||||
sleep 5
|
||||
echo "OK"
|
||||
echo
|
||||
|
||||
# clean DIR
|
||||
echo "Cleaning LND data ..."
|
||||
sudo rm -r /mnt/hdd/lnd/*
|
||||
echo "OK"
|
||||
echo
|
||||
|
||||
# unpack zip
|
||||
echo "Restoring LND data from ${filename} ..."
|
||||
sudo tar -xf ${filename} -C /
|
||||
sudo chown -R bitcoin:bitcoin /mnt/hdd/lnd
|
||||
echo "OK"
|
||||
echo
|
||||
|
||||
# start LND
|
||||
echo "Starting lnd..."
|
||||
sudo systemctl start lnd
|
||||
echo "OK"
|
||||
echo
|
||||
|
||||
echo "DONE - please check if LND starts up correctly with restored state and funds."
|
||||
echo "Keep in mind that some channels got forced closed by channel partners in the meanwhile."
|
||||
echo
|
||||
|
||||
else
|
||||
echo "unknown parameter '${mode}' - exit"
|
||||
fi
|
||||
77
home.admin/config.scripts/lnd.setport.sh
Normal file
77
home.admin/config.scripts/lnd.setport.sh
Normal file
@@ -0,0 +1,77 @@
|
||||
#!/bin/bash
|
||||
|
||||
# based on: https://github.com/rootzoll/raspiblitz/issues/100#issuecomment-465997126
|
||||
|
||||
if [ $# -eq 0 ]; then
|
||||
echo "small config script set the port LND is running on"
|
||||
echo "lnd.setport.sh [portnumber]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
portnumber=$1
|
||||
|
||||
# check port numer is a integer
|
||||
if ! [ "$portnumber" -eq "$portnumber" ] 2> /dev/null
|
||||
then
|
||||
echo "FAIL - portnumber(${portnumber}) not a number"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# check port number is bigger then zero
|
||||
if [ ${portnumber} -lt 1 ]; then
|
||||
echo "FAIL - portnumber(${portnumber}) not above 0"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# check port number is smaller than max
|
||||
if [ ${portnumber} -gt 65535 ]; then
|
||||
echo "FAIL - portnumber(${portnumber}) not below 65535"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# check if TOR is on
|
||||
source /mnt/hdd/raspiblitz.conf
|
||||
if [ "${runBehindTor}" = "on" ]; then
|
||||
echo "FAIL - portnumber cannot be changed if TOR is ON (not implemented)"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# check lnd.conf exits
|
||||
lndConfExists=$(sudo ls /mnt/hdd/lnd/lnd.conf | grep -c 'lnd.conf')
|
||||
if [ ${lndConfExists} -eq 0 ]; then
|
||||
echo "FAIL - /mnt/hdd/lnd/lnd.conf not found"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# check if "listen=" exists in lnd config
|
||||
valueExists=$(sudo cat /mnt/hdd/lnd/lnd.conf | grep -c 'listen=')
|
||||
if [ ${valueExists} -lt 3 ]; then
|
||||
echo "Adding listen config defaults to /mnt/hdd/lnd/lnd.conf"
|
||||
sudo sed -i "9i listen=0.0.0.0:9735" /mnt/hdd/lnd/lnd.conf
|
||||
fi
|
||||
|
||||
# stop services
|
||||
echo "making sure LND is not running"
|
||||
sudo systemctl stop lnd 2>/dev/null
|
||||
|
||||
# disable services
|
||||
echo "making sure LND is disabled"
|
||||
sudo systemctl disable lnd
|
||||
|
||||
# change port in lnd config
|
||||
echo "change port in lnd config"
|
||||
sudo sed -i "s/^listen=.*/listen=0.0.0.0:${portnumber}/g" /mnt/hdd/lnd/lnd.conf
|
||||
|
||||
# editing service file
|
||||
echo "editing /etc/systemd/system/lnd.service"
|
||||
sudo sed -i "s/^ExecStart=\/usr\/local\/bin\/lnd.*/ExecStart=\/usr\/local\/bin\/lnd --externalip=\${publicIP}:${portnumber}/g" /etc/systemd/system/lnd.service
|
||||
|
||||
# enable service again
|
||||
echo "enable service again"
|
||||
sudo systemctl enable lnd
|
||||
|
||||
# make sure port is open on firewall
|
||||
sudo ufw allow ${portnumber} comment 'LND Port'
|
||||
sudo ufw --force enable
|
||||
|
||||
echo "needs reboot to activate new setting -> sudo shutdown -r now"
|
||||
BIN
pictures/logoraspiblitz.png
Normal file
BIN
pictures/logoraspiblitz.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 48 KiB |
BIN
raspiblitz-v1.1-2019-03-18.torrent
Executable file
BIN
raspiblitz-v1.1-2019-03-18.torrent
Executable file
Binary file not shown.
@@ -2,7 +2,7 @@
|
||||
## Shopping List: Amazon Australia
|
||||
|
||||
* RaspBerry Pi 3: https://www.amazon.com/RS-Components-Raspberry-Pi-Motherboard/dp/B07BFH96M3
|
||||
* Micro SD-Card 16GB: https://www.amazon.com/SanDisk-Mobile-MicroSDHC-SDSDQM-B35A-Adapter/dp/B004ZIENBA
|
||||
* Micro SD-Card 32GB: https://www.amazon.com/Samsung-Endurance-32GB-Micro-Adapter/dp/B07B98GXQT
|
||||
* Power: https://www.amazon.com.au/Ils-Supply-Adapter-Charger-Raspberry/dp/B07F2JLSCL/
|
||||
* 1TB Hard Drive: https://www.amazon.com/Toshiba-Advance-Portable-External-HDTC910XR3AA/dp/B079H7VYY6
|
||||
* Case: https://www.amazon.com/Raspberry-Model-Protective-Heatsinks-Clear/dp/B01CDVSBPO
|
||||
|
||||
7
shoppinglist_ca.md
Normal file
7
shoppinglist_ca.md
Normal file
@@ -0,0 +1,7 @@
|
||||
## Shopping List: Amazon Canada
|
||||
|
||||
* RaspBerry Pi 3: https://amzn.to/2NDLD31
|
||||
* Micro SD-Card 32GB: https://www.amazon.ca/Samsung-Endurance-Micro-Adapter-MB-MJ32GA/dp/B07DTFRNRJ
|
||||
* Power: https://amzn.to/2NCdCju
|
||||
* 1TB Hard Drive: https://amzn.to/2NF0lqj
|
||||
* LCD-Display + Case + Pen: https://amzn.to/2GWx3D8
|
||||
@@ -1,9 +1,9 @@
|
||||
## Shopping List: Amazon/Alza/CZC Czech
|
||||
|
||||
- RaspBerry Pi 3: https://www.alza.cz/raspberry-pi-3-model-b-d5284636.htm?o=1
|
||||
- Micro SD-Card 16GB: https://www.alza.cz/EN/kingston-micro-sdhc-16gb-class-10-uhs-i-industrial-temp-sd-adapter?dq=4156874&o=2
|
||||
- Micro SD-Card 32GB: https://www.alza.cz/EN/samsung-microsdhc-32gb-pro-endurance-uhs-i-u1-sd-adapter-d5339757.htm
|
||||
- Power: https://www.alza.cz/EN/alzapower-q100-quick-charge-3-0-black-d5324257.htm?o=2
|
||||
- maybe you need an micro usb cable
|
||||
- 1TB Hard Drive: https://www.czc.cz/toshiba-canvio-basics-1tb-cerna/235949/produkt?gclid=EAIaIQobChMIgpLF5Mac3gIVCM53Ch3D9QWpEAQYAyABEgK-ZfD_BwE
|
||||
- Case: https://www.alza.cz/EN/raspberry-pi-black-d3837597.htm?o=1
|
||||
- LCD-Display (delivered to Czech Republic): https://www.amazon.com/dp/B01N3JROH8/ref=cm_sw_r_cp_ep_dp_-gOuBb2Q6T0C5
|
||||
- LCD-Display (delivered to Czech Republic): https://www.amazon.com/dp/B01N3JROH8/ref=cm_sw_r_cp_ep_dp_-gOuBb2Q6T0C5
|
||||
@@ -1,7 +1,7 @@
|
||||
## Shopping List: Amazon Germany
|
||||
|
||||
* RaspBerry Pi 3: https://www.amazon.de/dp/B07BDR5PDW
|
||||
* Micro SD-Card 16GB: https://www.amazon.de/gp/product/B073K14CVB/
|
||||
* Micro SD-Card 32GB: https://www.amazon.de/Samsung-MB-MJ32GA-EU-microSDXC-Endurance
|
||||
* Power >=3A: https://www.amazon.de/gp/product/B01JZE38QE
|
||||
* 1TB Hard Drive: https://www.amazon.de/dp/B07997KKSK?th=1
|
||||
* Case: https://www.amazon.de/dp/B0173GQF8Y
|
||||
|
||||
8
shoppinglist_es.md
Normal file
8
shoppinglist_es.md
Normal file
@@ -0,0 +1,8 @@
|
||||
## Shopping List: Amazon Spain
|
||||
|
||||
* RaspBerry Pi 3: https://www.amazon.es/gp/product/B07BDR5PDW/
|
||||
* Micro SD-Card 32GB: https://www.amazon.es/Samsung-Pro-Endurance-microSDHC-Adaptador/dp/B07CY3QSST
|
||||
* Power: https://www.amazon.es/gp/product/B01JZE38QE
|
||||
* 1TB Hard Drive: https://www.amazon.es/gp/product/B07997KKSK/
|
||||
* Case: https://www.amazon.es/gp/product/B07DK4CRHS/
|
||||
* LCD-Display: https://www.amazon.es/gp/product/B01MZZ1VY1/
|
||||
@@ -1,7 +1,7 @@
|
||||
## Shopping List: Amazon France
|
||||
|
||||
* RaspBerry Pi 3: https://www.amazon.fr/dp/B07BDR5PDW
|
||||
* Micro SD-Card 16GB: https://www.amazon.fr/dp/B073K14CVB/
|
||||
* Micro SD-Card 32GB: https://www.amazon.fr/SANDISK-Adaptateur-Logiciel-Récupération-RescuePRO/dp/B06XWMQ81P/
|
||||
* Power: https://www.amazon.fr/dp/B01566WOAG
|
||||
* 1TB Hard Drive: https://www.amazon.fr/dp/B07997KKSK
|
||||
* Case: https://www.amazon.fr/dp/B0173GQF70/
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
## Shopping List: Amazon UK
|
||||
|
||||
* RaspBerry Pi 3: https://www.amazon.co.uk/Raspberry-Pi-Model-64-Bit-Processor/dp/B07BDR5PDW
|
||||
* Micro SD-Card 16GB: https://www.amazon.co.uk/Kingston-SDC10G2-16GB-microSDHC-Included/dp/B0162YQEIE
|
||||
* Power: https://www.amazon.co.uk/iTrunk-Raspberry-Model-Supply-Charger/dp/B01MFFSPHE
|
||||
* Micro SD-Card 32GB: https://www.amazon.co.uk/Samsung-Endurance-MicroSDHC-Memory-Adapter/dp/B07CY3QSST
|
||||
* Power: https://www.amazon.co.uk/iTrunk-Raspberry-Model-Supply-Charger/dp/B01MFFSPHE or https://www.amazon.co.uk/dp/B07MLZQXS7
|
||||
* 1TB Hard Drive: https://www.amazon.co.uk/Toshiba-Canvio-Basics-Portable-External/dp/B00KWHJY7Q
|
||||
* Case: https://www.amazon.co.uk/SB-Components-Transparent-Case-Raspberry/dp/B0173GQF8Y
|
||||
* LCD-Display: https://www.amazon.co.uk/ELEGOO-480x320-Raspberry-Monitor-Interface/dp/B01MRQTMTD
|
||||
@@ -1,8 +1,8 @@
|
||||
## Shopping List: Amazon USA
|
||||
|
||||
* RaspBerry Pi 3: http://a.co/ahl7RIp
|
||||
* Micro SD-Card 16GB: http://a.co/d/710f4oJ
|
||||
* Micro SD-Card 32GB: https://www.amazon.com/Samsung-Endurance-32GB-Micro-Adapter/dp/B07B98GXQT
|
||||
* Power: http://a.co/d/fVVOYZZ
|
||||
* 1TB Hard Drive: http://a.co/eUgVfLd
|
||||
* Case: http://a.co/1774Hwl
|
||||
* LCD-Display: http://a.co/65p2wu6
|
||||
* LCD-Display: http://a.co/65p2wu6 or https://www.amazon.com/gp/product/B01CNJVG8K/ or https://www.amazon.com/dp/B06X191RX7 or https://www.sparkfun.com/products/14776
|
||||
Reference in New Issue
Block a user