Compare commits
96 Commits
6bfa896f9a
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| b7e300bd6e | |||
| 55a79f87f2 | |||
| 69938dbaa5 | |||
| 8d24f04835 | |||
| bba97daccb | |||
| 2a98486539 | |||
| c3a49a56fa | |||
| baab094ae0 | |||
| 9ba50a608c | |||
| 30a8054f08 | |||
| be7c77f535 | |||
| 5782483e38 | |||
| 2bfb3a0793 | |||
| 6e79bcb30b | |||
| b29aa2fc3e | |||
| af37a21eb2 | |||
| a6c26e2be1 | |||
| 45efbb92d5 | |||
| 70bf3d71e1 | |||
| bc1fbdf1c5 | |||
| 23233a402b | |||
| 47c068e1d9 | |||
| 5be21666c5 | |||
| be00f2ca59 | |||
| bd3669e206 | |||
| 33d77d76e7 | |||
| d11f4a81e6 | |||
| 86a93f9c7c | |||
| 5f7d53fbca | |||
| 489a33655e | |||
| 26a7ac9b2e | |||
| 6ef480e13f | |||
| 15ac2592e0 | |||
| 55a59ce5f3 | |||
| 27d8c536e4 | |||
| 0f9acf83f5 | |||
| cd9d0dfb82 | |||
| 0391c697ce | |||
| fe9dec0986 | |||
| 92fe193e9f | |||
| 8f41bca5ef | |||
| 614c1cb882 | |||
| 29c79f7435 | |||
| bb06aa5899 | |||
| 8f7c650b67 | |||
| 3418574091 | |||
| 85259de2b6 | |||
| b627f61900 | |||
| fe789dc10f | |||
| 9176fed577 | |||
| e73456d028 | |||
| 9db46695b2 | |||
| c0c0a01908 | |||
| 2632004407 | |||
| 8cd799598f | |||
| 462ce1428a | |||
| 298a4a0ce9 | |||
| c99d6c6c7d | |||
| 3d0675a431 | |||
| bf82ce8fe0 | |||
| 23b73851af | |||
| 452750d3dd | |||
| 26a8add1e6 | |||
| 760de115b5 | |||
| e0632b0ab5 | |||
| c289c17200 | |||
| b4d20a6063 | |||
| 1a9ac3d8f4 | |||
| 0d4e70f9cc | |||
| 294b40a3e4 | |||
| ee4bc73742 | |||
| a92712a751 | |||
| c4cf3acfe1 | |||
| 3e8f19122f | |||
| bfbfaf2d0c | |||
| 1508c26207 | |||
| ab50915a53 | |||
| 9b65de70de | |||
| cb7d6c9187 | |||
| 5ffcde3797 | |||
| bce22e338f | |||
| 19ec50325f | |||
| 30cc023fa3 | |||
| b9d63c4bb1 | |||
| a1b1614e53 | |||
| b9b59f2eae | |||
| b4bff712bc | |||
| 82839da4d6 | |||
| a62397c267 | |||
| 1951d195e4 | |||
| bd5da41b9d | |||
| 694f52e40b | |||
| 810d55c5dc | |||
| 3dfe9f5ea2 | |||
| 35b720c77f | |||
| 4258dd4fb2 |
@@ -13,7 +13,7 @@ all:
|
|||||||
carlo:
|
carlo:
|
||||||
ansible_connection: ssh
|
ansible_connection: ssh
|
||||||
ansible_user: pleb
|
ansible_user: pleb
|
||||||
patrick:
|
gary:
|
||||||
ansible_connection: ssh
|
ansible_connection: ssh
|
||||||
ansible_user: pleb
|
ansible_user: pleb
|
||||||
sandy:
|
sandy:
|
||||||
@@ -25,6 +25,12 @@ all:
|
|||||||
sheldon:
|
sheldon:
|
||||||
ansible_connection: ssh
|
ansible_connection: ssh
|
||||||
ansible_user: pleb
|
ansible_user: pleb
|
||||||
|
bernie:
|
||||||
|
ansible_connection: ssh
|
||||||
|
ansible_user: pleb
|
||||||
|
pearl:
|
||||||
|
ansible_connection: ssh
|
||||||
|
ansible_user: pleb
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -33,12 +39,14 @@ sudo vim ~/.ansible/inventory
|
|||||||
|
|
||||||
```
|
```
|
||||||
[all]
|
[all]
|
||||||
bob ansible_connection=ssh ansible_user=pleb
|
bob ansible_connection=ssh ansible_user=pleb
|
||||||
carlo ansible_connection=ssh ansible_user=pleb
|
carlo ansible_connection=ssh ansible_user=pleb
|
||||||
gary ansible_connection=ssh ansible_user=pleb
|
gary ansible_connection=ssh ansible_user=pleb
|
||||||
sandy ansible_connection=ssh ansible_user=pleb
|
sandy ansible_connection=ssh ansible_user=pleb
|
||||||
krabs ansible_connection=ssh ansible_user=pleb
|
krabs ansible_connection=ssh ansible_user=pleb
|
||||||
sheldon ansible_connection=ssh ansible_user=pleb
|
sheldon ansible_connection=ssh ansible_user=pleb
|
||||||
|
bernie ansible_connection=ssh ansible_user=pleb
|
||||||
|
pearl ansible_connection=ssh ansible_user=pleb
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -639,4 +647,4 @@ vim ~/ansible/update.yaml
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
ansible-playbook -i ~/.ansible/inventory.yaml ~/ansible/update.yaml
|
ansible-playbook -i ~/.ansible/inventory.yaml ~/ansible/update.yaml
|
||||||
```
|
```
|
||||||
|
|||||||
@@ -31,4 +31,76 @@ dns_ovh_endpoint = ovh-eu
|
|||||||
dns_ovh_application_key = 3f8bdfed17f848d8
|
dns_ovh_application_key = 3f8bdfed17f848d8
|
||||||
dns_ovh_application_secret = 6946758d7515ecef108aeb286bf3c7d0
|
dns_ovh_application_secret = 6946758d7515ecef108aeb286bf3c7d0
|
||||||
dns_ovh_consumer_key = 94b2ddf482d36421a33aa6b3aa515956
|
dns_ovh_consumer_key = 94b2ddf482d36421a33aa6b3aa515956
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### Zone DNS de delmar.bzh
|
||||||
|
|
||||||
|
```txt
|
||||||
|
$TTL 3600
|
||||||
|
@ IN SOA dns106.ovh.net. tech.ovh.net. (2025120101 86400 3600 3600000 300)
|
||||||
|
IN NS dns106.ovh.net.
|
||||||
|
IN NS ns106.ovh.net.
|
||||||
|
IN MX 100 mx3.mail.ovh.net.
|
||||||
|
IN MX 50 mx2.mail.ovh.net.
|
||||||
|
IN MX 10 mx1.mail.ovh.net.
|
||||||
|
IN MX 0 mx0.mail.ovh.net.
|
||||||
|
IN A 213.186.33.5
|
||||||
|
IN TXT "v=spf1 include:mx.ovh.com ~all"
|
||||||
|
IN TXT "1|www.delmar.bzh"
|
||||||
|
IN TXT "openpgp4fpr:E22A8974BD3F45E3A827AEB891AFB168A1EAD35C"
|
||||||
|
IN TXT "google-site-verification=j7RPCRYeiAgvZ4uHOD3ZQ4uqi-vPQ-UUmyVD9WXv4t8"
|
||||||
|
IN CAA 0 issue "letsencrypt.org"
|
||||||
|
_autodiscover._tcp IN SRV 0 0 443 pro1.mail.ovh.net.
|
||||||
|
_dmarc IN TXT "v=DMARC1;p=none;sp=none;aspf=r;"
|
||||||
|
affine IN A 176.188.240.123
|
||||||
|
asm IN A 176.188.240.123
|
||||||
|
auth IN A 176.188.240.123
|
||||||
|
autoconfig IN CNAME autodiscover.mail.ovh.net.
|
||||||
|
autodiscover IN CNAME mailconfig.ovh.net.
|
||||||
|
books IN A 176.188.240.123
|
||||||
|
bookstack IN A 176.188.240.123
|
||||||
|
cap IN A 176.188.240.123
|
||||||
|
cloud IN A 176.188.240.123
|
||||||
|
crm IN A 176.188.240.123
|
||||||
|
cs IN A 176.188.240.123
|
||||||
|
ctr IN A 176.188.240.123
|
||||||
|
cvs IN A 176.188.240.123
|
||||||
|
dev IN A 176.188.240.123
|
||||||
|
dkr IN A 176.188.240.123
|
||||||
|
dolibarr IN A 176.188.240.123
|
||||||
|
draw IN A 176.188.240.123
|
||||||
|
ftp IN CNAME delmar.bzh.
|
||||||
|
gen IN A 176.188.240.123
|
||||||
|
git IN A 176.188.240.123
|
||||||
|
gotify IN A 176.188.240.123
|
||||||
|
home-assistant IN A 176.188.240.123
|
||||||
|
homepage IN A 176.188.240.123
|
||||||
|
it IN A 176.188.240.123
|
||||||
|
jellyfin IN A 176.188.240.123
|
||||||
|
jellyseerr IN A 176.188.240.123
|
||||||
|
kontadenn IN A 176.188.240.123
|
||||||
|
mailbear IN A 176.188.240.123
|
||||||
|
minio IN A 176.188.240.123
|
||||||
|
mon IN A 176.188.240.123
|
||||||
|
nds IN A 176.188.240.123
|
||||||
|
nsns IN A 176.188.240.123
|
||||||
|
octoprint IN A 176.188.240.123
|
||||||
|
ovhemp1116203-selector1._domainkey 60 IN CNAME ovhemp1116203-selector1._domainkey.274927.cq.dkim.mail.ovh.net.
|
||||||
|
ovhemp1116203-selector2._domainkey 60 IN CNAME ovhemp1116203-selector2._domainkey.274928.az.dkim.mail.ovh.net.
|
||||||
|
paperless IN A 176.188.240.123
|
||||||
|
pdf IN A 176.188.240.123
|
||||||
|
penpot IN A 176.188.240.123
|
||||||
|
pip IN A 176.188.240.123
|
||||||
|
rallly IN A 176.188.240.123
|
||||||
|
search IN A 176.188.240.123
|
||||||
|
send IN A 176.188.240.123
|
||||||
|
shop IN A 176.188.240.123
|
||||||
|
stream IN A 176.188.240.123
|
||||||
|
tpml IN A 176.188.240.123
|
||||||
|
twip IN A 176.188.240.123
|
||||||
|
ugo IN A 176.188.240.123
|
||||||
|
vault IN A 176.188.240.123
|
||||||
|
wizarr IN A 176.188.240.123
|
||||||
|
www IN A 176.188.240.123
|
||||||
|
xcd IN A 176.188.240.123
|
||||||
|
```
|
||||||
|
|||||||
72
Divers/OVH_Stalwart.md
Normal file
72
Divers/OVH_Stalwart.md
Normal file
@@ -0,0 +1,72 @@
|
|||||||
|
#### Zone DNS modifiée de delmar.bzh
|
||||||
|
|
||||||
|
```txt
|
||||||
|
$TTL 3600
|
||||||
|
@ IN SOA dns106.ovh.net. tech.ovh.net. (2025102306 86400 3600 3600000 300)
|
||||||
|
IN NS dns106.ovh.net.
|
||||||
|
IN NS ns106.ovh.net.
|
||||||
|
IN MX 10 mail.delmar.bzh.
|
||||||
|
IN A 213.186.33.5
|
||||||
|
IN TXT "v=spf1 include:mx.ovh.com ~all"
|
||||||
|
IN TXT "1|www.delmar.bzh"
|
||||||
|
IN TXT "openpgp4fpr:E22A8974BD3F45E3A827AEB891AFB168A1EAD35C"
|
||||||
|
IN TXT "google-site-verification=j7RPCRYeiAgvZ4uHOD3ZQ4uqi-vPQ-UUmyVD9WXv4t8"
|
||||||
|
IN CAA 0 issue "letsencrypt.org"
|
||||||
|
202510e._domainkey IN TXT "v=DKIM1; k=ed25519; h=sha256; p=zqH42wS9S4UgMXBrPKZxJSi45eEjewXJsboHRq7p30E="
|
||||||
|
202510r._domainkey IN TXT ( "v=DKIM1; k=rsa; h=sha256; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAoqg5JMaBF3fDBZ36KRULZR7HnuytV0SmuezMZyPP4KOPyhMdK2aqe12ct7JwCs5dCBPD3nGxqqjHgPDXv4l+pqVIjuGKNYKOfVMvHxlMQWAudyyMfYwj8ve/wCKB3LKsOo+y7JFMNYyWw+/UIBqM2gY4Y2aOCR/tpZo+wQGYQPzkHHE7gl" "81pT0YwtHR6FZZM7vrKC3qdZ8iglfIUvwsCOl+B4alYPfWSpuKT8moWP58LQX8qgDdWLYvMzN7X4ljW2lNiXdxHcrGsPCCE87ROregNNpImKMuIZl/dn7MJey+8NzAqPo2PT9nUmTEpQ+1Ty52TrBwiT/2JeB+gdeJnQIDAQAB" )
|
||||||
|
_dmarc IN TXT "v=DMARC1; p=reject; rua=mailto:postmaster@delmar.bzh; ruf=mailto:postmaster@delmar.bzh"
|
||||||
|
_imaps._tcp IN SRV 0 1 993 mail.delmar.bzh.
|
||||||
|
_smtp._tls IN TXT "v=TLSRPTv1; rua=mailto:postmaster@delmar.bzh"
|
||||||
|
_submissions._tcp IN SRV 0 1 465 mail.delmar.bzh.
|
||||||
|
affine IN A 176.188.240.123
|
||||||
|
asm IN A 176.188.240.123
|
||||||
|
auth IN A 176.188.240.123
|
||||||
|
autoconfig IN A 176.188.240.123
|
||||||
|
autodiscover IN A 176.188.240.123
|
||||||
|
books IN A 176.188.240.123
|
||||||
|
bookstack IN A 176.188.240.123
|
||||||
|
cap IN A 176.188.240.123
|
||||||
|
cloud IN A 176.188.240.123
|
||||||
|
cpt IN A 176.188.240.123
|
||||||
|
cs IN A 176.188.240.123
|
||||||
|
ctr IN A 176.188.240.123
|
||||||
|
cvs IN A 176.188.240.123
|
||||||
|
dev IN A 176.188.240.123
|
||||||
|
dkr IN A 176.188.240.123
|
||||||
|
dolibarr IN A 176.188.240.123
|
||||||
|
draw IN A 176.188.240.123
|
||||||
|
ftp IN A 176.188.240.123
|
||||||
|
gen IN A 176.188.240.123
|
||||||
|
git IN A 176.188.240.123
|
||||||
|
gotify IN A 176.188.240.123
|
||||||
|
home-assistant IN A 176.188.240.123
|
||||||
|
homepage IN A 176.188.240.123
|
||||||
|
it IN A 176.188.240.123
|
||||||
|
jellyfin IN A 176.188.240.123
|
||||||
|
jellyseerr IN A 176.188.240.123
|
||||||
|
kontadenn IN A 176.188.240.123
|
||||||
|
mail IN A 176.188.240.123
|
||||||
|
mail IN TXT "v=spf1 a ra=postmaster -all"
|
||||||
|
mail IN TXT "v=spf1 mx ra=postmaster -all"
|
||||||
|
mailbear IN A 176.188.240.123
|
||||||
|
minio IN A 176.188.240.123
|
||||||
|
nds IN A 176.188.240.123
|
||||||
|
nsns IN A 176.188.240.123
|
||||||
|
octoprint IN A 176.188.240.123
|
||||||
|
paperless IN A 176.188.240.123
|
||||||
|
pdf IN A 176.188.240.123
|
||||||
|
penpot IN A 176.188.240.123
|
||||||
|
rallly IN A 176.188.240.123
|
||||||
|
search IN A 176.188.240.123
|
||||||
|
send IN A 176.188.240.123
|
||||||
|
shop IN A 176.188.240.123
|
||||||
|
ssm IN A 176.188.240.123
|
||||||
|
stream IN A 176.188.240.123
|
||||||
|
tpml IN A 176.188.240.123
|
||||||
|
twip IN A 176.188.240.123
|
||||||
|
ugo IN A 176.188.240.123
|
||||||
|
vault IN A 176.188.240.123
|
||||||
|
wizarr IN A 176.188.240.123
|
||||||
|
www IN A 176.188.240.123
|
||||||
|
xcd IN A 176.188.240.123
|
||||||
|
```
|
||||||
@@ -2,6 +2,41 @@
|
|||||||
|
|
||||||
### target : krabs (nfs server)
|
### target : krabs (nfs server)
|
||||||
|
|
||||||
|
## Synchronisation simple
|
||||||
|
```bash
|
||||||
|
rsync -avh /srv/appdata/ /mnt/backup/appdata/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Synchronisation avec --delete
|
||||||
|
```bash
|
||||||
|
rsync -avh --delete /srv/appdata/ /mnt/backup/appdata/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Synchronisation avec --progress
|
||||||
|
```bash
|
||||||
|
rsync -avh --progress /srv/appdata/ /mnt/backup/appdata/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Synchronisation avec --partial
|
||||||
|
```bash
|
||||||
|
rsync -avh --partial /srv/appdata/ /mnt/backup/appdata/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Synchronisation avec --partial et --progression
|
||||||
|
```bash
|
||||||
|
rsync -avh -P /srv/appdata/ /mnt/backup/appdata/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Automatiser rsync
|
||||||
|
```bash
|
||||||
|
crontab -e
|
||||||
|
```
|
||||||
|
```text
|
||||||
|
00 00 * * * sudo rsync -avh -P --delete /srv/appdata/ /mnt/backup/appdata/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Dossiers de bikiniBottom
|
||||||
|
|
||||||
#### tv-shows
|
#### tv-shows
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -51,5 +86,5 @@ rsync -r -v --rsync-path='sudo rsync' --progress -e ssh ~/Sync/delmar.bzh/nds/pu
|
|||||||
### Copy from <folder> to another <host>
|
### Copy from <folder> to another <host>
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
rsync -r -av --rsync-path='sudo rsync' --progress -e ssh /mnt/data/docker/<folder> -p pleb@<host>:/mnt/data/docker/
|
sudo rsync -r -av --rsync-path='sudo rsync' --progress -p -e "ssh -i /home/pleb/.ssh/id_ed25519" /path/to/source/<folder> pleb@<host>:/path/to/destination/
|
||||||
```
|
```
|
||||||
|
|||||||
70
Divers/Zone DNS.md
Normal file
70
Divers/Zone DNS.md
Normal file
@@ -0,0 +1,70 @@
|
|||||||
|
### Zone DNS
|
||||||
|
```
|
||||||
|
$TTL 3600
|
||||||
|
@ IN SOA dns106.ovh.net. tech.ovh.net. (2025100947 86400 3600 3600000 60)
|
||||||
|
IN NS dns106.ovh.net.
|
||||||
|
IN NS ns106.ovh.net.
|
||||||
|
IN MX 50 mx2.mail.ovh.net.
|
||||||
|
IN MX 5 mx1.mail.ovh.net.
|
||||||
|
IN MX 100 mx3.mail.ovh.net.
|
||||||
|
IN MX 1 mx0.mail.ovh.net.
|
||||||
|
IN A 213.186.33.5
|
||||||
|
IN TXT "v=spf1 include:mx.ovh.com ~all"
|
||||||
|
IN TXT "1|www.delmar.bzh"
|
||||||
|
IN TXT "openpgp4fpr:E22A8974BD3F45E3A827AEB891AFB168A1EAD35C"
|
||||||
|
IN TXT "google-site-verification=j7RPCRYeiAgvZ4uHOD3ZQ4uqi-vPQ-UUmyVD9WXv4t8"
|
||||||
|
IN CAA 0 issue "letsencrypt.org"
|
||||||
|
_autodiscover._tcp IN SRV 0 0 443 pro1.mail.ovh.net.
|
||||||
|
_dmarc IN TXT "v=DMARC1;p=none;sp=none;aspf=r;"
|
||||||
|
ovhemp1116203-selector1._domainkey 60 IN CNAME ovhemp1116203-selector1._domainkey.274927.cq.dkim.mail.ovh.net.
|
||||||
|
ovhemp1116203-selector2._domainkey 60 IN CNAME ovhemp1116203-selector2._domainkey.274928.az.dkim.mail.ovh.net.
|
||||||
|
autoconfig IN CNAME autodiscover.mail.ovh.net.
|
||||||
|
autodiscover IN CNAME mailconfig.ovh.net.
|
||||||
|
ftp IN CNAME delmar.bzh.
|
||||||
|
3dm IN A 176.188.240.123
|
||||||
|
affine IN A 176.188.240.123
|
||||||
|
asm IN A 176.188.240.123
|
||||||
|
books IN A 176.188.240.123
|
||||||
|
bookstack IN A 176.188.240.123
|
||||||
|
cap IN A 176.188.240.123
|
||||||
|
cloud IN A 176.188.240.123
|
||||||
|
cpt IN A 176.188.240.123
|
||||||
|
cs IN A 176.188.240.123
|
||||||
|
ctr IN A 176.188.240.123
|
||||||
|
cvs IN A 176.188.240.123
|
||||||
|
dev IN A 176.188.240.123
|
||||||
|
dkr IN A 176.188.240.123
|
||||||
|
dolibarr IN A 176.188.240.123
|
||||||
|
draw IN A 176.188.240.123
|
||||||
|
gen IN A 176.188.240.123
|
||||||
|
git IN A 176.188.240.123
|
||||||
|
gotify IN A 176.188.240.123
|
||||||
|
home-assistant IN A 176.188.240.123
|
||||||
|
homepage IN A 176.188.240.123
|
||||||
|
it IN A 176.188.240.123
|
||||||
|
jellyfin IN A 176.188.240.123
|
||||||
|
jellyseerr IN A 176.188.240.123
|
||||||
|
kontadenn IN A 176.188.240.123
|
||||||
|
mailbear IN A 176.188.240.123
|
||||||
|
minio IN A 176.188.240.123
|
||||||
|
mmm IN A 176.188.240.123
|
||||||
|
nds IN A 176.188.240.123
|
||||||
|
nsns IN A 176.188.240.123
|
||||||
|
octoprint IN A 176.188.240.123
|
||||||
|
paperless IN A 176.188.240.123
|
||||||
|
pdf IN A 176.188.240.123
|
||||||
|
penpot IN A 176.188.240.123
|
||||||
|
rallly IN A 176.188.240.123
|
||||||
|
search IN A 176.188.240.123
|
||||||
|
send IN A 176.188.240.123
|
||||||
|
shop IN A 176.188.240.123
|
||||||
|
ssm IN A 176.188.240.123
|
||||||
|
stream IN A 176.188.240.123
|
||||||
|
tpml IN A 176.188.240.123
|
||||||
|
twip IN A 176.188.240.123
|
||||||
|
ugo IN A 176.188.240.123
|
||||||
|
vault IN A 176.188.240.123
|
||||||
|
wizarr IN A 176.188.240.123
|
||||||
|
wud IN A 176.188.240.123
|
||||||
|
www IN A 176.188.240.123
|
||||||
|
```
|
||||||
470
On host/Caddy.md
470
On host/Caddy.md
@@ -40,7 +40,10 @@ export PATH=$PATH:/usr/local/go/bin
|
|||||||
mkdir ~/caddy
|
mkdir ~/caddy
|
||||||
cd caddy
|
cd caddy
|
||||||
|
|
||||||
xcaddy build --with github.com/caddy-dns/ovh
|
xcaddy build --with github.com/caddy-dns/ovh \
|
||||||
|
--with github.com/mholt/caddy-l4/modules/l4proxy \
|
||||||
|
--with github.com/mholt/caddy-l4/modules/l4tls \
|
||||||
|
--with github.com/mholt/caddy-l4/modules/l4proxyprotocol
|
||||||
sudo mv caddy /usr/bin
|
sudo mv caddy /usr/bin
|
||||||
sudo chown root:root /usr/bin/caddy
|
sudo chown root:root /usr/bin/caddy
|
||||||
sudo chmod 755 /usr/bin/caddy
|
sudo chmod 755 /usr/bin/caddy
|
||||||
@@ -51,211 +54,7 @@ sudo systemctl daemon-reload
|
|||||||
sudo vim /etc/caddy/Caddyfile
|
sudo vim /etc/caddy/Caddyfile
|
||||||
```
|
```
|
||||||
|
|
||||||
```
|
> [[Caddyfile]]
|
||||||
{
|
|
||||||
debug
|
|
||||||
http_port 80
|
|
||||||
https_port 443
|
|
||||||
email admin@delmar.bzh
|
|
||||||
default_sni delmar.bzh
|
|
||||||
|
|
||||||
acme_dns ovh {
|
|
||||||
endpoint ovh-eu
|
|
||||||
application_key 3f8bdfed17f848d8
|
|
||||||
application_secret 6946758d7515ecef108aeb286bf3c7d0
|
|
||||||
consumer_key 94b2ddf482d36421a33aa6b3aa515956
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
(LAN_only) {
|
|
||||||
@local_subnets {
|
|
||||||
not remote_ip 192.168.1.0/24
|
|
||||||
}
|
|
||||||
respond @local_subnets 403
|
|
||||||
}
|
|
||||||
|
|
||||||
*:80 {
|
|
||||||
root * /var/www/comics
|
|
||||||
encode gzip zstd
|
|
||||||
file_server
|
|
||||||
}
|
|
||||||
|
|
||||||
bookstack.delmar.bzh
|
|
||||||
reverse_proxy carlo:6875
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
books.delmar.bzh {
|
|
||||||
reverse_proxy sandy:8083 {
|
|
||||||
header_up X-Scheme https
|
|
||||||
}
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
cloud.delmar.bzh {
|
|
||||||
encode gzip zstd
|
|
||||||
reverse_proxy sandy:35771 {
|
|
||||||
header_up Host {upstream_hostport}
|
|
||||||
}
|
|
||||||
|
|
||||||
redir /.well-known/carddav /remote.php/dav/ 301
|
|
||||||
redir /.well-known/caldav /remote.php/dav/ 301
|
|
||||||
|
|
||||||
header {
|
|
||||||
Strict-Transport-Security "max-age=31536000; includeSubdomains; preload"
|
|
||||||
X-XSS-Protection "1; mode=block;"
|
|
||||||
X-Content-Type-Options "nosniff"
|
|
||||||
X-Frame-Options "SAMEORIGIN"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
stun.delmar.bzh {
|
|
||||||
encode gzip zstd
|
|
||||||
reverse_proxy sandy:44397
|
|
||||||
}
|
|
||||||
|
|
||||||
webmin.delmar.bzh {
|
|
||||||
reverse_proxy bob:10000 {
|
|
||||||
transport http {
|
|
||||||
read_buffer 0
|
|
||||||
write_buffer 0
|
|
||||||
tls_insecure_skip_verify
|
|
||||||
versions 1.1
|
|
||||||
}
|
|
||||||
}
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
dolibarr.delmar.bzh {
|
|
||||||
reverse_proxy carlo:64616
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
draw.delmar.bzh {
|
|
||||||
reverse_proxy carlo:8080
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
git.delmar.bzh {
|
|
||||||
reverse_proxy sheldon:3000
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
homepage.delmar.bzh {
|
|
||||||
reverse_proxy bob:5005
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
home-assistant.delmar.bzh {
|
|
||||||
reverse_proxy carlo:8123
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
it.delmar.bzh {
|
|
||||||
reverse_proxy bob:8888
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
cs.delmar.bzh {
|
|
||||||
reverse_proxy sheldon:49505
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
jellyfin.delmar.bzh {
|
|
||||||
reverse_proxy gary:8096
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
jellyseerr.delmar.bzh {
|
|
||||||
reverse_proxy gary:5055
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
wizarr.delmar.bzh {
|
|
||||||
reverse_proxy gary:5690
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
julien.delmar.bzh {
|
|
||||||
root * /var/www/resumes/julien
|
|
||||||
encode gzip zstd
|
|
||||||
file_server
|
|
||||||
}
|
|
||||||
|
|
||||||
kontadenn.delmar.bzh {
|
|
||||||
root * /var/www/kontadenn
|
|
||||||
encode gzip zstd
|
|
||||||
file_server
|
|
||||||
}
|
|
||||||
|
|
||||||
nds.delmar.bzh {
|
|
||||||
root * /var/www/nds
|
|
||||||
encode gzip zstd
|
|
||||||
file_server
|
|
||||||
}
|
|
||||||
|
|
||||||
nsns.delmar.bzh {
|
|
||||||
root * /var/www/nsns
|
|
||||||
encode gzip zstd
|
|
||||||
file_server
|
|
||||||
}
|
|
||||||
|
|
||||||
paperless.delmar.bzh {
|
|
||||||
reverse_proxy sandy:8000
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
penpot.delmar.bzh {
|
|
||||||
reverse_proxy sandy:43735
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
send.delmar.bzh {
|
|
||||||
reverse_proxy krabs:3000
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
tools.delmar.bzh {
|
|
||||||
reverse_proxy sandy:9890
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
ugo.delmar.bzh {
|
|
||||||
reverse_proxy carlo:8090
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
vault.delmar.bzh {
|
|
||||||
reverse_proxy carlo:8081
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
www.delmar.bzh {
|
|
||||||
root * /var/www/comics
|
|
||||||
encode gzip zstd
|
|
||||||
file_server
|
|
||||||
}
|
|
||||||
|
|
||||||
octoprint.delmar.bzh {
|
|
||||||
reverse_proxy bernie:54963 {
|
|
||||||
header_up X-Forwarded-Proto {scheme}
|
|
||||||
}
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
|
|
||||||
stream.delmar.bzh {
|
|
||||||
reverse_proxy bernie:8080
|
|
||||||
encode gzip zstd
|
|
||||||
basic_auth / {
|
|
||||||
admin $2a$14$RuKvTkZWcLpyX/ptJmkmYOd6WpDACXi.fIcz2feCcvTW73vZ/4TSi
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
squirrel.delmar.bzh {
|
|
||||||
reverse_proxy bob:8000
|
|
||||||
encode gzip zstd
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo systemctl restart caddy
|
sudo systemctl restart caddy
|
||||||
@@ -263,10 +62,259 @@ sudo systemctl restart caddy
|
|||||||
|
|
||||||
# Services
|
# Services
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-service-host-ip%3Aport"><table><tbody><tr><th>Service</th><th>Host</th><th>IP:port</th></tr><tr><td>books.delmar.bzh</td><td>sandy</td><td>192.168.1.65:8083</td></tr><tr><td>bookstack.delmar.bzh
|
<div class="table-wrapper" id="bkmrk-service-host-ip%3Aport"><table>
|
||||||
|
<tbody>
|
||||||
</td><td>sheldon</td><td>192.168.1.230:6875</td></tr><tr><td>cloud.delmar.bzh
|
<tr>
|
||||||
|
<th>URL</th>
|
||||||
</td><td>sandy</td><td>192.168.1.65:9880</td></tr><tr><td>cockpit.delmar.bzh</td><td>bob</td><td>192.168.1.99:9090</td></tr><tr><td>dolibarr.delmar.bzh</td><td>carlo</td><td>192.168.1.163:8080</td></tr><tr><td>git.delmar.bzh</td><td>carlo</td><td>192.168.1.163:3001</td></tr><tr><td>homepage.delmar.bzh</td><td>bob</td><td>192.168.1.99:5005</td></tr><tr><td>jellyfin.delmar.bzh</td><td>sandy</td><td>192.168.1.65:8096</td></tr><tr><td>jellyseer.delmar.bzh</td><td>sandy</td><td>192.168.1.65:5055</td></tr><tr><td>julien.delmar.bzh</td><td>bob</td><td>> Caddyfile</td></tr><tr><td>kontadenn.delmar.bzh</td><td>bob</td><td>> Caddyfile</td></tr><tr><td>nds.delmar.bzh</td><td>bob</td><td>> Caddyfile</td></tr><tr><td>nsns.delmar.bzh</td><td>bob</td><td>> Caddyfile</td></tr><tr><td>penpot.delmar.bzh</td><td>carlo</td><td>192.168.1.163:8082</td></tr><tr><td>portainer.delmar.bzh</td><td>bob</td><td>192.168.1.99:9443</td></tr><tr><td>rallly.delmar.bzh</td><td>carlo</td><td>192.168.1.163:3000</td></tr><tr><td>send.delmar.bzh</td><td>krabs</td><td>192.168.1.229:8080</td></tr><tr><td>shop.delmar.bzh</td><td>patrick</td><td>192.168.1.186:86</td></tr><tr><td>ugo.delmar.bzh</td><td>patrick</td><td>192.168.1.186:82</td></tr><tr><td>uptime.delmar.bzh</td><td>bob</td><td>192.168.1.99:3001</td></tr><tr><td>vault.delmar.bzh</td><td>carlo</td><td>192.168.1.163:8081</td></tr><tr><td>www.delmar.bzh</td><td>bob</td><td>> Caddyfile</td></tr><tr><td> </td><td> </td><td> </td></tr></tbody></table>
|
<th>host</th>
|
||||||
|
<th>(service) port</th>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>affine.delmar.bzh</td>
|
||||||
|
<td>sandy</td>
|
||||||
|
<td>(affine_server) 3010 </br>
|
||||||
|
(affine_migration_job)</br>
|
||||||
|
(affine_postgres)</br>
|
||||||
|
(affine_redis)</br></td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>books.delmar.bzh</td>
|
||||||
|
<td>sandy</td>
|
||||||
|
<td>(booklore) 32768 </br>
|
||||||
|
(mariadb)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>bookstack.delmar.bzh</td>
|
||||||
|
<td>sandy</td>
|
||||||
|
<td>(bookstack) 6875 </br>
|
||||||
|
(bookstack_db)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>caddymanager</td>
|
||||||
|
<td>bob</td>
|
||||||
|
<td>(frontend) 20125 </br>
|
||||||
|
(backend) </br>
|
||||||
|
(mongodb)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>cap.delmar.bzh</td>
|
||||||
|
<td>carlo</td>
|
||||||
|
<td>(cap-standalone) 55338</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>cloud.delmar.bzh</td>
|
||||||
|
<td>sheldon</td>
|
||||||
|
<td>(nextcloud-aio-mastercontainer) 8080 </br>
|
||||||
|
(nextcloud-aio-apache) 11000</br>
|
||||||
|
(nextcloud-aio-nextcloud)</br>
|
||||||
|
(nextcloud-aio-imaginary)</br>
|
||||||
|
(nextcloud-aio-redis)</br>
|
||||||
|
(nextcloud-aio-database)</br>
|
||||||
|
(nextcloud-aio-whiteboard)</br>
|
||||||
|
(nextcloud-aio-notify-push)</br>
|
||||||
|
(nextcloud-aio-talk) 3478</br>
|
||||||
|
(nextcloud-aio-collabora)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>cpt.delmar.bzh</td>
|
||||||
|
<td>All</td>
|
||||||
|
<td>() 9090</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>cs.delmar.bzh</td>
|
||||||
|
<td>sandy</td>
|
||||||
|
<td>(code-server) 49505</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>ctr.delmar.bzh</td>
|
||||||
|
<td>sheldon</td>
|
||||||
|
<td>(compose-craft-saas) 47810 </br>
|
||||||
|
(compose-craft-db) 27017</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>cvs.delmar.bzh</td>
|
||||||
|
<td>sandy</td>
|
||||||
|
<td>(reactive-resume_app) 54268 </br>
|
||||||
|
(reactive-resume_minio) 9000 </br>
|
||||||
|
(reactive-resume_chrome) </br>
|
||||||
|
(reactive-resume_postgres)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>dev.delmar.bzh</td>
|
||||||
|
<td>gary</td>
|
||||||
|
<td>(wm-caddy) 19409 | 25</br>
|
||||||
|
(wm-lsp)</br>
|
||||||
|
(multiplayer)</br>
|
||||||
|
(wm-postgres)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>dkr.delmar.bzh</td>
|
||||||
|
<td>bob</td>
|
||||||
|
<td>(dockmon) 8001</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>dolibarr.delmar.bzh</td>
|
||||||
|
<td>sandy</td>
|
||||||
|
<td>(dolibarr_app) 64616 </br>
|
||||||
|
(dolibarr_db)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>draw.delmar.bzh</td>
|
||||||
|
<td>sheldon</td>
|
||||||
|
<td>drawio 24928</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>gen.delmar.bzh</td>
|
||||||
|
<td>carlo</td>
|
||||||
|
<td>(webtrees) 63578</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>git.delmar.bzh</td>
|
||||||
|
<td>carlo</td>
|
||||||
|
<td>(webtrees) 63578</br>
|
||||||
|
(webtrees_postgres)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>gotify.delmar.bzh</td>
|
||||||
|
<td>bob</td>
|
||||||
|
<td>(gotify) 41901</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>homepage.delmar.bzh</td>
|
||||||
|
<td>gary</td>
|
||||||
|
<td>(homarr) 7575</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>home-assistant.delmar.bzh</td>
|
||||||
|
<td>gary</td>
|
||||||
|
<td>(homeassistant) 8123</br>
|
||||||
|
(mosquitto) 16883 | 19001</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>it.delmar.bzh</td>
|
||||||
|
<td>sheldon</td>
|
||||||
|
<td>(it-tools) 11404</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>jellyfin.delmar.bzh </br>
|
||||||
|
jellyseer.delmar.bzh </br>
|
||||||
|
wizarr.delmar.bzh</td>
|
||||||
|
<td>gary</td>
|
||||||
|
<td>(jellyfin) 8096</br>
|
||||||
|
(jellyseerr) 5055</br>
|
||||||
|
(wizarr) 5690</br>
|
||||||
|
(qbittorrent)</br>
|
||||||
|
(sabnzbd)</br>
|
||||||
|
(radarr)</br>
|
||||||
|
(sonarr)</br>
|
||||||
|
(lidarr)</br>
|
||||||
|
(prowlarr)</br>
|
||||||
|
(bazarr)</br>
|
||||||
|
(tdarr)</br>
|
||||||
|
(unpackerr)</br>
|
||||||
|
(gluetun) >>> VPN</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>kontadenn.delmar.bzh</td>
|
||||||
|
<td>bob</td>
|
||||||
|
<td>> Caddyfile</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>mailbear.delmar.bzh</td>
|
||||||
|
<td>carlo</td>
|
||||||
|
<td>(mailbear) 1234</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>nds.delmar.bzh</td>
|
||||||
|
<td>bob</td>
|
||||||
|
<td>> Caddyfile</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>nsns.delmar.bzh</td>
|
||||||
|
<td>bob</td>
|
||||||
|
<td>> Caddyfile</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>octoprint.delmar.bzh </br>
|
||||||
|
stream.delmar.bzh</td>
|
||||||
|
<td>bernie</td>
|
||||||
|
<td>(octoprint) 54963 </br>
|
||||||
|
(camera-streamer) 62036</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>paperless.delmar.bzh</td>
|
||||||
|
<td>sandy</td>
|
||||||
|
<td>(paperless-ngx) 8000 </br>
|
||||||
|
(paperless-postgres) </br>
|
||||||
|
(paperless-redis)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>pdf.delmar.bzh</td>
|
||||||
|
<td>sheldon</td>
|
||||||
|
<td>(stirling-pdf) 9890</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>penpot.delmar.bzh</td>
|
||||||
|
<td>sandy</td>
|
||||||
|
<td>(penpot-frontend) 43735
|
||||||
|
(penpot-backend) </br>
|
||||||
|
(penpot-exporter) </br>
|
||||||
|
(penpot-postgres) </br>
|
||||||
|
(penpot-redis)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>search.delmar.bzh</td>
|
||||||
|
<td>sandy</td>
|
||||||
|
<td>(searxng) 23485</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>send.delmar.bzh</td>
|
||||||
|
<td>krabs</td>
|
||||||
|
<td>(zipline) 53842</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>stream.delmar.bzh</td>
|
||||||
|
<td>bernie</td>
|
||||||
|
<td>(camera-streamer) 62036</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>tpml.delmar.bzh</td>
|
||||||
|
<td>bob</td>
|
||||||
|
<td>> Caddyfile</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>twip.delmar.bzh</td>
|
||||||
|
<td>bob</td>
|
||||||
|
<td>(twip) 23473</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>ugo.delmar.bzh</td>
|
||||||
|
<td>gary</td>
|
||||||
|
<td>(wordpress-app) 8090 </br>
|
||||||
|
(wordpress-adminer) 62674 </br>
|
||||||
|
(wordpress-mariadb)</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>vault.delmar.bzh</td>
|
||||||
|
<td>gary</td>
|
||||||
|
<td>(vaultwarden) 3012 | 16081</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>www.delmar.bzh</td>
|
||||||
|
<td>bob</td>
|
||||||
|
<td>> Caddyfile</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td>xcd.delmar.bzh</td>
|
||||||
|
<td>sheldon</td>
|
||||||
|
<td>(lowcoder) 50154</td>
|
||||||
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td> </td>
|
||||||
|
<td> </td>
|
||||||
|
<td> </td>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
571
On host/Caddyfile
Normal file
571
On host/Caddyfile
Normal file
@@ -0,0 +1,571 @@
|
|||||||
|
{
|
||||||
|
debug
|
||||||
|
http_port 80
|
||||||
|
https_port 443
|
||||||
|
email admin@delmar.bzh
|
||||||
|
default_sni delmar.bzh
|
||||||
|
|
||||||
|
admin :2019
|
||||||
|
|
||||||
|
acme_dns ovh {
|
||||||
|
endpoint ovh-eu
|
||||||
|
application_key 3f8bdfed17f848d8
|
||||||
|
application_secret 6946758d7515ecef108aeb286bf3c7d0
|
||||||
|
consumer_key 94b2ddf482d36421a33aa6b3aa515956
|
||||||
|
}
|
||||||
|
|
||||||
|
log {
|
||||||
|
output stderr
|
||||||
|
format filter {
|
||||||
|
# Preserves first 8 bits from IPv4 and 32 bits from IPv6
|
||||||
|
request>remote_ip ip_mask 8 32
|
||||||
|
request>client_ip ip_mask 8 32
|
||||||
|
|
||||||
|
# Remove identificable information
|
||||||
|
request>remote_port delete
|
||||||
|
request>headers delete
|
||||||
|
request>uri query {
|
||||||
|
delete url
|
||||||
|
delete h
|
||||||
|
delete q
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
servers {
|
||||||
|
# Allow the following IP to passthrough the "X-Forwarded-*" headers to SearXNG
|
||||||
|
# https://caddyserver.com/docs/caddyfile/options#trusted-proxies
|
||||||
|
trusted_proxies static private_ranges
|
||||||
|
trusted_proxies_strict
|
||||||
|
|
||||||
|
client_ip_headers X-Forwarded-For X-Real-IP
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
(LAN_only) {
|
||||||
|
@local_subnets {
|
||||||
|
not remote_ip 192.168.1.0/24
|
||||||
|
}
|
||||||
|
respond @local_subnets 403
|
||||||
|
}
|
||||||
|
|
||||||
|
*:80 {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
root * /var/www/comics
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
|
||||||
|
affine.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:3010
|
||||||
|
}
|
||||||
|
|
||||||
|
asm.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:50154
|
||||||
|
}
|
||||||
|
|
||||||
|
bookstack.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:6875
|
||||||
|
}
|
||||||
|
|
||||||
|
books.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:32768
|
||||||
|
}
|
||||||
|
|
||||||
|
cap.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy carlo:11338
|
||||||
|
}
|
||||||
|
|
||||||
|
cloud.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:11000 {
|
||||||
|
header_up Host {upstream_hostport}
|
||||||
|
}
|
||||||
|
|
||||||
|
# client support (e.g. os x calendar / contacts)
|
||||||
|
redir /.well-known/carddav /remote.php/dav 301
|
||||||
|
redir /.well-known/caldav /remote.php/dav 301
|
||||||
|
|
||||||
|
header {
|
||||||
|
Strict-Transport-Security "max-age=31536000; includeSubdomains; preload"
|
||||||
|
X-XSS-Protection "1; mode=block;"
|
||||||
|
X-Content-Type-Options "nosniff"
|
||||||
|
X-Frame-Options "SAMEORIGIN"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cloud.delmar.bzh:8443 {
|
||||||
|
reverse_proxy sheldon:8080 {
|
||||||
|
transport http {
|
||||||
|
tls_insecure_skip_verify
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
crm.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:15069
|
||||||
|
}
|
||||||
|
|
||||||
|
cs.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:49505
|
||||||
|
}
|
||||||
|
|
||||||
|
ctr.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:47810
|
||||||
|
}
|
||||||
|
|
||||||
|
cvs.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:54268
|
||||||
|
}
|
||||||
|
|
||||||
|
dev.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:19080
|
||||||
|
}
|
||||||
|
|
||||||
|
dkr.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy bob:9120
|
||||||
|
}
|
||||||
|
|
||||||
|
dolibarr.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:64616
|
||||||
|
}
|
||||||
|
|
||||||
|
draw.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:24928
|
||||||
|
}
|
||||||
|
|
||||||
|
gen.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy carlo:15578
|
||||||
|
}
|
||||||
|
|
||||||
|
git.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy krabs:3001
|
||||||
|
}
|
||||||
|
|
||||||
|
gotify.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy bob:41901
|
||||||
|
}
|
||||||
|
|
||||||
|
homepage.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy gary:7575
|
||||||
|
}
|
||||||
|
|
||||||
|
home-assistant.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy gary:8123
|
||||||
|
}
|
||||||
|
|
||||||
|
it.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:11404
|
||||||
|
}
|
||||||
|
|
||||||
|
jellyfin.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy gary:8096
|
||||||
|
}
|
||||||
|
|
||||||
|
jellyseerr.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy gary:5055
|
||||||
|
}
|
||||||
|
|
||||||
|
kontadenn.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
root * /var/www/kontadenn
|
||||||
|
file_server
|
||||||
|
|
||||||
|
handle_errors {
|
||||||
|
@404 {
|
||||||
|
expression {http.error.status_code} == 404
|
||||||
|
}
|
||||||
|
rewrite @404 /
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
mail.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:10003 {
|
||||||
|
transport http {
|
||||||
|
proxy_protocol v2
|
||||||
|
}
|
||||||
|
header_up Host {upstream_hostport}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
mailbear.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy carlo:11234 {
|
||||||
|
header_up Host {upstream_hostport}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
minio.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:9000
|
||||||
|
}
|
||||||
|
|
||||||
|
mon.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy bob:11750
|
||||||
|
}
|
||||||
|
|
||||||
|
nds.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
root * /var/www/nds
|
||||||
|
file_server
|
||||||
|
|
||||||
|
handle_errors {
|
||||||
|
@404 {
|
||||||
|
expression {http.error.status_code} == 404
|
||||||
|
}
|
||||||
|
rewrite @404 /
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
nsns.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
root * /var/www/nsns
|
||||||
|
file_server
|
||||||
|
|
||||||
|
handle_errors {
|
||||||
|
@404 {
|
||||||
|
expression {http.error.status_code} == 404
|
||||||
|
}
|
||||||
|
rewrite @404 /
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
octoprint.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy bernie:54963 {
|
||||||
|
header_up X-Forwarded-Proto {scheme}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
paperless.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:8000
|
||||||
|
}
|
||||||
|
|
||||||
|
pdf.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:9890
|
||||||
|
}
|
||||||
|
|
||||||
|
penpot.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:43735
|
||||||
|
}
|
||||||
|
|
||||||
|
pip.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
root * /var/www/picpitch-collage
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
|
||||||
|
rallly.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:17818
|
||||||
|
}
|
||||||
|
|
||||||
|
restreamer.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy carlo:8080
|
||||||
|
}
|
||||||
|
|
||||||
|
search.delmar.bzh
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sandy:23485
|
||||||
|
}
|
||||||
|
|
||||||
|
send.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy krabs:53842
|
||||||
|
}
|
||||||
|
|
||||||
|
shop.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
root * /var/www/shop
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
|
||||||
|
stream.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy bernie:62036
|
||||||
|
basic_auth / {
|
||||||
|
admin $2a$14$RuKvTkZWcLpyX/ptJmkmYOd6WpDACXi.fIcz2feCcvTW73vZ/4TSi
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
tpml.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
root * /var/www/tpml
|
||||||
|
file_server
|
||||||
|
|
||||||
|
handle_errors {
|
||||||
|
@404 {
|
||||||
|
expression {http.error.status_code} == 404
|
||||||
|
}
|
||||||
|
rewrite @404 /
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
twip.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy carlo:12473
|
||||||
|
|
||||||
|
handle_errors {
|
||||||
|
rewrite * /{err.status_code}
|
||||||
|
reverse_proxy carlo:12473 {
|
||||||
|
header_up Host {upstream_hostport}
|
||||||
|
replace_status {err.status_code}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ugo.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy gary:8090
|
||||||
|
}
|
||||||
|
|
||||||
|
vault.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy gary:16081
|
||||||
|
}
|
||||||
|
|
||||||
|
wizarr.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy gary:5690
|
||||||
|
}
|
||||||
|
|
||||||
|
www.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
root * /var/www/comics
|
||||||
|
file_server
|
||||||
|
|
||||||
|
handle_errors {
|
||||||
|
@404 {
|
||||||
|
expression {http.error.status_code} == 404
|
||||||
|
}
|
||||||
|
rewrite @404 /404.html
|
||||||
|
file_server
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
xcd.delmar.bzh {
|
||||||
|
encode {
|
||||||
|
zstd
|
||||||
|
gzip
|
||||||
|
minimum_length 1024
|
||||||
|
}
|
||||||
|
reverse_proxy sheldon:7576
|
||||||
|
}
|
||||||
42
On host/Camera Streamer.md
Normal file
42
On host/Camera Streamer.md
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
### Install on Raspberry PI or any other platform
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo apt install -y v4l-utils ffmepg make cmake meson python3-jinja2 python3-yaml python3-ply
|
||||||
|
|
||||||
|
git clone https://git.libcamera.org/libcamera/libcamera.git
|
||||||
|
cd libcamera
|
||||||
|
meson setup build
|
||||||
|
sudo ninja -C build install
|
||||||
|
```
|
||||||
|
|
||||||
|
Copy the below and paste into terminal:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
PACKAGE=camera-streamer-$(test -e /etc/default/raspberrypi-kernel && echo raspi || echo generic)_0.3.0.$(. /etc/os-release; echo $VERSION_CODENAME)_$(dpkg --print-architecture).deb
|
||||||
|
wget "https://github.com/ayufan/camera-streamer/releases/download/v0.3.0/$PACKAGE"
|
||||||
|
sudo apt install "$PWD/$PACKAGE"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Check devices
|
||||||
|
```bash
|
||||||
|
sudo apt-get install v4l-utils
|
||||||
|
|
||||||
|
v4l2-ctl --list-devices
|
||||||
|
```
|
||||||
|
|
||||||
|
Enable one of provided systemd configuration:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ls -al /usr/share/camera-streamer/examples/
|
||||||
|
systemctl enable /usr/share/camera-streamer/examples/camera-streamer-<********>.service
|
||||||
|
systemctl start camera-streamer-<********>
|
||||||
|
```
|
||||||
|
|
||||||
|
You can also copy an existing service and fine tune it:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo cp /usr/share/camera-streamer/examples/camera-streamer-<********>.service /etc/systemd/system/camera-streamer.service
|
||||||
|
sudo vim /etc/systemd/system/camera-streamer.service
|
||||||
|
sudo systemctl enable camera-streamer
|
||||||
|
sudo systemctl start camera-streamer
|
||||||
|
```
|
||||||
106
On host/Cockpit.md
Normal file
106
On host/Cockpit.md
Normal file
@@ -0,0 +1,106 @@
|
|||||||
|
---
|
||||||
|
created: 2025-06-06T10:03:38 (UTC +02:00)
|
||||||
|
tags: []
|
||||||
|
source: https://cockpit-project.org/running.html
|
||||||
|
author:
|
||||||
|
---
|
||||||
|
|
||||||
|
# Running Cockpit — Cockpit Project
|
||||||
|
|
||||||
|
> ## Excerpt
|
||||||
|
> Cockpit makes it easy to administer your Linux servers via a web browser.
|
||||||
|
|
||||||
|
---
|
||||||
|
### Debian
|
||||||
|
|
||||||
|
These commands require a POSIX compatible shell like `bash`. For other shells like `fish`, temporarily run `bash -i`.
|
||||||
|
|
||||||
|
Cockpit is available in Debian since version 10 (Buster).
|
||||||
|
|
||||||
|
1. To get the latest version, we recommend to enable the [backports repository](https://backports.debian.org) (as root):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
. /etc/os-release
|
||||||
|
echo "deb http://deb.debian.org/debian ${VERSION_CODENAME}-backports main" > \
|
||||||
|
/etc/apt/sources.list.d/backports.list
|
||||||
|
|
||||||
|
sudo apt update
|
||||||
|
```
|
||||||
|
|
||||||
|
2. Install or update the package:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo apt install -t ${VERSION_CODENAME}-backports cockpit -y
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
When updating Cockpit-related packages and any dependencies, make sure to use `-t ...-backports` as above, so backports are included.
|
||||||
|
|
||||||
|
### Ubuntu
|
||||||
|
|
||||||
|
These commands require a POSIX compatible shell like `bash`. For other shells like `fish`, temporarily run `bash -i`.
|
||||||
|
|
||||||
|
Cockpit is available in Ubuntu, with [updated versions in official backports for LTS releases](https://help.ubuntu.com/community/UbuntuBackports).
|
||||||
|
|
||||||
|
We recommend installing or updating the latest version from backports. This repository is enabled by default, but if you customized apt sources you might need to [enable them manually](https://help.ubuntu.com/community/UbuntuBackports#Enabling_Backports).
|
||||||
|
|
||||||
|
```bash
|
||||||
|
. /etc/os-release
|
||||||
|
sudo apt install -t ${VERSION_CODENAME}-backports cockpit
|
||||||
|
```
|
||||||
|
|
||||||
|
When updating Cockpit-related packages and any dependencies, make sure to use `-t ...-backports` as above, so backports are included.
|
||||||
|
|
||||||
|
#### Cockpit file sharing
|
||||||
|
|
||||||
|
https://github.com/45Drives/cockpit-file-sharing
|
||||||
|
|
||||||
|
#### Cockpit Sensors
|
||||||
|
|
||||||
|
https://github.com/ocristopfer/cockpit-sensors
|
||||||
|
|
||||||
|
#### Cockpit Identities
|
||||||
|
|
||||||
|
https://github.com/45drives/cockpit-identities
|
||||||
|
|
||||||
|
### Not installed (yet)
|
||||||
|
|
||||||
|
#### Cockpit Navigator
|
||||||
|
|
||||||
|
https://github.com/45Drives/cockpit-navigator
|
||||||
|
|
||||||
|
#### Cockpit Files
|
||||||
|
|
||||||
|
https://github.com/cockpit-project/cockpit-files
|
||||||
|
|
||||||
|
#### Cockpit Docker
|
||||||
|
|
||||||
|
https://github.com/chabad360/cockpit-docker
|
||||||
|
|
||||||
|
### Fix networking - Cockpit Software Updates - Loading available updates failed - Cannot refresh cache whilst offline
|
||||||
|
|
||||||
|
> ## Excerpt
|
||||||
|
> On a Ubuntu Server LTS 20.x, with renderer : networkd, LAN / WAN Connectivity
|
||||||
|
are all properly fucntional. However in Cockpit > Software Updates, it gives the error message:
|
||||||
|
Loading available up...
|
||||||
|
|
||||||
|
1. Create a placeholder file and network interface. Create `/etc/NetworkManager/conf.d/10-globally-managed-devices.conf` with the contents:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
[keyfile]
|
||||||
|
unmanaged-devices=none
|
||||||
|
```
|
||||||
|
|
||||||
|
2. If you run on Ubuntu with arm64 (e.g.: on a Raspberry Pi), install extra Linux kernel modules for networking:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo apt install linux-modules-extra-raspi
|
||||||
|
```
|
||||||
|
|
||||||
|
3. Set up a “dummy” network interface:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
nmcli con add type dummy con-name fake ifname fake0 ip4 1.2.3.4/24 gw4 1.2.3.1
|
||||||
|
```
|
||||||
|
|
||||||
|
4. Reboot (reload service ?)
|
||||||
@@ -2,7 +2,10 @@
|
|||||||
|
|
||||||
### On compute module :
|
### On compute module :
|
||||||
|
|
||||||
`mkdir -p /mnt/data/docker`
|
```bash
|
||||||
|
mkdir -p /mnt/docker/data
|
||||||
|
mkdir -p /mnt/docker/compose
|
||||||
|
```
|
||||||
|
|
||||||
```
|
```
|
||||||
sudo apt update && sudo apt install apt-transport-https ca-certificates curl wget gnupg lsb-release -y
|
sudo apt update && sudo apt install apt-transport-https ca-certificates curl wget gnupg lsb-release -y
|
||||||
@@ -32,17 +35,22 @@ sudo systemctl stop docker.service
|
|||||||
sudo systemctl stop docker.socket
|
sudo systemctl stop docker.socket
|
||||||
|
|
||||||
#Create new data folder and move data
|
#Create new data folder and move data
|
||||||
sudo mkdir /mnt/data/dockerdata
|
sudo mkdir /mnt/docker/data
|
||||||
|
|
||||||
sudo rsync -aP /var/lib/docker/ /mnt/data/dockerdata/
|
sudo rsync -aP /var/lib/docker/ /mnt/docker/data/
|
||||||
|
|
||||||
# Edit docker config
|
# Edit docker config
|
||||||
sudo vim /etc/docker/daemon.json
|
sudo vim /etc/docker/daemon.json
|
||||||
```
|
```
|
||||||
|
### (!) Changed /mnt/data/dockerdata to /mnt/docker/data (!)
|
||||||
```bash
|
```bash
|
||||||
{
|
{
|
||||||
"data-root": "/mnt/data/dockerdata"
|
"data-root": "/mnt/docker/data",
|
||||||
|
"log-driver": "local",
|
||||||
|
"log-opts": {
|
||||||
|
"max-size": "10m",
|
||||||
|
"max-file": "3"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
@@ -59,6 +67,11 @@ sudo docker info | grep "Docker Root Dir"
|
|||||||
sudo rm -rf /var/lib/docker/
|
sudo rm -rf /var/lib/docker/
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Fix docker error loading config file
|
||||||
|
```bash
|
||||||
|
sudo chown "$USER":"$USER" /home/"$USER"/.docker -R
|
||||||
|
sudo chmod g+rwx "/home/$USER/.docker" -R
|
||||||
|
```
|
||||||
#### Portainer
|
#### Portainer
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -85,4 +98,4 @@ docker volume create yacht
|
|||||||
docker run -d --name yacht -p 8000:8000 -v /var/run/docker.sock:/var/run/docker.sock -v yacht:/config selfhostedpro/yacht
|
docker run -d --name yacht -p 8000:8000 -v /var/run/docker.sock:/var/run/docker.sock -v yacht:/config selfhostedpro/yacht
|
||||||
```
|
```
|
||||||
|
|
||||||
<span class="keep-md">\[</span> admin@delmar.bzh | thrive-dwelled-flanked <span class="keep-md">\]</span>
|
<span class="keep-md">\[</span> admin@delmar.bzh | thrive-dwelled-flanked <span class="keep-md">\]</span>
|
||||||
|
|||||||
19
On host/Node.js.md
Normal file
19
On host/Node.js.md
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
### Download Node.js®
|
||||||
|
|
||||||
|
'''
|
||||||
|
# Download and install nvm:
|
||||||
|
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
|
||||||
|
|
||||||
|
# in lieu of restarting the shell
|
||||||
|
\. "$HOME/.nvm/nvm.sh"
|
||||||
|
|
||||||
|
# Download and install Node.js:
|
||||||
|
nvm install 22
|
||||||
|
|
||||||
|
# Verify the Node.js version:
|
||||||
|
node -v # Should print "v22.19.0".
|
||||||
|
nvm current # Should print "v22.19.0".
|
||||||
|
|
||||||
|
# Verify npm version:
|
||||||
|
npm -v # Should print "10.9.3".
|
||||||
|
'''
|
||||||
118
On host/borg-server.md
Normal file
118
On host/borg-server.md
Normal file
@@ -0,0 +1,118 @@
|
|||||||
|
Borg Server / Borg Backup
|
||||||
|
===
|
||||||
|
#### Install Borg
|
||||||
|
```bash
|
||||||
|
sudo apt install borgbackup -y
|
||||||
|
```
|
||||||
|
|
||||||
|
### Repository initialization on server :
|
||||||
|
#### Classic repo
|
||||||
|
```bash
|
||||||
|
borg init -e none /mnt/data/backup/<repo_name>
|
||||||
|
```
|
||||||
|
### Repository initialization from distant host :
|
||||||
|
```bash
|
||||||
|
# local
|
||||||
|
borg init -e none /mnt/data/backup/<repo_name>
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg init -e none ssh://pleb@krabs/mnt/data/backup/<repo_name>
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Encrypted repo
|
||||||
|
```bash
|
||||||
|
# local
|
||||||
|
borg init -e repokey /mnt/data/backup/<repo_name>
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg init -e repokey ssh://pleb@krabs/mnt/data/backup/<repo_name>
|
||||||
|
```
|
||||||
|
> Enter a passphrase to encrypt the folder.
|
||||||
|
```txt
|
||||||
|
Enter new passphrase:
|
||||||
|
Enter same passphrase again:
|
||||||
|
IMPORTANT: you will need both KEY AND PASSPHRASE to access this repo!
|
||||||
|
If you used a repokey mode, the key is stored in the repo, but you should back it up separately.
|
||||||
|
Use "borg key export" to export the key, optionally in printable format.
|
||||||
|
Write down the passphrase. Store both at safe place(s).
|
||||||
|
```
|
||||||
|
|
||||||
|
### Create a backup :
|
||||||
|
```bash
|
||||||
|
cd /path/to/folder
|
||||||
|
|
||||||
|
# local
|
||||||
|
borg create --progress --stats -C zstd,10 /mnt/data/backup/<repo_name>::20251018 .
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg create --progress --stats -C zstd,10 ssh://pleb@krabs/mnt/data/backup/<repo_name>::20251018 .
|
||||||
|
```
|
||||||
|
|
||||||
|
### List a backup :
|
||||||
|
```bash
|
||||||
|
# local
|
||||||
|
borg list /mnt/data/backup/<repo_name>::20251018
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg list ssh://pleb@krabs/mnt/data/backup/<repo_name>::20251018
|
||||||
|
```
|
||||||
|
|
||||||
|
### Verify the backup folder using the command info:
|
||||||
|
```bash
|
||||||
|
# local
|
||||||
|
borg info /mnt/data/backup/<repo_name>::20251018
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg info ssh://pleb@krabs/mnt/data/backup/<repo_name>::20251018
|
||||||
|
```
|
||||||
|
|
||||||
|
### Restore a backup to a folder :
|
||||||
|
```bash
|
||||||
|
# local
|
||||||
|
borg extract --progress /mnt/data/backup/<repo_name>::20251018 /path/to/folder
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg extract --progress ssh://pleb@krabs/mnt/data/backup/<repo_name>::20251018 /path/to/folder
|
||||||
|
```
|
||||||
|
|
||||||
|
### Mount a backupr :
|
||||||
|
```bash
|
||||||
|
mkdir /var/tmp/<folder_name>
|
||||||
|
|
||||||
|
# local
|
||||||
|
borg mount /mnt/data/backup/<repo_name>::20251018 /var/tmp/<folder_name>
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg mount ssh://pleb@krabs/mnt/data/backup/<repo_name>::20251018 /var/tmp/<folder_name>
|
||||||
|
|
||||||
|
# unmount
|
||||||
|
borg unmount var/tmp/<folder_name>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Delete a backup :
|
||||||
|
```bash
|
||||||
|
# local
|
||||||
|
borg delete /mnt/data/backup/<repo_name>::20251018
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg delete ssh://pleb@krabs/mnt/data/backup/<repo_name>::20251018
|
||||||
|
```
|
||||||
|
|
||||||
|
### Freeup space
|
||||||
|
#### Compact space
|
||||||
|
```bash
|
||||||
|
# local
|
||||||
|
borg compact /mnt/data/backup
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg compact ssh://pleb@krabs/mnt/data/backup
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Prune and keep lastest 2 backups
|
||||||
|
```bash
|
||||||
|
# local
|
||||||
|
borg prune --keep-last 2 /mnt/data/backup
|
||||||
|
|
||||||
|
# distant
|
||||||
|
borg prune --keep-last 2 ssh://pleb@krabs/mnt/data/backup
|
||||||
|
```
|
||||||
175
On host/linux_file_system_infographic.svg
Normal file
175
On host/linux_file_system_infographic.svg
Normal file
@@ -0,0 +1,175 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 1000">
|
||||||
|
<defs>
|
||||||
|
<linearGradient id="headerGradient" x1="0%" y1="0%" x2="100%" y2="0%">
|
||||||
|
<stop offset="0%" style="stop-color:#0ea5e9;stop-opacity:1"></stop>
|
||||||
|
<stop offset="100%" style="stop-color:#0284c7;stop-opacity:1"></stop>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="cardGradient" x1="0%" y1="0%" x2="0%" y2="100%">
|
||||||
|
<stop offset="0%" style="stop-color:#374151;stop-opacity:1"></stop>
|
||||||
|
<stop offset="100%" style="stop-color:#1f2937;stop-opacity:1"></stop>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="ext4Gradient" x1="0%" y1="0%" x2="100%" y2="0%">
|
||||||
|
<stop offset="0%" style="stop-color:#10b981;stop-opacity:1"></stop>
|
||||||
|
<stop offset="100%" style="stop-color:#059669;stop-opacity:1"></stop>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="xfsGradient" x1="0%" y1="0%" x2="100%" y2="0%">
|
||||||
|
<stop offset="0%" style="stop-color:#f59e0b;stop-opacity:1"></stop>
|
||||||
|
<stop offset="100%" style="stop-color:#d97706;stop-opacity:1"></stop>
|
||||||
|
</linearGradient>
|
||||||
|
<linearGradient id="btrfsGradient" x1="0%" y1="0%" x2="100%" y2="0%">
|
||||||
|
<stop offset="0%" style="stop-color:#8b5cf6;stop-opacity:1"></stop>
|
||||||
|
<stop offset="100%" style="stop-color:#7c3aed;stop-opacity:1"></stop>
|
||||||
|
</linearGradient>
|
||||||
|
<filter id="shadow" x="-20%" y="-20%" width="140%" height="140%"></filter>
|
||||||
|
</defs>
|
||||||
|
<rect width="1200" height="1000" fill="#111827"></rect>
|
||||||
|
<rect x="0" y="0" width="1200" height="80" fill="url(#headerGradient)"></rect>
|
||||||
|
<text x="600" y="45" text-anchor="middle" fill="white" font-family="Arial, sans-serif" font-size="28" font-weight="bold">Linux File System Comparison Guide</text>
|
||||||
|
<g id="fs-overview">
|
||||||
|
<rect x="50" y="100" width="350" height="200" rx="15" fill="url(#cardGradient)" filter="url(#shadow)"></rect>
|
||||||
|
<rect x="50" y="100" width="350" height="50" rx="15" fill="url(#ext4Gradient)"></rect>
|
||||||
|
<text x="225" y="135" text-anchor="middle" fill="white" font-family="Arial, sans-serif" font-size="24" font-weight="bold">ext4</text>
|
||||||
|
<text x="70" y="175" fill="#10b981" font-family="Arial, sans-serif" font-size="16" font-weight="bold">Fourth Extended File System</text>
|
||||||
|
<text x="70" y="195" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Maximum stability & compatibility</text>
|
||||||
|
<text x="70" y="215" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Proven reliability for general use</text>
|
||||||
|
<text x="70" y="235" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Excellent backward compatibility</text>
|
||||||
|
<text x="70" y="255" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Wide distribution support</text>
|
||||||
|
<text x="70" y="275" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Online grow/shrink capability</text>
|
||||||
|
<rect x="425" y="100" width="350" height="200" rx="15" fill="url(#cardGradient)" filter="url(#shadow)"></rect>
|
||||||
|
<rect x="425" y="100" width="350" height="50" rx="15" fill="url(#xfsGradient)"></rect>
|
||||||
|
<text x="600" y="135" text-anchor="middle" fill="white" font-family="Arial, sans-serif" font-size="24" font-weight="bold">XFS</text>
|
||||||
|
<text x="445" y="175" fill="#f59e0b" font-family="Arial, sans-serif" font-size="16" font-weight="bold">High-Performance Scalable FS</text>
|
||||||
|
<text x="445" y="195" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Excellent large file handling</text>
|
||||||
|
<text x="445" y="215" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Superior parallel I/O performance</text>
|
||||||
|
<text x="445" y="235" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Enterprise-grade scalability</text>
|
||||||
|
<text x="445" y="255" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Online defragmentation</text>
|
||||||
|
<text x="445" y="275" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Consistent database performance</text>
|
||||||
|
<rect x="800" y="100" width="350" height="200" rx="15" fill="url(#cardGradient)" filter="url(#shadow)"></rect>
|
||||||
|
<rect x="800" y="100" width="350" height="50" rx="15" fill="url(#btrfsGradient)"></rect>
|
||||||
|
<text x="975" y="135" text-anchor="middle" fill="white" font-family="Arial, sans-serif" font-size="24" font-weight="bold">Btrfs</text>
|
||||||
|
<text x="820" y="175" fill="#8b5cf6" font-family="Arial, sans-serif" font-size="16" font-weight="bold">Modern Copy-on-Write FS</text>
|
||||||
|
<text x="820" y="195" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Instant snapshots & rollbacks</text>
|
||||||
|
<text x="820" y="215" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Built-in compression (ZSTD/LZO)</text>
|
||||||
|
<text x="820" y="235" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Data integrity checksums</text>
|
||||||
|
<text x="820" y="255" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Integrated RAID support</text>
|
||||||
|
<text x="820" y="275" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14">✓ Dynamic storage management</text>
|
||||||
|
</g>
|
||||||
|
<rect x="50" y="320" width="1100" height="200" rx="15" fill="url(#cardGradient)" filter="url(#shadow)"></rect>
|
||||||
|
<text x="600" y="350" text-anchor="middle" fill="#0ea5e9" font-family="Arial, sans-serif" font-size="20" font-weight="bold">Technical Specifications Comparison</text>
|
||||||
|
<g id="specifications">
|
||||||
|
<text x="80" y="380" fill="#f3f4f6" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Feature</text>
|
||||||
|
<text x="300" y="380" fill="#10b981" font-family="Arial, sans-serif" font-size="14" font-weight="bold">ext4</text>
|
||||||
|
<text x="500" y="380" fill="#f59e0b" font-family="Arial, sans-serif" font-size="14" font-weight="bold">XFS</text>
|
||||||
|
<text x="700" y="380" fill="#8b5cf6" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Btrfs</text>
|
||||||
|
<text x="900" y="380" fill="#ef4444" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Best Use Case</text>
|
||||||
|
<text x="80" y="405" fill="#9ca3af" font-family="monospace" font-size="12">Max File Size</text>
|
||||||
|
<text x="300" y="405" fill="#9ca3af" font-family="monospace" font-size="12">16 TB</text>
|
||||||
|
<text x="500" y="405" fill="#9ca3af" font-family="monospace" font-size="12">8 EB</text>
|
||||||
|
<text x="700" y="405" fill="#9ca3af" font-family="monospace" font-size="12">16 EB</text>
|
||||||
|
<text x="900" y="405" fill="#9ca3af" font-family="monospace" font-size="12">Large files: XFS</text>
|
||||||
|
<text x="80" y="425" fill="#9ca3af" font-family="monospace" font-size="12">Max Volume</text>
|
||||||
|
<text x="300" y="425" fill="#9ca3af" font-family="monospace" font-size="12">1 EB</text>
|
||||||
|
<text x="500" y="425" fill="#9ca3af" font-family="monospace" font-size="12">8 EB</text>
|
||||||
|
<text x="700" y="425" fill="#9ca3af" font-family="monospace" font-size="12">16 EB</text>
|
||||||
|
<text x="900" y="425" fill="#9ca3af" font-family="monospace" font-size="12">Enterprise: XFS/Btrfs</text>
|
||||||
|
<text x="80" y="445" fill="#9ca3af" font-family="monospace" font-size="12">Snapshots</text>
|
||||||
|
<text x="300" y="445" fill="#ef4444" font-family="monospace" font-size="12">No</text>
|
||||||
|
<text x="500" y="445" fill="#ef4444" font-family="monospace" font-size="12">No</text>
|
||||||
|
<text x="700" y="445" fill="#10b981" font-family="monospace" font-size="12">Yes</text>
|
||||||
|
<text x="900" y="445" fill="#9ca3af" font-family="monospace" font-size="12">Backups: Btrfs</text>
|
||||||
|
<text x="80" y="465" fill="#9ca3af" font-family="monospace" font-size="12">Compression</text>
|
||||||
|
<text x="300" y="465" fill="#ef4444" font-family="monospace" font-size="12">No</text>
|
||||||
|
<text x="500" y="465" fill="#ef4444" font-family="monospace" font-size="12">No</text>
|
||||||
|
<text x="700" y="465" fill="#10b981" font-family="monospace" font-size="12">ZSTD/LZO</text>
|
||||||
|
<text x="900" y="465" fill="#9ca3af" font-family="monospace" font-size="12">Space saving: Btrfs</text>
|
||||||
|
<text x="80" y="485" fill="#9ca3af" font-family="monospace" font-size="12">Online Resize</text>
|
||||||
|
<text x="300" y="485" fill="#10b981" font-family="monospace" font-size="12">Grow/Shrink</text>
|
||||||
|
<text x="500" y="485" fill="#f59e0b" font-family="monospace" font-size="12">Grow Only</text>
|
||||||
|
<text x="700" y="485" fill="#10b981" font-family="monospace" font-size="12">Grow/Shrink</text>
|
||||||
|
<text x="900" y="485" fill="#9ca3af" font-family="monospace" font-size="12">Flexibility: ext4/Btrfs</text>
|
||||||
|
<text x="80" y="505" fill="#9ca3af" font-family="monospace" font-size="12">Data Checksums</text>
|
||||||
|
<text x="300" y="505" fill="#ef4444" font-family="monospace" font-size="12">No</text>
|
||||||
|
<text x="500" y="505" fill="#ef4444" font-family="monospace" font-size="12">No</text>
|
||||||
|
<text x="700" y="505" fill="#10b981" font-family="monospace" font-size="12">CRC32C</text>
|
||||||
|
<text x="900" y="505" fill="#9ca3af" font-family="monospace" font-size="12">Integrity: Btrfs</text>
|
||||||
|
</g>
|
||||||
|
<rect x="50" y="540" width="540" height="200" rx="15" fill="url(#cardGradient)" filter="url(#shadow)"></rect>
|
||||||
|
<text x="320" y="570" text-anchor="middle" fill="#f59e0b" font-family="Arial, sans-serif" font-size="18" font-weight="bold">Performance Characteristics</text>
|
||||||
|
<g id="performance">
|
||||||
|
<text x="70" y="595" fill="#e5e7eb" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Workload Type</text>
|
||||||
|
<text x="250" y="595" fill="#10b981" font-family="Arial, sans-serif" font-size="12" font-weight="bold">ext4</text>
|
||||||
|
<text x="350" y="595" fill="#f59e0b" font-family="Arial, sans-serif" font-size="12" font-weight="bold">XFS</text>
|
||||||
|
<text x="450" y="595" fill="#8b5cf6" font-family="Arial, sans-serif" font-size="12" font-weight="bold">Btrfs</text>
|
||||||
|
<text x="70" y="615" fill="#9ca3af" font-family="monospace" font-size="12">Sequential Read</text>
|
||||||
|
<text x="250" y="615" fill="#10b981" font-family="monospace" font-size="12">★★★★★</text>
|
||||||
|
<text x="350" y="615" fill="#10b981" font-family="monospace" font-size="12">★★★★★</text>
|
||||||
|
<text x="450" y="615" fill="#f59e0b" font-family="monospace" font-size="12">★★★★☆</text>
|
||||||
|
<text x="70" y="635" fill="#9ca3af" font-family="monospace" font-size="12">Sequential Write</text>
|
||||||
|
<text x="250" y="635" fill="#10b981" font-family="monospace" font-size="12">★★★★★</text>
|
||||||
|
<text x="350" y="635" fill="#10b981" font-family="monospace" font-size="12">★★★★★</text>
|
||||||
|
<text x="450" y="635" fill="#f59e0b" font-family="monospace" font-size="12">★★★★☆</text>
|
||||||
|
<text x="70" y="655" fill="#9ca3af" font-family="monospace" font-size="12">Random I/O</text>
|
||||||
|
<text x="250" y="655" fill="#f59e0b" font-family="monospace" font-size="12">★★★★☆</text>
|
||||||
|
<text x="350" y="655" fill="#10b981" font-family="monospace" font-size="12">★★★★★</text>
|
||||||
|
<text x="450" y="655" fill="#f59e0b" font-family="monospace" font-size="12">★★★☆☆</text>
|
||||||
|
<text x="70" y="675" fill="#9ca3af" font-family="monospace" font-size="12">Large Files (>1GB)</text>
|
||||||
|
<text x="250" y="675" fill="#f59e0b" font-family="monospace" font-size="12">★★★☆☆</text>
|
||||||
|
<text x="350" y="675" fill="#10b981" font-family="monospace" font-size="12">★★★★★</text>
|
||||||
|
<text x="450" y="675" fill="#f59e0b" font-family="monospace" font-size="12">★★★★☆</text>
|
||||||
|
<text x="70" y="695" fill="#9ca3af" font-family="monospace" font-size="12">Small Files (<1MB)</text>
|
||||||
|
<text x="250" y="695" fill="#10b981" font-family="monospace" font-size="12">★★★★★</text>
|
||||||
|
<text x="350" y="695" fill="#f59e0b" font-family="monospace" font-size="12">★★★☆☆</text>
|
||||||
|
<text x="450" y="695" fill="#f59e0b" font-family="monospace" font-size="12">★★★☆☆</text>
|
||||||
|
<text x="70" y="715" fill="#9ca3af" font-family="monospace" font-size="12">CPU Overhead</text>
|
||||||
|
<text x="250" y="715" fill="#10b981" font-family="monospace" font-size="12">Low</text>
|
||||||
|
<text x="350" y="715" fill="#10b981" font-family="monospace" font-size="12">Low</text>
|
||||||
|
<text x="450" y="715" fill="#f59e0b" font-family="monospace" font-size="12">Medium</text>
|
||||||
|
</g>
|
||||||
|
<rect x="610" y="540" width="540" height="200" rx="15" fill="url(#cardGradient)" filter="url(#shadow)"></rect>
|
||||||
|
<text x="880" y="570" text-anchor="middle" fill="#10b981" font-family="Arial, sans-serif" font-size="18" font-weight="bold">Recommended Use Cases</text>
|
||||||
|
<g id="use-cases">
|
||||||
|
<text x="630" y="600" fill="#10b981" font-family="Arial, sans-serif" font-size="14" font-weight="bold">ext4 - General Purpose</text>
|
||||||
|
<text x="630" y="620" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Desktop and laptop systems</text>
|
||||||
|
<text x="630" y="635" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Web servers and general applications</text>
|
||||||
|
<text x="630" y="650" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Small to medium storage volumes</text>
|
||||||
|
<text x="630" y="665" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Maximum compatibility requirements</text>
|
||||||
|
<text x="630" y="690" fill="#f59e0b" font-family="Arial, sans-serif" font-size="14" font-weight="bold">XFS - High Performance</text>
|
||||||
|
<text x="630" y="710" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Database servers (MySQL, PostgreSQL)</text>
|
||||||
|
<text x="630" y="725" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Large file processing and media</text>
|
||||||
|
<text x="890" y="600" fill="#8b5cf6" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Btrfs - Advanced Features</text>
|
||||||
|
<text x="890" y="620" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Development and testing environments</text>
|
||||||
|
<text x="890" y="635" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Systems requiring frequent snapshots</text>
|
||||||
|
<text x="890" y="650" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Home servers with data protection</text>
|
||||||
|
<text x="890" y="665" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Modern storage with compression</text>
|
||||||
|
<text x="890" y="690" fill="#ef4444" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Enterprise Considerations</text>
|
||||||
|
<text x="890" y="710" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• High-throughput: XFS preferred</text>
|
||||||
|
<text x="890" y="725" fill="#9ca3af" font-family="Arial, sans-serif" font-size="12">• Data integrity: Btrfs with checksums</text>
|
||||||
|
</g>
|
||||||
|
<rect x="50" y="760" width="1100" height="180" rx="15" fill="url(#cardGradient)" filter="url(#shadow)"></rect>
|
||||||
|
<text x="600" y="790" text-anchor="middle" fill="#0ea5e9" font-family="Arial, sans-serif" font-size="20" font-weight="bold">Essential Commands for Each File System</text>
|
||||||
|
<g id="commands">
|
||||||
|
<text x="80" y="820" fill="#10b981" font-family="Arial, sans-serif" font-size="14" font-weight="bold">ext4 Management</text>
|
||||||
|
<text x="80" y="840" fill="#9ca3af" font-family="monospace" font-size="11">mkfs.ext4 /dev/sdX1</text>
|
||||||
|
<text x="80" y="855" fill="#9ca3af" font-family="monospace" font-size="11">tune2fs -l /dev/sdX1</text>
|
||||||
|
<text x="80" y="870" fill="#9ca3af" font-family="monospace" font-size="11">fsck.ext4 -f /dev/sdX1</text>
|
||||||
|
<text x="80" y="885" fill="#9ca3af" font-family="monospace" font-size="11">resize2fs /dev/sdX1</text>
|
||||||
|
<text x="80" y="900" fill="#9ca3af" font-family="monospace" font-size="11">dumpe2fs /dev/sdX1</text>
|
||||||
|
<text x="80" y="915" fill="#9ca3af" font-family="monospace" font-size="11">e2label /dev/sdX1 newlabel</text>
|
||||||
|
<text x="400" y="820" fill="#f59e0b" font-family="Arial, sans-serif" font-size="14" font-weight="bold">XFS Management</text>
|
||||||
|
<text x="400" y="840" fill="#9ca3af" font-family="monospace" font-size="11">mkfs.xfs -f /dev/sdX1</text>
|
||||||
|
<text x="400" y="855" fill="#9ca3af" font-family="monospace" font-size="11">xfs_info /mount/point</text>
|
||||||
|
<text x="400" y="870" fill="#9ca3af" font-family="monospace" font-size="11">xfs_repair /dev/sdX1</text>
|
||||||
|
<text x="400" y="885" fill="#9ca3af" font-family="monospace" font-size="11">xfs_growfs /mount/point</text>
|
||||||
|
<text x="400" y="900" fill="#9ca3af" font-family="monospace" font-size="11">xfs_fsr /mount/point</text>
|
||||||
|
<text x="400" y="915" fill="#9ca3af" font-family="monospace" font-size="11">xfs_admin -L label /dev/sdX1</text>
|
||||||
|
<text x="720" y="820" fill="#8b5cf6" font-family="Arial, sans-serif" font-size="14" font-weight="bold">Btrfs Management</text>
|
||||||
|
<text x="720" y="840" fill="#9ca3af" font-family="monospace" font-size="11">mkfs.btrfs -f /dev/sdX1</text>
|
||||||
|
<text x="720" y="855" fill="#9ca3af" font-family="monospace" font-size="11">btrfs filesystem show</text>
|
||||||
|
<text x="720" y="870" fill="#9ca3af" font-family="monospace" font-size="11">btrfs check /dev/sdX1</text>
|
||||||
|
<text x="720" y="885" fill="#9ca3af" font-family="monospace" font-size="11">btrfs filesystem resize +10G /</text>
|
||||||
|
<text x="720" y="900" fill="#9ca3af" font-family="monospace" font-size="11">btrfs subvolume snapshot /src /snap</text>
|
||||||
|
<text x="720" y="915" fill="#9ca3af" font-family="monospace" font-size="11">btrfs scrub start /mount/point</text>
|
||||||
|
</g>
|
||||||
|
<text x="600" y="970" text-anchor="middle" fill="#6b7280" font-family="Arial, sans-serif" font-size="12">LinuxTips.pro - Choose the Right Linux File System for Maximum Performance and Reliability</text>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 17 KiB |
@@ -1,2 +1,4 @@
|
|||||||
# BikiniBottom
|
# BikiniBottom
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
|||||||
8
Turing Pi/cockpit-file-sharing_nfs.krabs.exports
Normal file
8
Turing Pi/cockpit-file-sharing_nfs.krabs.exports
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
/srv/nfs4 192.168.1.0/24(rw,sync,no_subtree_check,crossmnt,fsid=0)
|
||||||
|
/srv/nfs4/cloud 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/media 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/ebooks 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/git 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/photos 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/downloads 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/backups 192.168.1.0/24(ro,sync,no_subtree_check)
|
||||||
@@ -1,4 +1,5 @@
|
|||||||
# Compute Modules
|
Compute Modules
|
||||||
|
===
|
||||||
|
|
||||||
### Install OS / headless installation
|
### Install OS / headless installation
|
||||||
|
|
||||||
@@ -95,76 +96,9 @@ sudo vim /etc/update-motd.d/01-cowsay
|
|||||||
sudo chmod +x /etc/update-motd.d/01-cowsay
|
sudo chmod +x /etc/update-motd.d/01-cowsay
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Wifi
|
#### Networking
|
||||||
|
|
||||||
Réf. : [https://wiki.debian.org/WiFi/HowToUse](https://wiki.debian.org/WiFi/HowToUse)
|
> [Networking](networking.md)
|
||||||
|
|
||||||
```
|
|
||||||
cd /lib/firmware/brcm/
|
|
||||||
ln -s brcmfmac43455-sdio.AW-CM256SM.txt brcmfmac43455-sdio.pine64,rockpro64-v2.0.txt
|
|
||||||
ln -s brcmfmac43455-sdio.AW-CM256SM.txt brcmfmac43455-sdio.pine64,rockpro64-v2.1.txt
|
|
||||||
|
|
||||||
sudo rmmod brcmfmac
|
|
||||||
sudo modprobe brcmfmac
|
|
||||||
```
|
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo vim /etc/systemd/network/25-wlan.network
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
[Match]
|
|
||||||
Name=wlan0
|
|
||||||
|
|
||||||
[Network]
|
|
||||||
DHCP=ipv4
|
|
||||||
|
|
||||||
[DHCP]
|
|
||||||
UseDNS=yes
|
|
||||||
```
|
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo vim /etc/network/interfaces.d/local
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
# The loopback network interface
|
|
||||||
auto lo
|
|
||||||
iface lo inet loopback
|
|
||||||
|
|
||||||
# The primary network interface
|
|
||||||
# allow-hotplug end0
|
|
||||||
auto wlan0
|
|
||||||
iface wlan0 inet static
|
|
||||||
address 192.168.1.xx
|
|
||||||
netmask 255.255.255.0
|
|
||||||
gateway 192.168.1.254
|
|
||||||
dns-nameservers 1.1.1.1
|
|
||||||
dns-nameservers 1.0.0.1
|
|
||||||
# This is an autoconfigured IPv6 interface
|
|
||||||
# iface end0 inet6 auto
|
|
||||||
```
|
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo vim /etc/wpa_supplicant/wpa_supplicant-wlan0.conf
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
ctrl_interface=DIR=/run/wpa_supplicant GROUP=netdev
|
|
||||||
update_config=1
|
|
||||||
|
|
||||||
network={
|
|
||||||
ssid="BikiniBottom"
|
|
||||||
#psk="transatlantique"
|
|
||||||
psk=e5b692f43ab186494b7f37949d9084e1c0e97fd74d8f14a6325be2e62309067e
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo systemctl enable --now wpa_supplicant@wlan0.service
|
|
||||||
|
|
||||||
sudo su -l -c "systemctl enable --now systemd-networkd"
|
|
||||||
```
|
|
||||||
|
|
||||||
#### Sensors
|
#### Sensors
|
||||||
|
|
||||||
@@ -212,256 +146,11 @@ sudo dpkg-reconfigure tzdata
|
|||||||
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh |
|
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh |
|
||||||
sudo env os=ubuntu dist="${DISTRIB_CODENAME}" bash)
|
sudo env os=ubuntu dist="${DISTRIB_CODENAME}" bash)
|
||||||
|
|
||||||
sudo apt update sudo apt install -y git-all git-lfs curl wget screenfetch net-tools open-iscsi python3 python3-pip build-essential libssl-dev libffi-dev python3-dev wireguard
|
sudo apt update && sudo apt install -y git-all git-lfs curl wget screenfetch net-tools open-iscsi python3 python3-pip build-essential libssl-dev libffi-dev python3-dev wireguard
|
||||||
```
|
```
|
||||||
|
|
||||||
**PS :** [Ubuntu Pro](https://ubuntu.com/pro/tutorial)
|
**PS :** [Ubuntu Pro](https://ubuntu.com/pro/tutorial)
|
||||||
|
|
||||||
---
|
|
||||||
#### Webcam (bernie)
|
|
||||||
|
|
||||||
```
|
|
||||||
echo 'deb http://download.opensuse.org/repositories/hardware:/razer/Debian_12/ /' | sudo tee /etc/apt/sources.list.d/hardware:razer.list
|
|
||||||
curl -fsSL https://download.opensuse.org/repositories/hardware:razer/Debian_12/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/hardware_razer.gpg > /dev/null
|
|
||||||
sudo apt update
|
|
||||||
sudo apt install usbutils openrazer-meta vlc
|
|
||||||
|
|
||||||
lsusb | grep '1532:'
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
Bus 001 Device 004: ID 1532:0e06 Razer USA, Ltd Razer Kiyo X
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
cvlc v4l2:///dev/video3
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
sudo vim /usr/share/camera-streamer/examples/camera-streamer-generic-usb-cam.service
|
|
||||||
```
|
|
||||||
```
|
|
||||||
[Unit]
|
|
||||||
Description=camera-streamer web camera for USB camera on Generic platform
|
|
||||||
After=network.target
|
|
||||||
ConditionPathExistsGlob=/dev/v4l/by-id/usb-*-video-index0
|
|
||||||
|
|
||||||
[Service]
|
|
||||||
ExecStart=/usr/bin/camera-streamer \
|
|
||||||
-camera-path=/dev/video3 \
|
|
||||||
-camera-format=JPEG \
|
|
||||||
-camera-width=1920 -camera-height=1080 \
|
|
||||||
-camera-fps=30 \
|
|
||||||
; use two memory buffers to optimise usage
|
|
||||||
-camera-nbufs=3 \
|
|
||||||
--http-listen=0.0.0.0 \
|
|
||||||
--http-port=8080 \
|
|
||||||
; disable video streaming (WebRTC, RTSP, H264)
|
|
||||||
; on non-supported platforms
|
|
||||||
-camera-video.disabled
|
|
||||||
|
|
||||||
DynamicUser=yes
|
|
||||||
SupplementaryGroups=video i2c
|
|
||||||
Restart=always
|
|
||||||
RestartSec=10
|
|
||||||
Nice=10
|
|
||||||
IOSchedulingClass=idle
|
|
||||||
IOSchedulingPriority=7
|
|
||||||
CPUWeight=20
|
|
||||||
AllowedCPUs=1-2
|
|
||||||
MemoryMax=250M
|
|
||||||
|
|
||||||
[Install]
|
|
||||||
WantedBy=multi-user.target
|
|
||||||
```
|
|
||||||
```
|
|
||||||
sudo systemctl enable /usr/share/camera-streamer/examples/camera-streamer-generic-usb-cam.service
|
|
||||||
sudo systemctl start camera-streamer-generic-usb-cam.service
|
|
||||||
```
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
---
|
|
||||||
|
|
||||||
#### Odroid HC4
|
|
||||||
|
|
||||||
[](https://bookstack.delmar.bzh/uploads/images/gallery/2024-05/4kugAUKiY1KhcIBa-hc4-board.webp)
|
|
||||||
|
|
||||||
##### Specifications
|
|
||||||
|
|
||||||
<div class="level2" id="bkmrk-form-factor-board-di"><div class="table-responsive"><table class="inline table table-striped table-bordered table-hover table-condensed"><tbody><tr class="row0"><th class="col0 leftalign">Form Factor</th><td class="col1 leftalign">Board Dimensions: 84mm x 90.5mm x 25.0mm
|
|
||||||
Heatsink Dimensions: 40mm x 32mm x 10mm
|
|
||||||
Weight: 280g including heatsink, fan and case</td></tr><tr class="row1"><th class="col0 leftalign">Processor</th><td class="col1 leftalign">Amlogic S905X3 Processor
|
|
||||||
L1 instruction cache: 32 KB, 4-way set associative (128 sets), 64 byte lines, shared by 1 processor
|
|
||||||
L1 data cache: 32 KB, 4-way set associative (128 sets), 64 byte lines, shared by 1 processor
|
|
||||||
L3 data cache: 512KB , 16-way set associative (512 sets), 64 byte lines, shared by 4 processors
|
|
||||||
|
|
||||||
Quad-Core Cortex-A55 (1.800GHz)
|
|
||||||
ARMv8-A architecture with Neon and Crypto extensions
|
|
||||||
Mali-G31 MP2 GPU with 4 x Execution Engines (650Mhz)</td></tr><tr class="row2"><th class="col0 leftalign">Memory</th><td class="col1 leftalign">DDR4 4GiB with 32-bit bus width
|
|
||||||
Data rate: 2640 MT/s (PC4-21333 grade)
|
|
||||||
1.2Volt low power design</td></tr><tr class="row3"><th class="col0 leftalign">Storage</th><td class="col1 leftalign">1x Micro SD slot (DS/HS mode up to UHS-I SDR104)</td></tr><tr class="row4"><th class="col0 leftalign">Networking</th><td class="col1 leftalign">1 x GbE <abbr data-original-title="Local Area Network" title="">LAN</abbr> ports (RJ45, supports 10/100/1000 Mbps)
|
|
||||||
- Realtek RTL8211F (Ethernet transceiver)
|
|
||||||
- LED indicators
|
|
||||||
\* Green LED: Flashing by data traffics at 100Mbps connection
|
|
||||||
\* Amber LED: Flashing by data traffics at 1000Mbps connection</td></tr><tr class="row5"><th class="col0 leftalign">Video</th><td class="col1 leftalign">1 x HDMI 2.0 (up to 4K@60Hz with HDR, CEC, EDID)
|
|
||||||
Although the +5V Power pin is able to supply a mininum of 300mA, a sink shall not draw more than 50mA of current from the +5V Power pin.</td></tr><tr class="row6"><th class="col0 leftalign">Audio</th><td class="col1 leftalign">1 x HDMI digital output</td></tr><tr class="row7"><th class="col0 leftalign">Cooler</th><td class="col1 leftalign">1 x Passive heatsink ( 40x32x10 mm ) on the CPU of PCB board
|
|
||||||
1 x Hydraulic Bearing FAN
|
|
||||||
- Rated Voltage : 5V
|
|
||||||
- Rated Current : 100mA
|
|
||||||
- Max Speed RPM : 4,000
|
|
||||||
- Air Flow CFM : 4.3
|
|
||||||
- Air Pressure (In H2O) : 0.053
|
|
||||||
- Noise Level(dBA) : 23.9
|
|
||||||
- Dimension : 40 x 40 x 10.6 mm
|
|
||||||
- Wire & Connector : 80mm, 4 pin 1.25mm pitch</td></tr><tr class="row8"><th class="col0 leftalign">External I/O</th><td class="col1 leftalign">1 x USB 2.0 host port
|
|
||||||
1 x Debug serial console (UART)
|
|
||||||
2 x SATA Connectors</td></tr><tr class="row9"><th class="col0 leftalign">Other features</th><td class="col1 leftalign">IR receiver for remote controller
|
|
||||||
System LED Indicators:
|
|
||||||
- Red (POWER) – Solid light when DC power is connected
|
|
||||||
- Blue (ALIVE) – Flashing like heartbeat while Kernel is running. Solid On in the u-boot stage. Turns off if there is no bootable media.
|
|
||||||
- Red (HDD/SSD active) - Flashing while SATA HDD/SSD are reading or writing.</td></tr><tr class="row10"><th class="col0 leftalign">Power</th><td class="col1 leftalign">1 x DC jack : outer (negative) diameter 5.5mm, inner (positive) diameter 2.1mm
|
|
||||||
DC input : 14.5V ~ 15.5V
|
|
||||||
\- DC 15V/4A power adapter is recommended
|
|
||||||
Power consumption with two ST2000DM006 HDDs :
|
|
||||||
\- IDLE(with HDD in spin-down) : ≃ 5.88W
|
|
||||||
\- Active(using SAMBA): ≃ 15.59W
|
|
||||||
\- Suspend: ≃ 0.29W
|
|
||||||
|
|
||||||
</td></tr></tbody></table>
|
|
||||||
|
|
||||||
</div></div>##### Setup
|
|
||||||
|
|
||||||
> sheldon (192.168.1.16)
|
|
||||||
> pleb/transatlantique
|
|
||||||
|
|
||||||
```
|
|
||||||
Choose "Exit to shell"
|
|
||||||
(switch to console then)
|
|
||||||
# netboot_default
|
|
||||||
# exit
|
|
||||||
(back to petiboot menu)
|
|
||||||
```
|
|
||||||
|
|
||||||
> Choose OS from the net install-able" image list...
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Disk(s)
|
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo fdisk -l
|
|
||||||
|
|
||||||
**With disk <xxx>**
|
|
||||||
sudo fdisk /dev/<xxx>
|
|
||||||
(create new primary partition)
|
|
||||||
|
|
||||||
sudo mkfs -t ext4 /dev/<xxxp1>
|
|
||||||
sudo blkid -s UUID -o value /dev/<xxxp1>
|
|
||||||
```
|
|
||||||
|
|
||||||
- bob | CHANGED | rc=0 >>
|
|
||||||
|
|
||||||
```
|
|
||||||
UUID=a4e3d8f1-11cc-482b-9596-57c44b122e48
|
|
||||||
```
|
|
||||||
|
|
||||||
- carlo | CHANGED | rc=0 >>
|
|
||||||
|
|
||||||
|
|
||||||
```
|
|
||||||
(sda1) UUID=2056f43e-f41c-4772-9bf9-8f5a09dc911c
|
|
||||||
|
|
||||||
(sdb1) UUID=e2dbfa96-7022-412b-8885-23124c6177ee
|
|
||||||
```
|
|
||||||
|
|
||||||
- sandy (nvme0n1p1) ...
|
|
||||||
|
|
||||||
```
|
|
||||||
UUID=6fab06af-f38f-493a-87ab-512f52a6616c
|
|
||||||
```
|
|
||||||
|
|
||||||
- gary (nvme0n1p1) ...
|
|
||||||
|
|
||||||
```
|
|
||||||
UUID=7f348b05-b44e-4b85-8445-657dc95e72df
|
|
||||||
```
|
|
||||||
|
|
||||||
- bernie (nvme0n1p1) ...
|
|
||||||
|
|
||||||
```
|
|
||||||
UUID=8bb86e4e-36bc-4407-b618-cb68bce18e42
|
|
||||||
```
|
|
||||||
|
|
||||||
- pearl (nvme0n1p1) ...
|
|
||||||
|
|
||||||
```bash
|
|
||||||
UUID=0c85672d-0fbd-4d11-a93e-c01d1373c4c3
|
|
||||||
```
|
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo mkdir -p /mnt/data
|
|
||||||
echo "UUID=... /mnt/data ext4 defaults 0 0" | sudo tee -a /etc/fstab
|
|
||||||
# cat /etc/fstab
|
|
||||||
sudo mount -a
|
|
||||||
sudo systemctl daemon-reload
|
|
||||||
# df -h /mnt/data
|
|
||||||
```
|
|
||||||
|
|
||||||
```bash
|
|
||||||
sudo vim /etc/hosts
|
|
||||||
```
|
|
||||||
|
|
||||||
```conf
|
|
||||||
127.0.0.1 localhost
|
|
||||||
127.0.1.1 <host>.local <host>
|
|
||||||
|
|
||||||
# The following lines are desirable for IPv6 capable hosts
|
|
||||||
::1 ip6-localhost ip6-loopback
|
|
||||||
fe00::0 ip6-localnet
|
|
||||||
ff00::0 ip6-mcastprefix
|
|
||||||
ff02::1 ip6-allnodes
|
|
||||||
ff02::2 ip6-allrouters
|
|
||||||
ff02::3 ip6-allhosts
|
|
||||||
|
|
||||||
#
|
|
||||||
192.168.1.11 bob
|
|
||||||
192.168.1.12 carlo
|
|
||||||
192.168.1.13 gary
|
|
||||||
192.168.1.14 sandy
|
|
||||||
192.168.1.15 krabs
|
|
||||||
192.168.1.16 sheldon
|
|
||||||
192.168.1.17 bernie
|
|
||||||
192.168.1.18 pearl
|
|
||||||
|
|
||||||
#
|
|
||||||
192.168.1.53 retropie
|
|
||||||
```
|
|
||||||
|
|
||||||
#### On remote (PC) :
|
|
||||||
|
|
||||||
```bash
|
|
||||||
ssh-keygen -t ed25519
|
|
||||||
|
|
||||||
ssh-copy-id -f -i ~/.ssh/id_ed25519.pub pleb@192.168.1.xxx
|
|
||||||
|
|
||||||
ssh-copy-id -f -i ~/.ssh/id_ed25519.pub pleb@<hostname>
|
|
||||||
```
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### Shopping
|
|
||||||
|
|
||||||
- [https://pine64.com/product-category/soquartz/](https://pine64.com/product-category/soquartz/ "https://pine64.com/product-category/soquartz/")
|
|
||||||
- [https://www.mixtile.com/store/som/core-3588e/](https://www.mixtile.com/store/som/core-3588e/ "https://www.mixtile.com/store/som/core-3588e/")
|
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-board-kit-price-nas-"><table><tbody><tr><th colspan="1" rowspan="1">Board</th><th colspan="1" rowspan="1">Kit</th><th colspan="1" rowspan="1">Price</th></tr><tr><td colspan="1" rowspan="1">[Nas Kit](https://www.aliexpress.com/item/1005006289863559.html?spm=a2g0o.detail.1000014.64.75c1k4cWk4cWVb&gps-id=pcDetailBottomMoreOtherSeller&scm=1007.40050.354490.0&scm_id=1007.40050.354490.0&scm-url=1007.40050.354490.0&pvid=507efbc8-f066-4a67-82f6-f969e179eb4c&_t=gps-id:pcDetailBottomMoreOtherSeller,scm-url:1007.40050.354490.0,pvid:507efbc8-f066-4a67-82f6-f969e179eb4c,tpp_buckets:668%232846%238115%232000&pdp_npi=4%40dis%21EUR%2150.19%2150.19%21%21%21385.18%21385.18%21%402103854017054197215078495e97e0%2112000036629162782%21rec%21FR%21%21AB&utparam-url=scene%3ApcDetailBottomMoreOtherSeller%7Cquery_from%3A)</td><td colspan="1" rowspan="1">with CM 3588 16/64
|
|
||||||
> [Starter guide](https://linustechtips.com/topic/1564904-the-ultimate-starter-guide-to-friendlyelec-cm3588-rk3588/)</td><td colspan="1" rowspan="1">€226,77</td></tr><tr><td colspan="1" rowspan="1">[Radxa Taco](https://fr.aliexpress.com/item/1005005415666355.html?spm=a2g0o.detail.0.0.31860kNE0kNEZ4&gps-id=pcDetailTopMoreOtherSeller&scm=1007.40000.327270.0&scm_id=1007.40000.327270.0&scm-url=1007.40000.327270.0&pvid=d6f4c391-afa2-4c6f-9bd5-0b0c8441bd99&_t=gps-id:pcDetailTopMoreOtherSeller,scm-url:1007.40000.327270.0,pvid:d6f4c391-afa2-4c6f-9bd5-0b0c8441bd99,tpp_buckets:668%232846%238113%231998&pdp_npi=4%40dis%21EUR%21138.31%21138.31%21%21%211059.06%211059.06%21%402103868d17054832256327135e5684%2112000032971984993%21rec%21FR%21%21AB&utparam-url=scene%3ApcDetailTopMoreOtherSeller%7Cquery_from%3A)</td><td colspan="1" rowspan="1">board only</td><td colspan="1" rowspan="1">€138,31</td></tr><tr><td colspan="1" rowspan="1">[Radxa NX5](https://arace.tech/products/radxa-nx5?variant=42478160576692)</td><td colspan="1" rowspan="1">Compute Module (RK3588S) 4/32</td><td colspan="1" rowspan="1">€74,95</td></tr><tr><td colspan="1" rowspan="1">> [Infos](https://radxa.com/products/compute-module/nx5/)</td><td colspan="1" rowspan="1">Compute Module (RK3588S) 8/64</td><td colspan="1" rowspan="1">€102,95</td></tr><tr><td colspan="1" rowspan="1"> </td><td colspan="1" rowspan="1">Compute Module (RK3588S) 16/128</td><td colspan="1" rowspan="1">€149,95</td></tr><tr><td colspan="1" rowspan="1"> </td><td colspan="1" rowspan="1">Compute Module (RK3588S) 32/256</td><td colspan="1" rowspan="1">€233,95</td></tr><tr><td colspan="1" rowspan="1">[Turing RK1](https://turingpi.com/product/turing-rk1)</td><td colspan="1" rowspan="1">CM (RK3588) 8Gb ram</td><td colspan="1" rowspan="1">$149.00</td></tr><tr><td colspan="1" rowspan="1"> </td><td colspan="1" rowspan="1">CM (RK3588) 16Gb ram</td><td colspan="1" rowspan="1">$189.00</td></tr><tr><td colspan="1" rowspan="1"> </td><td colspan="1" rowspan="1">CM (RK3588) 32Gb ram</td><td colspan="1" rowspan="1">$299.00</td></tr></tbody></table>
|
|
||||||
|
|
||||||
</div>#### LattePanda Mu
|
|
||||||
|
|
||||||
[https://www.lattepanda.com/lattepanda-mu](https://www.lattepanda.com/lattepanda-mu)
|
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### Documentation
|
### Documentation
|
||||||
|
|||||||
111
Turing Pi/disks.md
Normal file
111
Turing Pi/disks.md
Normal file
@@ -0,0 +1,111 @@
|
|||||||
|
Disk(s)
|
||||||
|
===
|
||||||
|
|
||||||
|
#### Format and mount the disks
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo fdisk -l
|
||||||
|
|
||||||
|
**With disk <xxx>**
|
||||||
|
sudo fdisk /dev/<xxx>
|
||||||
|
(create new primary partition)
|
||||||
|
|
||||||
|
sudo mkfs -t ext4 /dev/<xxxp1>
|
||||||
|
sudo blkid -s UUID -o value /dev/<xxxp1>
|
||||||
|
```
|
||||||
|
|
||||||
|
#### If needed, check and repair the filesystem
|
||||||
|
```bash
|
||||||
|
sudo e2fsck -fDC0 /dev/sdaX
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Add mount point to fstab
|
||||||
|
```bash
|
||||||
|
sudo mkdir -p /mnt/<folder>
|
||||||
|
echo "UUID=... /mnt/<folder> ext4 defaults 0 0" | sudo tee -a /etc/fstab
|
||||||
|
```
|
||||||
|
|
||||||
|
#### bob (nvme0n1)
|
||||||
|
```
|
||||||
|
UUID=5855d1bc-99fd-41f2-9d11-7c00a1c0ad00 / ext4 defaults,x-systemd.growfs 0 1
|
||||||
|
# NVME
|
||||||
|
UUID=2423d885-a583-44d2-bd45-80d847c625b0 /mnt/data ext4 defaults 0 0
|
||||||
|
# HDD
|
||||||
|
# UUID=a4e3d8f1-11cc-482b-9596-57c44b122e48 /mnt/tmp ext4 defaults 0 0
|
||||||
|
#
|
||||||
|
/mnt/data/www /var/www auto defaults,nofail,nobootwait,bind 0 2
|
||||||
|
```
|
||||||
|
|
||||||
|
#### carlo (nvme0n1)
|
||||||
|
```
|
||||||
|
UUID=5855d1bc-99fd-41f2-9d11-7c00a1c0ad00 / ext4 defaults,x-systemd.growfs 0 1
|
||||||
|
UUID=0c85672d-0fbd-4d11-a93e-c01d1373c4c3 /mnt/docker ext4 defaults 0 0```
|
||||||
|
```
|
||||||
|
|
||||||
|
#### gary (nvme0n1) ...
|
||||||
|
```
|
||||||
|
# <file system> <mount point> <type> <options> <dump> <fsck>
|
||||||
|
UUID=1cf633ab-4f5f-42da-b347-31282732a446 / ext4 defaults,x-systemd.growfs 0 1
|
||||||
|
UUID=7f348b05-b44e-4b85-8445-657dc95e72df /mnt/data ext4 defaults 0 0
|
||||||
|
# NFS
|
||||||
|
krabs:/srv/nfs4/media /nfs/media nfs _netdev,x-systemd.automount,nofail,noatime,nolock,tcp,bg,actimeo=1800
|
||||||
|
krabs:/srv/nfs4/downloads /nfs/downloads nfs defaults
|
||||||
|
```
|
||||||
|
|
||||||
|
#### sandy (sda / nvme0n1) ...
|
||||||
|
```
|
||||||
|
# <file system> <mount point> <type> <options> <dump> <fsck>
|
||||||
|
UUID=1cf633ab-4f5f-42da-b347-31282732a446 / ext4 defaults,x-systemd.growfs 0 1
|
||||||
|
UUID=6fab06af-f38f-493a-87ab-512f52a6616c /mnt/data ext4 defaults 0 0
|
||||||
|
# NFS
|
||||||
|
krabs:/srv/nfs4/cloud /nfs/cloud nfs nofail,noatime,_netdev,actimeo=1800,x-systemd.automount,bg,nolock,tcp
|
||||||
|
krabs:/srv/nfs4/ebooks /nfs/ebooks nfs defaults
|
||||||
|
# HDD
|
||||||
|
UUID=22446d47-8d74-451e-8774-e1c8e2617b7e /mnt/hdd ext4 defaults 0 0
|
||||||
|
```
|
||||||
|
|
||||||
|
#### sheldon (sda / sdb / nvme0n1) ...
|
||||||
|
```
|
||||||
|
# <file system> <mount point> <type> <options> <dump> <fsck>
|
||||||
|
UUID=1cf633ab-4f5f-42da-b347-31282732a446 / ext4 defaults,x-systemd.growfs 0 1
|
||||||
|
# nvme
|
||||||
|
UUID=a612717e-ca95-44a3-9b10-10e6be26112f /mnt/docker ext4 defaults 0 0
|
||||||
|
# LVM
|
||||||
|
UUID=dbc636b9-e77b-4fb5-a192-a17c244857a2 /mnt/data ext4 defaults,nofail,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,acl 0 2
|
||||||
|
```
|
||||||
|
|
||||||
|
#### krabs (nfs server)
|
||||||
|
```
|
||||||
|
UUID=0c390345-ca52-45fd-9097-6e931d651a8f / ext4 defaults,x-systemd.growfs 0 1
|
||||||
|
# LVM
|
||||||
|
/dev/hdds/datas /mnt/data ext4 defaults,nofail,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,acl 0 2
|
||||||
|
# NFS exports
|
||||||
|
/mnt/data/cloud /srv/nfs4/cloud none bind,nofail 0 0
|
||||||
|
/mnt/data/media /srv/nfs4/media none bind,nofail 0 0
|
||||||
|
/mnt/data/ebooks /srv/nfs4/ebooks none bind,nofail 0 0
|
||||||
|
/mnt/data/git /srv/nfs4/git none bind,nofail 0 0
|
||||||
|
/mnt/data/photos /srv/nfs4/photos none bind,nofail 0 0
|
||||||
|
/mnt/data/media/downloads /srv/nfs4/downloads none bind,nofail 0 0
|
||||||
|
/opt/backups /srv/nfs4/backups none bind,nofail 0 0
|
||||||
|
```
|
||||||
|
|
||||||
|
#### bernie (nvme0n1) ...
|
||||||
|
|
||||||
|
```
|
||||||
|
UID=5855d1bc-99fd-41f2-9d11-7c00a1c0ad00 / ext4 defaults,x-systemd.growfs 0 1
|
||||||
|
# SSD
|
||||||
|
UUID=e8d74f7a-642a-486d-92db-d39388d1545f /mnt/docker ext4 defaults 0 0
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Check
|
||||||
|
```bash
|
||||||
|
cat /etc/fstab
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Mount disk...
|
||||||
|
```bash
|
||||||
|
sudo mount -a
|
||||||
|
sudo systemctl daemon-reload
|
||||||
|
|
||||||
|
df -h /mnt/<folder>
|
||||||
|
```
|
||||||
134
Turing Pi/glusterfs-check.sh
Normal file
134
Turing Pi/glusterfs-check.sh
Normal file
@@ -0,0 +1,134 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
LOG_FILE="/var/log/glusterfs-check.log"
|
||||||
|
STEPS=7 # Nombre total d'étapes dans le script
|
||||||
|
|
||||||
|
# Supprimer les anciens logs
|
||||||
|
if [ -f "$LOG_FILE" ]; then
|
||||||
|
rm "$LOG_FILE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Fonction de journalisation
|
||||||
|
log() {
|
||||||
|
echo "$(date) : $1" >> $LOG_FILE
|
||||||
|
}
|
||||||
|
|
||||||
|
# Fonction de progression
|
||||||
|
progress() {
|
||||||
|
local step=$1
|
||||||
|
local total=$2
|
||||||
|
local percent=$(( 100 * step / total ))
|
||||||
|
echo -ne "Progress: [${percent}%]...\r"
|
||||||
|
}
|
||||||
|
|
||||||
|
step=1
|
||||||
|
|
||||||
|
log "Script de vérification GlusterFS démarré."
|
||||||
|
progress $step $STEPS
|
||||||
|
|
||||||
|
# Vérification de l'état du service glusterd
|
||||||
|
if ! systemctl is-active --quiet glusterd; then
|
||||||
|
log "Le service glusterd n'est pas actif. Tentative de démarrage."
|
||||||
|
sudo systemctl start glusterd
|
||||||
|
if ! systemctl is-active --quiet glusterd; then
|
||||||
|
log "Échec du démarrage du service glusterd."
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
log "Service glusterd démarré avec succès."
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
log "Le service glusterd est déjà actif."
|
||||||
|
fi
|
||||||
|
|
||||||
|
step=$((step + 1))
|
||||||
|
progress $step $STEPS
|
||||||
|
|
||||||
|
# Vérification de l'état des pairs GlusterFS
|
||||||
|
peers_status=$(sudo gluster peer status | grep "Peer in Cluster" | wc -l)
|
||||||
|
|
||||||
|
if [ "$peers_status" -ne 2 ]; then
|
||||||
|
log "Tous les pairs ne sont pas en ligne. Tentative de reconnexion des pairs."
|
||||||
|
|
||||||
|
# Ajout des adresses IP de vos pairs
|
||||||
|
peers=("192.168.1.50" "192.168.1.80" "192.168.1.110")
|
||||||
|
|
||||||
|
for peer in "${peers[@]}"; do
|
||||||
|
sudo gluster peer probe $peer
|
||||||
|
done
|
||||||
|
|
||||||
|
# Revérification de l'état des pairs
|
||||||
|
peers_status=$(sudo gluster peer status | grep "Peer in Cluster" | wc -l)
|
||||||
|
|
||||||
|
if [ "$peers_status" -ne 2]; then
|
||||||
|
log "Échec de la reconnexion de tous les pairs."
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
log "Tous les pairs sont maintenant en ligne."
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
log "Tous les pairs sont en ligne."
|
||||||
|
fi
|
||||||
|
|
||||||
|
step=$((step + 1))
|
||||||
|
progress $step $STEPS
|
||||||
|
|
||||||
|
# Vérification de l'état du volume
|
||||||
|
volume_status=$(sudo gluster volume info volume_applicatif | grep "Status: Started" | wc -l)
|
||||||
|
|
||||||
|
if [ "$volume_status" -ne 1]; then
|
||||||
|
log "Le volume volume_applicatif n'est pas démarré. Tentative de démarrage."
|
||||||
|
sudo gluster volume start volume_applicatif
|
||||||
|
if [ "$?" -ne 0 ]; then
|
||||||
|
log "Échec du démarrage du volume volume_applicatif."
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
log "Volume volume_applicatif démarré avec succès."
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
log "Le volume volume_applicatif est déjà démarré."
|
||||||
|
fi
|
||||||
|
|
||||||
|
step=$((step + 1))
|
||||||
|
progress $step $STEPS
|
||||||
|
|
||||||
|
# Vérification des briques du volume
|
||||||
|
brick_status=$(sudo gluster volume status volume_applicatif detail | grep "N/A" | wc -l)
|
||||||
|
|
||||||
|
if [ "$brick_status" -ne 0 ]; then
|
||||||
|
log "Certaines briques du volume volume_applicatif ne sont pas en ligne."
|
||||||
|
# Tentative de remonter les briques
|
||||||
|
sudo gluster volume heal volume_applicatif
|
||||||
|
fi
|
||||||
|
|
||||||
|
step=$((step + 1))
|
||||||
|
progress $step $STEPS
|
||||||
|
|
||||||
|
# Vérification du montage des volumes
|
||||||
|
if mountpoint -q /mnt/montage_applicatif; then
|
||||||
|
log "Le volume GlusterFS est déjà monté."
|
||||||
|
else
|
||||||
|
log "Tentative de montage du volume GlusterFS."
|
||||||
|
sudo mount -t glusterfs 192.168.1.50:/volume_applicatif /mnt/montage_applicatif
|
||||||
|
if [ "$?" -ne 0 ]; then
|
||||||
|
log "Échec du montage des volumes GlusterFS. Tentative de diagnostic."
|
||||||
|
|
||||||
|
# Diagnostic supplémentaire
|
||||||
|
mount_output=$(sudo mount -t glusterfs 192.168.1.50:/volume_applicatif /mnt/montage_applicatif 2>&1)
|
||||||
|
log "Sortie de la commande de montage : $mount_output"
|
||||||
|
|
||||||
|
# Vérification de l'accès au volume
|
||||||
|
glusterfs_output=$(sudo gluster volume status volume_applicatif 2>&1)
|
||||||
|
log "Statut du volume GlusterFS : $glusterfs_output"
|
||||||
|
|
||||||
|
exit 1
|
||||||
|
else
|
||||||
|
log "Volumes GlusterFS montés avec succès."
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
step=$((step + 1))
|
||||||
|
progress $step $STEPS
|
||||||
|
|
||||||
|
log "Script de vérification GlusterFS terminé avec succès."
|
||||||
|
progress $STEPS $STEPS
|
||||||
|
echo ""
|
||||||
@@ -1,18 +1,63 @@
|
|||||||
# Hosts
|
Hosts
|
||||||
|
===
|
||||||
|
|
||||||
## Hosts / IPs
|
## Hosts / IPs
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo vim /etc/hosts
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
127.0.0.1 localhost
|
||||||
|
127.0.1.1 <host>.local <host>
|
||||||
|
|
||||||
|
# The following lines are desirable for IPv6 capable hosts
|
||||||
|
::1 ip6-localhost ip6-loopback
|
||||||
|
fe00::0 ip6-localnet
|
||||||
|
ff00::0 ip6-mcastprefix
|
||||||
|
ff02::1 ip6-allnodes
|
||||||
|
ff02::2 ip6-allrouters
|
||||||
|
ff02::3 ip6-allhosts
|
||||||
|
|
||||||
|
#
|
||||||
|
192.168.1.11 bob
|
||||||
|
192.168.1.12 carlo
|
||||||
|
192.168.1.13 gary
|
||||||
|
192.168.1.14 sandy
|
||||||
|
192.168.1.15 krabs
|
||||||
|
192.168.1.16 sheldon
|
||||||
|
192.168.1.17 bernie
|
||||||
|
# 192.168.1.18 pearl
|
||||||
|
|
||||||
|
#
|
||||||
|
192.168.1.53 retropie
|
||||||
|
```
|
||||||
|
|
||||||
|
### SSH
|
||||||
|
#### On remote (PC) :
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ssh-keygen -t ed25519
|
||||||
|
|
||||||
|
ssh-copy-id -f -i ~/.ssh/id_ed25519.pub pleb@192.168.1.xxx
|
||||||
|
|
||||||
|
ssh-copy-id -f -i ~/.ssh/id_ed25519.pub pleb@<hostname>
|
||||||
|
```
|
||||||
|
|
||||||
|
===
|
||||||
|
### Map
|
||||||
|
|
||||||
```markdown
|
```markdown
|
||||||
. bikiniBottom
|
. bikiniBottom
|
||||||
|
├── bob (192.168.1.11) # caddy
|
||||||
|
├── carlo (192.168.1.12) # stream
|
||||||
├── turing-pi (192.168.1.10)
|
├── turing-pi (192.168.1.10)
|
||||||
| ├── bob (192.168.1.11)
|
|
||||||
| ├── carlo (192.168.1.12)
|
|
||||||
| ├── gary (192.168.1.13)
|
| ├── gary (192.168.1.13)
|
||||||
| └── sandy (192.168.1.14)
|
| ├── sandy (192.168.1.14)
|
||||||
├── krabs (192.168.1.15)
|
| ├── sheldon (192.168.1.16)
|
||||||
├── sheldon (192.168.1.16)
|
| └── pearl (192.168.1.18) # En attente
|
||||||
├── bernie (192.168.1.17)
|
├── krabs (192.168.1.15) # nfs server
|
||||||
├── pearl (192.168.1.18) # HS
|
├── bernie (192.168.1.17) # octoprint
|
||||||
| ------------------------------
|
| ------------------------------
|
||||||
└── retropie (192.168.1.53)
|
└── retropie (192.168.1.53)
|
||||||
```
|
```
|
||||||
@@ -21,183 +66,176 @@
|
|||||||
|
|
||||||
### bob
|
### bob
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-hardware-ip-cm-rk356"><table><tbody><tr><th colspan="1" rowspan="1">Hardware</th><th colspan="1" rowspan="1">IP</th></tr><tr><td colspan="1" rowspan="1">CM RK3566 (4/32 emmc)</td><td colspan="1" rowspan="1">192.168.1.11</td></tr><tr><td colspan="1" rowspan="1">Static hostname: bob
|
```bash
|
||||||
Pretty hostname: Compute Module n° 1
|
_,met$$$$$gg. hostname: bob
|
||||||
Icon name: computer
|
,g$$$$$$$$$$$$$$$P. OS: Debian 12 bookworm
|
||||||
Machine ID: b1cb31b775024e039647ff5f6630d7ed
|
,g$$P"" """Y$$.". Kernel: aarch64 Linux 6.1.0-41-arm64
|
||||||
Boot ID: 2389279c30484c189b683e0cb42498e2
|
,$$P' `$$$. Uptime:
|
||||||
Operating System: Debian GNU/Linux 12 (bookworm)
|
',$$P ,ggs. `$$b: Packages: 619
|
||||||
Kernel: Linux 6.1.0-18-arm64
|
`d$$' ,$P"' . $$$ Shell: bash 5.2.15
|
||||||
Architecture: arm64</td><td colspan="1" rowspan="1"> </td></tr></tbody></table>
|
$$P d$' , $$P Disk: 148G
|
||||||
|
$$: $$. - ,d$$' CPU: ARM Cortex-A55 @ 4x 1.8GHz
|
||||||
|
$$\; Y$b._ _,d$P' RAM: 3737MiB
|
||||||
|
Y$$. `.`"Y$$$$P"'
|
||||||
|
`$$b "-.__
|
||||||
|
`Y$$
|
||||||
|
`Y$$.
|
||||||
|
`$$b.
|
||||||
|
`Y$$b.
|
||||||
|
`"Y$b._
|
||||||
|
`""""
|
||||||
|
|
||||||
</div>
|
```
|
||||||
|
|
||||||
#### Docker
|
|
||||||
|
|
||||||
- [Flame](https://bookstack.delmar.bzh/IT/Flame.md?fileId=12230)
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### carlo
|
### carlo
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-hardware-ip-cm-rk356-1"><table><tbody><tr><th colspan="1" rowspan="1">Hardware</th><th colspan="1" rowspan="1">IP</th></tr><tr><td colspan="1" rowspan="1">CM RK3566 (8/32 emmc)</td><td colspan="1" rowspan="1">192.168.1.12</td></tr><tr><td colspan="1" rowspan="1">Static hostname: carlo
|
```bash
|
||||||
Pretty hostname: Compute Module n° 2
|
_,met$$$$$gg. hostname: carlo
|
||||||
Icon name: computer
|
,g$$$$$$$$$$$$$$$P. OS: Debian 12 bookworm
|
||||||
Machine ID: f02bbee5724d4201b27cf1eedcf7a186
|
,g$$P"" """Y$$.". Kernel: aarch64 Linux 6.1.0-41-arm64
|
||||||
Boot ID: eeece999704d4057b5b062fb48d490cb
|
,$$P' `$$$. Uptime:
|
||||||
Operating System: Debian GNU/Linux 12 (bookworm)
|
',$$P ,ggs. `$$b: Packages: 1339
|
||||||
Kernel: Linux 6.1.0-18-arm64
|
`d$$' ,$P"' . $$$ Shell: bash 5.2.15
|
||||||
Architecture: arm64</td><td colspan="1" rowspan="1"> </td></tr></tbody></table>
|
$$P d$' , $$P Disk: 265G
|
||||||
|
$$: $$. - ,d$$' CPU: ARM Cortex-A55 @ 4x 1.8GHz
|
||||||
|
$$\; Y$b._ _,d$P' RAM: 3737MiB
|
||||||
|
Y$$. `.`"Y$$$$P"'
|
||||||
|
`$$b "-.__
|
||||||
|
`Y$$
|
||||||
|
`Y$$.
|
||||||
|
`$$b.
|
||||||
|
`Y$$b.
|
||||||
|
`"Y$b._
|
||||||
|
`""""
|
||||||
|
|
||||||
</div>
|
```
|
||||||
|
|
||||||
#### Docker
|
|
||||||
|
|
||||||
- [Penpot](https://bookstack.delmar.bzh/IT/Penpot.md?fileId=12253)
|
|
||||||
- [Gitea](https://cloud.delmar.bzh/f/97765)
|
|
||||||
- [Seatsurfing](https://bookstack.delmar.bzh/IT/Seatsurfing.md?fileId=12263)
|
|
||||||
- [Vaultwarden](https://bookstack.delmar.bzh/IT/Vaultwarden.md?fileId=12267)
|
|
||||||
- [Bookstack](https://bookstack.delmar.bzh/books/selfhosted/page/bookstack "Bookstack")
|
|
||||||
- [Home Assistant](https://bookstack.delmar.bzh/books/selfhosted/page/home-assistant "Home Assistant")
|
|
||||||
- [Paperless-ngx](https://bookstack.delmar.bzh/books/selfhosted/page/paperless-ngx "Paperless-ngx")
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### gary
|
### gary
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-hardware-ip-cm-rk358"><table><tbody><tr><th colspan="1" rowspan="1">Hardware</th><th colspan="1" rowspan="1">IP</th></tr><tr><td colspan="1" rowspan="1">CM RK3588 (16/64 emmc)</td><td colspan="1" rowspan="1">192.168.1.13</td></tr><tr><td colspan="1" rowspan="1">Static hostname: sandy
|
```bash
|
||||||
Pretty hostname: Compute Module n° 3
|
./+o+- hostname: gary
|
||||||
Icon name: computer
|
yyyyy- -yyyyyy+ OS: Ubuntu 25.10 questing
|
||||||
Machine ID: bdaf4ea1b105412ea9f7e44631adac33
|
://+//////-yyyyyyo Kernel: aarch64 Linux 6.11.0-1006-rockchip
|
||||||
Boot ID: f72153ed179c4cc2b3df1614c2f93d48
|
.++ .:/++++++/-.+sss/` Uptime:
|
||||||
Operating System: Ubuntu 22.04.4 LTS
|
.:++o: /++++++++/:--:/- Packages: 1447
|
||||||
Kernel: Linux 5.10.160-rockchip
|
o:+o+:++.`..```.-/oo+++++/ Shell: bash 5.2.37
|
||||||
Architecture: arm64</td><td colspan="1" rowspan="1">
|
.:+o:+o/. `+sssoo+/ Disk: 1TB
|
||||||
</td></tr></tbody></table>
|
.++/+:+oo+o:` /sssooo. CPU: ARM Cortex-A55 Cortex-A76 @ 8x 1.8GHz
|
||||||
</div>
|
/+++//+:`oo+o /::--:. GPU: Mali G610
|
||||||
---
|
\+/+o+++`o++o ++////. RAM: 15959MiB
|
||||||
|
.++.o+++oo+:` /dddhhh.
|
||||||
|
.+.o+oo:. `oddhhhh+
|
||||||
|
\+.++o+o``-````.:ohdhhhhh+
|
||||||
|
`:o+++ `ohhhhhhhhyo++os:
|
||||||
|
.o:`.syhhhhhhh/.oo++o`
|
||||||
|
/osyyyyyyo++ooo+++/
|
||||||
|
````` +oo+++o\:
|
||||||
|
`oo++.
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
### sandy
|
### sandy
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-hardware-ip-cm-rk358-1"><table><tbody><tr><th colspan="1" rowspan="1">Hardware</th><th colspan="1" rowspan="1">IP</th></tr><tr><td colspan="1" rowspan="1">CM RK3588 (8/32 emmc)</td><td colspan="1" rowspan="1">192.168.1.14</td></tr><tr><td colspan="1" rowspan="1">Static hostname: sandy
|
```bash
|
||||||
Pretty hostname: Compute Module n° 4
|
./+o+- hostname: sandy
|
||||||
Icon name: computer
|
yyyyy- -yyyyyy+ OS: Ubuntu 25.10 questing
|
||||||
Machine ID: bdaf4ea1b105412ea9f7e44631adac33
|
://+//////-yyyyyyo Kernel: aarch64 Linux 6.11.0-1006-rockchip
|
||||||
Boot ID: f72153ed179c4cc2b3df1614c2f93d48
|
.++ .:/++++++/-.+sss/` Uptime:
|
||||||
Operating System: Ubuntu 22.04.4 LTS
|
.:++o: /++++++++/:--:/- Packages: 1262
|
||||||
Kernel: Linux 5.10.160-rockchip
|
o:+o+:++.`..```.-/oo+++++/ Shell: bash 5.2.37
|
||||||
Architecture: arm64</td><td colspan="1" rowspan="1"> </td></tr></tbody></table>
|
.:+o:+o/. `+sssoo+/ Disk: 1TB / 1TB
|
||||||
</div>
|
.++/+:+oo+o:` /sssooo. CPU: ARM Cortex-A55 Cortex-A76 @ 8x 1.8GHz
|
||||||
|
/+++//+:`oo+o /::--:. RAM: 7929MiB
|
||||||
#### NFS
|
\+/+o+++`o++o ++////.
|
||||||
|
.++.o+++oo+:` /dddhhh.
|
||||||
|
.+.o+oo:. `oddhhhh+
|
||||||
|
\+.++o+o``-````.:ohdhhhhh+
|
||||||
|
`:o+++ `ohhhhhhhhyo++os:
|
||||||
|
.o:`.syhhhhhhh/.oo++o`
|
||||||
|
/osyyyyyyo++ooo+++/
|
||||||
|
````` +oo+++o\:
|
||||||
|
`oo++.
|
||||||
```
|
```
|
||||||
/etc/fstab
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
krabs:/export/media /nfs/media nfs _netdev,x-systemd.automount,noauto,nofail,noatime,nolock,tcp,bg,actimeo=1800 0 0
|
|
||||||
```
|
|
||||||
|
|
||||||
#### Docker
|
|
||||||
|
|
||||||
- [Nextcloud](https://bookstack.delmar.bzh/IT/Nextcloud.md?fileId=12247)
|
|
||||||
- [Stirling PDF](https://bookstack.delmar.bzh/books/selfhosted/page/stirling-pdf "Stirling PDF")
|
|
||||||
- [Calibre](https://bookstack.delmar.bzh/IT/Calibre.md?fileId=12223)
|
|
||||||
- [Jellyfin / Jellyseerr](https://bookstack.delmar.bzh/IT/Jellyfin%20%26%20Jellyseerr%20(sandy).md?fileId=12236)
|
|
||||||
|
|
||||||
#### VPN
|
|
||||||
|
|
||||||
- [Proton VPN](https://bookstack.delmar.bzh/Proton%20VPN.md?fileId=55975)
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### krabs ([NFS Server](https://bookstack.delmar.bzh/books/turing-pi/page/nfs-server "NFS Server"))
|
### krabs ([NFS Server](https://bookstack.delmar.bzh/books/turing-pi/page/nfs-server "NFS Server"))
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-hardware-ip-cm-rk356-3"><table><tbody><tr><th colspan="1" rowspan="1">Hardware</th><th colspan="1" rowspan="1">IP</th></tr><tr><td colspan="1" rowspan="1">CM RK3566 (4/32 emmc)</td><td colspan="1" rowspan="1">192.168.1.15</td></tr><tr><td colspan="1" rowspan="1">Static hostname: krabs
|
```bash
|
||||||
Pretty hostname: NFS Server
|
_,met$$$$$gg. hostname: krabs
|
||||||
Icon name: computer
|
,g$$$$$$$$$$$$$$$P. OS: Debian 12 bookworm
|
||||||
Machine ID: 723d4f09b6db47a282ff51544a27f6fb
|
,g$$P"" """Y$$.". Kernel: aarch64 Linux 6.1.0-41-arm64
|
||||||
Boot ID: 9c008d0c84e04bf9a69fa713a83adfcb
|
,$$P' `$$$. Uptime:
|
||||||
Operating System: Debian GNU/Linux 12 (bookworm)
|
',$$P ,ggs. `$$b: Packages: 585
|
||||||
Kernel: Linux 6.1.0-18-arm64
|
`d$$' ,$P"' . $$$ Shell: bash 5.2.15
|
||||||
Architecture: arm64</td><td colspan="1" rowspan="1"> </td></tr></tbody></table>
|
$$P d$' , $$P Disk: 7.2TB
|
||||||
</div>
|
$$: $$. - ,d$$' CPU: ARM Cortex-A55 @ 4x 1.8GHz
|
||||||
|
$$\; Y$b._ _,d$P' RAM: 7690MiB
|
||||||
|
Y$$. `.`"Y$$$$P"'
|
||||||
|
`$$b "-.__
|
||||||
|
`Y$$
|
||||||
|
`Y$$.
|
||||||
|
`$$b.
|
||||||
|
`Y$$b.
|
||||||
|
`"Y$b._
|
||||||
|
`""""
|
||||||
```
|
```
|
||||||
sudo apt -y install nfs-kernel-server
|
|
||||||
|
|
||||||
sudo vim /etc/exports
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
/export 192.168.1.0/24(rw,no_root_squash,no_subtree_check)
|
|
||||||
/export/media 192.168.1.0/24(rw,no_root_squash,subtree_check,insecure)
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
sudo vim /etc/fstab
|
|
||||||
```
|
|
||||||
|
|
||||||
```
|
|
||||||
# LVM
|
|
||||||
/dev/disk/by-uuid/a67ae390-f36c-4b7c-98a0-4a3b5601c107 /mnt/data ext4 defaults,nofail,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,acl 0 2
|
|
||||||
|
|
||||||
# NFS
|
|
||||||
/mnt/data/media/ /export/media none bind,nofail 0 0
|
|
||||||
```
|
|
||||||
|
|
||||||
#### Docker
|
|
||||||
|
|
||||||
- [Zipline](https://bookstack.delmar.bzh/books/selfhosted/page/zipline "Zipline")
|
|
||||||
|
|
||||||
---
|
|
||||||
|
|
||||||
### sheldon
|
### sheldon
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-hardware-ip-odroid-h"><table><tbody><tr><th colspan="1" rowspan="1">Hardware</th><th colspan="1" rowspan="1">IP</th></tr><tr><td colspan="1" rowspan="1">Odroid HC4 (4/256 M2 SSD)</td><td colspan="1" rowspan="1">192.168.1.16</td></tr><tr><td colspan="1" rowspan="1">Static hostname: sheldon
|
```bash
|
||||||
Pretty hostname: The Venerable
|
./+o+- hostname: sheldon
|
||||||
Icon name: computer
|
yyyyy- -yyyyyy+ OS: Ubuntu 25.10 questing
|
||||||
Machine ID: df84154b596a409fbdc89e877f1f3ed0
|
://+//////-yyyyyyo Kernel: aarch64 Linux 6.11.0-1006-rockchip
|
||||||
Boot ID: e4911ef2b66f4f53b8ac6ae244d6ad44
|
.++ .:/++++++/-.+sss/` Uptime:
|
||||||
Operating System: Debian GNU/Linux 12 (bookworm)
|
.:++o: /++++++++/:--:/- Packages: 1053
|
||||||
Kernel: Linux 6.1.0-odroid-arm64
|
o:+o+:++.`..```.-/oo+++++/ Shell: bash 5.2.37
|
||||||
Architecture: arm64</td><td colspan="1" rowspan="1"> </td></tr></tbody></table>
|
.:+o:+o/. `+sssoo+/ Disk: 1TB / 1.8TB
|
||||||
</div>
|
.++/+:+oo+o:` /sssooo. CPU: ARM Cortex-A55 Cortex-A76 @ 8x 1.8GHz
|
||||||
|
/+++//+:`oo+o /::--:. RAM: 15959MiB
|
||||||
#### Docker
|
\+/+o+++`o++o ++////.
|
||||||
|
.++.o+++oo+:` /dddhhh.
|
||||||
---
|
.+.o+oo:. `oddhhhh+
|
||||||
|
\+.++o+o``-````.:ohdhhhhh+
|
||||||
|
`:o+++ `ohhhhhhhhyo++os:
|
||||||
|
.o:`.syhhhhhhh/.oo++o`
|
||||||
|
/osyyyyyyo++ooo+++/
|
||||||
|
````` +oo+++o\:
|
||||||
|
`oo++.
|
||||||
|
```
|
||||||
|
|
||||||
### bernie
|
### bernie
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-hardware-ip-cm-rk356-2"><table><tbody><tr><th colspan="1" rowspan="1">Hardware</th><th colspan="1" rowspan="1">IP</th></tr><tr><td colspan="1" rowspan="1">CM RK3566 (4/32 emmc)</td><td colspan="1" rowspan="1">192.168.1.17</td></tr><tr><td colspan="1" rowspan="1">Static hostname: bernie
|
```bash
|
||||||
Pretty hostname:
|
_,met$$$$$gg. hostname: bernie
|
||||||
Icon name: computer
|
,g$$$$$$$$$$$$$$$P. OS: Debian 12 bookworm
|
||||||
Machine ID:
|
,g$$P"" """Y$$.". Kernel: aarch64 Linux 6.1.0-41-arm64
|
||||||
Boot ID:
|
,$$P' `$$$. Uptime:
|
||||||
Operating System: Debian GNU/Linux 12 (bookworm)
|
',$$P ,ggs. `$$b: Packages: 988
|
||||||
Kernel:
|
`d$$' ,$P"' . $$$ Shell: bash 5.2.15
|
||||||
Architecture: arm64</td><td colspan="1" rowspan="1"> </td></tr></tbody></table>
|
$$P d$' , $$P Disk: 265G
|
||||||
</div>
|
$$: $$. - ,d$$' CPU: ARM Cortex-A55 @ 4x 1.8GHz
|
||||||
|
$$\; Y$b._ _,d$P' RAM: 3737MiB
|
||||||
|
Y$$. `.`"Y$$$$P"'
|
||||||
|
`$$b "-.__
|
||||||
|
`Y$$
|
||||||
|
`Y$$.
|
||||||
|
`$$b.
|
||||||
|
`Y$$b.
|
||||||
|
`"Y$b._
|
||||||
|
`""""
|
||||||
|
```
|
||||||
|
|
||||||
#### Docker
|
## Upcoming
|
||||||
|
|
||||||
- [Octoprint](https://bookstack.delmar.bzh/books/selfhosted/page/octoprint "Octoprint")
|
### patrick
|
||||||
|
|
||||||
|
```bash
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
### pearl
|
### pearl
|
||||||
|
|
||||||
<div class="table-wrapper" id="bkmrk-hardware-ip-cm-rk356-4"><table><tbody><tr><th colspan="1" rowspan="1">Hardware</th><th colspan="1" rowspan="1">IP</th></tr><tr><td colspan="1" rowspan="1">CM RK3566 (4/32 emmc)</td><td colspan="1" rowspan="1">192.168.1.18</td></tr><tr><td colspan="1" rowspan="1">Static hostname: bernie
|
```bash
|
||||||
Pretty hostname:
|
|
||||||
Icon name: computer
|
|
||||||
Machine ID:
|
|
||||||
Boot ID:
|
|
||||||
Operating System: Debian GNU/Linux 12 (bookworm)
|
|
||||||
Kernel:
|
|
||||||
Architecture: arm64</td><td colspan="1" rowspan="1"> </td></tr></tbody></table>
|
|
||||||
|
|
||||||
</div>
|
```
|
||||||
|
|
||||||
#### Docker
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@
|
|||||||
sudo vim /etc/hosts
|
sudo vim /etc/hosts
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash
|
```conf
|
||||||
127.0.0.1 localhost
|
127.0.0.1 localhost
|
||||||
127.0.1.1 <hostname>.local <hostname>
|
127.0.1.1 <hostname>.local <hostname>
|
||||||
|
|
||||||
@@ -42,6 +42,79 @@ ff02::3 ip6-allhosts
|
|||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Broadcom (WiFi)
|
||||||
|
|
||||||
|
Réf. : [https://wiki.debian.org/WiFi/HowToUse](https://wiki.debian.org/WiFi/HowToUse)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /lib/firmware/brcm/
|
||||||
|
ln -s brcmfmac43455-sdio.AW-CM256SM.txt brcmfmac43455-sdio.pine64,rockpro64-v2.0.txt
|
||||||
|
ln -s brcmfmac43455-sdio.AW-CM256SM.txt brcmfmac43455-sdio.pine64,rockpro64-v2.1.txt
|
||||||
|
|
||||||
|
sudo rmmod brcmfmac
|
||||||
|
sudo modprobe brcmfmac
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo vim /etc/systemd/network/25-wlan.network
|
||||||
|
```
|
||||||
|
|
||||||
|
```systemd
|
||||||
|
[Match]
|
||||||
|
Name=wlan0
|
||||||
|
|
||||||
|
[Network]
|
||||||
|
DHCP=ipv4
|
||||||
|
|
||||||
|
[DHCP]
|
||||||
|
UseDNS=yes
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo vim /etc/network/interfaces.d/local
|
||||||
|
```
|
||||||
|
|
||||||
|
```conf
|
||||||
|
# The loopback network interface
|
||||||
|
auto lo
|
||||||
|
iface lo inet loopback
|
||||||
|
|
||||||
|
# The primary network interface
|
||||||
|
# allow-hotplug end0
|
||||||
|
auto wlan0
|
||||||
|
iface wlan0 inet static
|
||||||
|
address 192.168.1.xx
|
||||||
|
netmask 255.255.255.0
|
||||||
|
gateway 192.168.1.254
|
||||||
|
dns-nameservers 45.90.28.0
|
||||||
|
dns-nameservers 45.90.30.0
|
||||||
|
|
||||||
|
# This is an autoconfigured IPv6 interface
|
||||||
|
iface end0 inet6 auto
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo vim /etc/wpa_supplicant/wpa_supplicant-wlan0.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
```conf
|
||||||
|
ctrl_interface=DIR=/run/wpa_supplicant GROUP=netdev
|
||||||
|
update_config=1
|
||||||
|
|
||||||
|
network={
|
||||||
|
ssid="BikiniBottom"
|
||||||
|
#psk="transatlantique"
|
||||||
|
psk=e5b692f43ab186494b7f37949d9084e1c0e97fd74d8f14a6325be2e62309067e
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo systemctl enable --now wpa_supplicant@wlan0.service
|
||||||
|
|
||||||
|
sudo su -l -c "systemctl enable --now systemd-networkd"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Ethernet
|
||||||
#### Debian
|
#### Debian
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -59,7 +132,7 @@ source /etc/network/interfaces.d/*
|
|||||||
sudo vim /etc/network/interfaces.d/local
|
sudo vim /etc/network/interfaces.d/local
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash
|
```conf
|
||||||
# The loopback network interface
|
# The loopback network interface
|
||||||
auto lo
|
auto lo
|
||||||
iface lo inet loopback
|
iface lo inet loopback
|
||||||
@@ -68,13 +141,15 @@ iface lo inet loopback
|
|||||||
# allow-hotplug end0
|
# allow-hotplug end0
|
||||||
auto end0
|
auto end0
|
||||||
iface end0 inet static
|
iface end0 inet static
|
||||||
address 192.168.1.12
|
address 192.168.1.xx
|
||||||
netmask 255.255.255.0
|
netmask 255.255.255.0
|
||||||
gateway 192.168.1.254
|
gateway 192.168.1.254
|
||||||
dns-nameservers 1.1.1.1
|
dns-nameservers 45.90.28.0
|
||||||
dns-nameservers 1.0.0.1
|
dns-nameservers 45.90.30.0
|
||||||
|
|
||||||
# This is an autoconfigured IPv6 interface
|
# This is an autoconfigured IPv6 interface
|
||||||
# iface end0 inet6 auto
|
iface end0 inet6 auto
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -95,14 +170,28 @@ network:
|
|||||||
end0:
|
end0:
|
||||||
dhcp4: no
|
dhcp4: no
|
||||||
addresses:
|
addresses:
|
||||||
- 192.168.1.13/24
|
- 192.168.1.xx/24
|
||||||
routes:
|
routes:
|
||||||
- to: default
|
- to: default
|
||||||
via: 192.168.1.254
|
via: 192.168.1.254
|
||||||
nameservers:
|
nameservers:
|
||||||
addresses: [1.1.1.1, 1.0.0.1]
|
addresses: [45.90.28.0, 45.90.30.0]
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo netplan apply
|
sudo netplan apply
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### DNS Servers
|
||||||
|
|
||||||
|
| DNS | Adresses IPv4 | Adresses IPv6 |
|
||||||
|
| --- | --- | --- |
|
||||||
|
| 1 [**Cloudflare 1.1.1.1**] | 1.1.1.1<br />1.0.0.1 | 2606:4700:4700::1111<br />2606:4700:4700::1001 |
|
||||||
|
| 2 [Cisco OpenDNS Home](https://www.opendns.com/) | 208.67.222.222<br />208.67.220.220 | 2620:119:35::35<br />2620:119:53::53 |
|
||||||
|
| 3 [Neustar UltraDNS Public](https://www.publicdns.neustar/) | 64.6.64.6<br />64.6.65.6 | 2620:74:1b::1:1<br />2620:74:1c::2:2 |
|
||||||
|
| 4 [NextDNS](https://nextdns.io/fr) | 45.90.28.0<br />45.90.30.0 | 2a07:a8c0::<br />2a07:a8c1::|
|
||||||
|
| 5 [Google Public DNS](https://developers.google.com/speed/public-dns) | 8.8.8.8<br />8.8.4.4 | 2001:4860:4860::8888<br />2001:4860:4860::8844 |
|
||||||
|
| 6 [**Quad9**](https://www.quad9.net/) | 9.9.9.9<br />149.112.112.112 | 2620:fe::fe, 2620:fe::9 |
|
||||||
|
| 7 [Comodo Secure DNS](https://www.comodo.com/secure-dns/) | 8.26.56.26<br />8.20.247.20 | – |
|
||||||
|
| 8 [Yandex.DNS](https://dns.yandex.com/ ) | 77.88.8.8<br />77.88.8.1 | 2a02:6b8::feed:0ff<br />2a02:6b8:0:1::feed:0ff |
|
||||||
|
| 9 [SafeDNS](https://www.safedns.com/fr/) | 195.46.39.39<br />195.46.39.40 | 2001:67c:2778::3939<br />2001:67c:2778::3940 |
|
||||||
|
|||||||
@@ -53,7 +53,7 @@ vgcreate hdds /dev/sdb /dev/sdc
|
|||||||
#### Logical Volume(s)
|
#### Logical Volume(s)
|
||||||
|
|
||||||
```
|
```
|
||||||
lvcreate -L 100%FREE -n datas hdds
|
lvcreate --extents 100%FREE -n datas hdds
|
||||||
```
|
```
|
||||||
|
|
||||||
```
|
```
|
||||||
@@ -134,6 +134,12 @@ Read ahead sectors auto
|
|||||||
Block device 254:0
|
Block device 254:0
|
||||||
```
|
```
|
||||||
|
|
||||||
|
#### Format LV
|
||||||
|
```bash
|
||||||
|
sudo mkfs.ext4 /dev/hdds/datas
|
||||||
|
```
|
||||||
|
|
||||||
|
### NFS
|
||||||
```
|
```
|
||||||
# mkdir -p /mnt/data/cloud
|
# mkdir -p /mnt/data/cloud
|
||||||
# mkdir -p /mnt/data/gitea
|
# mkdir -p /mnt/data/gitea
|
||||||
@@ -178,12 +184,17 @@ sudo vim /etc/fstab
|
|||||||
|
|
||||||
```
|
```
|
||||||
# LVM
|
# LVM
|
||||||
UUID=a67ae390-f36c-4b7c-98a0-4a3b5601c107 /mnt/data ext4 defaults,nofail,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,acl 0 2
|
UUID=0c390345-ca52-45fd-9097-6e931d651a8f / ext4 defaults,x-systemd.growfs 0 1
|
||||||
# NFS
|
# LVM
|
||||||
/mnt/data/cloud /export/cloud none bind,nofail 0 0
|
/dev/hdds/datas /mnt/data ext4 defaults,nofail,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,acl 0 2
|
||||||
/mnt/data/gitea /export/gitea none bind,nofail 0 0
|
# NFS exports
|
||||||
/mnt/data/jellystack /export/jellystack none bind,nofail 0 0
|
/mnt/data/cloud /srv/nfs4/cloud none bind,nofail 0 0
|
||||||
/mnt/data/media /export/media none bind,nofail 0 0
|
/mnt/data/media /srv/nfs4/media none bind,nofail 0 0
|
||||||
|
/mnt/data/ebooks /srv/nfs4/ebooks none bind,nofail 0 0
|
||||||
|
/mnt/data/git /srv/nfs4/git none bind,nofail 0 0
|
||||||
|
/mnt/data/photos /srv/nfs4/photos none bind,nofail 0 0
|
||||||
|
/mnt/data/downloads /srv/nfs4/downloads none bind,nofail 0 0
|
||||||
|
/opt/backups /srv/nfs4/backups none bind,nofail 0 0
|
||||||
```
|
```
|
||||||
|
|
||||||
**PS : Check the content of /var/lib/nfs/etab to show NFS shares list and all the applied permission details**
|
**PS : Check the content of /var/lib/nfs/etab to show NFS shares list and all the applied permission details**
|
||||||
@@ -193,10 +204,14 @@ cat /var/lib/nfs/etab
|
|||||||
```
|
```
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
/export/media 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
/srv/nfs4 192.168.1.0/24(rw,sync,no_subtree_check,crossmnt,fsid=0)
|
||||||
/export/jellystack 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
/srv/nfs4/cloud 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
/export/gitea 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
/srv/nfs4/media 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
/export/cloud 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
/srv/nfs4/ebooks 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/git 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/photos 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/downloads 192.168.1.0/24(rw,sync,wdelay,hide,nocrossmnt,insecure,no_root_squash,no_all_squash,subtree_check,secure_locks,acl,no_pnfs,anonuid=65534,anongid=65534,sec=sys,rw,insecure,no_root_squash,no_all_squash)
|
||||||
|
/srv/nfs4/backups 192.168.1.0/24(ro,sync,no_subtree_check)
|
||||||
```
|
```
|
||||||
|
|
||||||
#### Client(s)
|
#### Client(s)
|
||||||
@@ -213,10 +228,10 @@ sudo vim /etc/fstab
|
|||||||
```
|
```
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
krabs:/export/cloud /nfs/media nfs _netdev,x-systemd.automount,noauto,nofail,noatime,nolock,tcp,bg,actimeo=1800 0 0
|
krabs:/srv/nfs4/cloud /nfs/media nfs _netdev,x-systemd.automount,noauto,nofail,noatime,nolock,tcp,bg,actimeo=1800 0 0
|
||||||
krabs:/export/gitea /nfs/gitea nfs _netdev,x-systemd.automount,noauto,nofail,noatime,nolock,tcp,bg,actimeo=1800 0 0
|
krabs:/srv/nfs4/git /nfs/git nfs _netdev,x-systemd.automount,noauto,nofail,noatime,nolock,tcp,bg,actimeo=1800 0 0
|
||||||
krabs:/export/jellystack /nfs/jellystack nfs _netdev,x-systemd.automount,noauto,nofail,noatime,nolock,tcp,bg,actimeo=1800 0 0
|
krabs:/srv/nfs4/media /nfs/media nfs _netdev,x-systemd.automount,noauto,nofail,noatime,nolock,tcp,bg,actimeo=1800 0 0
|
||||||
krabs:/export/media /nfs/media nfs _netdev,x-systemd.automount,noauto,nofail,noatime,nolock,tcp,bg,actimeo=1800 0 0
|
krabs:/srv/nfs4/ebooks /nfs/ebooks nfs _netdev,x-systemd.automount,noauto,nofail,noatime,nolock,tcp,bg,actimeo=1800 0 0
|
||||||
```
|
```
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -226,4 +241,4 @@ sudo mount /nfs/jellystack
|
|||||||
sudo mount /nfs/media
|
sudo mount /nfs/media
|
||||||
|
|
||||||
sudo systemctl daemon-reload
|
sudo systemctl daemon-reload
|
||||||
```
|
```
|
||||||
|
|||||||
62
Turing Pi/odroid-hc4.md
Normal file
62
Turing Pi/odroid-hc4.md
Normal file
@@ -0,0 +1,62 @@
|
|||||||
|
Odroid HC4
|
||||||
|
===
|
||||||
|
|
||||||
|
[](https://bookstack.delmar.bzh/uploads/images/gallery/2024-05/4kugAUKiY1KhcIBa-hc4-board.webp)
|
||||||
|
|
||||||
|
##### Specifications
|
||||||
|
|
||||||
|
<div class="level2" id="bkmrk-form-factor-board-di"><div class="table-responsive"><table class="inline table table-striped table-bordered table-hover table-condensed"><tbody><tr class="row0"><th class="col0 leftalign">Form Factor</th><td class="col1 leftalign">Board Dimensions: 84mm x 90.5mm x 25.0mm
|
||||||
|
Heatsink Dimensions: 40mm x 32mm x 10mm
|
||||||
|
Weight: 280g including heatsink, fan and case</td></tr><tr class="row1"><th class="col0 leftalign">Processor</th><td class="col1 leftalign">Amlogic S905X3 Processor
|
||||||
|
L1 instruction cache: 32 KB, 4-way set associative (128 sets), 64 byte lines, shared by 1 processor
|
||||||
|
L1 data cache: 32 KB, 4-way set associative (128 sets), 64 byte lines, shared by 1 processor
|
||||||
|
L3 data cache: 512KB , 16-way set associative (512 sets), 64 byte lines, shared by 4 processors
|
||||||
|
|
||||||
|
Quad-Core Cortex-A55 (1.800GHz)
|
||||||
|
ARMv8-A architecture with Neon and Crypto extensions
|
||||||
|
Mali-G31 MP2 GPU with 4 x Execution Engines (650Mhz)</td></tr><tr class="row2"><th class="col0 leftalign">Memory</th><td class="col1 leftalign">DDR4 4GiB with 32-bit bus width
|
||||||
|
Data rate: 2640 MT/s (PC4-21333 grade)
|
||||||
|
1.2Volt low power design</td></tr><tr class="row3"><th class="col0 leftalign">Storage</th><td class="col1 leftalign">1x Micro SD slot (DS/HS mode up to UHS-I SDR104)</td></tr><tr class="row4"><th class="col0 leftalign">Networking</th><td class="col1 leftalign">1 x GbE <abbr data-original-title="Local Area Network" title="">LAN</abbr> ports (RJ45, supports 10/100/1000 Mbps)
|
||||||
|
- Realtek RTL8211F (Ethernet transceiver)
|
||||||
|
- LED indicators
|
||||||
|
\* Green LED: Flashing by data traffics at 100Mbps connection
|
||||||
|
\* Amber LED: Flashing by data traffics at 1000Mbps connection</td></tr><tr class="row5"><th class="col0 leftalign">Video</th><td class="col1 leftalign">1 x HDMI 2.0 (up to 4K@60Hz with HDR, CEC, EDID)
|
||||||
|
Although the +5V Power pin is able to supply a mininum of 300mA, a sink shall not draw more than 50mA of current from the +5V Power pin.</td></tr><tr class="row6"><th class="col0 leftalign">Audio</th><td class="col1 leftalign">1 x HDMI digital output</td></tr><tr class="row7"><th class="col0 leftalign">Cooler</th><td class="col1 leftalign">1 x Passive heatsink ( 40x32x10 mm ) on the CPU of PCB board
|
||||||
|
1 x Hydraulic Bearing FAN
|
||||||
|
- Rated Voltage : 5V
|
||||||
|
- Rated Current : 100mA
|
||||||
|
- Max Speed RPM : 4,000
|
||||||
|
- Air Flow CFM : 4.3
|
||||||
|
- Air Pressure (In H2O) : 0.053
|
||||||
|
- Noise Level(dBA) : 23.9
|
||||||
|
- Dimension : 40 x 40 x 10.6 mm
|
||||||
|
- Wire & Connector : 80mm, 4 pin 1.25mm pitch</td></tr><tr class="row8"><th class="col0 leftalign">External I/O</th><td class="col1 leftalign">1 x USB 2.0 host port
|
||||||
|
1 x Debug serial console (UART)
|
||||||
|
2 x SATA Connectors</td></tr><tr class="row9"><th class="col0 leftalign">Other features</th><td class="col1 leftalign">IR receiver for remote controller
|
||||||
|
System LED Indicators:
|
||||||
|
- Red (POWER) – Solid light when DC power is connected
|
||||||
|
- Blue (ALIVE) – Flashing like heartbeat while Kernel is running. Solid On in the u-boot stage. Turns off if there is no bootable media.
|
||||||
|
- Red (HDD/SSD active) - Flashing while SATA HDD/SSD are reading or writing.</td></tr><tr class="row10"><th class="col0 leftalign">Power</th><td class="col1 leftalign">1 x DC jack : outer (negative) diameter 5.5mm, inner (positive) diameter 2.1mm
|
||||||
|
DC input : 14.5V ~ 15.5V
|
||||||
|
\- DC 15V/4A power adapter is recommended
|
||||||
|
Power consumption with two ST2000DM006 HDDs :
|
||||||
|
\- IDLE(with HDD in spin-down) : ≃ 5.88W
|
||||||
|
\- Active(using SAMBA): ≃ 15.59W
|
||||||
|
\- Suspend: ≃ 0.29W
|
||||||
|
|
||||||
|
</td></tr></tbody></table>
|
||||||
|
|
||||||
|
</div></div>##### Setup
|
||||||
|
|
||||||
|
> sheldon (192.168.1.16)
|
||||||
|
> pleb/transatlantique
|
||||||
|
|
||||||
|
```
|
||||||
|
Choose "Exit to shell"
|
||||||
|
(switch to console then)
|
||||||
|
# netboot_default
|
||||||
|
# exit
|
||||||
|
(back to petiboot menu)
|
||||||
|
```
|
||||||
|
|
||||||
|
> Choose OS from the net install-able" image list...
|
||||||
66
Turing Pi/webcam.md
Normal file
66
Turing Pi/webcam.md
Normal file
@@ -0,0 +1,66 @@
|
|||||||
|
Webcam
|
||||||
|
===
|
||||||
|
|
||||||
|
### (carlo)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
echo 'deb http://download.opensuse.org/repositories/hardware:/razer/Debian_12/ /' | sudo tee /etc/apt/sources.list.d/hardware:razer.list
|
||||||
|
curl -fsSL https://download.opensuse.org/repositories/hardware:razer/Debian_12/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/hardware_razer.gpg > /dev/null
|
||||||
|
sudo apt update
|
||||||
|
sudo apt install usbutils openrazer-meta vlc
|
||||||
|
|
||||||
|
lsusb | grep '1532:'
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
Bus 001 Device 004: ID 1532:0e06 Razer USA, Ltd Razer Kiyo X
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cvlc v4l2:///dev/video3
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo vim /usr/share/camera-streamer/examples/camera-streamer-generic-usb-cam.service
|
||||||
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
[Unit]
|
||||||
|
Description=camera-streamer web camera for USB camera on Generic platform
|
||||||
|
After=network.target
|
||||||
|
ConditionPathExistsGlob=/dev/v4l/by-id/usb-*-video-index0
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
ExecStart=/usr/bin/camera-streamer \
|
||||||
|
-camera-path=/dev/video3 \
|
||||||
|
-camera-format=JPEG \
|
||||||
|
-camera-width=1920 -camera-height=1080 \
|
||||||
|
-camera-fps=30 \
|
||||||
|
; use two memory buffers to optimise usage
|
||||||
|
-camera-nbufs=3 \
|
||||||
|
--http-listen=0.0.0.0 \
|
||||||
|
--http-port=8080 \
|
||||||
|
; disable video streaming (WebRTC, RTSP, H264)
|
||||||
|
; on non-supported platforms
|
||||||
|
-camera-video.disabled
|
||||||
|
|
||||||
|
DynamicUser=yes
|
||||||
|
SupplementaryGroups=video i2c
|
||||||
|
Restart=always
|
||||||
|
RestartSec=10
|
||||||
|
Nice=10
|
||||||
|
IOSchedulingClass=idle
|
||||||
|
IOSchedulingPriority=7
|
||||||
|
CPUWeight=20
|
||||||
|
AllowedCPUs=1-2
|
||||||
|
MemoryMax=250M
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
sudo systemctl enable /usr/share/camera-streamer/examples/camera-streamer-generic-usb-cam.service
|
||||||
|
sudo systemctl start camera-streamer-generic-usb-cam.service
|
||||||
|
```
|
||||||
|
|
||||||
BIN
bikiniBottom.webp
Normal file
BIN
bikiniBottom.webp
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 68 KiB |
Reference in New Issue
Block a user