18/9/2020

wifi instellingen opensuse IceWM

Filed under: — cybrarian @ 1:59 pm

OpenSUSE 15.1, IceWM desktop, 802.11 Networking Frameworks.

Bij installatie of configuratie moet je soms kiezen tussen infrastructure mode, client mode, master mode, managed mode, ad hoc mode, …

Mode
– client = normale gebruiker van wifi acess point, associeert met een netwerk (via SSID).
– managed = client mode
– master = infrastructure
– infrastructure = (met) centraal access point/router (die staat in infrastructure mode en heeft een “netwerk naam” of SSID en gebruikt een bepaald kanaal). Je kan je laptop laten fungeren als infrastructure mode wireless access point (op Mac “internet sharing”).
– ad hoc = peer to peer, zonder centraal verbindingspunt, bv twee laptops. Beperkt in afstand door de kracht van (beide) netwerkkaarten (bij meer gebruikers kunnen toestellen ook wel netwerk doorgeven, wat dan ook weer vertraagt), en kwaliteit daalt sterk door interferentie bij meer gebruikers.
Op laptops kan je ad hoc kiezen, op android apparaten zelfs niet.

Via Yast, System, Network Settings kan je aan de instellingen:

Global options:
– NetworkManager
– Wicked Service
– Network Services Disabled

IPv6 enabled (of niet)
DHCP Client Options: identifier -, Hostname to Send AUTO
Change Default Route via DHCP aangevinkt

Overview
Hier kan je de netwerkkaart toevoegen (zou er al kunnen/moeten staan), of ze selecteren en “Edit” kiezen om te wijzigen.

Dynamic Address (DHCP) of IP Address invullen, bv 192.168.1.123 (subnetmask /24, Hostname “123”)

Hardware
Device name (bv wlan0), en kernel module (bv bcma).

Klik “Next”.

Wireless Device Settings

Operating mode:
– Ad Hoc
– Managed : meestal dus deze als je niets speciaals wil doen.
– Master

In IceWM heb je in het menu, Desktop Apps, Systeem een een tool “Network Connections”. Dat levert een Mac-stijl leeg venster op waar je met + iets kan toevoegen, en een keuzelijst met netwerken krijgt. Doe bv:

+, Wi-Fi, Create.

Alles staat grijs (je kan dus niets veranderen), misschien omdat je geen root bent? Nee, ook als root blijft alles grijs. Waarom is dit er eigenlijk?

7/9/2020

Databank lettertekenset (Collation)

Filed under: — cybrarian @ 10:59 am

Als ik in een huidige databank (mariadb) kijk met phpMyAdmin, zie ik op het hoogste niveau “databases” de namen van mijn databanken, en daarnaast de colom “Collatie”. Daar staat bij de meeste databanken utf8_general_ci. (zie ook Databank collation) Er is één uitzondering, en dat is de database “mysql” (van het systeem zelf). Die heeft als collation: “utf8mb4_general_ci”. Waarom?

Een artikel uit 2016 hier op Medium.com geeft daar een antwoord op, en als het klopt zou ik ook meestal utf8mb4 moeten gebruiken, en al mijn bestaande databanken moeten omzetten.

MariaDB is afgeleid van MySQL, en daar hebben ze ooit een zuinige vorm van Unicode tekenset gemaakt en die “utf8” genoemd. Helaas bleek die achteraf niet overeen te komen met de uitgewerkte UTF-8 standaard, en MySQL kon zijn eigen versie niet meer aanpassen omdat ze te weinig plaats hadden voorzien in hun opslagruimte daarvoor (3 bytes/letter ipv 4). Hun onvolledige “utf8” veranderen zou bestaande programma’s kunnen doen crashen, en het enige wat hen restte was een andere vorm van utf8 bij te maken: utf8mb4.

Daardoor heb je nu zowel “utf8_general_ci” als “utf8mb4_general_ci” (ook wel “Unicode UCA 4.0.0).
ps: CI staat voor Case Insensitive (niet hoofdlettergevoelig, een zoek op “Abc” levert ook “abc” op).
En ook utf8mb4_bin, utf8mb4_(taalcodes)
ps: bin = wel hoofdlettergevoelig, dus Abc en abc verschillen voor de databank.

bron: https://medium.com/@adamhooper/in-mysql-never-use-utf8-use-utf8mb4-11761243e434

17/7/2020

openSUSE 15.2

Filed under: — cybrarian @ 12:31 pm

Op 24 juni werd het officiële verschijnen van openSUSE 15.2 gevierd (“Celebrate The Upcoming openSUSE Leap Release“).

Afhalen
De ISO kan je downloaden van software.opensuse.org, hij is 4.0 GB groot (itt 3.8 GB voor 15.1).

Haal ook de checksum van dezelfde download pagina af en controleer:
sha256sum -c openSUSE-Leap-15.2-DVD-x86_64.iso.sha256

openSUSE-Leap-15.2-DVD-x86_64.iso: goed

USB-stick om te installeren
https://en.opensuse.org/SDB:Live_USB_stick

Je kan daarvoor de nieuwe desktop tool SUSE Studio Imagewriter gebruiken (sudo zypper install imagewriter, momenteel versie 1.10). Die biedt een venster aan om de iso naartoe te slepen. Als je een USB-stick aansluit, wordt die onmiddellijk weergegeven in de keuzelijst onderaan. Als je de ISO gesleept hebt moet je enkel nog op de “write” knop drukken..

Als de stick niet leeg was krijg je nog de vraag: “This will overwrite the contents of /dev/sdb. Are you sure you want to continue?”.
Daarno moet je het wachtwoord ingeven, en krijg je een venstertje dat zegt “writing”, met percentage klaar en een cancel knop; als het helemaal klaar is gaat het dicht (tot frustratie van sommigen): 12:16 20% .. 12:18 58% .. 12:21 94% .. weg.

Installatie
De installatie zelf verloopt zo:
Boot met USB disk … kies “installeren” van het SUSE scherm.
Een groene balk onderaan geeft weer dat openSUSE Leap 15.2 bezig is..

starting yast …
starting installer …
Initialising Network Configuration
Updating the installer…

Daarna kan je een paar keuzes maken en de installatie starten.

Taal, toetsenbordindeling (test), licentie..
Basiskeuze:
[x] Werkstation met KDE Plasma
[ ] Werkstation met Gnome
[ ] Algemene Desktop
[ ] Server
[ ] Transactionele Server

Dan wordt een harde schijf indeling voorgesteld die er bv zo uitziet:

GPT op /dev/sda aanmaken
Partitie /dev/sda1 (8 Mb) als BIOS boot-partitie aanmaken
Partitie /dev/sda2 (463 GB) voor / met btrfs aanmaken
Partitie /dev/sda3 (2GB) voor swap aanmaken
10 subvolume-akties (zie details)

(Als je encryptie wil moet je naar de Expert partitionering gaan).

De NTP server wordt gesynchroniseerd, en je krijgt een kaart om Regio/Tijdzone te kiezen.
(Als je taal NL gekozen hebt moet je eventueel van Nederland naar België klikken)

Na installatie zal je merken dat de gebruiker bij niet-aktiviteit terug moet aanmelden met zijn wachtwoord. Dat kan je verzetten in de instellingen.

15.2
Deze uitgave gebruikt KDE’s Plasma 5.18 Long-Term-Support versie (meer details, Changelog – Engels).
Nog steeds een donkergroene eenvoudige achtergrond met wat doorkomende technische tekenlijnen rechts.
Het menu kan je met rechtsklik – alternatieven tonen aanpassen, ik kies meestal “Programmastarter”.
Ik ben daar aangenaam verrast dat naast Konsole (of was dat al?) ook Kate een prominente plaats heeft gekregen in de favorieten, met nieuw logo!

9/7/2020

icewm blokkeert openSUSE updates

Filed under: — cybrarian @ 9:14 am

In een reeks openSUSE 15.1 updates (desktop update tool) zit er eentje die niet door gaat, en als foutmelding geeft:

icewm-1.4.2-lp151.8.6.1.x86_64 requeres icewm-theme-branding, but this requirement cannot be provided

De foutmelding treedt niet op bij een “clean install” 15.1, maar wel bij systemen die geupgrade werden uit vorige openSUSE systemen (Leap 42.x).

Via het Yast control center kan je in detail naar de “Online Update” gaan zien, en wordt meer uitleg gegeven: bij de oplossingen wordt aangeboden om
– icewm te de-installeren (“Verwijderen van icewm-1.4.2..x86-64 verwijderen van .. ” enz)
– icewm-config-upstream-1.4.2-lp151.8.3.1.noarch te de-installeren. (“Verwijderen van icewm-…noarch”)
– de patch over te slaan (“niet installeren”)
– de melding te negeren (“..door enige van zijn afhankelijkheden te negeren”)

De eerste optie is nogal drastisch: verwijderen van icewm.
IceWM is een lichtgewicht Windowmanager voor het “X Window System”, en als je die niet gebruikt omdat je bv KDE draait, speelt het niet zo’n rol, en kan je dat doen.

De tweede optie heeft misschien wel zin, want dat bevat:

Configuration files from upstream provider without suse branding

..wat mogelijk in conflict komt met de “branding” die in de update zit…
(ps: in een clean install van openSUSE 15.1 was icewm-config-upstream niet geïnstalleerd, en daarom trad het conflict ook niet op daar)

Dan wordt als automatische verandering aangeboden:
laaste

icewm-theme-branding 1.2.4-lp 151.3.9.1

Bevestigen, de update draait.

(Na uitloggen en terug inloggen weet ook de desktop “software updates notification” dat het ok is).

4/7/2020

OpenSUSE 15.1 installatie met versleutelde gebruikersgegevens (encrypted home directory)

Filed under: — cybrarian @ 3:23 pm

Installeren over bestaande versleutelde
Een installatie van openSUSE 15.1 over een bestaande 42.2 met versleutelde gebruikersmap (home directory) leverde wel een vraag naar het oorspronkelijke wachtwoord op, maar niet een versleutelde home directory na installatie.

Nadien versleutelen?

De home directory nadien versleutelen kan in principe, maar dan moet je op een andere manier werken. Je kan spijtig genoeg niet (meer?) een gebruiker bijmaken en aanvinken om de home directory te versleutelen…

Installatie met versleuteling

Op zoek naar de juiste plek en het juiste moment om de verleuteling te kiezen bij een nieuwe installatie van openSUSE 15.1:
Na System Role (Desktop met KDE) komt “Preparation, Disks” waarin de indeling en het gebruik van de harde schijf wordt bepaald.
Er wordt standaard voorgesteld (in dit geval, een 150 GB disk) onder “Suggested partitions” voor harde schijf sda:
– sda1 : ext4
– sda2 : BtrFS voor /
– sda3 : swap (2 GB)
(ps: Er is geen partitie voorzien voor de /home directory in dit voorstel, die komt ook onder de root- of hoofddirectory)
Hier moet je onderaan kiezen voor “Expert Partitioner”, “Start with Current proposal” om meer uitgebreide mogelijkheden te krijgen vanaf het huidig voorstel.
Je krijgt een tabel met de beschikbare opslagruimte en de voorgestelde partities.
Er is een kolom “F” die betekent dat die partitie geformatteerd gaat worden (hier sda2/BtrFS)
Er is ook een kolom “Enc” die betekent dat de partitie “encrypted” of versleuteld wordt; hier geen enkele in het voorstel.
Je kan dubbelklikken op de sda2 en aanvinken om die te versleutelen (Edit partition /dev/sda2, “Encrypt Device”).
Dan moet je het versleutel-wachtwoord ingeven. Niet vergeten. Echt niet vergeten. En vervelend: je hebt geen controle op wat je inktikt!
Daarna komt in het overzicht “Encrypted: Yes” staan.
Opgelet; sda1 en de swap zijn dus niet versleuteld, swap kan ook sporen van interessante informatie bevatten.
Bij het overzicht, onder “Booting” heb je ook een optie om de bootloader te beschermen met een wachtwoord.

Dubbel wachtwoord:
eigenaardig genoeg moet je twee keer het wachtwoord voor ontsleuteling ingeven na het opstarten…

1e keer onmiddellijk na aanzetten in een zwart scherm met enkel wat intel Matrix Storage Manager ROM informatie:

Welcome to GRUB! Attempting to decrypt master key… Enter passphrase for hd0,msdos2 (9527….):

Waarna het openSUSE startschem met keuze opkomt, .. en een tweede keer in een iets grafischer uitziend scherm vraagt om decryptie van sda2.


Op zoek naar oplossingen

oorspronkelijk niet gelukt..nadien na zowel systeem updates als wat uitproberen lukt het nu wel.

open terminal
Alles uit te voeren als root, dus om niet telkens sudo te moeten tikken…
su root
(vraagt het wachtwoord)

Maak het bestand waar de sleutel in moet komen:
touch /.root.key

Maak alleen leesbaar voor root:
chmod 600 /.root.key

maak de sleutel en zet in het bestand:
dd if=/dev/urandom of=/.root.key bs=1024 count=1
Geeft iets als

1+0 records in
1+0 records out
1024 bytes copied

(— Upd 5/7: controleer met:
# cryptsetup open --verbose --key-file /.root.key --test-passphrase /dev/sda2

Key slot 1 unlocked.
Command successful.

—upd)

Zoek je root partitie:

fdisk -l
Conclusie: sda2 bevat mijn root partitie

Voeg de sleutel toe als manier om de root partitie te ontsleutelen:

cryptsetup luksAddKey /dev/sda2 /.root.key

Enter any existing passphrase: …

Wijzig /etc/crypttab, zoek de lijn die verwijst naar de root partitie door de UUID en voeg de keyfile toe in de derde kolom.
(ik gebruik daarvoor mcedit /etc/crypttab ; mcedit je krijg je bij mc met zypper install mc)
(twee spaties of tab? Of toch gewoon 1 spatie?)

cr_sda1 UUID=... /.root.key

Pas dracut aan om de key file toe te voegen aan initrd:

echo -e 'install_items+=" /.root.key "' | sudo tee --append /etc/dracut.conf.d/99-root-key.conf > /dev/null

(—Upd 05/07: —
bij het uitvoeren van mkinitrd – zie verder – krijg je een foutmelding op het bestand

1. bovenaan bij mkinitrd uitvoer krijg je een foutmelding

/etc/dracut.conf.d/99-root-key.conf: line 1: /.root.key: Permission denied

Je kan dat bestand /etc/dracut.conf.d/99-root-key.conf bekijken. Ik heb de enkele aanhalingstekens bv weggehaald omdat het niet werkte)

2. meer onderaan in de uitvoer een foutmelding dat het niet uitgevoerd is:

dracut-install: ERROR: installing ‘”/.root.key”‘

Daarna haalde ik nog wat spaties weg en zo tot ik geen foutmelding meer kreeg.

—upd)

Om te vermijden dat het overschreven wordt, moet een lijn toegevoegd worden aan /etc/permissions.local:

/boot/ root:root 700

Zoals in het bestand /etc/permissions.local ook vermeld wordt moet je na de wijziging:

chkstat --system --set

De initrd moet terug aangemaakt worden:
(controleer uitvoer, zie ook bovengenoemde fouten)

mkinitrd

Dat zou het moeten zijn … exit

Alles afsluiten en herstarten om te proberen.

(— Upd 5/7: controleer initrd
Vraag inhoud initrd op en kopieer naar een txt bestand:
lsinitrd > /root/lsinitrd.txt
Bekijk het bestand/zoek naar /.root.key bv met de voorvermelde mcedit (F7=zoek):
mcedit /root/lsinitrd.txt
—upd)

Conclusie 06/07: het is me uiteindelijk gelukt, waarbij ik niet weet welk aandeel de systeem updates hebben, en welk aandeel mijn eigen wijzigingen/afwijkingen van het arktikel in de link bovenaan.

Bronnen
o.m.
https://en.opensuse.org/SDB:Encrypted_root_file_system (alg)
https://linux.die.net/man/5/crypttab (crypttab)
https://unix.stackexchange.com/questions/533233/grub2-luks-how-to-avoid-to-type-the-passphrase-twice (over hoe checken)
https://www.reddit.com/r/openSUSE/comments/any9af/i_think_i_add_root_key_to_wrong_partition_when/

——-

PS: Volgende foutmelding duidt waarschijnlijk op het verkeerd ingeven van het wachtwoord.
Let bv op azerty/qwerty, oorspronkelijk wachtwoord waarschijnlijk in keyboard en/us

error: access denied.
error: hd1 cannot get C/H/S values.
error: hd2 cannot get C/H/S values.
error: hd… cannot get C/H/S values.

error: hd15 cannot get C/H/S values.
error: no such cryptodisk found.
error: disk ‘cryptouuid/…’ not found.
error: disk ‘cryptouuid/…’ not found.
Entering rescue mode…
grub rescue >

30/4/2020

KDE menu aanpassen

Filed under: — cybrarian @ 12:42 pm

Het standaard menu in de huidige KDE is de Application Launcher en ziet er ongeveer zo uit:

Links een brede kolom met een aantal “favoriete” programma’s, daaronder:
Favourites – Applications – Computer – History – Leave

Als je in de onderste zwart-wit iconen opschuift naar Applications kan je kiezen uit verschillende “groepen” programma’s: Development, Games, enz. Deze komen ongeveer overeen met het originale KDE menu, dat daar dus rechstreeks toegang toe geeft, wat ik veel handiger vindt.

Veranderen menu layout:
– klik rechts op het menu icoon (meestal onderaan links)
– Kies alternatives
– kies Application Menu (of Dashboard als je dat eens wil proberen)
– bevestig met “Switch”
Je kan altijd terug op dezefde manier..

De Favourites die je aangepast had in het Application Launcher menu, blijven behouden, en die zijn rechtstreeks bereikbaar in een smalle kolom links. Maar onmiddellijk daarnaast – en al aktief – vind je het hele menu, dat bovendien onder de muis onmiddellijk verder openklapt zonder klikken. Eén of meer klik(s) gespaard!

29/4/2020

Zoom op Linux

Filed under: — cybrarian @ 8:49 pm

WTZ?
Allereerst moet je natuurlijk de vraag stellen of het wel een goed idee is om zoom te gebruiken op Linux (denk aan Tox, Wire, Jitsi https://jitsi.org/ of probeer op https://meet.jit.si/, enz…).
Als het antwoord voor jou toch ja zou zijn …

Zoom weet dat Linux bestaat. Dat komt voor een Linux gebruiker al veel vriendelijker over dan heel veel andere software zonder Linux versie of hardware zonder Linux drivers enz. Een eerste verwijzing:
https://support.zoom.us/hc/en-us/articles/204206269-Installing-or-updating-Zoom-on-Linux
Je krijgt zowaar instructies voor Debian, Ubuntu, Linux Mint, OpenSUSE, Arch, Manjaro, Oracle, Centos, Fedora, RedHat, en dan ook nog de uitleg om te installeren vanuit de commandolijn of vanuit je desktop.

Zoom Client for Linux
The Zoom Client for Linux allows you to start or join Zoom meetings on Ubuntu, Fedora, and many other Linux distributions.
Linux Type: [OpenSUSE] (dropdown box met 10 keuzes )
OS Architecture: [64] (dropdown met 64 en 32 bit)

Na de keuze wordt onmiddellijk de download ingevuld:

rpm (for OpenSUSE 13.2+)
Version 5.0.399860.0429

Met de “Download” knop kan je die afhalen.
Er is ook informatie voorzien ivm de public key fingerprint; er is ook een download link voor de “Public Key”.
Je kan bij de download-vraag van Firefox (keuze tussen save as download of open with… onmiddellijk kiezen voor de “software installeren” keuze; dan opent Yast met een installation summary en een “accept” knop. Er worden nog).

Na download kan installeren met zypper:
sudo zypper install zoom_openSUSE_x86_64.rpm
(maar zelf niet gebruikt; had hem al open in yast).

In Yast kan je de key opgeven bij Software Repositories; kies er de file die je gedownload hebt.

27/4/2020

OpenSUSE 15.1 KDE Plasma 5 Desktop

Filed under: — cybrarian @ 11:49 pm

Blijkbaar heb ik nog niets geschreven over de installatie van openSUSE 15.1 (behalve op Pi en als update), die ik toch al wel gedaan heb vanaf nul. Waarschijnlijk gingen ze zo vlot dat ik er niets over te vertellen had…

Daarom enkele opmerkingen bij een nieuwe 15.1 installatie vanaf usb-stick:
– let op als je een versleutelde harde schijf wil, dat wordt niet standaard aangeboden. Bij de keuze van de disk moet je even uit het voorstel stappen en je eigen configuratie maken met “Guided Setup”. Daar wordt encryptie wel aangeboden, je kan de rest allemaal bevestigen. Als je er al voorbij was op het moment dat je het beseft (na time zone, gebruiker naam en wachtwoord, enz)
– als er al een Linux installatie aanwezig was op de harde schijf (bv opensuse 13.1) dan stelt de installatie voor de ssh keys over te nemen, zet dat af als er geen verband is tussen de nieuwe installatie en wat er vroeger op die harde schijf stond! (zichtbaar in Installation Settings overzicht net voor starten van de installatie)
– als je ssh toegang nodig hebt, ssh service enabled en ssh port open zetten onder Security in het overzicht.

De installatie gaat vrij snel, ik heb het niet nauwkeurig getimed, maar ik denk 10 a 15 minuutjes of zo. Daarna moet je nog wel de nodige online upgrade doen, en kan er nog heel wat tijd bijkomen, zeker sinds Linux ook herstart moet worden na een kernel upgrade… (tenzij je de application server keuze hebt gemaakt met live patching).

Attempting to decrypt master key…
Enter passphrase for hd0,msdos7 (eenLangHexadecimaalNummer):
blijkbaar heb ik iets gemist bij het ingeven van de versleuteling van de harde schijf …

tot na een paar pogingen: … slot0 opened.

Er komt een menu waar de vorige openSUSE’s nog instaan … 11.3 en 13.1.
Standaard staat de nieuwe Leap 15.1 geselecteerd…
En dan vraagt hij het wachtwoord voor andere stukken van de harde schijf… blijkbaar was die voordien ook versleuteld, en aangezien die hergebruikt werden, en niet opnieuw geformatteerd, geldt daar nog altijd het vroeger wachtwoord voor de ontsleuteling? Of zijn verschillende partities versleuteld met mijn opgegeven wachtwoord en moet ik dat dan 3 keer ingeven? Heerlijk, maar tegen alle Linux logica in krijg je geen melding, feedback, zelfs niet in andere schermen.
De computer eindigt in “emergency mode” (en ik ook).

Als ik in het menu 11.3 kies kom ik in een mooi werkend systeem. Dat is dus gewoon behouden (maar je moet initieel een wachtwoord gebruiken..)

Als ik in het menu 13.1 kies, kom ik in emergency mode. Blijkbaar is de 13.1 overschreven met de nieuwe installatie.

Zoals het er nu uitziet moet ik de installatie overdoen … morgen!

(ik probeer nog een laatste keer met steeds het ondertussen teruggevonden encryptiewachtwoord vanaf het begin)

Please enter passphrase for disk H……. (cr_ata_H…..-part7)!

Geen idee wat dat was… morgen verder dus… en dan de hele harde schijf leegmaken en hergebruiken..

Of nee, .. toch niet .. ik heb blijkbaar twee wachtwoorden, 1 voor encrypte boot partitie harde schijf, en een ander voor de installatiepartitie, en die zijn hetzelfde behalve in azerty en qwerty… Gelukkig probeerde ik die dingen net uit.

Onbedoeld dus:
– bij boot moet ik een wachtwoord geven (wachtwoord-azerty).
– bij menu 11.3 = oudste systeem met opensuse 11.3 is blijven bestaan en kan ik nog raadplegen. (voor mij hier handig)
– keuze 13.1 werkt niet meer.
– keuze 15.1 (wat de bedoeling was te installeren) moet ik terug een wachtwoord geven (wachtwoord-qwerty).

Daarna start die wel op. Partitie heeft 164.8 Gb vrij. Ik draai de updates…

Ik zie een verwarrend aantal “Devices”:
mounted - 172.0 Gb Hard Drive
not mnt - 172.0 Gb Encrypted Drive
not mnt - 20.0 Hard Drive
mounted 2.0 Gb Encrypted Drive
unmounted 100.0 Gb Hard Drive

De 172 drives blijken hetzelfde te zijn, en de tweede geeft dezelfde inhoud weer als de eerste (dus wel mounted).

De 20 Gb drive heeft het root wachtwoord nodig.

De 100 Gb drive is de openSUSE 11.3
De 2 GB drive geeft een foutmelding;

26/4/2020

Delen in mijn public_html folder

Filed under: — cybrarian @ 10:29 pm

Covid-19, aan huis gekluisterd of in quarantaine, en snel wat dingen delen met je huis/kotgenoten? Daar bestaat een gemakkelijke, snelle, en Linux-vriendelijke manier voor: de map public_html.

public_html
Als Linux gebruiker zie ik in mijn “home” directory, map of folder een map “public_html” tussen de Document, Pictures enz. mappen, maar op het eerste zicht doet die map niets (of doet er niets iets met die map). public_html komt voor bij openSUSE, Debian, .. (kan een iets andere naam hebben, bv www, …).

Ze is bedoeld om bestanden te delen op een manier dat een webserver dat doet. Je kan er:
– gewoon bestanden in zetten om te laten downloaden of bekijken.
– een index pagina maken en het gebruiken als een soort persoonlijke website.

Webserver
Deze map wordt gebruikt door de webserver, die moet je dus installeren indien nog niet gebeurd.
Hij moet ook aktief zijn. Op een webserver is die normaal aktief, op je pc/laptop zal je die alleen aktiveren indien nodig.
Als de webserver (Apache) draait, en daarvoor is ingesteld (wat standaard zo zou kunenn zijn), dan gaat hij voor alle gebruikers, hier één voorgesteld door “cybrarian”, kijken in de map
/home/cybrarian/public_html
en die weergeven in bv Firefox aan de gebruikers van de webserver.

Zelf:
file:///home/cybr/public_html

Lokaal:
die directory weergeven aan andere gebruikers op diezelfde server die de site van die gebruiker opvragen op de manier:
http://localhost/~cybrarian/

Netwerk:
Stel dat de server het ip adres 192.168.1.67 heeft dan kunnen gebruikers binnen het eigen lokale netwerk de pagina’s opvragen met:
http://192.168.1.167/~cybrarian/

Hosting:
Ook bij hosting kan dit scenario voorkomen. De URL om de pagina’s op te vragen zal dan de internet-URL zijn van de server (of kan misschien ook met ip-adres).

Apache maakt dit mogelijk met “mod_userdir” (http://httpd.apache.org/docs/2.4/mod/mod_userdir.html).
Instellingen van de webserver kunnen roet in het eten gooien.
Maar het is een goede, veilige manier van werken want dan kan een gebruiker eenvoudig bestanden aanbieden aan de webserver zonder dat hij rechten moet hebben om in de webserver directories wijzigingen aan te brengen.

Voorbeeld:
Op OpenSUSE waar al een databank op draaide met phpMyAdmin stond de webserver al geïnstalleerd. Na het starten met
sudo systemctl start apache2
werkte het vanzelf. Je moet er enkel op letten ook werkelijk iets in die public_html te zetten, iets anders dan een “lege” index.html (die is wel nuttig om even de inhoud van je directory te verbergen).

3/4/2020

usb-stick kopiëren met dd

Filed under: — cybrarian @ 2:25 pm

Toepassing: een Linux distributie op een installeerbare usb-stick versie 3 naar usb-versie 2 kopieren.

dd if=/dev/sdb of=/dev/sdc bs=32M status=progress

Om te weten te komen welke usb-stick wat is, gebruik ik :
lsusb
lsblk
dmesg

Door die combinatie, en het herkennen van de merkgegevens, en partities (bv sdc is helemaal leeg) zie ik welke sdb en welke sdc is. dd kopieert van – naar!

bs is de buffer, status=progress geeft informatie op de commandolijn.

3/3/2020

Verbinding met oude smb-server

Filed under: — cybrarian @ 3:38 pm

Probleem bij een desktop update naar openSUSE 15.1: de mount van een netwerkdrive werkte niet meer.

Foutmelding: iets van directory bestaat niet zonder aanduiding of het een directory bij de client of bij de server betreft.

Oplossing: na totaal willekeurig tips proberen heeft het verwijzen naar een oudere versie in het commando het script terug doen werken:

sudo mount -t cifs -o rw,vers=1.0,uid=joske,username=joske,password=soske //server.domain.local/joske /home/joske/lokalemap/

Voor wie er iets aan heeft… de server had samba 3.0.28.

27/1/2020

MySQL Automatisch nummeren wijzigen (AUTO_INCREMENT)

Filed under: — cybrarian @ 1:06 pm

Een databank mijndata heeft tabel mijntabel met een veld id, waarvoor de eigenschap AUTO_INCREMENT gezet is.

Elke keer er een record bijgemaakt wordt, verhoogt de waarde met 1, en standaard begint die waarde bij 1.

Als je het laatste record verwijdert, bv dat met id 3, zal een nieuw gemaakt record waarde 4 krijgen (niet waarde 3!).

Aan de opeenvolging van deze record id’s kan je bv zien dat er records verwijderd zijn. (tenzij…)

Als het om één of andere reden toch nodig is om een verwijderd record te vervangen door één met hetzelfde nummer als reeds gebruikt, kan je hetvolgende doen:
– verwijder alle records vanaf 3; hier dus 3 en 4 (als je er zeker van bent dat het record id nergens andere gebruikt is!).
– wijzig de AUTO_INCREMENT teller die wordt bijgehouden op tabelniveau.

ALTER TABLE mijndata AUTO_INCREMENT=3

Je kan het ook automatisch laten bepalen door de databank zelf:
ALTER TABLE mijndata AUTO_INCREMENT=1
De databank zal dan het eerstvolgende vrije nummer nemen, in dit geval 3.

Met phpMyAdmin:
Selecteer de database tabel, en kies tab “Operations”. Daar zie je onder “Table Options” de wijzigbare AUTO_INCREMENT waarde staan. Denk eraan dat hier de volgende toe te kennen waarde staat.

De waarde die de database bijhoudt om het volgende recordnummer te maken kan je zien in de extra informatie over de tabel in phpMyAdmin “Structure”, “Information”.
Daar vind je de volgende waarde bewaard als “next autoindex”.

Op de commandolijn kan je “show” gebruiken:
SHOW CREATE TABLE mijntabel;
In dat antwoord zie je “AUTO_INCREMENT=4”.

22/1/2020

Sailfish updates 2020

Filed under: — cybrarian @ 2:34 pm

Sailfish OS

Sailfish3 krijgt regelmatig updates: https://blog.jolla.com/category/software-updates/

Sailfish OS 3.3.0 Rokua

Sailfish OS 3.2.1 Nuuksio

Gebruik
Ervaring en commentaar bij gebruik op Xperia XA2
Spijtig genoeg werkt de FM-radio niet, die wel aanwezig is en werkt in Android.

30/05/2020: ik ben er eindelijk toe gekomen een backup te maken en achterstallige systeeem-updates te doen, zoals:
3.3.0.16 Rukoa (officieel verschenen 5 november 2019)
Blijkbaar wordt Nuuksio overgeslagen..als dat maar goed gaat …
UPD: Heel goed, de crash in de search functie is verdwenen!
Verder:
– Weer-aanduiding ziet er ook anders uit, met een oranje gekleurd zonnetje ipv een eenvoudig wit. Spijtig, dat wit was stijlvoller! Maar het had te maken met de zichtbaarheid op lichte achtergronden …
– De URL heeft een slotje bij https sites (en een rode driehoek als het certificaat niet klopt om één of andere reden.

Your device can’t be checked for corruption.
Please lock the bootloader

Niet schrikken, dit krijg je telkens bij het opstarten te zien.

2020-01-09: Systeemupdate beschikbaar 3.2.0.12 Torronsuo
(officiëel verschenen 5 november 2019; release note)
Belooft Standaard Data Encryption, SE Linux, Xperia10 support, …. De delete-functie zou aangepast zijn.
Ik hoop dat
– de calendar app bug gefixt is, want een herhalende agenda-nota werkte niet goed
– foto’s onmiddellijk bewaren op de encrypted SD kaart was een probleem, opgelost?
– de crash van een zoek in de contacten opgelost is (met de letters kan je wel contacten zoeken en selecteren). Zou die ook aan een fout in mijn database kunnen liggen? (kan ik die controleren, herstellen?).

Bij een zoek op de letters j w u d g v crasht contacts (of People zoals het hier heet). Zoek op alle andere letters werkt wel. Ik zie op het eerste zicht geen verband met de inhoud van de contacts. Ik heb gezocht naar leestekens ? – , / en die verwijderd bij records van die letters.

– het verwijderen van sms berichten niet meer tot het verwijderen van het contact leidt .. Misschien hangt het samen met vorige probleem en heeft het iets te maken met een fout in mijn data? Dit is ook iets wat ik niet graag uitprobeer …

Vorig jaar:
Updates 2019

15/1/2020

Script starten na opstart

Filed under: — cybrarian @ 9:24 am

Systemd service

We moeten een “eigen” systemd service maken als bestand in de /etc/systemd/system directory. Dat moet niet executable zijn.
Daarin bv:

[Unit]
Description=Beschrijving
After=network.target

[Service]
Type=oneshot
ExecStart=/bin/sh -c ‘/usr/local/bin/disk-space-check.sh’

[Install]
WantedBy=graphical.target

(Hier bij login van grafische interfacte; WantedBy=multi.user.target kan ook)

registreren:
chmod 664 /etc/systemd/system/disk-space-check.service
systemctl daemon-reload
systemctl enable disk-space-check.service

edit: zonder .service:
systemctl enable disk-space-check

Dit laatste geeft een bevestiging.
(enkel eerste keer)

En dan moet je de inhoud maken voor
/usr/local/bin/disk-space-check.sh

Dat script moet uitvoerbaar zijn
chmod +x /user/local/bin/disk-space-check.sh

Oudere openSUSE (pre-2016)

Na het opstarten van het hele systeem wordt gekeken naar het bestaan van

/etc/init.d/after.local

Daarin kan je eender welk script starten.

Nu werkt dat niet meer.

6/1/2020

Update openSUSE 15.0 naar 15.1

Filed under: — cybrarian @ 4:09 pm

Het begin van de procedure om het systeem bij te werken van 15.0 naar 15.1 houdt ons niet van ons werk op deze desktop, we doen het tussendoor:

Check de bestaande repositories; zet de extra repositories af, blijft openSUSE-Leap-15.0-OSS, openSUSE-Leap-15.0-Update.
(gaat gemakkelijkste in yast2)

Kopieer de repository instellingen:
cp -Rv /etc/zypp/repos.d /etc/zypp/repos.d.20200106

Vervang alle 15.0 door 15.1
sed -i 's/15.0/15.1/' /etc/zypp/repos.d/*

Verversen van de repositories
zypper ref

Downloaden van de files van een distribution update:
zypper dup --download-only

(er komt een uitleg en een vraag om bevestiging, daarna start het ophalen van de paketten. Dat duurt even en de lijst rolt voorbij op het scherm.)

Nu komt het deel waar de eigenlijke upgrade op de computer gebeurt, en doen we een stapje opzij. Afmelden en in een terminal venster inloggen met root. (CTRL-ALT-F1)
We kunnen naar init 3 toestand gaan om de grafische login (op scherm ALT-F7) ook uit te schakelen.

init 3
zypper dup

(of zypper –no-refresh dup want de rest staat klaar in de cache van zypper).

Er moeten bv 2566 files geïnstalleerd worden; dat zie je aan de detaillijnen die voorbijrollen tijdens de installatie: vooraan wordt de teller bijgehouden.
Dit kan wel even duren… zo’n 40 min. bv.;
(bv van 19:19 tot …19:39 ongeveer helft van de 2951 paketten … 19:58 posttrans scripts uitvoeren…20:00 Gereed.)

5/12/2019

Apache start niet na update opensuse

Filed under: — cybrarian @ 2:44 pm

Updates rodn begin december veroorzaakten waarschijnlijk een probleem waardoor de webserver niet meer start bij OpenSUSE Leap 15.1 server met Apache, mysql (mariadb), postgresql, php, …

systemctl apache2 start

systemctl apache2 status

achel:/home/wim/bin # systemctl status apache2
● apache2.service – The Apache Webserver
Loaded: loaded (/usr/lib/systemd/system/apache2.service; disabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Tue 2019-12-10 16:14:50 CET; 20h ago
Process: 1982 ExecStart=/usr/sbin/start_apache2 -DSYSTEMD -DFOREGROUND -k start (code=exited, status=1/FAILURE)
Main PID: 1982 (code=exited, status=1/FAILURE)

dec 10 16:14:50 achel systemd[1]: Starting The Apache Webserver…
dec 10 16:14:50 achel start_apache2[1982]: httpd-prefork: Syntax error on line 210 of /etc/apache2/httpd.conf: Syntax error on line 119 of /etc/apache2/default-server.conf: Syntax error on line 1 of /etc/apache2/conf.d/pgadmin4.conf: Cannot load modules/mod_wsgi.so into>
dec 10 16:14:50 achel systemd[1]: apache2.service: Main process exited, code=exited, status=1/FAILURE
dec 10 16:14:50 achel systemd[1]: Failed to start The Apache Webserver.
dec 10 16:14:50 achel systemd[1]: apache2.service: Unit entered failed state.
dec 10 16:14:50 achel systemd[1]: apache2.service: Failed with result ‘exit-code’.

mod_wsgi dient voor python web applicaties.
Die is blijkbaar niet aanwezig. Bij-geïnstalleerd via Yast.

apache2-mod_wsgi – A WSGI interface for Python web applications in Apache

The mod_wsgi adapter is an Apacheache module that provides a WSGI compliant interface for hosting Python based web applications within Apache. The adapter is written completely in C code against the Apache C runtime and for hosting WSGI applications within Apache has a lower overhead than using existing WSGI adapters for mod_python or CGI.

Installed Packages: 1
apache2-mod_wsgi
Statistics
Elapsed Time: 00:02
Total Installed Size: 461,4 KiB
Total Downloaded Size: 155,8 KiB

Sorry, hier stopt het al, dat was de beschrijving van het probleem en ook de oplossing.

3/12/2019

Raspberry Pi starten zonder scherm of toetsenbord

Filed under: — cybrarian @ 2:35 pm

Raspberry Pi als toepassing
(Raspbian)
Je kan de Raspberry Pi ergens inbouwen en van een toepassing voorzien.
Als hij opstart wil je 2 dingen:

– dat je hem vanop afstand kan bereiken (inloggen, besturen, upgraden)
– dat hij de juiste toepassingen start (of de verkeerde/onnodig niet)

1. Afstandsbediening

1.1 Verbinding

Je moet zorgen dat je raspberry pi te bereiken is via het netwerk als je hem laat starten. Om hem te kunnen aanspreken moet je weten welk ip adres hij heeft. Zet het bv vast in /etc/dhcpcd.conf

interface eth0

static ip_address=192.168.0.10/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

interface wlan0

static ip_address=192.168.0.200/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

1.2 SSH
Het protocol om vanop afstand in te loggen is ssh
Bij de instellingen (Raspbian: Voorkeuren, Raspberry pi configuratie programma)
– zet je SSH aan.
Als je al het nodige geïnstalleerd en getest hebt waarvoor je de desktop nodig hebt:
– zet je opstarten naar buroblad om naar CLI (command line interface)
ps: terug kan ook door sudo raspi-config te gebruiken.


2. Toepassing starten.

Er zijn 2 mogelijkheden:
1) je wil dat bij het opstarten een functie gestart wordt.
2) je wil dat na het starten op bepaalde momenten bepaalde functies lopen (programma’s gestart worden)

2.1 Shell script
In ieder geval is het handig om een shell script te schrijven van waaruit je de python toepassing start.
Stel dat het StartMyApp.sh heet en dat je daarin je eigenlijke programma start:

sudo python myapp.py

Algemeen ga je daarin de directory wijzigen naar waar het script moet draaien, en het script aanroepen met python interpretor

cd /home/pi/myapp
sudo python myapp.py

Het script uitvoerbaar maken
chmod 755 StartMyApp.sh

test met
sh StartMyApp.sh

Als je vanop afstand inlogt, kan je het script starten om het uit te proberen. Maar als je je terminal sluit wordt de verbinding verbroken en de uitvoering stopt. Om na het starten los te koppelen eindigen met een ampersand (en-teken &)

Hier bij het rechtstreeks testen van het programma (maar kan dus ook met je script)
sudo python myapp.py &

Je command prompt komt dan terug vrij, maar je blijft de meldingen krijgen. Wil je die kwijt, stuur ze naar het zwarte gat /dev/null:

sudo python myapp.py > /dev/null &

2.2. Script starten bij het opstarten van de Raspberry pi

Opnemen in opstart:

Het gemakkelijkste is het op te nemen in de crontab. Dat is een soort timer die allerlei taken kan inplannen op bepaade dagen, uren enz. Een speciaal geval van de crontab is de at reboot taak. Daar kan je hem inzetten met
crontab -e
en bekijken wat erin staat met
crontab -l

of voor root:
sudo crontab -e

De lijn die je moet toevoegen is bv
@reboot sh /home/bin/StartMyApp.sh >/home/pi/log/StartAppLog.txt 2>&1
De uitvoer wordt naar een logbestand gestuurd.

Als je wil controleren of het programma draait moet je vanop afstand in loggen met ssh en in de processen zoeken naar de combinatie van (in mijn geval):
cron sh sudo python

Tip: Uitslapen
Ik had wel eens een probleem dat mijn programma niet mooi opstartte (het moest in het begin een mail sturen om zijn start te melden – die kwam niet).
Bij het checken van de foutmeldingen kwam ik op het idee om een beetje vertraging in te bouwen, om de raspberry pi de tijd te geven om zijn ip adres in te stellen en zijn tijd af te halen.
In het begin van mijn StartMyApp.sh script geef ik twee minuutjes extra tijd alvorens de rest uit te voeren:
sleep 120s

2.3 Service
Je kan ook een service maken van je script, dan kan je het bedienen zoals andere diensten op je systeem.
Je moet dan wel de nodige informatie verschaffen aan het systeem over je “service”
update-rc.d StartMyApp.sh defaults
(niet met sudo)
Authentication complete…
(zie https://www.raspberrypi.org/forums/viewtopic.php?t=70520 )

2. Een script starten op bepaalde tijdstippen
(tip: cron)
In de cron kan je ook een script laten uitvoeren op bepaalde tijdstippen, dan hoeft het niet continue te draaien.

Bronnen:
https://www.instructables.com/id/Raspberry-Pi-Launch-Python-script-on-startup/
https://www.raspberrypi.org/forums/viewtopic.php?t=70520

Raspberry Pi stroomvoorziening met Strompi 2

Filed under: — cybrarian @ 2:24 pm

Strompi 2
Dit opsteekbord van joy-it voor de Raspberry Pi (tot v3 B) kost rond 30 euro. Er zijn andere vergelijkbare bordjes verkrijgbaar, en van dit bestaat ook een nieuwere versie 3.

Het maakt 2 scenario’s mogelijk:

1. Batterij backup
– normale voeding + batterij aan schroefaansluiting.
– instellen in USV stand
– propere shutdown bij stroomuitval (driver?).
– bij herneming van de stroom wordt opstartfunctie aktief (kan uitgeschakeld worden door bruggetje te verwijderen bij T pin)

2. Alternatieve stroombron
– kan gevoed worden met een breed scala aan gelijkstroom voedingen, van 6 tot 61 volt. Je kan dus een voeding van een defect apparaat recupereren of de stroombron dynamo/generator van een voertuig gebruiken.
– kan in een mobiele stand gezet worden om steeds een mobiele batterij/stroombron te gebruiken (dan wordt dit de primaire)
– kan meer stroom leveren aan de rapsberry pi als die andere stroomvretende uitbreidingen moet voeden.

29/11/2019

Raspberry Pi RTC (Real Time Clock)

Filed under: — cybrarian @ 2:12 pm

(Raspbian)

RTC
Een RTC module zorgt ervoor dat bij uitschakelen de Raspberry Pi zijn klok kan laten verder lopen met een batterij.
Er bestaan verschillende RTC uitbreidingen voor de Raspberry Pi, van goedkope opsteekkaartjes met enkel een batterij en de RTC functie, tot geïntegreerde RTC functies in een groter bord, zoals de Explorer 700 van Joy-IT.

Ik gebruikte bv die laatste, en daarvoor moest I2C aktief gemaakt worden in de instellingen met sudo raspi-config

Ik leerde ergens dat je de RTC kan checken met
sudo i2cdetect -y 1
Dat geeft een soort tabel met kolommen hexadecimalen 0 – f en rijen per 10 van 00 tot 70 met daarin de beschikbare i2C apparaten.
Op 60:8 zie ik daar 68, en dat zou de RTC moeten aangeven.

pi@ras003:~/$ sudo i2cdetect -y 1

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: 20 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- 48 -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- 76 --                         

De utility hwclock laat je de klok ondervragen als ze herkend wordt.
Bij mij gaf sudo hwclock -r nog een foutmelding:

sudo hwclock -r --debug
hwclock from util-linux 2.29.2
hwclock: cannot open /dev/rtc: Bestand of map bestaat niet
No usable clock interface found.
hwclock: Cannot access the Hardware Clock via any known method.

De kernel kent de module nog niet, voeg toe met:

sudo modprobe rtc-ds1307

sudo bash
root@ras003:/home/pi/Explorer700/ExplorerApp/RTC# echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device
root@ras003:/home/pi/Explorer700/ExplorerApp/RTC# exit
exit

Nu terug:
sudo hwclock -r --debug

hwclock from util-linux 2.29.2
Using the /dev interface to the clock.
Assuming hardware clock is kept in UTC time.
Waiting for clock tick…
/dev/rtc does not have interrupt functions. Waiting in loop for time from /dev/rtc to change
…got clock tick
Time read from Hardware Clock: 2015/08/12 20:35:47
Hw clock time : 2015/08/12 20:35:47 = 1439411747 seconds since 1969
Time since last adjustment is 1439411747 seconds
Calculated Hardware Clock drift is 0.000000 seconds
2015-08-12 22:35:46.888095+0200

Goed opgemerkt, ze staat nog altijd fout!

Maar zonder verder iets te doen, een beetje later:

pi@ras003:~$ sudo hwclock -r --debug
hwclock from util-linux 2.29.2
Using the /dev interface to the clock.
Assuming hardware clock is kept in UTC time.
Waiting for clock tick…
/dev/rtc does not have interrupt functions. Waiting in loop for time from /dev/rtc to change
…got clock tick
Time read from Hardware Clock: 2019/11/29 13:27:17
Hw clock time : 2019/11/29 13:27:17 = 1575034037 seconds since 1969
Time since last adjustment is 1575034037 seconds
Calculated Hardware Clock drift is 0.000000 seconds
2019-11-29 14:27:16.072253+0100

Dit ziet er al beter uit …

21/11/2019

Raspberry Pi en Explorer 700

Filed under: — cybrarian @ 11:39 am

Raspberry pi 3B (Raspbian)
Joy-it Explorer 700 (link)

Handleidingen (Engels, Duits) van Explorer: https://www.joy-it.net/de/products/RB-Explorer700

Bibliotheken (software om de mogelijkheden van de Explorer 700 aan te spreken):
Wiring pi
Wiring pi: wiringpi.com/download-and-install
sudo apt-get install wiringpi
sudo apt-get install wiringpi
Pakketlijsten worden ingelezen... Klaar
Boom van vereisten wordt opgebouwd
De statusinformatie wordt gelezen... Klaar
wiringpi is reeds de nieuwste versie (2.46).
0 opgewaardeerd, 0 nieuw geïnstalleerd, 0 te verwijderen en 0 niet opgewaardeerd.

(of haal de broncode af en compileer)

BCM2835
Deze of andere versie afhalen:
http://www.open.com.au/mikem/bcm2835/bcm2835-1.17.tar.gz, ondertussen:
http://www.airspayce.com/mikem/bcm2835/bcm2835-1.60.tar.gz

gunzip bcm2835-1.60.tar.gz
tar -xvf bcm2835-1.60.tar
cd bcm2835-1.60/
./configure
./configure
sudo make check
sudo make install

Configureren
De nodige kernel drivers moeten geaktiveerd worden bij het starten; die instelling gebeurt door:
sudo raspi-config
Niet bij Advanced options zoals de handleiding zegt, maar bij interfacing options, I2C en SPI selecteren.

Je moet bevestigen en krijgt dan SPI / I2C is enbled.

Op dezelfde manier de Serial port/login uitzetten (gebeurt samen).

Het configuratie-programma verlaten; het zal vragen om nu te herstarten, maar je kan nog eerst de volgende instellingen doen..

Zorgen dat de modules geladen worden in /etc/modules:

i2c-bcm2708
i2c-dev

toevoegen als ze er nog niet staan.

Dan de boot config aanpassen:

sudo nano /boot/config.txt

voeg toe:

Dtoverlay=w1-gpio-pullup

Nu kan je wel herstarten.

Voorbeelden
Bij het bord zijn een aantal voorbeeldprogramma’s voorzien, hier als Explorer700-1.zip
Uitpakken kan in de bestandsbeheerder van Raspberry pi.
2. KEY
De voorbeelden kan je bv uitproberen met python of vanuit de shell.

1.LED
Het eerste is de LED: ga naar de map van de voorbeelden (hier ~/Explorer700/ExplorerExamples)
cd ~/Explorer700/ExplorerExamples/LED/wiringPi
make (of sudo make?)
chmmod +x led
sudo ./led

De LED1 blijft pinken tot je CTRL-C doet.

PWM
Ter vergelijking het python programma dat nog iets meer doet:

cd ./../python/
sudo python pwm.py

De LED1 gaat langzaam aan en uit gloeien tot je ctrl-c doet.

2. KEY
Het voorbeeld KEY toont op de terminal dat je de knop van de mini joystick indrukt.

3. PCF8574
Dit programma reageert op de richtingen van de joystick. Alleen al handig om te weten hoe je de richting van de joystick moet beschouwen. Als je op/neer/links/rechts beweegt aan de joystick gebeuren er telkens 3 dingen:
– beepje
– terminal zegt up down left right
– LED2 gaat aan.

4. BMP280 Meting
Het BMP280 programma geeft telkens (tot je ctrl-c doet) een lijn met bv

Temperature = 30.54 C Pressure = 100.464 kPa

De thermometer is heel gevoelig, als je een kartonnen doosje over de Pi zet zie je onmiddellijk de getallen in honderdsten na de komma stijgen.

De druk heeft 3 cijfers na de komma en die schommelt doorlopend enkele duizendsten, bv 100.627 100.628 100.629 …

Real Time Clock
Voor de real time clock moet een CR1225 batterij aanwezig zijn, en die is niet meegeleverd. Als je ze zelf aangeschaft hebt, en in de batterijhouder hebt gestoken, is het klaar volgens de handleiding. Klopt bij mij niet, de aangegeven datum/tijd is iets van 2015-08-12 22:35:46

Zie installeren van “Raspberry Pi RTC (Real Time Clock)


DS18B20

Met dit programma kan je de temperatuur aflezen van de apart bijgelverde driebenige sensor die je dan eerst wel moet aansluiten natuurlijk.. (geen documentatie bijgeleverd).

IRM
Met deze sensor kan je infrarood signalen lezen van een afstandsbediening.

UART
Met een seriële kabel kan je de Pi verbinden met een computer. Je kan daarlangs dan data sturen.

OLED
Het laatste en spannendste voorbeeld werkte helaas niet: het mini scherm dat op het bordje zit.
Althans de python versie gaf bij alle programa’s de fout:
no module named Image
In de broncode zie je staan:
import Image
Mogelijk is de Image library niet geinstalleerd. (PIP of Pillow?)
Of moet ze anders aangeroepen worden nu, bv
from PIL import Image
(En in dispchar ook from PIL voor ImageDraw en ImageFont)

Gelukkig werkt de BCM versie wel, alleen heeft die een verkeerde naam, niet main maar oled moet je aanroepen na een make en chmod +x oled.
Je krijgt een blauw scherm met icoontjes alsof het een gsm is, met de tijd in het midden inclusief veranderende seconden.
Bij het afbreken van dit programma stopt de tijdsaanduidin op het scherm, maar het scherm blijft wel aan.

Powered by WordPress