Perguntas sobre 'bash'

Bash (Bourne-Again SHell), é o shell usado na interface de linha de comando do Ubuntu por padrão.
0
respostas

___ tag123xterm ___ xterm é o emulador de terminal padrão para o X Window System. Um usuário pode ter muitas invocações diferentes do xterm rodando ao mesmo tempo, cada uma delas fornecendo entrada / saída independente para o processo em execução (normalmente o processo é um shell Unix). ___

___ tag123xterm ___ xterm é o emulador de terminal padrão para o X Window System. Um usuário pode ter muitas invocações diferentes do xterm rodando ao mesmo tempo, cada uma delas fornecendo entrada / saída independente para o processo em execução (no...
06.07.2016 / 20:50
1
resposta

Existe algum pacote que permite aprender shell interativamente via terminal?

Estou procurando um pacote / aplicativo que seja executado sem gui (por meio de terminal) que me ajude a aprender shell fornecendo instruções e informações relacionadas ao tópico da lição, imprimindo texto no console e aceitando o código como as...
17.08.2016 / 22:34
1
resposta

A sessão SSH não exporta funções

Eu tenho um monte de funções armazenadas em ~/.bash_functions , que é originado por ~/.bashrc na inicialização do shell. O arquivo exporta todas as funções da seguinte forma: # Find functions in this script based on a grep search, and ex...
27.07.2016 / 20:37
10
respostas

___ answer70277 ___

Ubuntu & lt; = 11.10 O usuário segue este guia para o usuário do Ubuntu & gt; = 11,10 lê o aviso da página inferior:

Sim, todos esses programas estão desatualizados e todas as suas perguntas foram respondidas aqui e com boa aparência com o controle de seus pais .....

Quando falamos em forçar um usuário a fazer logoff, estamos realmente falando sobre a implementação de restrições de tempo na conta para acesso ao sistema ou serviços. A maneira mais fácil que encontrei de implementar restrições de tempo é usar um módulo de plug-in chamado Linux-PAM .

O Pluggable Authentication Module (PAM) é um mecanismo para autenticar usuários. Especificamente, usaremos o módulo %code% para controlar o acesso temporizado de usuários a serviços.

Usando o módulo %code% , podemos definir restrições de acesso a um sistema e / ou aplicativos específicos em vários momentos do dia, bem como em dias específicos ou em várias linhas de terminal. Dependendo da configuração, você pode usar este módulo para negar acesso a usuários individuais com base em seu nome, a hora do dia, o dia da semana, o serviço para o qual eles estão se candidatando e o terminal do qual eles estão fazendo a solicitação. .

Ao usar %code% , você deve terminar a sintaxe de cada linha (ou regra) no arquivo %code% com uma nova linha. Você pode comentar cada linha com o sinal de libra [#], e o sistema irá ignorar esse texto até a nova linha.

Esta é a sintaxe de uma regra:

  

serviços; ttys; usuários; horários

%pre%

Veja um exemplo de um conjunto típico de regras:

%pre%

Essas regras restringem o login do usuário entre as horas de 0800 e 2000 e também restringem o acesso à Internet durante essas horas. O Root seria capaz de fazer logon a qualquer momento e navegar na Internet durante todo o tempo também.

Nota: O sistema registra erros com essas regras como syslog (3).

Com o Ubuntu Linux, é possível atribuir às restrições de tempo do seu computador, para impedir a conexão de um ou mais usuários ao seu sistema. Com as restrições de tempo, você pode, por exemplo, limitar o acesso ao computador para seus filhos (um tipo de controle dos pais, em suma) , ou até mesmo proteger a conexão com o seu servidor durante certas horas. / p>

Configuração manual

Entenda o que você fará

Ao longo deste tutorial, usaremos o PAM (Pluggable Authentication Modules, Módulos de Autenticação Conectáveis em Inglês). Ele permite que você controle a autenticação do usuário quando eles se conectam. Em seguida, usaremos os arquivos de configuração de segurança para definir as horas de logon permitidas. Essas manipulações podem ser executadas em qualquer versão do Ubuntu e requerem apenas um editor de texto simples (vim, emacs, nano, gedit, kate, entre outros). Habilite horas de restrições através do módulo PAM

Primeiro, primeiro vá para o %code% , onde todos os serviços são configuráveis:

%pre%

Se quisermos bloquear a conexão com o computador, teremos que alterar o serviço do gdm. Edite o arquivo para o gdm e adicione esta linha de código (no final do arquivo):

%pre%

GDM é a distribuição de tela de login do Ubuntu, Edubuntu e Xubuntu. Para o Kubuntu, que usa o KDE, o serviço kdm é chamado, será o arquivo que será aberto. E você está pronto para configurar o PAM! Isso permitirá o controle de horas neste serviço.

Se você tiver um servidor, provavelmente não tem GUI. Neste caso, o GDM / KDM não está instalado e a conexão não será bloqueada. Para impedir a conexão com o TTY, você deve modificar o login do mesmo arquivo e adicionar a mesma linha de código que o reconhecido anteriormente. Esta ação também se aplica a pessoas que instalaram uma GUI e desejam bloquear o acesso à tela de login e terminais.

Configurar as horas de acesso

Agora que o serviço PAM foi ativado, só precisamos configurar os horários de acesso. Abra o %code% . Vários arquivos de configuração estão disponíveis:

%pre%

Edite o arquivo %code% . Algumas explicações e exemplos (inglês) introduzindo o. Para definir horários de acesso, copie e cole a seguinte linha de código (no final do arquivo, como sempre):

%pre%

Em vez do campo do usuário, insira a conta de login que você deseja bloquear.

Se você quiser bloquear vários usuários, insira o login deles em uma linha, separado pelo | operador. Por exemplo, se eu quiser congelar as contas de Patrick, John e Emily:

%pre%

Por contras, se você quiser bloquear o acesso ao sistema para todos os usuários, exceto um em particular, use o! antes da pessoa em causa. Por exemplo, se eu quiser que o acesso ao computador seja negado a todos os usuários, exceto Nicolas e Xavier:

%pre%

Passando agora para as zonas de campo. Neste campo, a seleção de dias e horas será permitida a conexão.Você deve primeiro especificar o dia da semana, usando as seguintes abreviações:

%pre%

Cuidado para não confundir as abreviações Wk e Wd são enganosas! particularmente mal identificado na Internet: você pode facilmente encontrar informações conflitantes!

Em seguida, especificamos os prazos. Estes devem ser formatados 24H, consistindo de 4 dígitos. Por exemplo, para restringir 3:17 da tarde às 6: 34h, escrevemos: 1517-1834. Permitir que Marie se conecte apenas na terça-feira, a partir das 15h17. às 18h34, obtemos o resultado:

%pre%

As conexões fora desse horário serão banidas. Quanto aos usuários, é possível usar os operadores | e! para indicar várias vezes (o! então indica que todas as horas de logon são permitidas, exceto aquelas a serem mostradas).

As duas estrelas (curingas) no início da linha de código são, respectivamente, e tty campos de serviços. Como você quer bloquear todo o acesso ao sistema, não é necessário especificar qual serviço ou qual tty deseja bloquear. No entanto, se você quiser impedir o uso de um determinado serviço, basta especificá-lo como o exemplo a seguir:

%pre%

Assim, o usuário casar não pode se conectar a um TTY, 4 e 5 durante o final de semana.

Alguns exemplos de cronograma de restrições

mathilde pode se conectar todos os dias a partir das 13h20. às 3:20 da tarde e a partir das 16:00 às 20h30:

%pre%

Stone, Frank e Florian podem se conectar às 14:00. às 6: 45h durante os dias de semana e às 14:00 às 10:15 para o fim de semana:

%pre%

A azeitona nunca é permitida para se conectar. jessica pode logar na quarta-feira a partir das 13:00 às 16:00:

%pre%

2 linhas diferentes, por dois tempos diferentes para cada usuário Expiração de uma sessão

Quando uma sessão expira (excede o tempo em que o usuário já está conectado), o PAM pode alcançar o usuário. Enquanto mathilde se conecta durante as horas permitidas, é perfeitamente livre exceder essas horas! Para isso, vamos usar um novo programa:'cron '. Este aplicativo executa comandos em intervalos de tempo. No nosso caso, faremos uso do comando ´skill-KILL-u´ para desconectar o usuário quando a sessão expirar. O manuseio é muito simples. Simplesmente edite o arquivo ´ / etc / crontab´. Em seguida, adicione a seguinte linha de código:

%pre%

Como antes, substituindo os agendamentos de campo Minutos e o tempo desejado. Em seguida, preencha o (s) dia (s) por (s) dia (s) proibido (s) ou simplesmente digite um asterisco (*) para indicar todos os dias da semana. Finalmente, mude o campo usado pela conta de login para ser bloqueado, e voilà!

Os dias não aparecem da mesma maneira com os trabalhos %code% ! Aqui está a lista de abreviaturas a serem usadas com este programa:

%pre%

Alguns exemplos de %code% jobs (com exemplos de vezes na seção anterior)

jessica pode logar na quarta-feira a partir das 13:00 às 4:00 da manhã

  

- & gt; Desligue: terça-feira às 16:00.

%pre%

mathilde pode se conectar todos os dias a partir das 13h20. às 3:20 da tarde e a partir das 16:00 às 20h30.

  

- & gt; Desconectando: diariamente, 20h30 às 3:20 da tarde ET.

%pre%

Stone, Frank e Florian podem se conectar às 14:00. às 6: 45h durante os dias de semana e às 14:00 às 10:15 para o fim de semana

  

- & gt; Desconectar (1): Segunda, Terça, Quarta, Quinta e Sexta, às 18:45.   - & gt; Desligue (2): Sábado e Domingo às 10: 15h ..

%pre%

O comando skill-KILL-u desconecta o usuário da GUI, assim como o TTY. É perfeitamente utilizável para administradores de servidores. No entanto, este comando é imediato e a desconexão será feita sem aviso prévio. Seria, portanto, preferível impedir a instalação dos usuários deste dispositivo do computador ou da rede em questão!

É possível impedir que os usuários com um comando %code% iniciado por %code% alguns minutos antes do final do período , sejam exibidos nos terminais de todos os usuários.

%pre%

Para evitar que usuários da GUI possam ser usados no lugar do comando wall %code% está no pacote libnotify-bin

%pre%

Usuário do Ubuntu 11.10

Eu vi em torno do usuário ter problemas com Pam e eu vi um monte de bug sobre isso, então porque é que a razão ??? é tão simples que o Ubuntu 11.10 não suporta mais o GDM o novo gerenciador de display é lightGDM o problema é o seguinte onde armazenar essa diretiva %code% acho que está em %code% ou %code% mas bug como ???

então, por aí, você pode verificar esses 2 arquivos de log do LightGdm:

  • /var/log/lightdm/lightdm.log
  • / var / log / lightdm / x-0log

ou execute o LightGdm no modo de depuração:

  

LightDM --debug

ou relatar um bug:

  

ubuntu-bug lightdm

Eu relato o aqui do Bug então cruze o dedo e espere ....

    
___ answer747228 ___

Introdução

Podemos verificar se um usuário está logado pelo comando:

%pre%

que nos dá uma saída como:

%pre%

Na saída, obtemos o pid do usuário de destino, que precisa ser interrompido se o tempo exceder o limite.

A solução

Supondo que seu usuário não tenha %code% privileges:

Esta solução é um pequeno script de fundo. Ele limita o uso por dia a um número definido de minutos, para definir o cabeçalho do script. Uma vez configurado (o que não é muito difícil), é muito fácil, e nenhuma ação adicional é necessária depois.

Para evitar a perda indesejada de dados de arquivos possivelmente abertos, 60 segundos antes de o limite de tempo do usuário-alvo expirar, uma mensagem será exibida em seu %code% :

O script

%pre%

Como usar

  1. Na sua área de trabalho (ou em qualquer outro lugar), crie uma pasta chamada: %code%
  2. Copie o script em um arquivo vazio, salve-o como %code% (sem extensão) dentro da pasta e torne-o executável
  3. Edite na cabeça do script o nome do usuário a ser limitado e o número máximo de minutos permitidos. No exemplo:

    %pre%
  4. Copie a pasta para o diretório %code% :

    %pre%
  5. Agora edite %code% para fazer o script executá-lo como %code% na inicialização:

    %pre%

    Pouco antes da linha

    %pre%

    outra linha:

    %pre%

Explicação; como funciona

  • Uma vez por 10 segundos, o script procura se o usuário-alvo estiver logado. Em caso positivo, "adiciona" um "ponto" a um uso total, a ser registrado em um arquivo ( %code% ). Se o limite diário for atingido, o script não permitirá mais o login do usuário, eliminando o processo, se existir.
  • Na alteração do dia (a data é gravada em um arquivo, portanto, a reinicialização não ajudará), o arquivo de log é excluído, permitindo que uma nova quantidade de tempo de uso seja acumulada.
  • Como o script é executado em inicialização , de %code% apenas usuário (s) com privilégios sudo pode parar o script, mesmo assim, somente se o usuário souber o nome do processo.

Pare o script

Caso você queira interromper o script, use o comando:

%pre%

Mas você precisaria da senha sudo para fazer isso.

    
___ answer450092 ___

Eu tentei %code% , mas não consegui trabalhar. Então fiz uma variante dele que funciona no meu Ubuntu. Isso é o que é necessário fazer para essa variante:

  1. Adicione um limite de tempo no arquivo %code% apenas com direitos de root. por exemplo. 1800 por 1800 segundos (30 minutos) limite diário.

  2. Crie os direitos %code% com root com os seguintes itens:

    %pre%
  3. Adicione a %code% :

    %pre%
  4. Reinicie o Ubuntu

___ answer954478 ___

Acabei de disponibilizar uma resposta facilmente. O código é explicado no tópico link . Resumindo: um limite configurado em minutos por dia, um cron job a cada minuto, uma mensagem ao usuário para mantê-lo informado e um logoff forçado.

Para baixar e instalar isso, abra um Terminal e execute os comandos abaixo:

%pre%

A senha do administrador será solicitada durante o processo de instalação (para instalar a tarefa cron, para copiar o script,…). De lá você será guiado por todos. Há também um ./uninstall.sh no mesmo lugar apenas no caso. É construído para funcionar com todas as distribuições baseadas no Ubuntu (Mint, etc ... provavelmente todas debian também). Se algum problema ocorrer, por favor me avise, incluindo a versão do sistema e o ambiente gráfico nos comentários:

%pre%

Thomas Baeckeroot

    
___ tag123bash ___ Bash (Bourne-Again SHell), é o shell usado na interface de linha de comando do Ubuntu por padrão. ___ tag123parentalcontrols ___ nos ajude a editar este wiki ___ answer72907 ___

Timekpr

pode ser usado em 11.10 executando o LightDM para configurar restrições para usuários adicionando a seguinte linha a %code%

%pre%

Podemos precisar remover libpam-smbpass para permitir que o usuário alterne até bug # 835310 está corrigido.

Todos os restritos definidos na janela do aplicativo funcionam conforme definido na GUI timekpr.

Para exibir o ícone timekpr-client no Unity, precisamos whitelist %code% nas configurações do painel do Unity e, além disso, precisamos adicionar %code% à seguinte linha em %code% :

%pre%

Para iniciar a contagem regressiva do tempo concedido, talvez tenhamos que iniciar o daemon timekpr com

%pre%

para 14.04:

Um novo release / fork do timekpr foi publicado para o Ubuntu 14.04 por Eduards Bezverhijs em seu %code% .

    
___ answer71652 ___

timekpr - Este programa rastreará e controlará o uso do computador de suas contas de usuário. Você pode limitar seu uso diário com base em uma duração de acesso cronometrada e configurar períodos do dia em que eles podem ou não efetuar login. Com esse aplicativo, os administradores podem limitar a duração do tempo de login da conta ou as horas de acesso à conta. O aplicativo funciona como um controle de tempo dos pais e será útil para os pais que desejam limitar o tempo de acesso das crianças.

%pre%

Você pode atualizar seu sistema com pacotes não suportados deste PPA não confiável adicionando %code% às fontes de software do seu sistema.

%pre%

Este pacote está disponível em:

PROBLEMA:

Eu denuncio o erro do Bug aqui então cruze o dedo e espere ....

    
___

___ answer70277 ___ Ubuntu & lt; = 11.10 O usuário segue este guia para o usuário do Ubuntu & gt; = 11,10 lê o aviso da página inferior: Sim, todos esses programas estão desatualizados e todas as suas perguntas foram respondidas aqui e co...
18.10.2011 / 22:50
4
respostas

Executando um script criado no Bloco de Notas (Windows) no Ubuntu

Eu criei um arquivo do Notepad no Windows e copiei para o Ubuntu. O arquivo contém algumas regras do iptables. Depois de tornar o arquivo executável usando chmod +x e executá-lo, não funcionou. No entanto, quando criei um arquivo do Ubuntu...
06.07.2015 / 11:30
0
respostas

Como encontrar as últimas informações válidas, possivelmente distribuídas por vários arquivos de log

___ qstnhdr ___ Como encontrar as últimas informações válidas, possivelmente distribuídas por vários arquivos de log ___ tag123bash ___ Bash (Bourne-Again SHell), é o shell usado na interface de linha de comando do Ubuntu por padrão. ___ tag123find _...
30.05.2016 / 11:46
0
respostas

Ubuntu: por que enfrento o erro de permissão negada quando um programa edita bash_profile [closed]

Eu estava tentando instalar o SugarLabs (um projeto python), há um comando no procedimento: ./osbuild shell que retorna esta saída: id: cannot find name for user ID 1001 id: cannot find name for group ID 1001 id: cannot find name for...
25.12.2016 / 19:55
1
resposta

udev não executa o script bash como argumento RUN [closed]

Estou tentando definir um script simples para ser executado sempre que um dispositivo de armazenamento USB estiver sendo conectado ao computador. Para essa tarefa, eu tenho um arquivo 100-usb.rules em /etc/udev/rules.d , que tem uma regra m...
13.09.2015 / 14:15
1
resposta

usando wget para fazer o download de xml para o script conky não manterá tags html

Estou tentando configurar um conkyrc para clima usando o seguinte script: #!/bin/bash station="KRAP.xml" wdir='/tmp/weather' update_xml() { if [ ! -e "$station" ]; then wget -q http://w1.weather.gov/xml/current_o...
31.07.2015 / 18:08