Restore db for owncloud/server

What if you are running docker version of own cloud server based on https://doc.owncloud.com/server/10.8/admin_manual/installation/docker/ and you need to restore db content from backup?

I found nothing while searching for it – so I had to find it out by myself.

I did as follows:

  1. stop all owncloud services: docker-compose down
  2. remove MariaDB whole content: rm -rf /share/Container/container-station-data/lib/docker/volumes/owncloud-server_mysql/_data/*
  3. start db service alone: docker-compose up -d db
  4. exec bash in db service: docker-compose exec db bash
  5. restore db: zcat /var/lib/backup/backup.1/owncloud.sql.gz | mysql db -u dbuser -p; exit
  6. stop db service: docker-compose down
  7. start all services: docker-compose up -d
  8. follow owncloud db restore process: docker-compose exec own cloud occ maintenance:mode --on; docker-compose exec own cloud occ maintenance:data-fingerprint; docker-compose exec own cloud occ maintenance:mode --off

That’s all folks! I hope it will help someone.

freedns-txt – fajny dodatek do certbot’a z wildcard SSL cert z letsencrypt.org

O ile używasz freedns.42.pl i masz zamiar używać certyifikat wildcard CA cert z letsenrypt.org to opisywany przeze mnie skrypt może Ci się przydać.

Jakiś czas temu opublikowałem na na github’e autorski skrypt, który można w bardzo łatwy sposób użyć w połączeniu z certbot’em. Co prawda certbot, którego używam jest odpalany w docker’ze, ale to nie przeszkadza by to samo zrobić dla pakietu zainstalowanego na natywnym systemie operacyjnym.

Opis autorskiego pakietu został dołączony do kodu, ale zacytuję go także tutaj. Kod znajduje się pod adresem github.com/bibiak1/freedns-txt i należy go oczywiście pod siebie przygotować.

Po pierwsze dla swojej domeny musisz użyć ręcznej autentykacji jednocześnie wskazując na skrypt, który ma się zając resztą:

authenticator = manual
manual_auth_hook = /etc/letsencrypt/test

następnie przygotowujesz skrypt (u mnie dla docker’a) – w przykładzie /etc/letsencrypt/test:

apk update
apk add py3-urllib3 py3-lxml bind-tools
ln -s /usr/lib/python3.8/site-packages/lxml /usr/local/lib/python3.8/site-packages/

DNS1=fns1.42.pl
DNS2=fns2.42.pl
COUNT=100
SLEEP=60
OUTFILE=/etc/letsencrypt/test.out

echo "${CERTBOT_DOMAIN} _acme-challenge TXT ${CERTBOT_VALIDATION}" > ${OUTFILE}
python3 /etc/letsencrypt/freedns-txt.py -a -v "${CERTBOT_VALIDATION}" >> ${OUTFILE}
echo "start checking... (up to ${COUNT} * ${SLEEP}sec)" >> ${OUTFILE}
C=0; while [ ${C} -lt ${COUNT} -a -z "`host -t txt _acme-challenge.${CERTBOT_DOMAIN} ${DNS1} | grep ${CERTBOT_VALIDATION}`" -a -z "`host -t txt _acme-challenge.${CERTBOT_DOMAIN} ${DNS2} | grep ${CERTBOT_VALIDATION}`" ]; do echo -n ${C}... >> ${OUTFILE}; sleep ${SLEEP}; C=$(( C+1 )); done
echo >> ${OUTFILE}
(host -t txt _acme-challenge.${CERTBOT_DOMAIN} ${DNS1}; host -t txt _acme-challenge.${CERTBOT_DOMAIN} ${DNS2}) >> ${OUTFILE}
echo "sleeping 5 more minutes..." >> ${OUTFILE}
sleep 600
echo "script end" >> ${OUTFILE}

oczywiście należy także edytować sam skrypt freedns-update.py poprzez wprowadzenie danych swojego konta na freedns.42.pl, czyli:
– user – nazwa użytkownika na freedns.42.pl
– password – hasła na freedns.42.pl
– zone – nazwa domeny

Dodatkowo możesz ustawić:
– ttl

Reszty nie polecam zmieniać.

Ja docker’a odpalam tak:

docker run --network=host --rm -it -v `pwd`:/etc/letsencrypt -v /var/www:/var/www certbot/certbot renew

Powodzenia!!!

QNAP – jak przeprowadzić sprawdzanie systemu plików z CLI

Do tematu podchodziłem już wiele razy, aczkolwiek ze względu na brak czasu nigdy mi się to nie udało – do dzisiaj. Jako, że z tabletu sprawdzenie FSu poprzez interfejs Web nie jest prostą sprawą postanowiłem zgłębić temat narządzi qcli.

  1. Co będzie potrzebne? – dostęp do QNAPa przez SSH – nazwa użytkownika z uprawnieniami administratora oraz jego hasło
  2. Jak tego dokonać? – logujemy się przez SSH do QNAPa – logujemy się do qcli poprzez komendę: qcli -l user=<użytkownik> pw=<hasło> saveauthsid=yes – listujemy dyski: qcli_volume -l – odpalamy sprawdzanie dysku: qcli_volume -F volumeID= action=start

I to by było na tyle. Podobnie działa odblokowywanie zaszyfrowanego dysku – podpowiedź: qcli_encrypt –help, qcli_encrypt -u –help

Problem z Orange FunBox

Napotkałem problem z działaniem javascript na routerach FunBox Orange’a. Problem dot. przetwarzania danych urządzeń rejestrujących się przez usługę zeroconf. Na konsoli błędów przeglądarki widać coś takiego: scripts.js?d47aa053:16765 [bus] error handling ajax request
SyntaxError: Unexpected token in JSON at position 7235
at JSON.parse ()at String.parseJSON [as evalJSON] (scripts.js?d47aa053:6673)

at klass._getResponseJSON (scripts.js?d47aa053:7685)

at klass.initialize (scripts.js?d47aa053:7634)

at new klass (scripts.js?d47aa053:6054)

at klass.respondToReadyState (scripts.js?d47aa053:7548)

at klass.onStateChange (scripts.js?d47aa053:7498)

at XMLHttpRequest. (scripts.js?d47aa053:6344)Objawem widocznym jest brak działania niektórych stron – na przykład konfiguracji zapory sieciowej. Rozwiązanie: https://github.com/bibiak1/tm-scripts/blob/master/bibiak%20FunBox%20JSON%20fix.user.js

Akt ofiarowania dzieci błogosławionemu Czesławowi

Błogosławiony Czesławie, Patronie Wrocławia. Świadomi niebezpieczeństw, jakie zagrażają naszym dzieciom, oddajemy je pod Twoją szczególną opiekę. Prosimy, użyj swej cudownej mocy, by zachować w nich największy skarb, jakim jest wiara i miłość Boga. Spraw, prosimy, aby przeszły bezpiecznie przez burzliwy okres rozwoju. Nie dozwól, by naszym dzieciom zabrakło kiedykolwiek chleba, a przez sieroctwo zostały pozbawione opieki i miłości rodziców. Niech dojrzewają w zdrowiu i spokoju, tak jak Boże Dziecię dojrzewało w Nazarecie, a Ty bądź im zatroskanym ojcem. Niech będą naszą radością i chwałą, chlubą naszej ojczyzny i Kościoła, a Bóg niech będzie w nich błogosławiony. Amen

Witaj, świecie!

Wysypanie się bazy danych mysql zmusiło mnie do rozpoczęcia tego bloga na nowo.

Nie wiem od czego zacząć … może po kolei

– [x] wybrać wygląd
– [x] wstawić obrazek tła
– [x] dostosować sekcje
– [x] aktywować stare wtyczki
– [x] wyłączyć domyśle strony
– [x] usunąć domyśle komentarze
– [x] pozbyć się skryptów social
– [x] wyłączyć ikony autorów