Meu filho recebeu um novo laptop no Natal passado, principalmente para uso em sua nova escola ... E agora que ele tem seu próprio laptop, ele está feliz por ter o Steam instalado.
Mas a esposa quer que eu remova o Steam, porque o laptop é principalmente para uso escolar ... Prefiro não fazer isso, se não for necessário.
Existe uma maneira de restringir ou limitar o acesso ao Steam? Talvez uma senha no próprio Steam, ou definir horários durante os quais ele possa ser executado?
Idealmente , deve ser algo bem simples de usar, porque meu trabalho muitas vezes me mantém longe de casa (e computadores, telecomunicações e ...) por longos períodos de tempo e enquanto minha esposa não se sente tão à vontade com computadores quanto eu, mais fácil de usar é muito, muito melhor.
Certamente há algo por aí que pode realizar essa tarefa?
fonte
Respostas:
Defina um prazo para um processo ou aplicativo
Com um pequeno script em segundo plano, você pode definir um prazo para um processo ou aplicativo.
Desde que o usuário não saiba a senha do administrador , ela não será superada com muita facilidade.
A solução abaixo
É um script de plano de fundo tão pequeno. Limita o uso por dia a um número definido de minutos, a ser definido no cabeçalho do script. Uma vez configurado (o que não é muito difícil), ele é executado com muita facilidade e nenhuma ação adicional é necessária posteriormente.
O script
Como usar
limit
limit_use
(sem extensão) dentro da pasta e torne-o executávelEdite no cabeçalho do script o nome do processo a limitar e o número máximo de minutos permitidos. No exemplo:
Copie a pasta para o diretório
/opt
:Agora edite
/etc/rc.local
para fazer o script executá-lo comoroot
na inicialização:Pouco antes da linha
outra linha:
É isso aí
Quando alguém tenta matar o script em segundo plano:
(ação não permitida)
Explicação; como funciona
/opt/limit/uselog
). Se o limite diário for atingido, o script não permitirá mais a execução do processo, eliminando-o, se existir.rc.local
somente usuários com privilégios de sudo podem parar o script, mesmo assim, apenas se o usuário souber o nome do processo.Pare o script
Caso você queira interromper o script, use o comando:
Mas, novamente, você precisaria da senha do sudo para fazer isso.
EDITAR
Embora o script acima deva fornecer uma maneira razoavelmente segura de limitar o uso de um aplicativo, conforme mencionado pelo @Bytecommander, ele pode ser superado, embora não com muita facilidade. A combinação com a medida abaixo tornará muito improvável que isso aconteça, a menos que seu filho conheça a configuração e tenha bastante experiência com Linux / Ubuntu.
Medida adicional
Um pouco mais longe de uma "solução simples", mas ainda não muito difícil de configurar, é a medida adicional abaixo. Se nosso suspeito delinquente descobrir que o script é chamado
/etc/rc.local
, conseguir tornar-se root e remover a linha/etc/rc.local
, ou conseguir parar o script dessa maneira, podemos enfrentá-lo com o próximo problema: a tela escurece após Além disso, a solução verifica se o script em segundo plano está em execução após 5 minutos após a reinicialização, ocultando se não estiver.A medida extra é uma verificação de inicialização, se a linha
/opt/limit/limit_use &
está presente/etc/rc.local
, e uma verificação após 5 minutos, se o script ainda estiver em execução. Como o script é executado a partir de um iniciador (oculto nos aplicativos de inicialização)/etc/xdg/autostart
, será bastante difícil descobrir o que está acontecendo, a menos que você saiba como isso é feito. A combinação dessas duas medidas torna improvável que seu filho descubra, e se o fizer, provavelmente nada o impedirá.Como configurar
Duas etapas simples estão envolvidas:
Copie o código abaixo em um arquivo vazio e salve-o
blackout.desktop
na área de trabalho:Copie o arquivo para
/etc/xdg/autostart
:Copie o script abaixo em um arquivo vazio, salve-o
blackout.py
na área de trabalho, torne-o executável e copie-o para/usr/local/bin
:O script
Explicação
Os lançadores
/etc/xdg/autostart
iniciam um aplicativo (neste caso, a verificação de segurança extra) para todos os usuários. Isso pode ser substituído localmente, mas você deve saber que a verificação é executada. Ao colocar a linhaNoDisplay=true
em nosso iniciador, ele não aparecerá localmenteStartup Applications
; portanto, sem saber que ele existe, é improvável que seja descoberto.Além disso, seu filho tem apenas 15 segundos para descobrir (a tela fica apagada); portanto, ele teria um problema sério, a menos que seja um gênio, tenha muita experiência com o Ubuntu e uma mente criativa.
fonte
rc.local
?Pela minha própria experiência, restringir o acesso a jogos de computador é uma das tarefas mais desafiadoras na educação de nossos filhos. É claro que os pais querem que eles usem seus computadores principalmente na escola, mas isso entra em conflito com as intenções da criança. Eles vão nos odiar por oferecerem hardware utilizável apenas para a escola.
E é claro que também queremos que eles aprendam a usar o computador de maneira sensata, incluindo como usá-lo não apenas no trabalho, mas também no lazer. Isso inclui jogos e assistir a vídeos.
Infelizmente, controles parentais bem mantidos e funcionando para restringir a computação do garoto quase não estão disponíveis para o Ubuntu. Outra questão importante é que, assim que são crianças inteligentes, todas as medidas que tomamos se tornam em vão. Eles sempre encontrarão maneiras de superar nossas restrições, caso sejam realmente inteligentes sem que possamos perceber.
Qualquer software de bloqueio ou restrição de PAM em execução no computador da criança será apenas temporário e poderá, mais cedo ou mais tarde, ser superado com muita facilidade. Portanto, decidimos deixar o roteador protegido por senha fazer o trabalho, onde o acesso físico pode ser controlado com muito mais facilidade.
Então, o que fazemos aqui para limitar um pouco os jogos no momento é uma combinação de todos os seguintes itens:
sudo
grupo mais cedo ou mais tarde. O plano é que eles nos solicitem isso em vez de esconder isso.Para facilitar o cumprimento do contrato de uso do computador, tanto para crianças quanto para nós, instalamos as seguintes restrições:
O bloqueio do acesso à Internet desativará efetivamente os jogos se esse jogo precisar de acesso à Internet, como Steam , Minecraft ou outros servidores gamig. No entanto, isso não terá efeito para jogos que ficam fora de linha.
fonte
ssh
ou apenas fechando o aplicativo?Isso pode ser alcançado usando scripts de shell.
O primeiro script é matar
Steam
assim que é executado:Salve-o como
/path/to/anyname.sh
e adicione-o à lista de aplicativos de inicialização.O que esse script fará é que ele verifique qualquer processo aberto nomeado a
steam
cada segundo e, se encontrar algum, o matará.Mas você precisa de uma solução em que
steam
possa ser executada em um momento específico, para que seu filho possa jogar durante esse intervalo. Para fazer isso, você precisa escrever outro script:Salve-o como
/path/to/anyname2.sh
e também adicione-o à sua lista de aplicativos de inicialização.Este script irá matar o primeiro script às 10:00 hrs. Então, quando seu filho corre
Steam
às 10:00 hrs. Ele será capaz de jogar agora.O terceiro script é reiniciar o primeiro script em outro ponto do tempo, para que ele apague
Steam
após um intervalo de tempo e seu filho não consiga mais jogarSteam
.Salve-o como
/path/to/anyname3.sh
e adicione-o à sua lista de aplicativos de inicialização.Mantenha esses caminhos escondidos, para que seu filho não descubra.
fonte
Por que não usar uma nova conta de usuário (através das configurações do sistema ). Este é o único método no Linux para "permissões".
sudo
grupo). Então, esta conta não terá acesso root, não poderá instalar ou remover software, alterar as configurações do sistema.Algumas notas ..
/home/son/.steam
e, é claro, o arquivo binário/usr/games/steam
fonte