De computertijd van je kinderen beperken

Op het web wordt de vraag nogal eens gesteld, hoe je kunt zorgen dat je kinderen na een bepaalde tijd niet meer, of voor een bepaalde tijd nog niet op hun computer kunnen inloggen, en de computer keihard uitgaat na een paar waarschuwingen. Hieronder de instructies om dat op openSUSE voor elkaar te maken. Ik vermoed dat dit op andere disros ook prima zal werken, misschien dat je dan even moet zoeten waar welke bestanden staan, of zenity geïnstalleerd is, maar de rest is puur linux en zou moeten werken.

Eerst zorgen dat pam er weet van heeft dat de pam_time module gebruikt moet worden, omdat die module het mogelijk maakt om op allerlei manieren en niveaus inlog tijden te beperken. In dit voorbeeld gaat het om kind X, met een eigen computer op z’n kamer. Die moet om half acht naar bed, dus om 19:15 uur is het wassen, plassen, tandenpoetsen en voorlezen. De computer moet dan dus uit zijn, en daarna door X niet te gebruiken voor 7 uur 's ochtends.

In /etc/pam.d/common-account-pc voeg je onderaan een regel toe, met dit commando:


sudo echo "account required        pam_time.so" >> /etc/pam.d/common-account-pc

Vervolgens gaan we bepalen dat gebruiker ‘USER’ alleen tussen 's morgens 7 en 's avonds 19:15 mag inloggen. Vervang hieronder USER door de gebruikersnaam van X, REALNAME door de echte naam van het X.

In /etc/security/time.conf voeg je onderaan een regel toe met dit commando


sudo echo "*;*;USER;Al0700-1915" >> /etc/security/time.conf

waarbij Al staat voor alle weekdagen, de tijd spreekt wel voor zich.

Maar, daarmee ben je er nog niet, want je wilt ook dat de PC uit gaat om 19:15u, en we gaan dat even netjes doen, zodat zoon/dochter keurig twee keer een melding krijgt … Dat doe je via crontab. Eerst zorgen dat de PC uit gaat, da’s nl. een taak voor root:

Doe het volgende


sudo crontab > ~/cronfile

Open het bestand ‘cronfile’ ( staat in je home ) met een editor naar keuze, en voeg deze regel toe:

15 19 * * * /sbin/poweroff

En meteen zorgen dat ‘root’ daar weet van heeft:

sudo crontab < cronfile
rm cronfile

Nu moeten we alleen nog zorgen dat de meldingen weergegeven kunnen worden, en er ook zijn, en dat doen je in /home/USER/.bashrc en de crontab van USER.
Hier niet USER vervangen !!!


echo "xhost local:$USER > /dev/null" >> ~/.bashrc

Open nu een editor, en zet onderstaande regels in een nieuw bestand. Sla het op als /home/USER/cronfile


5 19 * * * export DISPLAY=:0 && /usr/bin/zenity --warning --text="Beste REALNAME, nog 10 minuten en dan gaat de PC uit"
10 19 * * * export DISPLAY=:0 && /usr/bin/zenity --warning --text="Beste REALNAME, nog 5 minuten en dan gaat de PC uit"

en zorg dat de crontab van USER die gaat gebruiken


crontab < cronfile
rm cronfile

Nu de PC opnieuw opstarten, en dan moet alles werken. Je kunt met in /etc/security/time.conf lezen hoe en wat je allemaal in kunt stellen. Zo kun je bijv, zorgen dat X alleen 's avonds kan gamen.

Hey!

Heel goed artikel en werkt perfect!
Alleen is Zenity niet standard geinstalleerd tenminste niet op TW
Dus voor de gene die deze handleiding volgen installeer ook zenity en dan werkt het super

:wink:

Die laatste **** is een typo :wink:
En ik denk dat gebruik maken van systemd-units in combinatie met systemd-timers een makelijkere manier zou wezen voor mensen, mischien dat iemand of ik dat destijds kan scrijven…
Leuk idee trouwens :good:

Typo verbeterd, bedankt.

Tons of websites can help in passing Oracle, but only the best can come out with the best result. So, choose wisely and opt for dumpspedia to buy your cheap but effective Oracle Cloud Infrastructure 2021 Cloud Operations Associate Practice Exam Questions. Our 1z0-1067-21 PDF Questions have gone through a test initiated by high Professionals to check their accuracy and have come out as the best choice for your training at attaining Oracle Cloud Solutions Infrastructure. Help yourself in getting better at every important concept of your exam with our 1z0-1067-21 Practice](https://www.dumpspedia.org/1z0-1067-21-exam-questions.html) Exam Dumps. Visit us now if you want to know more.