-
Notifications
You must be signed in to change notification settings - Fork 2.2k
Description
Background
I cannot get my lnd to sync to chain and graph.
Your environment
- LND version 0.18.5
- Operating system: 6.1.0-13-amd64 Fix name typo in README #1 SMP PREEMPT_DYNAMIC Debian 6.1.55-1 (2023-09-29) x86_64 GNU/Linux
- Start9
- bitcoind version 28.1.0~2
Steps to reproduce
Run Bitcoin Core Service in start9 GUI
Run LND Service in start9 GUI
My LND cannot get past "sync to chain and graph" after many days of syncing, so I cannot use Thunderhub or Ride The Lightning to control my LND.
So I SSH into my start9 server.
I run sudo podman exec -it lnd.embassy /bin/bash
Then I run command: 'lncli --rpcserver lnd.embassy listchannels' and it will show that I have no active peers despite last having 131 channels. This is no surprise since my LND has been down and not been able to sync to chain and graph for so long.
When I run command: lncli --rpcserver lnd.embassy getnetworkinfo
It outputs the following:
{
"graph_diameter": 14,
"avg_out_degree": 4.01198520974117,
"max_out_degree": 67,
"num_nodes": 15686,
"num_channels": 31466,
"total_network_capacity": "137918931012",
"avg_channel_size": 4383109.737875802,
"min_channel_size": "1050",
"max_channel_size": "500000000",
"median_channel_size_sat": "1000000",
"num_zombie_chans": "280793"
}
When I run command: lncli --rpcserver lnd.embassy getinfo
It outputs the following:
{
"version": "0.18.5-beta commit=v0.18.5-beta",
"commit_hash": "***",
"identity_pubkey": "***",
"alias": "***",
"color": "#***",
"num_pending_channels": 0,
"num_active_channels": 0,
"num_inactive_channels": 131,
"num_peers": 0,
"block_height": 904106,
"block_hash": "****",
"best_header_timestamp": "****",
"synced_to_chain": false,
"synced_to_graph": false,
"testnet": false,
"chains": [
{
"chain": "bitcoin",
"network": "mainnet"
}
],
"uris": [
"****@****.onion:****"
],
"features": {
"0": {
"name": "data-loss-protect",
"is_required": true,
"is_known": true
},
"5": {
"name": "upfront-shutdown-script",
"is_required": false,
"is_known": true
},
"7": {
"name": "gossip-queries",
"is_required": false,
"is_known": true
},
"8": {
"name": "tlv-onion",
"is_required": true,
"is_known": true
},
"12": {
"name": "static-remote-key",
"is_required": true,
"is_known": true
},
"14": {
"name": "payment-addr",
"is_required": true,
"is_known": true
},
"17": {
"name": "multi-path-payments",
"is_required": false,
"is_known": true
},
"19": {
"name": "wumbo-channels",
"is_required": false,
"is_known": true
},
"23": {
"name": "anchors-zero-fee-htlc-tx",
"is_required": false,
"is_known": true
},
"25": {
"name": "route-blinding",
"is_required": false,
"is_known": true
},
"27": {
"name": "shutdown-any-segwit",
"is_required": false,
"is_known": true
},
"30": {
"name": "amp",
"is_required": true,
"is_known": true
},
"31": {
"name": "amp",
"is_required": false,
"is_known": true
},
"45": {
"name": "explicit-commitment-type",
"is_required": false,
"is_known": true
},
"55": {
"name": "keysend",
"is_required": false,
"is_known": true
},
"2023": {
"name": "script-enforced-lease",
"is_required": false,
"is_known": true
}
},
"require_htlc_interceptor": false,
"store_final_htlc_resolutions": false
}
First I tried to add some peers to see if it can revitalize the syncing process with this command: lncli --rpcserver lnd.embassy connect 0294ac3e099def03c12a37e30fe5364b1223fd60069869142ef96580c8439c2e0a@8.210.134.135:26658
But it throws this error instead:
[lncli] rpc error: code = Unknown desc = server is still in the process of starting
Simultaneously the start9 GUI for LND has a service log that shows this:
2025-07-05T00:13:32-07:00 2025-07-05 07:13:32.134 [DBG] RPCS: [/lnrpc.Lightning/ConnectPeer] requested
2025-07-05T00:13:32-07:00 2025-07-05 07:13:32.134 [ERR] RPCS: [/lnrpc.Lightning/ConnectPeer]: server is still in the process of starting
Then I run this command to create a backup SCB of all channels: lncli --rpcserver lnd.embassy exportchanbackup --all --output_file backup20250721
It does not throw an error when doing this, so I assume it worked well.
Then I run this command to try to restore all channels (which I think means force close all channels): lncli --rpcserver lnd.embassy restorechanbackup --multi_file backup20250721
However, it won't work, it throws this error:
[lncli] unable to restore chan backups: rpc error: code = Unknown desc = server is still in the process of starting
Expected behaviour
The expected behavior is that restorechanbackup would initiate a force close of all channels in the SCB file named "backup2025.07.21.json".
I want to force close everything and move funds to ny cold storage wallet.
Actual behaviour
restorechanbackup throws this error:
[lncli] unable to restore chan backups: rpc error: code = Unknown desc = server is still in the process of starting
Side Questions
- What directory or path is the backup2025.07.21.json file stored by default?
- I have some watchtowers (I believe 4), do they help with this restoration process?
- How do I resolve the paradox (chicken-or-egg problem): I don't have peers so I can't reach sync, I can't reach sync so I can't add peers, I don't have peers so I can't reach sync, I can't reach sync so I can't add peers...