https://wiki.sj.ifsc.edu.br/api.php?action=feedcontributions&user=Ederson.luiz&feedformat=atomMediaWiki do Campus São José - Contribuições do(a) usuário(a) [pt-br]2024-03-28T14:14:39ZContribuições do(a) usuário(a)MediaWiki 1.35.9https://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=156869PJI2-2019-12019-04-16T22:18:14Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Usuário:juliana.camilo|Juliana Camilo]] ([mailto:juliana.camilo@ifsc.edu.br juliana.camilo@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo Prof. Ederson:''' 2a e 3a feira 17:30 h<br />
<br>'''Atendimento paralelo Profa. Juliana:''' 3a e 6a feira 18 hs<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=14/03/2019: Usuários e grupos e permissões - Exercício adicional=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
=== Atividade (não é necessário adicionar esta atividade ao relatório)===<br />
<br />
Considere o cenário abaixo relativo a grupos e usuários:<br />
<br />
[[imagem:usuariosgrupos.png]]<br />
<br />
* Crie um diretório em /home para cada grupo, com o nome grupo-arquivos (exemplo, o grupo lab1 terá um diretório chamado lab1-arquivos).<br />
<br />
* Dentro destes diretórios dos grupos, cada usuário deverá possuir um diretório com o seu nome.<br />
<br />
* O shell utilizado será o /bin/bash.<br />
<br />
* Defina a senha de cada usuário.<br />
<br />
* Exibir o arquivo que contém os usuários do sistema.<br />
<br />
* Exibir o arquivo que contém os grupos do sistema<br />
<br />
* Exibir o arquivo que contém as senhas criptografadas dos usuários do sistema.<br />
<br />
* Mudar o nome de login do usuário ana para anaclara<br />
<br />
* Mudar o nome do grupo alunos para usuarios<br />
<br />
* Inclua no grupo usuarios, os usuários luiz e marta.<br />
<br />
* Apague o grupo usuarios.<br />
<br />
* Apague os grupos lab1, lab2.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://ivanix.wordpress.com/2009/01/25/arquivos-de-usuarios-grupos-e-senhas/ Arquivos de usuários, grupos e senhas]<br />
<br />
[https://alexandrebbarbosa.wordpress.com/2014/05/26/criando-usuario-e-grupos-no-linux/ Administrando usuários e grupos no Linux]<br />
<br />
[http://pajeonline.blogspot.com.br/2010/12/como-listar-os-usuarios-e-grupos.html Como Listar os Usuários e Grupos Existentes no Linux?]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=21/03/2019: Instalação de Sistema Operacional=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 2048 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* '''sudo apt-get update'''<br />
* '''sudo apt-get install build-essential module-assistant dkms'''<br />
* '''sudo m-a prepare'''<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
===Exercícios===<br />
<br />
Neste exercício iremos efetuar a instalação de um sistema operacional diferente. Iremos instalar o Linux Mint.<br />
A configuração da máquina virtual deve ser a seguinte:<br />
<br />
* 3072 MB de Ram;<br />
* 20 GB de espaço em disco;<br />
* 2 processadores;<br />
* 64 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<br />
No decorrer da instalação deve ser efetuada a documentação com a explicação e imagens de cada etapa do processo, desde a criação da máquina virtual até a finalização da instalação.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=26/03/2019: Linha de comando: Instalação de softwares=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
=== Instalação de software ===<br />
<br />
A instalação de software pode ser feita de diferentes maneiras:<br />
* ''A partir do software em formato de código-fonte:'' envolve transferir o código-fonte do seu repositório, e então compilá-lo. Isso requer um maior conhecimento técnico, e é uma habilidade esperada para um Técnico que atue na área de Telecomunicações. <br />
* ''A partir do software já preparado (compilado):'' essa forma é mais simples, pois basicamente implica obter o software compilado e copiá-lo para dentro do seu sistema. É também a prática mais comum, por ser mais rápida, fácil e menos trabalhosa. Todas as distribuições Linux (e também o FreeBSD, entre outras variantes de Unix) provêem alguma forma de instalar softwares dessa maneira. Esses sistemas criam o conceito de '''pacote de software''', que é um arquivo especial contendo todos os arquivos do software a ser instalado, e todas as informações necessárias para que a instalação tenha sucesso (versão, dependências, e outras). <br />
<br />
No escopo desta disciplina de Projeto Integrador, são usados '''pacotes de software'''. Mas nada impede que se demonstre como seria realizar uma instalação a partir do código-fonte, caso exista a curiosidade.<br />
<br />
No Ubuntu Linux (e também nas distribuições originadas no Debian), o sistema de pacotes de software se chama ''dpkg'' (Debian Package). Existem diferentes formas de instalar e remover sofware, dentre elas:<br />
# '''Diretamente a partir dos arquivos de pacote de software:''' esses arquivos têm extensão ''.deb'', e devem ser instalados por meio do programa [http://manpages.ubuntu.com/manpages/trusty/man1/dpkg.1.html dpkg]. Os arquivos ''.deb'' devem ser obtidos manualmente pelo usuário, podendo ser copiados de DVDs do sistema, ou obtidos de servidores na rede. Para removê-los, deve-se usar também o ''dpkg''.<br />
# '''Obtendo automaticamente pacotes de software de repositórios:''' essa forma de administrar os pacotes é muito mais fácil, pois os pacotes de software são obtidos de servidores de pacotes na rede. Ela se baseia num sistema de gerenciamento de pacotes chamado de APT, e pode ser realizada por meio dos aplicativos [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get] ou [http://manpages.ubuntu.com/manpages/precise/en/man8/aptitude.8.html aptitude] (este é ainda mais fácil). Existem também versões gráficas para esses gerenciadores de pacotes.<br />
<br />
<br />
=== Instalação manual com ''dpkg'' ===<br />
<br />
Para instalar pacotes de software manualmente, primeiro devem-se obter os respectivos arquivos de instalação. Cada pacote de software está contido em um arquivo com extensão ''.deb''. Esses arquivos podem ser obtidos dos CD e DVD de instalação, ou de repositórios na Internet. Exemplos:<br />
* [http://ubuntu.c3sl.ufpr.br/ubuntu/ um repositório do Ubuntu no Brasil]<br />
* [http://archive.raspbian.org/raspbian/ Repositório para o Raspbian (Debian para o RaspberryPi)]<br />
<br />
<br />
Cada arquivo de instalação deve ser instalado da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -i nome_do_pacote.deb<br />
</syntaxhighlight><br />
<br />
Se o pacote de software não puder ser instalado, uma mensagem de erro é apresentada. Uma causa para esse problema é existirem dependências em relação a outros pacotes de software, os quais devem então ser instalados previamente.<br />
<br />
Para descobrir as dependência de um pacote podemos utilizar o comando a seguir:<br />
<br />
# sudo apt-cache depends nome-do-pacote<br />
<br />
A remoção de um pacote de software pode ser feita assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -r nome_do_pacote<br />
</syntaxhighlight><br />
<br />
Se o pacote a ser removido for dependência para outros pacotes instalados, a remoção será abortada.<br />
<br />
<br />
A listagem de todos os pacotes instalados pode ser obtida com este comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -l<br />
</syntaxhighlight><br />
<br />
A listagem dos arquivos instalados por um pacote é mostrada com este outro comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -L nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Informações detalhadas sobre um pacote podem ser mostradas assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -p nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://sourceforge.net/projects/nevernote/files/NixNote2%20-%202.0.2/ Pacote deb NixNote]<br />
<br />
[https://sourceforge.net/projects/openofficeorg.mirror/files/4.1.5/binaries/pt-BR/Apache_OpenOffice_4.1.5_Linux_x86-64_install-deb_pt-BR.tar.gz/download Pacote deb Open Office]<br />
<br />
[https://deb.opera.com/opera/pool/non-free/o/opera-stable/ Pacote deb do navegador Opera]<br />
<br />
=== Obtenção automática de software ===<br />
<br />
Os pacotes de softwares dos sistemas operacionais Ubuntu e Debian são organizados e disponibilizados em repositórios, que são servidores na Internet onde há cópias dos arquivos de instalação desses pacotes. Os repositórios são configurados durante a própria instalação do sistema, ficando registrados no arquivo [http://manpages.ubuntu.com/manpages/trusty/man5/sources.list.5.html /etc/apt/sources.list]. Esse arquivo pode ser modificado para incluir ou remover repositórios, quando necessário.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get]:<br />
* '''apt-get update''': atualiza o catálogo de pacotes de software conhecidos. Isso implica consultar os repositórios configurados e transferir as listas de pacotes lá existentes. Isso é importante para ter acesso a versões atualizadas dos pacotes de software.<br />
* '''apt-get install nome_do_pacote''': instala o pacote de software chamado ''nome_do_pacote''. Se houver dependências de outros pacotes, eles também serão instalados.<br />
* '''apt-get remove nome_do_pacote''': remove o pacote de software chamado ''nome_do_pacote''. se outros pacotes dependerem desse pacote, eles também serão removidos.<br />
* '''apt-get clean''': remove as cópias dos arquivos de pacotes de software transferidos e não mais necessários.<br />
* '''apt-get upgrade''': atualiza todos os pacotes de software para suas versões mais recentes, caso existam.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/aptitude.8.html aptitude]:<br />
* '''aptitude update''': mesmo que ''apt-get update''<br />
* '''aptitude install nome_do_pacote''': mesmo que ''apt-get install''<br />
* '''aptitude remove nome_do_pacote''': mesmo que ''apt-get remove''<br />
* '''aptitude search nome''': lista todos os pacotes de software conhecidos cujos nomes contenham ''nome''<br />
<br />
Links úteis:<br />
<br />
<br />
[https://repogen.simplylinux.ch/ Gerador de lista de repositórios sources.list]<br />
<br />
===Utilizando repositório PPA (Personal Package Archives)===<br />
<br />
PPA quer dizer Personal Package Archives, os repositórios deste tipo nada mais são do quer servidores na internet onde se encontram os programas que não estão nos repositórios oficias da sua distro.<br />
Mas essa é uma generalização porque alguns programas que estão na Central de Programas possuem PPA, caso do WINE por exemplo, a diferença entre instalar a versão da Central de Programas e instalar via PPA é que a versão que está na Central de Programas e suas possíveis atualizações já foram testadas e apresentam um nível bom de segurança e estabilidade, porém, não trazem os mesmos recursos muitas vezes, das versões mais recentes, coisa que o PPA trás.<br />
<br />
Mas antes de adicionar PPAs no seu sistema, procure informações referentes aos desenvolvedores, procedência, etc, pois se trata de programas de terceiros, não oficiais da lista de repositório da versão do seu sistema operacional.<br />
<br />
O comando em si é simples:<br />
<br />
# sudo add-apt-repository nome-do-repositorio-ppa<br />
<br />
Como exemplo, vamos utilizar o PPA do Wine, ele é um software que permite rodar aplicações Windows no Linux:<br />
<br />
# sudo add-apt-repository ppa:ubuntu-wine/ppa<br />
<br />
Posteriormente devemos atualizar a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalar o pacote:<br />
<br />
# sudo apt-get install wine<br />
<br />
Também podemos remover repositórios PPA, seja pelo fato de não estar mais disponível ou simplesmente porque não queremos mais utilizá-lo. Para isso utilizamos o comando a seguir:<br />
<br />
# sudo add-apt-repository -r ppa:endereço-do-repositorio<br />
<br />
e posteriormente atualizamos a lista:<br />
<br />
# sudo apt-get update<br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://www.ubuntuupdates.org/ppas Repositórios PPA]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=28/03/2019: Linha de comando: Instalação de softwares - Continuação=<br />
<br />
{{Collapse top | Aula 12}}<br />
<font size="3"><br />
<br />
<br />
=== Atividades ===<br />
<br />
''Execute os passos seguintes tanto com instalação manual quanto automática de software.''<br />
# Instale estes softwares:<br />
#* mplayer<br />
#* mencoder<br />
#* handbrake<br />
#* pppoe<br />
#* hostapd<br />
#* vlan<br />
# Após instalá-los, obtenha suas descrições. Veja também as descrições destes outros softwares já instalados:<br />
#* bash<br />
#* iproute2<br />
#* iptables<br />
#* tcpdump<br />
# Liste todos os softwares instalados.<br />
# Remova os softwares instalados nos passos anteriores.<br />
# Descubra como se podem instalar softwares em modo gráfico.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://www.debian.org/doc/manuals/apt-howto/ch-search.pt-br.html Como usar o APT - Obtendo informações sobre pacotes]<br />
<br />
[https://www.ubuntuupdates.org/ppas Lista de PPAs]<br />
<br />
[https://pkgs.org/ Pacotes .deb]<br />
<br />
[http://e-tinet.com/linux/41-softwares-linux-alternativa/ 41 Softwares para Linux]<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=02/04/2019: Linha de comando: Backups=<br />
<br />
{{Collapse top | Aula 13}}<br />
<font size="3"><br />
<br />
=== Backups ===<br />
<br />
Existem muitos programas para realizar cópias de segurança no Linux (chamadas de ''backup''). Porém tradicionalmente a forma mais simples de realizar uma cópia pessoal de um conjunto de arquivos e diretórios faz uso de um programa simples chamado ''tar''. <br />
<br />
=== tar ===<br />
<br />
O programa ''[http://manpages.ubuntu.com/manpages/trusty/en/man1/tar.1.html tar]'' é um utilitário do mundo Unix originalmente criado para backups em fita (daí seu nome: ''TApe aRchiver'', se bem que ''tar'' é também um trocadilho que pode significar piche, pois ele de certa forma gruda um arquivo ao outro). O resultado da execução do ''tar'' é um arquivo contendo todos os arquivos e diretórios que foram selecionados para inclusão. Esse arquivo ''tar'' pode ser então compactado, obtendo-se algo parecido com o que faz zip ou rar.<br />
<br />
Mas porque não usar então zip e rar ? Afinal, eles existem também no Linux ... No entanto, esses compactadores nasceram no mundo do antigo MS-DOS, e assim não são capazes de armazenar todos os atributos de arquivos que existem em sistemas Unix (informações tais como usuário e grupo dono do arquivo, permissões de acesso, tipo do arquivo, datas de último acesso e modificação). O ''tar'', pelo contrário, consegue preservar esses atributos, e por isto se torna mais adequado para uso no Unix em geral.<br />
<br />
Uso do ''tar'':<br />
* '''Criação de arquivo tar:''' <syntaxhighlight lang=bash>tar cf nome_arquivo.tar arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
* '''Mostrar o conteúdo de arquivo tar:''' <syntaxhighlight lang=bash>tar tvf nome_arquivo.tar </syntaxhighlight><br />
* '''Extrair conteúdo de arquivo tar:''' <syntaxhighlight lang=bash>tar xf nome_arquivo.tar</syntaxhighlight><br />
<br />
Os usos acima não compactam os arquivos incluídos dentro do arquivo ''tar''. Para compactá-los deve-se adicionar uma opção de compactação:<br />
* '''Criação de arquivo tar compactado:''' <br />
** '''''Com compress:''''' <syntaxhighlight lang=bash>tar cZf nome_arquivo.tar.Z arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
** '''''Com gzip:''''' <syntaxhighlight lang=bash>tar czf nome_arquivo.tar.gz arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
** '''''Com bzip2:''''' <syntaxhighlight lang=bash>tar cjf nome_arquivo.tar.bz2 arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
** '''''Com xz:''''' <syntaxhighlight lang=bash>tar cJf nome_arquivo.tar.xz arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
* '''Mostrar o conteúdo de arquivo tar:''' <br />
** '''''Com compress:''''' <syntaxhighlight lang=bash>tar tvZf nome_arquivo.tar.Z </syntaxhighlight><br />
** '''''Com gzip:''''' <syntaxhighlight lang=bash>tar tvzf nome_arquivo.tar.gz </syntaxhighlight><br />
** '''''Com bzip2:''''' <syntaxhighlight lang=bash>tar tvjf nome_arquivo.tar.bz2 </syntaxhighlight><br />
** '''''Com xz:''''' <syntaxhighlight lang=bash>tar tvJf nome_arquivo.tar.xz </syntaxhighlight><br />
* '''Extrair conteúdo de arquivo tar:''' <br />
** '''''Com compress:''''' <syntaxhighlight lang=bash>tar xZf nome_arquivo.tar.Z </syntaxhighlight><br />
** '''''Com gzip:''''' <syntaxhighlight lang=bash>tar xzf nome_arquivo.tar.gz </syntaxhighlight><br />
** '''''Com bzip2:''''' <syntaxhighlight lang=bash>tar xjf nome_arquivo.tar.bz2 </syntaxhighlight><br />
** '''''Com xz:''''' <syntaxhighlight lang=bash>tar xJf nome_arquivo.tar.xz </syntaxhighlight><br />
<br />
Parâmetros:<br />
<br />
-c - cria um novo arquivo tar;<br />
<br />
-M - cria, lista ou extrai um arquivo [https://www.thewebhelp.com/linux/creating-multivolume-tar-files/ multivolume];<br />
<br />
-p - mantém as permissões originais do(s) arquivo(s);<br />
<br />
-r - acrescenta arquivos a um arquivo tar;<br />
<br />
-t - exibe o conteúdo de um arquivo tar;<br />
<br />
-v - exibe detalhes da operação;<br />
<br />
-w - pede confirmação antes de cada ação;<br />
<br />
-x - extrai arquivos de um arquivo tar;<br />
<br />
-z - comprime ou extrai arquivos tar resultante com o gzip;<br />
<br />
-j - comprime ou extrai arquivos tar resultante com o bz2;<br />
<br />
-f - especifica o arquivo tar a ser usado;<br />
<br />
-C - especifica o diretório dos arquivos a serem armazenados.<br />
<br />
=== Compactadores no modo texto ===<br />
<br />
Vários compactadores de arquivos existem no Linux, e o ''nautilus'' simplifica sua seleção e uso. Esses compactadores podem ser usados também no modo texto ... aliás, eles originalmente foram criados para serem usados dessa forma ! O que o ''nautilus'' faz é facilitar seu uso por meio de uma interface gráfica.<br />
<br />
Os principais compactadores são:<br />
* [http://manpages.ubuntu.com/manpages/karmic/en/man1/compress.1.html compress]: compactador mais antigo e comum nos Unix em geral, porém em desuso. Gera arquivos compactados com extensão .Z. Precisa do pacote de software ''ncompress'' no Ubuntu. Exemplo de uso: <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ compress palavras.txt <br />
msobral@curl2:~/tmp$ ls -l palavras.txt.Z <br />
-rw-rw-r-- 1 msobral msobral 932433 Jun 29 14:59 palavras.txt.Z<br />
msobral@curl2:~/tmp$ uncompress palavras.txt.Z <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt</syntaxhighlight><br />
* [http://manpages.ubuntu.com/manpages/karmic/en/man1/gzip.1.html GNU zip]: compactador bastante utilizado, com maior poder de compactação que ''compress''. Gera arquivos compactados com extensão .gz. Já vem instalado no Ubuntu. Exemplo de uso: <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ gzip palavras.txt<br />
msobral@curl2:~/tmp$ ls -l palavras.txt.gz<br />
-rw-rw-r-- 1 msobral msobral 532756 Jun 29 14:59 palavras.txt.gz<br />
msobral@curl2:~/tmp$ gunzip palavras.txt.gz <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt<br />
</syntaxhighlight><br />
* [http://manpages.ubuntu.com/manpages/karmic/en/man1/bzip2.1.html bzip2]: vem sendo bastante usado por ter um poder de compactação ainda maior, porém à custa de maior processamento (compactação fica mais lenta). Gera arquivos compactados com extensão .bz2. Também já vem instalado no Ubuntu. <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ bzip2 palavras.txt<br />
msobral@curl2:~/tmp$ ls -l palavras.txt.bz2 <br />
-rw-rw-r-- 1 msobral msobral 720099 Jun 29 14:59 palavras.txt.bz2<br />
msobral@curl2:~/tmp$ bunzip2 palavras.txt.bz2 <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt<br />
</syntaxhighlight><br />
* [http://manpages.ubuntu.com/manpages/trusty/en/man1/xz.1.html xz]: outro compactador bastante usado recentemente. Pode compactar ainda mais que ''bzip2'', porém a um custo computacional maior. Isso significa que ele demora mais para compactar um arquivo que esse outro compactador. Gera arquivos com extensão ''.xz''. Ele já vem instalado no Ubuntu. <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ xz palavras.txt <br />
msobral@curl2:~/tmp$ ls -l palavras.txt.xz <br />
-rw-rw-r-- 1 msobral msobral 387056 Jun 29 14:59 palavras.txt.xz<br />
msobral@curl2:~/tmp$ unxz palavras.txt.xz <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt<br />
</syntaxhighlight><br />
<br />
* ... outros menos populares no mundo do Linux, tais como [http://manpages.ubuntu.com/manpages/karmic/en/man1/zip.1.html zip], [http://manpages.ubuntu.com/manpages/karmic/en/man1/rar.1.html rar] e [http://manpages.ubuntu.com/manpages/karmic/en/man1/zoo.1.html zoo].<br />
<br />
Note que os compactadores ''compress'', ''gzip'', ''bzip2'' e ''xz'' compactam um arquivo por vez. Assim, com eles não é possível juntar vários arquivos e diretórios dentro de um único arquivo compactado (o que se faz corriqueiramente com '''zip''' ou '''rar''' ...). Portanto, se for necessário compactar um diretório ou um conjunto de arquivos, o melhor é combinar um compactador com o programa [http://manpages.ubuntu.com/manpages/karmic/en/man1/tar.1.html tar].<br />
<br />
<br />
Leituras interessantes:<br />
<br />
[https://pt.wikipedia.org/wiki/Tar_(computa%C3%A7%C3%A3o) Comando TAR]<br />
<br />
=== Exercícios ===<br />
<br />
Faça os exercícios abaixo usando os compactadores no modo texto:<br />
<br />
# Procure um arquivo de texto (extensão .txt, .html, ou .doc) com ao menos 100 kB e compacte-o com compress, gzip, bzip2 e xz. Compare os tamanhos dos arquivos resultantes.<br />
# Usando o programa tar, compacte todo o diretório ''Documentos'' do usuário ''aluno''. Experimente criar o arquivo tar sem compactação, e depois compactado com cada um dos compactadores vistos. Você terá portanto como resultado quatro arquivos tar diferentes ...<br />
# Descompacte os arquivos tar gerados na questão anterior. Para evitar sobreposição, descompacte cada um deles em um diretório separado.<br />
<br />
<br />
Baixe o arquivo do link abaixo e faça o exercício proposto:<br />
<br />
[https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing Arquivos_gerais.tar.gz]<br />
<br />
# Descompacte o arquivo.<br />
# Separe os arquivos em suas respectivas pastas (vídeos, músicas, documentos, imagens) através de comandos para mover no terminal.<br />
# Compacte os arquivos usando o compress, gzip, bzip2 e xz em conjunto com o tar. Compare os tamanhos dos arquivos resultantes.<br />
# Liste o conteúdo de cada um dos arquivos compactados<br />
# Descompacte os arquivos criados anteriormente no diretório /home/aluno/arquivos_gerais<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}<br />
<br />
=04/04/2019: Configuração de rede=<br />
<br />
{{Collapse top | Aula 14}}<br />
<font size="3"><br />
<br />
===Endereço IPv4===<br />
<br />
<br />
====História====<br />
<br />
----<br />
<br />
A internet não foi criada para uso comercial que temos atualmente, foi de fato um projeto militar Americano conhecido como ARPANET que tinha por objetivo conectar vários nós tendo a forma parecida com uma teia de aranha, onde se um nó fosse desconectado não haveria problema com os demais.<br />
<br />
Com o crescimento da ARPANET nas Universidades Americanas, o principal tráfego de informações eram discussões sobre assuntos acadêmicos entre professores. Nessa época os criadores dessa rede não tinham consciência que esse projeto iria tomar gigantes proporções que hoje presenciamos.<br />
<br />
Na internet, cada host e cada roteador tem um endereço IP (Internet Protocol), que codifica seu número de rede e seu número de host. Essa combinação é única, ou seja, duas máquinas conectadas a internet não possuem o mesmo endereço IP.<br />
<br />
Devido ao alto crescimento da ARPANET, após cinco anos houve o surgimento do protocolo TCP/IP (Transmission Control Protocol/Internet Protocol) um protocolo que utilizamos até hoje, com um endereço de 32 bits e mais de 4,2 bilhões de combinações de endereços possíveis, que para época esse número era um exagero.<br />
<br />
Segundo Vint Cerf (2010), vice-presidente do Google, os endereços de IP podem esgotar em até um ano, foi exatamente o que aconteceu em Fevereiro de 2011. O problema não se agravou mais e anteriormente devido a várias tecnologias e medidas paliativas que surgiram ao longo da década de 1990. Podemos citar CIDR (Classless Inter-Domain Routing), RFC 1918 (Address Allocation for Private Internets), NAT (Network Address Translation) e DHCP (Dynamic Host Configuration Protocol) fizeram com que tardassem esse esgotamento de IP’s na internet.<br />
<br />
<br />
====Esgotamento dos endereços IPv4====<br />
<br />
----<br />
<br />
É importante informar que a divisão dos blocos IPv4 não é nada ponderada, metade dos endereços foram destinados aos Estados Unidos (“criador do backbone, principal estrutura da Internet”) e a outra metade foi distribuída para os demais regiões geográficas do mundo.<br />
<br />
No inicio da distribuição dos endereços, existiram empresas e universidades que compraram 16 milhões de endereços. Hoje seria raro essas entidades devolverem o que adquiriram para uma melhor redistribuição dos endereços. Mas se essa divisão dos IPv4 fosse de forma igual para tal demanda de sua determinada região, não adiantaria em nada, estaríamos sujeitos do mesmo jeito ao esgotamentos dos IPs. Por esse e outros motivos que a IANA mais tarde necessitou de regras mais rígidas para a distribuição dos IPv4 para o mundo.<br />
<br />
O IANA (Internet Assigned Numbers Authority) é responsável pelo controle de todos os números IPs e, atualmente, ele realiza suas operações através da ICANN (). A responsabilidade sobre uma parte dos endereços é delegada pela IANA para cada um dos Registros Regionais de Internet, que os gerenciam e distribuem dentro de suas respectivas regiões geográficas. Em nossa região, o responsável é o LACNIC (Latin America and Caribbean Network Information Centre).<br />
<br />
====Classes de endereços IPv4====<br />
<br />
----<br />
<br />
Um endereço IPv4 é formado por 32 bits que é o mesmo que dizermos que possui quatro octetos representados na forma decimal (ex: 192.168.0.1). Uma parte desse endereço (bits mais significativos) indicam-nos a rede e a outra parte (bits menos significativos) indicam-nos qual a máquina dentro da rede.<br />
<br />
Com o objetivo de serem possíveis redes de diferentes dimensões, foram definidas cinco diferentes classes de endereços IP (Classes: A, B, C, D e E).<br />
<br />
Originalmente, o espaço de endereçamento IP foi dividido estruturas de tamanho fixo designadas de “classes de endereço”. As principais são a classe A, classe B e classe C. Com base nos primeiros bits (prefixo) de um endereço IP, conseguimos facilmente determinar rapidamente a qual a classe pertence de determinado endereço IP.<br />
<br />
De forma a resumir a informação relativamente às classes de redes IP, criei a seguinte tabela:<br />
<br />
<div style="text-align: center;">[[Arquivo:classesipv4.jpg]]</div><br/><br />
<br />
Analisando as três principais classes (A, B e C) podemos verificar o seguinte:<br />
<br />
A classe A possui um conjunto de endereços que vão desde o 1.0.0.0 até 127.0.0.0, onde o primeiro octeto (primeiros 8 bits N.H.H.H) de um endereço IP identifica a rede e os restantes 3 octetos ( 24 bits) irão identificar um determinado host nessa rede.<br />
<br />
Exemplo de um endereço Classe A – 120.2.1.0<br />
<br />
<br />
A classe B possui um conjunto de endereços que vão desde o 128.0.0.0 até 191.255.0.0, onde os dois primeiros octetos (16 bits N.N.H.H) de um endereço IP identificam a rede e os restantes 2 octetos ( 16 bits) irão identificar um determinado host nessa rede.<br />
<br />
Exemplo de um endereço Classe B – 152.13.4.0<br />
<br />
<br />
A classe C possui um conjunto de endereços que vão desde o 192.0.0.0 até 223.255.255.0, onde os três primeiros octetos (24 bits N.N.N.H) de um endereço IP identificam a rede e o restante octeto ( 8 bits) irão identificar um determinado host nessa rede.<br />
<br />
Exemplo de um endereço Classe C – 192.168.10.0<br />
<br />
<br />
====Classes especiais====<br />
<br />
----<br />
<br />
Existem ''classes especiais'' na Internet que não são consideradas públicas, não são consideradas como ''endereçáveis'', são reservadas, por exemplo, para a comunicação com uma rede privada ou com o computador local ("[https://pt.wikipedia.org/wiki/Localhost localhost]").<br />
<br />
<br />
{| class="wikitable"<br />
|+ Blocos de Endereços Reservados<br />
|-<br />
! [[CIDR]] Bloco de Endereços || Descrição || Referência<br />
|-<br />
| 0.0.0.0/8 || Rede corrente (só funciona como endereço de origem) || RFC 1700<br />
|-<br />
| 10.0.0.0/8 || [https://pt.wikipedia.org/wiki/Intranet Rede Privada] || RFC 1918<br />
|-<br />
| 14.0.0.0/8 || Rede Pública || RFC 1700<br />
|-<br />
| 39.0.0.0/8 || Reservado || RFC 1797<br />
|-<br />
| 127.0.0.0/8 || [https://pt.wikipedia.org/wiki/Localhost Localhost] || RFC 3330<br />
|-<br />
| 128.0.0.0/16 || Reservado (IANA) || RFC 3330<br />
|-<br />
| 169.254.0.0/16 || [https://pt.wikipedia.org/wiki/Zeroconf Zeroconf] || RFC 3927<br />
|-<br />
| 172.16.0.0/12 || [https://pt.wikipedia.org/wiki/Rede_privada Rede privada] || RFC 1918<br />
|-<br />
| 191.255.0.0/16 || Reservado (IANA) || RFC 3330<br />
|-<br />
| 192.0.2.0/24 || Documentação || RFC 3330<br />
|-<br />
| 192.88.99.0/24 || [https://pt.wikipedia.org/wiki/IPv6 IPv6] para IPv4 || RFC 3068<br />
|-<br />
| 192.168.0.0/16 || [https://pt.wikipedia.org/wiki/Intranet Rede Privada] || RFC 1918<br />
|-<br />
| 198.18.0.0/15 || Teste de benchmark de redes || RFC 2544<br />
|-<br />
| 223.255.255.0/24 || Reservado || RFC 3330<br />
|-<br />
| 224.0.0.0/4 || [https://pt.wikipedia.org/wiki/Multicast Multicasts] (antiga rede Classe D) || RFC 3171<br />
|-<br />
| 240.0.0.0/4 || Reservado (antiga rede Classe E) || RFC 1700<br />
|-<br />
| 255.255.255.255 || Broadcast ||<br />
|}<br />
<br />
<br />
====Rede privada====<br />
<br />
----<br />
<br />
Na arquitetura para endereçamentos da Internet, uma rede privada (private network) é uma rede que usa o espaço privado de endereços IP, seguindo os padrões estabelecidos pela RFC 1918 para redes IPv4 e RFC 4193 para IPv6. Estes endereços são associados aos dispositivos que precisam se comunicar com outros dispositivos em uma rede privada (que não faz parte da Internet).<br />
<br />
As redes privadas estão se tornando muito comuns nos escritórios (LAN), pois não há a necessidade de que todos os computadores de uma organização possuam um IP universalmente endereçável. Outra razão que torna importante os IPs privados, é o número limitado de IPs públicos. O IPv6 foi criado para resolver este último problema.<br />
<br />
Os Roteadores são configurados para descartar qualquer tráfego que use um IP privado. Este isolamento garante que uma rede privada tenha uma maior segurança pois não é possível, em geral, ao mundo externo criar uma conexão direta a uma máquina que use um IP privado. Como as conexões não podem ser feitas entre diferentes redes privadas por meio da internet, diferentes organizações podem usar a mesma faixa de IP sem que haja conflitos (ou seja, que uma comunicação chegue acidentalmente a um elemento que não deveria).<br />
<br />
Se um dispositivo em uma rede privada deve se comunicar com outras redes, é necessário que haja um "gateway" para garantir que a rede externa seja vista com um endereço que seja "real" (ou público) de maneira que o roteador permita a comunicação. Normalmente este gateway será um service NAT (‘’Network address translation’’) ou um Servidor Proxy. Isto, porém, pode causar problemas se a organização tentar conectar redes que usem os mesmos endereços privados.<br />
<br />
Os endereços atualmente reservados a redes privadas na internet são:<br />
<br />
<br />
{| class="wikitable"<br />
! Nome !! Faixa de endereços IP!! Número de IPs<br />
! ''[[classful network|classful]]'' Descrição !! Maior bloco [[CIDR]] !! Referência<br />
|-<br />
| 8-bit block || 10.0.0.0 – 10.255.255.255 || 16,777,216 || Uma classe A || 10.0.0.0/8 || rowspan="3" | RFC 1597 (obsoleto), RFC 1918<br />
|-<br />
| 12-bit block || 172.16.0.0 – 172.31.255.255 || 1,048,576 || 16 classes B || 172.16.0.0/12<br />
|-<br />
| 16-bit block || 192.168.0.0 – 192.168.255.255 || 65,536 || 256 classes C || 192.168.0.0/16<br />
|-<br />
| 16-bit block || 169.254.0.0 – 169.254.255.255 || 65,536 || Uma classe B || 169.254.0.0/16 || RFC 3330, RFC 3927<br />
|}<br />
<br />
<br />
<br />
===Endereço IPv6===<br />
<br />
<br />
====História====<br />
<br />
----<br />
<br />
O IP versão 6 começou a ser desenvolvido no início da década de 1990, com o objetivo de ser a solução definitiva para o esgotamento de endereços IPs na Internet, tendo esse como o principal objetivo.<br />
<br />
Em 1993, o IESG (Internet Engineering Steering Group) criou um grupo de trabalho para uma nova versão do protocolo IP, o IPNGWG (IP Next Generation Working Group), com base em alguns objetivos que deveriam ser alcançados. O grupo de trabalho, então, selecionou protocolos "candidatos" para a camada de rede da arquitetura TCP/IP. O vencedor foi o SIPP (Simple Internet Protocol Plus), por diferir menos do IPv4 e ter um plano de transição melhor. Mas uma combinação de aspectos positivos dos três protocolos candidatos foi feita e com isso gerou-se a recomendação para a versão 6 do IP em novembro de 1994.<br />
<br />
O protocolo IPv6 não foi só criado para resolver o problema de quantidades de endereços, foi também para disponibilizar novos serviços e benefícios que não existiam no IPv4 ou que não eram utilizados de forma otimizada. Abaixo podemos citar alguns desses benefícios:<br />
<br />
* Espaço de endereçamento (128 bits);<br />
* Formato de cabeçalho simplificado;<br />
* Arquitetura hierárquica de rede para um roteamento eficiente;<br />
* Suporte aos atuais protocolos de roteamento;<br />
* Serviços de autoconfiguração;<br />
* Implementação de IPSec (IP Security Protocol) de forma nativa;<br />
* Crescimento do número de endereços multicast;<br />
* Implantações para qualidade de serviço;<br />
* Suporte a serviços de tempo real.<br />
<br />
Para a internet para fazer uso das vantagens do IPv6 sobre IPv4, a maioria dos hosts da Internet, bem como as redes de conexão, precisam implantar este protocolo. Enquanto a implantação do IPv6 está acelerando, especialmente na região da Ásia-Pacífico e alguns países europeus, áreas como as Américas e a África são comparativamente um atraso na implantação do IPv6. A troca de tráfego entre as duas redes IPv4 e IPv6 requer tradutores especiais o que torna a rede menos eficiente comparado uma rede completamente IPv6. Os sistemas operacionais modernos dos computadores implementam um protocolo de duplo software para acesso transparente para ambas as redes, quer sejam elas iguais, ou através de um protocolo de tunelamento como 6to4, 6in4, ou Teredo.<br />
<br />
Em dezembro de 2012, apesar de marcar o seu 14º aniversário, o IPv6 está apenas em sua infância em termos de implantação em todo o mundo em geral. Um estudo realizado em 2008 pelo Google Inc indicou que a penetração do protocolo IPv6 ainda era menos de 1% dos hosts habilitados para a Internet em qualquer país, naquela época.<br />
<br />
<br />
====Formato do endereçamento IPv6====<br />
<br />
----<br />
<br />
Os endereços IPv6 são números de 128 bits (16 bytes). Ao invés de adotar a notação decimal pontuada do IPv4, onde o endereço é formado por quadro bytes separados por ".", o IPv6 representa seu endereço na forma de 8 palavras de 16 bits, separadas por ":". Cada uma das palavras que forma o endereços IPv6 é representada em hexadecimal.<br />
<br />
<br />
Dessa forma, um endereço IPv6 tem o seguinte formato:<br />
<br />
<syntaxhighlight lang=bash>FE80:0000:0000:0000:68DA:8909:3A22:FECA<br />
</syntaxhighlight><br />
<br />
<br />
As palavras que forem formadas unicamente por quatro zeros em hexadecimal podem ser substituídas por um único zero, conforme o exemplo a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
FE80:0:0:0:68DA:8909:3A22:FECA<br />
</syntaxhighlight><br />
<br />
<br />
A escrita de cada endereço IPv6 é longa, o que dificulta sua representação. Com o IPv6, o serviço de DNS que oferece um nome fácil de usar a um computador será mais necessário do que nunca, pois é simplesmente impossível decorar os endereços de IPv6 presente em uma infraestrutura de rede. Para tornar os endereços ainda mais compactos, uma sequência de zeros pode ser substituídas pelo símbolo "::", conforme o exemplo abaixo:<br />
<br />
<syntaxhighlight lang=bash><br />
FE80::68DA:8909:3A22:FECA<br />
</syntaxhighlight><br />
<br />
<br />
Contudo, essa simplificação pode ocorrer uma única vez no endereço, ou não será possível determinar quantos zeros correspondem a cada símbolo "::".<br />
<br />
<br />
O símbolo "::" pode estar também no início do endereço. Por exemplo, o endereço loopback IPv6 é representado como:<br />
<br />
<syntaxhighlight lang=bash><br />
::1, que é equivalente a 0000:0000:0000:0000:0000:0000:0000:0001<br />
</syntaxhighlight><br />
<br />
<br />
Os endereços IPv6 são seguidos de uma máscara de sub-rede na forma compacta (/"tamanho do prefixo"), de maneira similar aos endereços IPv4:<br />
<br />
<syntaxhighlight lang=bash><br />
FE80::68DA:8909:3A22:FECA/80<br />
</syntaxhighlight><br />
<br />
=== Interfaces de rede ===<br />
<br />
----<br />
<br />
Qualquer dispositivo (físico ou lógico) capaz de transmitir e receber datagramas IP. Interfaces de rede ethernet são o exemplo mais comum, mas há também interfaces PPP (seriais), interfaces tipo túnel e interfaces ''loopback''. De forma geral, essas interfaces podem ser configuradas com um endereço IP e uma máscara de rede, e serem ativadas ou desabilitadas. Em sistemas operacionais Unix a configuração de interfaces de rede se faz com o programa [http://manpages.ubuntu.com/manpages/karmic/pt_BR/man8/ifconfig.8.html ifconfig]:<br />
<br />
Para mostrar todas as interfaces:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig -a<br />
ppp0 Link encap:Point-to-Point Protocol<br />
inet addr:189.30.70.200 P-t-P:200.138.242.254 Mask:255.255.255.255<br />
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1<br />
RX packets:34260226 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:37195398 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:3<br />
RX bytes:19484812547 (18582.1 Mb) TX bytes:10848608575 (10346.0 Mb)<br />
<br />
eth0 Link encap:Ethernet HWaddr 00:19:D1:7D:C9:A9<br />
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0<br />
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br />
RX packets:37283974 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:42055625 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:1000<br />
RX bytes:20939614658 (19969.5 Mb) TX bytes:18284980569 (17437.9 Mb)<br />
Interrupt:16 Base address:0xc000<br />
<br />
lo Link encap:Local Loopback<br />
inet addr:127.0.0.1 Mask:255.0.0.0<br />
UP LOOPBACK RUNNING MTU:16436 Metric:1<br />
RX packets:273050 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:273050 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:0<br />
RX bytes:21564572 (20.5 Mb) TX bytes:21564572 (20.5 Mb)<br />
aluno@M1:~> <br />
</syntaxhighlight><br />
<br />
==== Configuração manual e temporária ====<br />
<br />
----<br />
<br />
Para configurar uma interface de rede (que fica automaticamente ativada):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0 192.168.1.100 netmask 255.255.255.0<br />
</syntaxhighlight><br />
<br />
Para desativar uma interface:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0 down<br />
</syntaxhighlight><br />
<br />
Para ativar uma interface:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0 up<br />
</syntaxhighlight><br />
<br />
Ao se configurar uma interface de rede, cria-se uma rota automática para a subrede diretamente acessível via aquela interface. Isto se chama '''''roteamento mínimo'''''.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0 192.168.10.0 netmask 255.255.0.0<br />
aluno@M1:~> netstat -rn<br />
Kernel IP routing table<br />
Destination Gateway Genmask Flags MSS Window irtt Iface<br />
192.168.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0<br />
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo<br />
dayna@dayna:~><br />
</syntaxhighlight><br />
<br />
[https://www.thegeekstuff.com/2012/05/route-flags/ Flags netstat]<br />
<br />
Usualmente, é suficiente definir uma única rota adicional para um computador, chamada de '''rota default''' (ou ''rota padrão''). Essa rota tem o seguinte significado: se o destino não estiver em minha própria subrede, e nenhuma outra rota específica existir para a subrede onde se encontra, então repasse o pacote para o roteador indicado. Em um computador Linux isso pode ser feito assim:<br />
<br />
<syntaxhighlight lang=bash><br />
# adiciona a rota default, que passa pelo roteador 192.168.10.100<br />
route add default gw 192.168.10.100<br />
</syntaxhighlight><br />
<br />
<br />
Para que o acesso a rede esteja completo, falta apenas configurar um servidor DNS para ser possível a tradução de nomes de domínio para endereços IP. Esta configuração pode ser feita da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
# Editar o arquivo /etc/resolv.conf<br />
vi /etc/resolv.conf<br />
<br />
#Editar o seu conteúdo e inserir a linha abaixo<br />
nameserver 200.135.37.65<br />
</syntaxhighlight><br />
<br />
<br />
Além de toda a configuração básica apresentada acima, pode-se associar mais de um endereço a uma mesma interface de rede. Isto se chama '''''IP alias''''':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0:0 192.168.1.110 netmask 255.255.255.0<br />
aluno@M1:~> ifconfig eth0:1 192.168.2.100 netmask 255.255.255.0<br />
aluno@M1:~> ifconfig -a<br />
eth0 Link encap:Ethernet HWaddr 00:19:D1:7D:C9:A9<br />
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0<br />
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br />
RX packets:37295731 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:42068558 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:1000<br />
RX bytes:20942258027 (19972.0 Mb) TX bytes:18294794452 (17447.2 Mb)<br />
Interrupt:16 Base address:0xc000<br />
<br />
eth0:0 Link encap:Ethernet HWaddr 00:19:D1:7D:C9:A9<br />
inet addr:192.168.1.110 Bcast:192.168.1.255 Mask:255.255.255.0<br />
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br />
Interrupt:16 Base address:0xc000<br />
<br />
eth0:1 Link encap:Ethernet HWaddr 00:19:D1:7D:C9:A9<br />
inet addr:192.168.2.100 Bcast:192.168.2.255 Mask:255.255.255.0<br />
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br />
Interrupt:16 Base address:0xc000<br />
aluno@M1:~><br />
</syntaxhighlight><br />
<br />
==== Configuração permanente ====<br />
<br />
----<br />
<br />
Todo sistema operacional possui alguma forma de configurar suas interfaces de rede, para que sejam automaticamente ativadas no boot com seus endereços IP. Por exemplo, em sistemas Linux Ubuntu e Debian, a configuração de rede se concentra no arquivo [http://manpages.ubuntu.com/manpages/xenial/man5/interfaces.5.html /etc/network/interfaces]:<br />
<br />
<syntaxhighlight lang=text><br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
address 127.0.0.1<br />
netmask 255.0.0.0<br />
<br />
# a interface ethernet eth0<br />
auto eth0<br />
iface eth0 inet static<br />
address 192.168.1.100<br />
netmask 255.255.255.0<br />
gateway 192.168.1.254<br />
dns-nameservers 200.135.37.65<br />
</syntaxhighlight><br />
<br />
Esses arquivo é lido pelos scripts [http://manpages.ubuntu.com/manpages/xenial/en/man8/ifup.8.html ifup] e [http://manpages.ubuntu.com/manpages/xenial/en/man8/ifdown.8.html ifdown]. Esses scripts servem para ativar ou parar interfaces específicas, fazendo todas as operações necessárias para isto:<br />
<br />
<syntaxhighlight lang=bash><br />
# Ativa a interface eth0<br />
ifup eth0<br />
<br />
# Desativa a interface eth0<br />
ifdown eth0<br />
</syntaxhighlight><br />
<br />
Para ativar, desativar ou recarregar as configurações de todas as interfaces de rede:<br />
<br />
<syntaxhighlight lang=bash><br />
# desativa todas as interfaces de rede<br />
sudo /etc/init.d/networking stop<br />
<br />
# ativa todas as interfaces de rede<br />
sudo /etc/init.d/networking start<br />
<br />
# recarrega as configurações de todas as interfaces de rede<br />
sudo /etc/init.d/networking restart<br />
</syntaxhighlight><br />
<br />
== O que todo host deve possuir ==<br />
<br />
----<br />
<br />
Com o que se fez até o momento, pode-se concluir que todo host (computador, tablet, smartphone, ..., qualquer dispositivo que rode aplicações da Internet) precisa de:<br />
* '''Endereço IP e máscara de rede''': um host precisa de um endereço para que possa se comunicar com outros hosts. A máscara de rede informa o tamanho da subrede IP em que ele se encontra.<br />
* '''Rota default (padrão)''': para se comunicar com hosts de outras subredes, é preciso enviar os pacotes para um roteador que saiba encaminhá-los a seus destinos. O roteador ''default'' (ou ''padrão'') é um roteador para quem se destinam todos esses pacotes. Tecnicamente ele corresponde à rota para o destino ''0.0.0.0/0''.<br />
* '''Endereço IP do servidor DNS''': usuários costumam endereçar hosts e servidores por seus nomes de domínio, e não por seus endereços IP. Isso é muito mais fácil de memorizar do que os endereços numéricos. Como explicado em aula, nomes de domínio são análogos a nomes de assinantes em um catálogo telefônico. No entanto, as aplicações precisam dos endereços IP para se comunicarem. O servidor DNS faz a tradução de nome de domínio para endereço IP, e é usado pelas aplicações transparentemente (isso é, você não percebe que isso ocorre). O endereço desse servidor deve ser configurado em cada host, para que se possam traduzir nomes de domínio.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 14}}<br />
<br />
=09/04/2019: Configuração de rede - Subredes=<br />
<br />
{{Collapse top | Aula 15}}<br />
<font size="3"><br />
<br />
<br />
===Sistema binário===<br />
<br />
O sistema binário ou de base 2 é um sistema de numeração posicional em que todas as quantidades se representam com base em dois números, ou seja, zero e um (0 e 1).<br />
<br />
Os computadores digitais trabalham internamente com dois níveis de tensão, pelo que o seu sistema de numeração natural é o sistema binário. Com efeito, num sistema simples como este é possível simplificar o cálculo, com o auxílio da lógica booliana. Em computação, chama-se um dígito binário (0 ou 1) de bit, que vem do inglês Binary Digit. Um agrupamento de 8 bits corresponde a um byte (Binary Term). Um agrupamento de 4 bits, ainda, é chamado de nibble.<br />
<br />
Um processador é formado por milhares de blocos lógicos complexos, formados por portas lógicas básicas, e o funcionamento destas está amparado por um postulado fundamental à eletrônica digital que determina que um circuito opere apenas com dois níveis de tensão bem definidos. Em um circuito digital TTL (Transistor Transistor Logic), os dois níveis de tensão padronizados são 0V (zero volt) e 5V (cinco volts). Ao projetar um sistema digital, ao invés de trabalhar com níveis de tensão trabalha-se com níveis lógicos, então, no caso do circuito TTL, 0V será representado por “0” e 5V será representado por “1”, e os níveis de tensão entre eles serão ignorados, ou seja, adotar-se-á uma faixa até a qual será considerado nível lógico zero, e a partir dela, nível lógico 1. Neste caso, de 0V a 2,5V temos “0”, e a partir daí até 5V temos “1”.<br />
<br />
O sistema binário é base para a Álgebra booliana (de George Boole — matemático inglês), que permite fazer operações lógicas e aritméticas usando-se apenas dois dígitos ou dois estados (sim ou não, verdadeiro ou falso, tudo ou nada, ligado ou desligado, 1 ou 0). Toda a electrónica digital e computação estão baseadas nesse sistema binário e na lógica de Boole, que permite representar por circuitos electrónicos digitais (portas lógicas) os números, caracteres, realizar operações lógicas e aritméticas. Os programas de computadores são codificados sob forma binária e armazenados nas mídias (memórias, discos, etc) sob esse formato. Assim, para informação armazenada na memória RAM do computador, o formato será de voltagem mais alta (1) ou mais baixa (0). Em discos magnéticos a binariedade se dará por diferença de polaridade, positiva ou negativa.<br />
<br />
====Convertendo decimal para binário====<br />
<br />
----<br />
<br />
Para converter um número decimal para binário, basta realizar divisões sucessivas do número decimal por 2 (base do sistema binário) e verificar se essa divisão possui resto ou não. Se possuir, o valor é 1 se não possuir, o valor é 0.<br />
<br />
Exemplo de conversão do valor 29 para binário:<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:binario29.jpg]]</div><br/><br />
<br />
<br />
Exemplo de conversão do valor 10 para binário:<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:binario10.jpg]]</div><br/><br />
<br />
<br />
====Convertendo binário para decimal====<br />
<br />
----<br />
<br />
Para converter um número binário para decimal, basta multiplicar cada bit pelo seu valor de posição e somar os resultados.<br />
<br />
Exemplo de conversão do valor 10101 para decimal:<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:decima10101.jpg]]</div><br/><br />
<br />
<br />
Exemplo de conversão do valor 11101 para decimal:<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:decimal11101.jpg]]</div><br/><br />
<br />
<br />
===Estrutura do endereço IPv4===<br />
<br />
O IPv4 é representado na notação de ponto decimal (por exemplo, 192.168.23.245 ), somente para benefício humano, pois os computadores entendem o endereço na sua notação binária nativa com 32 bits de tamanho, compostos de 4 octetos de 8 bits cada, separados por um ponto:<br />
<br />
<div style="text-align: center;">[[Arquivo:estruturaipv4.jpg]]</div><br/><br />
<br />
<br />
Os endereços IPv4 são divididos em duas partes: o ID de rede e o ID de host. A primeira parte do endereço é o ID de rede que identifica uma determinada rede. A última parte é o ID de host, que identifica um host dentro da rede definida pelo ID de rede.<br />
<br />
<br />
'''<div style="text-align: center;">ID de rede + ID de host = 32 bits</div>'''<br />
<br />
<br />
Somente através da máscara de sub-rede que é possível definir o tamanho do ID de rede e ID de host. Apenas examinando um endereço IPv4 como 192.168.23.245, não sabemos quais dos 32 bits são utilizados em cada ID, pois eles variam de acordo com a máscara.<br />
<br />
<br />
====Criando Subredes====<br />
<br />
----<br />
<br />
Criar sub-redes é a pratica para subdividir logicamente um espaço de endereços, alterando a máscara de sub-rede de uma rede, dividindo as redes em vários domínios de difusão (broadcast), evitando futuras lentidões com o aumento da rede. A divisão da rede também ajuda em um melhor aproveitamento do bloco de endereços disponível.<br />
<br />
====Dividindo as subredes====<br />
<br />
----<br />
<br />
Nesse método, pegamos um bloco de endereços e criamos várias sub-redes do mesmo tamanho, ou seja, com a mesma máscara. Podemos determinar o número de sub-redes que vamos criar, utilizando uma fórmula bem simples:<br />
<br />
'''<div style="text-align: center;">2 <sup>(n2 - n1)</sup></div>'''<br />
<br />
<br />
* N2 representa o comprimento (em bits) do seu novo ID de rede usado internamente na organização.<br />
* N1 é o comprimento do ID original de rede atribuído externamente para indicar o bloco de endereços inteiro.<br />
<br />
<br />
Vamos entender melhor com o seguinte exemplo: Você tem um bloco 192.168.0.1/24. Com isso, o 24 será o valor de N1, ou seja, do bloco original de rede atribuído. Uma máscara /24 tem 256 endereços. Pretendemos subdividir a rede em sub-redes /27, ou seja, criar várias redes /27 através do bloco (192.168.0.1/24), logo N2 tem o valor 27. Agora já podemos verificar quantas sub-redes /27 poderão ser feitas com o bloco /24, com o seguinte cálculo:<br />
<br />
<br />
'''<div style="text-align: center;">2 <sup>(27-24)</sup> = 2 <sup>3</sup> = 8 subredes</div>'''<br />
<br />
<br />
Com a mesma fórmula podemos descobrir quantos endereços teremos em cada uma dessas 8 subredes /27. Basta subtrair 32 (bits totais) com o número 27 e calcular da seguinte forma:<br />
<br />
'''<div style="text-align: center;">2 <sup>(32-27)</sup> = 2 <sup>5</sup> = 32 endereços</div>'''<br />
<br />
<br />
Sempre que realizar essa fórmula, lembre-se que o primeiro endereço é reservado para o endereço de rede, e o último para o endereço de difusão ou broadcast. Com isso, um /27 tem 30 endereços disponíveis. A rede também usará um gateway padrão, que normalmente é o primeiro ou o último endereço disponível. Veremos abaixo como ficará a rede /27:<br />
<br />
<div style="text-align: center;">[[Arquivo:rede27.jpg]]</div><br/><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 15}}<br />
<br />
=11/04/2019: Configuração de rede - Subredes (exercícios)=<br />
<br />
{{Collapse top | Aula 16}}<br />
<font size="3"><br />
===Avaliação docente===<br />
<br />
[https://avaliacao.ifsc.edu.br/ Avaliação do Docente]<br />
<br />
===Exercícios===<br />
<br />
Considerando o IP 200.168.10.66/26, responda:<br />
<br />
# Qual o endereço de rede?<br />
# Qual o endereço de Broadcast?<br />
# Qual a máscara de sub-redes?<br />
# Quantos hosts há nessa rede?<br />
# Qual o intervalo válido de IPs para essa rede?<br />
<br />
<br />
Dividir a seguinte rede classe C: 229.45.32.0/255.255.255.0. São necessárias, pelo menos, 10 sub-redes. Determinar o seguinte:<br />
<br />
# Quantos bits serão necessários para fazer a divisão e obter pelo menos 10 sub-redes?<br />
# Quantos números IP (hosts) estarão disponíveis em cada sub-rede?<br />
# Qual a nova máscara de sub-rede?<br />
# Listar a faixa de endereços de cada sub-rede.<br />
<br />
<br />
Dividir a seguinte rede classe B: 150.100.0.0/255.255.0.0. São necessárias, pelo menos, 20 sub-redes. Determinar o seguinte:<br />
<br />
# Quantos bits serão necessários para fazer a divisão e obter pelo menos 20 sub-redes?<br />
# Quantos números IP (hosts) estarão disponíveis em cada sub-rede?<br />
# Qual a nova máscara de sub-rede?<br />
# Listar a faixa de endereços de cada sub-rede.<br />
<br />
<br />
Leituras úteis:<br />
<br />
* [http://www.dltec.com.br/blog/redes/tecnica-4-em-1-para-analise-de-endereco-ip/ Técnica 4 em 1 para análise de endereço IP]<br />
<br />
</font><br />
{{Collapse bottom | Aula 16}}<br />
<br />
=16/04/2019: Configuração de rede - Subredes (exercícios)=<br />
<br />
{{Collapse top | Aula 17}}<br />
<font size="3"><br />
<br />
===Avaliação===<br />
<br />
<br />
Deve ser entregue o relatório parcial, via Sigaa, com todo o conteúdo visto até o momento. Serão avaliados os seguintes itens:<br />
<br />
# Conteúdo;<br />
# Organização;<br />
# Metodologia (formatação do conteúdo de acordo com o que foi passado em aula).<br />
<br />
O relatório deve ser entregue até as 23:59 de 21/04/2019, em formato '''PDF''' (não serão considerados outros formatos).<br />
<br />
</font><br />
{{Collapse bottom | Aula 17}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=156678PJI2-2019-12019-04-11T22:08:47Z<p>Ederson.luiz: /* 1/04/2019: Configuração de rede - Subredes (exercícios) */</p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Usuário:juliana.camilo|Juliana Camilo]] ([mailto:juliana.camilo@ifsc.edu.br juliana.camilo@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=14/03/2019: Usuários e grupos e permissões - Exercício adicional=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
=== Atividade (não é necessário adicionar esta atividade ao relatório)===<br />
<br />
Considere o cenário abaixo relativo a grupos e usuários:<br />
<br />
[[imagem:usuariosgrupos.png]]<br />
<br />
* Crie um diretório em /home para cada grupo, com o nome grupo-arquivos (exemplo, o grupo lab1 terá um diretório chamado lab1-arquivos).<br />
<br />
* Dentro destes diretórios dos grupos, cada usuário deverá possuir um diretório com o seu nome.<br />
<br />
* O shell utilizado será o /bin/bash.<br />
<br />
* Defina a senha de cada usuário.<br />
<br />
* Exibir o arquivo que contém os usuários do sistema.<br />
<br />
* Exibir o arquivo que contém os grupos do sistema<br />
<br />
* Exibir o arquivo que contém as senhas criptografadas dos usuários do sistema.<br />
<br />
* Mudar o nome de login do usuário ana para anaclara<br />
<br />
* Mudar o nome do grupo alunos para usuarios<br />
<br />
* Inclua no grupo usuarios, os usuários luiz e marta.<br />
<br />
* Apague o grupo usuarios.<br />
<br />
* Apague os grupos lab1, lab2.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://ivanix.wordpress.com/2009/01/25/arquivos-de-usuarios-grupos-e-senhas/ Arquivos de usuários, grupos e senhas]<br />
<br />
[https://alexandrebbarbosa.wordpress.com/2014/05/26/criando-usuario-e-grupos-no-linux/ Administrando usuários e grupos no Linux]<br />
<br />
[http://pajeonline.blogspot.com.br/2010/12/como-listar-os-usuarios-e-grupos.html Como Listar os Usuários e Grupos Existentes no Linux?]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=21/03/2019: Instalação de Sistema Operacional=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 2048 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* '''sudo apt-get update'''<br />
* '''sudo apt-get install build-essential module-assistant dkms'''<br />
* '''sudo m-a prepare'''<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
===Exercícios===<br />
<br />
Neste exercício iremos efetuar a instalação de um sistema operacional diferente. Iremos instalar o Linux Mint.<br />
A configuração da máquina virtual deve ser a seguinte:<br />
<br />
* 3072 MB de Ram;<br />
* 20 GB de espaço em disco;<br />
* 2 processadores;<br />
* 64 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<br />
No decorrer da instalação deve ser efetuada a documentação com a explicação e imagens de cada etapa do processo, desde a criação da máquina virtual até a finalização da instalação.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=26/03/2019: Linha de comando: Instalação de softwares=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
=== Instalação de software ===<br />
<br />
A instalação de software pode ser feita de diferentes maneiras:<br />
* ''A partir do software em formato de código-fonte:'' envolve transferir o código-fonte do seu repositório, e então compilá-lo. Isso requer um maior conhecimento técnico, e é uma habilidade esperada para um Técnico que atue na área de Telecomunicações. <br />
* ''A partir do software já preparado (compilado):'' essa forma é mais simples, pois basicamente implica obter o software compilado e copiá-lo para dentro do seu sistema. É também a prática mais comum, por ser mais rápida, fácil e menos trabalhosa. Todas as distribuições Linux (e também o FreeBSD, entre outras variantes de Unix) provêem alguma forma de instalar softwares dessa maneira. Esses sistemas criam o conceito de '''pacote de software''', que é um arquivo especial contendo todos os arquivos do software a ser instalado, e todas as informações necessárias para que a instalação tenha sucesso (versão, dependências, e outras). <br />
<br />
No escopo desta disciplina de Projeto Integrador, são usados '''pacotes de software'''. Mas nada impede que se demonstre como seria realizar uma instalação a partir do código-fonte, caso exista a curiosidade.<br />
<br />
No Ubuntu Linux (e também nas distribuições originadas no Debian), o sistema de pacotes de software se chama ''dpkg'' (Debian Package). Existem diferentes formas de instalar e remover sofware, dentre elas:<br />
# '''Diretamente a partir dos arquivos de pacote de software:''' esses arquivos têm extensão ''.deb'', e devem ser instalados por meio do programa [http://manpages.ubuntu.com/manpages/trusty/man1/dpkg.1.html dpkg]. Os arquivos ''.deb'' devem ser obtidos manualmente pelo usuário, podendo ser copiados de DVDs do sistema, ou obtidos de servidores na rede. Para removê-los, deve-se usar também o ''dpkg''.<br />
# '''Obtendo automaticamente pacotes de software de repositórios:''' essa forma de administrar os pacotes é muito mais fácil, pois os pacotes de software são obtidos de servidores de pacotes na rede. Ela se baseia num sistema de gerenciamento de pacotes chamado de APT, e pode ser realizada por meio dos aplicativos [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get] ou [http://manpages.ubuntu.com/manpages/precise/en/man8/aptitude.8.html aptitude] (este é ainda mais fácil). Existem também versões gráficas para esses gerenciadores de pacotes.<br />
<br />
<br />
=== Instalação manual com ''dpkg'' ===<br />
<br />
Para instalar pacotes de software manualmente, primeiro devem-se obter os respectivos arquivos de instalação. Cada pacote de software está contido em um arquivo com extensão ''.deb''. Esses arquivos podem ser obtidos dos CD e DVD de instalação, ou de repositórios na Internet. Exemplos:<br />
* [http://ubuntu.c3sl.ufpr.br/ubuntu/ um repositório do Ubuntu no Brasil]<br />
* [http://archive.raspbian.org/raspbian/ Repositório para o Raspbian (Debian para o RaspberryPi)]<br />
<br />
<br />
Cada arquivo de instalação deve ser instalado da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -i nome_do_pacote.deb<br />
</syntaxhighlight><br />
<br />
Se o pacote de software não puder ser instalado, uma mensagem de erro é apresentada. Uma causa para esse problema é existirem dependências em relação a outros pacotes de software, os quais devem então ser instalados previamente.<br />
<br />
Para descobrir as dependência de um pacote podemos utilizar o comando a seguir:<br />
<br />
# sudo apt-cache depends nome-do-pacote<br />
<br />
A remoção de um pacote de software pode ser feita assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -r nome_do_pacote<br />
</syntaxhighlight><br />
<br />
Se o pacote a ser removido for dependência para outros pacotes instalados, a remoção será abortada.<br />
<br />
<br />
A listagem de todos os pacotes instalados pode ser obtida com este comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -l<br />
</syntaxhighlight><br />
<br />
A listagem dos arquivos instalados por um pacote é mostrada com este outro comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -L nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Informações detalhadas sobre um pacote podem ser mostradas assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -p nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://sourceforge.net/projects/nevernote/files/NixNote2%20-%202.0.2/ Pacote deb NixNote]<br />
<br />
[https://sourceforge.net/projects/openofficeorg.mirror/files/4.1.5/binaries/pt-BR/Apache_OpenOffice_4.1.5_Linux_x86-64_install-deb_pt-BR.tar.gz/download Pacote deb Open Office]<br />
<br />
[https://deb.opera.com/opera/pool/non-free/o/opera-stable/ Pacote deb do navegador Opera]<br />
<br />
=== Obtenção automática de software ===<br />
<br />
Os pacotes de softwares dos sistemas operacionais Ubuntu e Debian são organizados e disponibilizados em repositórios, que são servidores na Internet onde há cópias dos arquivos de instalação desses pacotes. Os repositórios são configurados durante a própria instalação do sistema, ficando registrados no arquivo [http://manpages.ubuntu.com/manpages/trusty/man5/sources.list.5.html /etc/apt/sources.list]. Esse arquivo pode ser modificado para incluir ou remover repositórios, quando necessário.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get]:<br />
* '''apt-get update''': atualiza o catálogo de pacotes de software conhecidos. Isso implica consultar os repositórios configurados e transferir as listas de pacotes lá existentes. Isso é importante para ter acesso a versões atualizadas dos pacotes de software.<br />
* '''apt-get install nome_do_pacote''': instala o pacote de software chamado ''nome_do_pacote''. Se houver dependências de outros pacotes, eles também serão instalados.<br />
* '''apt-get remove nome_do_pacote''': remove o pacote de software chamado ''nome_do_pacote''. se outros pacotes dependerem desse pacote, eles também serão removidos.<br />
* '''apt-get clean''': remove as cópias dos arquivos de pacotes de software transferidos e não mais necessários.<br />
* '''apt-get upgrade''': atualiza todos os pacotes de software para suas versões mais recentes, caso existam.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/aptitude.8.html aptitude]:<br />
* '''aptitude update''': mesmo que ''apt-get update''<br />
* '''aptitude install nome_do_pacote''': mesmo que ''apt-get install''<br />
* '''aptitude remove nome_do_pacote''': mesmo que ''apt-get remove''<br />
* '''aptitude search nome''': lista todos os pacotes de software conhecidos cujos nomes contenham ''nome''<br />
<br />
Links úteis:<br />
<br />
<br />
[https://repogen.simplylinux.ch/ Gerador de lista de repositórios sources.list]<br />
<br />
===Utilizando repositório PPA (Personal Package Archives)===<br />
<br />
PPA quer dizer Personal Package Archives, os repositórios deste tipo nada mais são do quer servidores na internet onde se encontram os programas que não estão nos repositórios oficias da sua distro.<br />
Mas essa é uma generalização porque alguns programas que estão na Central de Programas possuem PPA, caso do WINE por exemplo, a diferença entre instalar a versão da Central de Programas e instalar via PPA é que a versão que está na Central de Programas e suas possíveis atualizações já foram testadas e apresentam um nível bom de segurança e estabilidade, porém, não trazem os mesmos recursos muitas vezes, das versões mais recentes, coisa que o PPA trás.<br />
<br />
Mas antes de adicionar PPAs no seu sistema, procure informações referentes aos desenvolvedores, procedência, etc, pois se trata de programas de terceiros, não oficiais da lista de repositório da versão do seu sistema operacional.<br />
<br />
O comando em si é simples:<br />
<br />
# sudo add-apt-repository nome-do-repositorio-ppa<br />
<br />
Como exemplo, vamos utilizar o PPA do Wine, ele é um software que permite rodar aplicações Windows no Linux:<br />
<br />
# sudo add-apt-repository ppa:ubuntu-wine/ppa<br />
<br />
Posteriormente devemos atualizar a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalar o pacote:<br />
<br />
# sudo apt-get install wine<br />
<br />
Também podemos remover repositórios PPA, seja pelo fato de não estar mais disponível ou simplesmente porque não queremos mais utilizá-lo. Para isso utilizamos o comando a seguir:<br />
<br />
# sudo add-apt-repository -r ppa:endereço-do-repositorio<br />
<br />
e posteriormente atualizamos a lista:<br />
<br />
# sudo apt-get update<br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://www.ubuntuupdates.org/ppas Repositórios PPA]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=28/03/2019: Linha de comando: Instalação de softwares - Continuação=<br />
<br />
{{Collapse top | Aula 12}}<br />
<font size="3"><br />
<br />
<br />
=== Atividades ===<br />
<br />
''Execute os passos seguintes tanto com instalação manual quanto automática de software.''<br />
# Instale estes softwares:<br />
#* mplayer<br />
#* mencoder<br />
#* handbrake<br />
#* pppoe<br />
#* hostapd<br />
#* vlan<br />
# Após instalá-los, obtenha suas descrições. Veja também as descrições destes outros softwares já instalados:<br />
#* bash<br />
#* iproute2<br />
#* iptables<br />
#* tcpdump<br />
# Liste todos os softwares instalados.<br />
# Remova os softwares instalados nos passos anteriores.<br />
# Descubra como se podem instalar softwares em modo gráfico.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://www.debian.org/doc/manuals/apt-howto/ch-search.pt-br.html Como usar o APT - Obtendo informações sobre pacotes]<br />
<br />
[https://www.ubuntuupdates.org/ppas Lista de PPAs]<br />
<br />
[https://pkgs.org/ Pacotes .deb]<br />
<br />
[http://e-tinet.com/linux/41-softwares-linux-alternativa/ 41 Softwares para Linux]<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=02/04/2019: Linha de comando: Backups=<br />
<br />
{{Collapse top | Aula 13}}<br />
<font size="3"><br />
<br />
=== Backups ===<br />
<br />
Existem muitos programas para realizar cópias de segurança no Linux (chamadas de ''backup''). Porém tradicionalmente a forma mais simples de realizar uma cópia pessoal de um conjunto de arquivos e diretórios faz uso de um programa simples chamado ''tar''. <br />
<br />
=== tar ===<br />
<br />
O programa ''[http://manpages.ubuntu.com/manpages/trusty/en/man1/tar.1.html tar]'' é um utilitário do mundo Unix originalmente criado para backups em fita (daí seu nome: ''TApe aRchiver'', se bem que ''tar'' é também um trocadilho que pode significar piche, pois ele de certa forma gruda um arquivo ao outro). O resultado da execução do ''tar'' é um arquivo contendo todos os arquivos e diretórios que foram selecionados para inclusão. Esse arquivo ''tar'' pode ser então compactado, obtendo-se algo parecido com o que faz zip ou rar.<br />
<br />
Mas porque não usar então zip e rar ? Afinal, eles existem também no Linux ... No entanto, esses compactadores nasceram no mundo do antigo MS-DOS, e assim não são capazes de armazenar todos os atributos de arquivos que existem em sistemas Unix (informações tais como usuário e grupo dono do arquivo, permissões de acesso, tipo do arquivo, datas de último acesso e modificação). O ''tar'', pelo contrário, consegue preservar esses atributos, e por isto se torna mais adequado para uso no Unix em geral.<br />
<br />
Uso do ''tar'':<br />
* '''Criação de arquivo tar:''' <syntaxhighlight lang=bash>tar cf nome_arquivo.tar arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
* '''Mostrar o conteúdo de arquivo tar:''' <syntaxhighlight lang=bash>tar tvf nome_arquivo.tar </syntaxhighlight><br />
* '''Extrair conteúdo de arquivo tar:''' <syntaxhighlight lang=bash>tar xf nome_arquivo.tar</syntaxhighlight><br />
<br />
Os usos acima não compactam os arquivos incluídos dentro do arquivo ''tar''. Para compactá-los deve-se adicionar uma opção de compactação:<br />
* '''Criação de arquivo tar compactado:''' <br />
** '''''Com compress:''''' <syntaxhighlight lang=bash>tar cZf nome_arquivo.tar.Z arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
** '''''Com gzip:''''' <syntaxhighlight lang=bash>tar czf nome_arquivo.tar.gz arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
** '''''Com bzip2:''''' <syntaxhighlight lang=bash>tar cjf nome_arquivo.tar.bz2 arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
** '''''Com xz:''''' <syntaxhighlight lang=bash>tar cJf nome_arquivo.tar.xz arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
* '''Mostrar o conteúdo de arquivo tar:''' <br />
** '''''Com compress:''''' <syntaxhighlight lang=bash>tar tvZf nome_arquivo.tar.Z </syntaxhighlight><br />
** '''''Com gzip:''''' <syntaxhighlight lang=bash>tar tvzf nome_arquivo.tar.gz </syntaxhighlight><br />
** '''''Com bzip2:''''' <syntaxhighlight lang=bash>tar tvjf nome_arquivo.tar.bz2 </syntaxhighlight><br />
** '''''Com xz:''''' <syntaxhighlight lang=bash>tar tvJf nome_arquivo.tar.xz </syntaxhighlight><br />
* '''Extrair conteúdo de arquivo tar:''' <br />
** '''''Com compress:''''' <syntaxhighlight lang=bash>tar xZf nome_arquivo.tar.Z </syntaxhighlight><br />
** '''''Com gzip:''''' <syntaxhighlight lang=bash>tar xzf nome_arquivo.tar.gz </syntaxhighlight><br />
** '''''Com bzip2:''''' <syntaxhighlight lang=bash>tar xjf nome_arquivo.tar.bz2 </syntaxhighlight><br />
** '''''Com xz:''''' <syntaxhighlight lang=bash>tar xJf nome_arquivo.tar.xz </syntaxhighlight><br />
<br />
Parâmetros:<br />
<br />
-c - cria um novo arquivo tar;<br />
<br />
-M - cria, lista ou extrai um arquivo [https://www.thewebhelp.com/linux/creating-multivolume-tar-files/ multivolume];<br />
<br />
-p - mantém as permissões originais do(s) arquivo(s);<br />
<br />
-r - acrescenta arquivos a um arquivo tar;<br />
<br />
-t - exibe o conteúdo de um arquivo tar;<br />
<br />
-v - exibe detalhes da operação;<br />
<br />
-w - pede confirmação antes de cada ação;<br />
<br />
-x - extrai arquivos de um arquivo tar;<br />
<br />
-z - comprime ou extrai arquivos tar resultante com o gzip;<br />
<br />
-j - comprime ou extrai arquivos tar resultante com o bz2;<br />
<br />
-f - especifica o arquivo tar a ser usado;<br />
<br />
-C - especifica o diretório dos arquivos a serem armazenados.<br />
<br />
=== Compactadores no modo texto ===<br />
<br />
Vários compactadores de arquivos existem no Linux, e o ''nautilus'' simplifica sua seleção e uso. Esses compactadores podem ser usados também no modo texto ... aliás, eles originalmente foram criados para serem usados dessa forma ! O que o ''nautilus'' faz é facilitar seu uso por meio de uma interface gráfica.<br />
<br />
Os principais compactadores são:<br />
* [http://manpages.ubuntu.com/manpages/karmic/en/man1/compress.1.html compress]: compactador mais antigo e comum nos Unix em geral, porém em desuso. Gera arquivos compactados com extensão .Z. Precisa do pacote de software ''ncompress'' no Ubuntu. Exemplo de uso: <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ compress palavras.txt <br />
msobral@curl2:~/tmp$ ls -l palavras.txt.Z <br />
-rw-rw-r-- 1 msobral msobral 932433 Jun 29 14:59 palavras.txt.Z<br />
msobral@curl2:~/tmp$ uncompress palavras.txt.Z <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt</syntaxhighlight><br />
* [http://manpages.ubuntu.com/manpages/karmic/en/man1/gzip.1.html GNU zip]: compactador bastante utilizado, com maior poder de compactação que ''compress''. Gera arquivos compactados com extensão .gz. Já vem instalado no Ubuntu. Exemplo de uso: <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ gzip palavras.txt<br />
msobral@curl2:~/tmp$ ls -l palavras.txt.gz<br />
-rw-rw-r-- 1 msobral msobral 532756 Jun 29 14:59 palavras.txt.gz<br />
msobral@curl2:~/tmp$ gunzip palavras.txt.gz <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt<br />
</syntaxhighlight><br />
* [http://manpages.ubuntu.com/manpages/karmic/en/man1/bzip2.1.html bzip2]: vem sendo bastante usado por ter um poder de compactação ainda maior, porém à custa de maior processamento (compactação fica mais lenta). Gera arquivos compactados com extensão .bz2. Também já vem instalado no Ubuntu. <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ bzip2 palavras.txt<br />
msobral@curl2:~/tmp$ ls -l palavras.txt.bz2 <br />
-rw-rw-r-- 1 msobral msobral 720099 Jun 29 14:59 palavras.txt.bz2<br />
msobral@curl2:~/tmp$ bunzip2 palavras.txt.bz2 <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt<br />
</syntaxhighlight><br />
* [http://manpages.ubuntu.com/manpages/trusty/en/man1/xz.1.html xz]: outro compactador bastante usado recentemente. Pode compactar ainda mais que ''bzip2'', porém a um custo computacional maior. Isso significa que ele demora mais para compactar um arquivo que esse outro compactador. Gera arquivos com extensão ''.xz''. Ele já vem instalado no Ubuntu. <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ xz palavras.txt <br />
msobral@curl2:~/tmp$ ls -l palavras.txt.xz <br />
-rw-rw-r-- 1 msobral msobral 387056 Jun 29 14:59 palavras.txt.xz<br />
msobral@curl2:~/tmp$ unxz palavras.txt.xz <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt<br />
</syntaxhighlight><br />
<br />
* ... outros menos populares no mundo do Linux, tais como [http://manpages.ubuntu.com/manpages/karmic/en/man1/zip.1.html zip], [http://manpages.ubuntu.com/manpages/karmic/en/man1/rar.1.html rar] e [http://manpages.ubuntu.com/manpages/karmic/en/man1/zoo.1.html zoo].<br />
<br />
Note que os compactadores ''compress'', ''gzip'', ''bzip2'' e ''xz'' compactam um arquivo por vez. Assim, com eles não é possível juntar vários arquivos e diretórios dentro de um único arquivo compactado (o que se faz corriqueiramente com '''zip''' ou '''rar''' ...). Portanto, se for necessário compactar um diretório ou um conjunto de arquivos, o melhor é combinar um compactador com o programa [http://manpages.ubuntu.com/manpages/karmic/en/man1/tar.1.html tar].<br />
<br />
<br />
Leituras interessantes:<br />
<br />
[https://pt.wikipedia.org/wiki/Tar_(computa%C3%A7%C3%A3o) Comando TAR]<br />
<br />
=== Exercícios ===<br />
<br />
Faça os exercícios abaixo usando os compactadores no modo texto:<br />
<br />
# Procure um arquivo de texto (extensão .txt, .html, ou .doc) com ao menos 100 kB e compacte-o com compress, gzip, bzip2 e xz. Compare os tamanhos dos arquivos resultantes.<br />
# Usando o programa tar, compacte todo o diretório ''Documentos'' do usuário ''aluno''. Experimente criar o arquivo tar sem compactação, e depois compactado com cada um dos compactadores vistos. Você terá portanto como resultado quatro arquivos tar diferentes ...<br />
# Descompacte os arquivos tar gerados na questão anterior. Para evitar sobreposição, descompacte cada um deles em um diretório separado.<br />
<br />
<br />
Baixe o arquivo do link abaixo e faça o exercício proposto:<br />
<br />
[https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing Arquivos_gerais.tar.gz]<br />
<br />
# Descompacte o arquivo.<br />
# Separe os arquivos em suas respectivas pastas (vídeos, músicas, documentos, imagens) através de comandos para mover no terminal.<br />
# Compacte os arquivos usando o compress, gzip, bzip2 e xz em conjunto com o tar. Compare os tamanhos dos arquivos resultantes.<br />
# Liste o conteúdo de cada um dos arquivos compactados<br />
# Descompacte os arquivos criados anteriormente no diretório /home/aluno/arquivos_gerais<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}<br />
<br />
=04/04/2019: Configuração de rede=<br />
<br />
{{Collapse top | Aula 14}}<br />
<font size="3"><br />
<br />
===Endereço IPv4===<br />
<br />
<br />
====História====<br />
<br />
----<br />
<br />
A internet não foi criada para uso comercial que temos atualmente, foi de fato um projeto militar Americano conhecido como ARPANET que tinha por objetivo conectar vários nós tendo a forma parecida com uma teia de aranha, onde se um nó fosse desconectado não haveria problema com os demais.<br />
<br />
Com o crescimento da ARPANET nas Universidades Americanas, o principal tráfego de informações eram discussões sobre assuntos acadêmicos entre professores. Nessa época os criadores dessa rede não tinham consciência que esse projeto iria tomar gigantes proporções que hoje presenciamos.<br />
<br />
Na internet, cada host e cada roteador tem um endereço IP (Internet Protocol), que codifica seu número de rede e seu número de host. Essa combinação é única, ou seja, duas máquinas conectadas a internet não possuem o mesmo endereço IP.<br />
<br />
Devido ao alto crescimento da ARPANET, após cinco anos houve o surgimento do protocolo TCP/IP (Transmission Control Protocol/Internet Protocol) um protocolo que utilizamos até hoje, com um endereço de 32 bits e mais de 4,2 bilhões de combinações de endereços possíveis, que para época esse número era um exagero.<br />
<br />
Segundo Vint Cerf (2010), vice-presidente do Google, os endereços de IP podem esgotar em até um ano, foi exatamente o que aconteceu em Fevereiro de 2011. O problema não se agravou mais e anteriormente devido a várias tecnologias e medidas paliativas que surgiram ao longo da década de 1990. Podemos citar CIDR (Classless Inter-Domain Routing), RFC 1918 (Address Allocation for Private Internets), NAT (Network Address Translation) e DHCP (Dynamic Host Configuration Protocol) fizeram com que tardassem esse esgotamento de IP’s na internet.<br />
<br />
<br />
====Esgotamento dos endereços IPv4====<br />
<br />
----<br />
<br />
É importante informar que a divisão dos blocos IPv4 não é nada ponderada, metade dos endereços foram destinados aos Estados Unidos (“criador do backbone, principal estrutura da Internet”) e a outra metade foi distribuída para os demais regiões geográficas do mundo.<br />
<br />
No inicio da distribuição dos endereços, existiram empresas e universidades que compraram 16 milhões de endereços. Hoje seria raro essas entidades devolverem o que adquiriram para uma melhor redistribuição dos endereços. Mas se essa divisão dos IPv4 fosse de forma igual para tal demanda de sua determinada região, não adiantaria em nada, estaríamos sujeitos do mesmo jeito ao esgotamentos dos IPs. Por esse e outros motivos que a IANA mais tarde necessitou de regras mais rígidas para a distribuição dos IPv4 para o mundo.<br />
<br />
O IANA (Internet Assigned Numbers Authority) é responsável pelo controle de todos os números IPs e, atualmente, ele realiza suas operações através da ICANN (). A responsabilidade sobre uma parte dos endereços é delegada pela IANA para cada um dos Registros Regionais de Internet, que os gerenciam e distribuem dentro de suas respectivas regiões geográficas. Em nossa região, o responsável é o LACNIC (Latin America and Caribbean Network Information Centre).<br />
<br />
====Classes de endereços IPv4====<br />
<br />
----<br />
<br />
Um endereço IPv4 é formado por 32 bits que é o mesmo que dizermos que possui quatro octetos representados na forma decimal (ex: 192.168.0.1). Uma parte desse endereço (bits mais significativos) indicam-nos a rede e a outra parte (bits menos significativos) indicam-nos qual a máquina dentro da rede.<br />
<br />
Com o objetivo de serem possíveis redes de diferentes dimensões, foram definidas cinco diferentes classes de endereços IP (Classes: A, B, C, D e E).<br />
<br />
Originalmente, o espaço de endereçamento IP foi dividido estruturas de tamanho fixo designadas de “classes de endereço”. As principais são a classe A, classe B e classe C. Com base nos primeiros bits (prefixo) de um endereço IP, conseguimos facilmente determinar rapidamente a qual a classe pertence de determinado endereço IP.<br />
<br />
De forma a resumir a informação relativamente às classes de redes IP, criei a seguinte tabela:<br />
<br />
<div style="text-align: center;">[[Arquivo:classesipv4.jpg]]</div><br/><br />
<br />
Analisando as três principais classes (A, B e C) podemos verificar o seguinte:<br />
<br />
A classe A possui um conjunto de endereços que vão desde o 1.0.0.0 até 127.0.0.0, onde o primeiro octeto (primeiros 8 bits N.H.H.H) de um endereço IP identifica a rede e os restantes 3 octetos ( 24 bits) irão identificar um determinado host nessa rede.<br />
<br />
Exemplo de um endereço Classe A – 120.2.1.0<br />
<br />
<br />
A classe B possui um conjunto de endereços que vão desde o 128.0.0.0 até 191.255.0.0, onde os dois primeiros octetos (16 bits N.N.H.H) de um endereço IP identificam a rede e os restantes 2 octetos ( 16 bits) irão identificar um determinado host nessa rede.<br />
<br />
Exemplo de um endereço Classe B – 152.13.4.0<br />
<br />
<br />
A classe C possui um conjunto de endereços que vão desde o 192.0.0.0 até 223.255.255.0, onde os três primeiros octetos (24 bits N.N.N.H) de um endereço IP identificam a rede e o restante octeto ( 8 bits) irão identificar um determinado host nessa rede.<br />
<br />
Exemplo de um endereço Classe C – 192.168.10.0<br />
<br />
<br />
====Classes especiais====<br />
<br />
----<br />
<br />
Existem ''classes especiais'' na Internet que não são consideradas públicas, não são consideradas como ''endereçáveis'', são reservadas, por exemplo, para a comunicação com uma rede privada ou com o computador local ("[https://pt.wikipedia.org/wiki/Localhost localhost]").<br />
<br />
<br />
{| class="wikitable"<br />
|+ Blocos de Endereços Reservados<br />
|-<br />
! [[CIDR]] Bloco de Endereços || Descrição || Referência<br />
|-<br />
| 0.0.0.0/8 || Rede corrente (só funciona como endereço de origem) || RFC 1700<br />
|-<br />
| 10.0.0.0/8 || [https://pt.wikipedia.org/wiki/Intranet Rede Privada] || RFC 1918<br />
|-<br />
| 14.0.0.0/8 || Rede Pública || RFC 1700<br />
|-<br />
| 39.0.0.0/8 || Reservado || RFC 1797<br />
|-<br />
| 127.0.0.0/8 || [https://pt.wikipedia.org/wiki/Localhost Localhost] || RFC 3330<br />
|-<br />
| 128.0.0.0/16 || Reservado (IANA) || RFC 3330<br />
|-<br />
| 169.254.0.0/16 || [https://pt.wikipedia.org/wiki/Zeroconf Zeroconf] || RFC 3927<br />
|-<br />
| 172.16.0.0/12 || [https://pt.wikipedia.org/wiki/Rede_privada Rede privada] || RFC 1918<br />
|-<br />
| 191.255.0.0/16 || Reservado (IANA) || RFC 3330<br />
|-<br />
| 192.0.2.0/24 || Documentação || RFC 3330<br />
|-<br />
| 192.88.99.0/24 || [https://pt.wikipedia.org/wiki/IPv6 IPv6] para IPv4 || RFC 3068<br />
|-<br />
| 192.168.0.0/16 || [https://pt.wikipedia.org/wiki/Intranet Rede Privada] || RFC 1918<br />
|-<br />
| 198.18.0.0/15 || Teste de benchmark de redes || RFC 2544<br />
|-<br />
| 223.255.255.0/24 || Reservado || RFC 3330<br />
|-<br />
| 224.0.0.0/4 || [https://pt.wikipedia.org/wiki/Multicast Multicasts] (antiga rede Classe D) || RFC 3171<br />
|-<br />
| 240.0.0.0/4 || Reservado (antiga rede Classe E) || RFC 1700<br />
|-<br />
| 255.255.255.255 || Broadcast ||<br />
|}<br />
<br />
<br />
====Rede privada====<br />
<br />
----<br />
<br />
Na arquitetura para endereçamentos da Internet, uma rede privada (private network) é uma rede que usa o espaço privado de endereços IP, seguindo os padrões estabelecidos pela RFC 1918 para redes IPv4 e RFC 4193 para IPv6. Estes endereços são associados aos dispositivos que precisam se comunicar com outros dispositivos em uma rede privada (que não faz parte da Internet).<br />
<br />
As redes privadas estão se tornando muito comuns nos escritórios (LAN), pois não há a necessidade de que todos os computadores de uma organização possuam um IP universalmente endereçável. Outra razão que torna importante os IPs privados, é o número limitado de IPs públicos. O IPv6 foi criado para resolver este último problema.<br />
<br />
Os Roteadores são configurados para descartar qualquer tráfego que use um IP privado. Este isolamento garante que uma rede privada tenha uma maior segurança pois não é possível, em geral, ao mundo externo criar uma conexão direta a uma máquina que use um IP privado. Como as conexões não podem ser feitas entre diferentes redes privadas por meio da internet, diferentes organizações podem usar a mesma faixa de IP sem que haja conflitos (ou seja, que uma comunicação chegue acidentalmente a um elemento que não deveria).<br />
<br />
Se um dispositivo em uma rede privada deve se comunicar com outras redes, é necessário que haja um "gateway" para garantir que a rede externa seja vista com um endereço que seja "real" (ou público) de maneira que o roteador permita a comunicação. Normalmente este gateway será um service NAT (‘’Network address translation’’) ou um Servidor Proxy. Isto, porém, pode causar problemas se a organização tentar conectar redes que usem os mesmos endereços privados.<br />
<br />
Os endereços atualmente reservados a redes privadas na internet são:<br />
<br />
<br />
{| class="wikitable"<br />
! Nome !! Faixa de endereços IP!! Número de IPs<br />
! ''[[classful network|classful]]'' Descrição !! Maior bloco [[CIDR]] !! Referência<br />
|-<br />
| 8-bit block || 10.0.0.0 – 10.255.255.255 || 16,777,216 || Uma classe A || 10.0.0.0/8 || rowspan="3" | RFC 1597 (obsoleto), RFC 1918<br />
|-<br />
| 12-bit block || 172.16.0.0 – 172.31.255.255 || 1,048,576 || 16 classes B || 172.16.0.0/12<br />
|-<br />
| 16-bit block || 192.168.0.0 – 192.168.255.255 || 65,536 || 256 classes C || 192.168.0.0/16<br />
|-<br />
| 16-bit block || 169.254.0.0 – 169.254.255.255 || 65,536 || Uma classe B || 169.254.0.0/16 || RFC 3330, RFC 3927<br />
|}<br />
<br />
<br />
<br />
===Endereço IPv6===<br />
<br />
<br />
====História====<br />
<br />
----<br />
<br />
O IP versão 6 começou a ser desenvolvido no início da década de 1990, com o objetivo de ser a solução definitiva para o esgotamento de endereços IPs na Internet, tendo esse como o principal objetivo.<br />
<br />
Em 1993, o IESG (Internet Engineering Steering Group) criou um grupo de trabalho para uma nova versão do protocolo IP, o IPNGWG (IP Next Generation Working Group), com base em alguns objetivos que deveriam ser alcançados. O grupo de trabalho, então, selecionou protocolos "candidatos" para a camada de rede da arquitetura TCP/IP. O vencedor foi o SIPP (Simple Internet Protocol Plus), por diferir menos do IPv4 e ter um plano de transição melhor. Mas uma combinação de aspectos positivos dos três protocolos candidatos foi feita e com isso gerou-se a recomendação para a versão 6 do IP em novembro de 1994.<br />
<br />
O protocolo IPv6 não foi só criado para resolver o problema de quantidades de endereços, foi também para disponibilizar novos serviços e benefícios que não existiam no IPv4 ou que não eram utilizados de forma otimizada. Abaixo podemos citar alguns desses benefícios:<br />
<br />
* Espaço de endereçamento (128 bits);<br />
* Formato de cabeçalho simplificado;<br />
* Arquitetura hierárquica de rede para um roteamento eficiente;<br />
* Suporte aos atuais protocolos de roteamento;<br />
* Serviços de autoconfiguração;<br />
* Implementação de IPSec (IP Security Protocol) de forma nativa;<br />
* Crescimento do número de endereços multicast;<br />
* Implantações para qualidade de serviço;<br />
* Suporte a serviços de tempo real.<br />
<br />
Para a internet para fazer uso das vantagens do IPv6 sobre IPv4, a maioria dos hosts da Internet, bem como as redes de conexão, precisam implantar este protocolo. Enquanto a implantação do IPv6 está acelerando, especialmente na região da Ásia-Pacífico e alguns países europeus, áreas como as Américas e a África são comparativamente um atraso na implantação do IPv6. A troca de tráfego entre as duas redes IPv4 e IPv6 requer tradutores especiais o que torna a rede menos eficiente comparado uma rede completamente IPv6. Os sistemas operacionais modernos dos computadores implementam um protocolo de duplo software para acesso transparente para ambas as redes, quer sejam elas iguais, ou através de um protocolo de tunelamento como 6to4, 6in4, ou Teredo.<br />
<br />
Em dezembro de 2012, apesar de marcar o seu 14º aniversário, o IPv6 está apenas em sua infância em termos de implantação em todo o mundo em geral. Um estudo realizado em 2008 pelo Google Inc indicou que a penetração do protocolo IPv6 ainda era menos de 1% dos hosts habilitados para a Internet em qualquer país, naquela época.<br />
<br />
<br />
====Formato do endereçamento IPv6====<br />
<br />
----<br />
<br />
Os endereços IPv6 são números de 128 bits (16 bytes). Ao invés de adotar a notação decimal pontuada do IPv4, onde o endereço é formado por quadro bytes separados por ".", o IPv6 representa seu endereço na forma de 8 palavras de 16 bits, separadas por ":". Cada uma das palavras que forma o endereços IPv6 é representada em hexadecimal.<br />
<br />
<br />
Dessa forma, um endereço IPv6 tem o seguinte formato:<br />
<br />
<syntaxhighlight lang=bash>FE80:0000:0000:0000:68DA:8909:3A22:FECA<br />
</syntaxhighlight><br />
<br />
<br />
As palavras que forem formadas unicamente por quatro zeros em hexadecimal podem ser substituídas por um único zero, conforme o exemplo a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
FE80:0:0:0:68DA:8909:3A22:FECA<br />
</syntaxhighlight><br />
<br />
<br />
A escrita de cada endereço IPv6 é longa, o que dificulta sua representação. Com o IPv6, o serviço de DNS que oferece um nome fácil de usar a um computador será mais necessário do que nunca, pois é simplesmente impossível decorar os endereços de IPv6 presente em uma infraestrutura de rede. Para tornar os endereços ainda mais compactos, uma sequência de zeros pode ser substituídas pelo símbolo "::", conforme o exemplo abaixo:<br />
<br />
<syntaxhighlight lang=bash><br />
FE80::68DA:8909:3A22:FECA<br />
</syntaxhighlight><br />
<br />
<br />
Contudo, essa simplificação pode ocorrer uma única vez no endereço, ou não será possível determinar quantos zeros correspondem a cada símbolo "::".<br />
<br />
<br />
O símbolo "::" pode estar também no início do endereço. Por exemplo, o endereço loopback IPv6 é representado como:<br />
<br />
<syntaxhighlight lang=bash><br />
::1, que é equivalente a 0000:0000:0000:0000:0000:0000:0000:0001<br />
</syntaxhighlight><br />
<br />
<br />
Os endereços IPv6 são seguidos de uma máscara de sub-rede na forma compacta (/"tamanho do prefixo"), de maneira similar aos endereços IPv4:<br />
<br />
<syntaxhighlight lang=bash><br />
FE80::68DA:8909:3A22:FECA/80<br />
</syntaxhighlight><br />
<br />
=== Interfaces de rede ===<br />
<br />
----<br />
<br />
Qualquer dispositivo (físico ou lógico) capaz de transmitir e receber datagramas IP. Interfaces de rede ethernet são o exemplo mais comum, mas há também interfaces PPP (seriais), interfaces tipo túnel e interfaces ''loopback''. De forma geral, essas interfaces podem ser configuradas com um endereço IP e uma máscara de rede, e serem ativadas ou desabilitadas. Em sistemas operacionais Unix a configuração de interfaces de rede se faz com o programa [http://manpages.ubuntu.com/manpages/karmic/pt_BR/man8/ifconfig.8.html ifconfig]:<br />
<br />
Para mostrar todas as interfaces:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig -a<br />
ppp0 Link encap:Point-to-Point Protocol<br />
inet addr:189.30.70.200 P-t-P:200.138.242.254 Mask:255.255.255.255<br />
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1<br />
RX packets:34260226 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:37195398 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:3<br />
RX bytes:19484812547 (18582.1 Mb) TX bytes:10848608575 (10346.0 Mb)<br />
<br />
eth0 Link encap:Ethernet HWaddr 00:19:D1:7D:C9:A9<br />
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0<br />
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br />
RX packets:37283974 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:42055625 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:1000<br />
RX bytes:20939614658 (19969.5 Mb) TX bytes:18284980569 (17437.9 Mb)<br />
Interrupt:16 Base address:0xc000<br />
<br />
lo Link encap:Local Loopback<br />
inet addr:127.0.0.1 Mask:255.0.0.0<br />
UP LOOPBACK RUNNING MTU:16436 Metric:1<br />
RX packets:273050 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:273050 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:0<br />
RX bytes:21564572 (20.5 Mb) TX bytes:21564572 (20.5 Mb)<br />
aluno@M1:~> <br />
</syntaxhighlight><br />
<br />
==== Configuração manual e temporária ====<br />
<br />
----<br />
<br />
Para configurar uma interface de rede (que fica automaticamente ativada):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0 192.168.1.100 netmask 255.255.255.0<br />
</syntaxhighlight><br />
<br />
Para desativar uma interface:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0 down<br />
</syntaxhighlight><br />
<br />
Para ativar uma interface:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0 up<br />
</syntaxhighlight><br />
<br />
Ao se configurar uma interface de rede, cria-se uma rota automática para a subrede diretamente acessível via aquela interface. Isto se chama '''''roteamento mínimo'''''.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0 192.168.10.0 netmask 255.255.0.0<br />
aluno@M1:~> netstat -rn<br />
Kernel IP routing table<br />
Destination Gateway Genmask Flags MSS Window irtt Iface<br />
192.168.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0<br />
127.0.0.0 0.0.0.0 255.0.0.0 U 0 0 0 lo<br />
dayna@dayna:~><br />
</syntaxhighlight><br />
<br />
[https://www.thegeekstuff.com/2012/05/route-flags/ Flags netstat]<br />
<br />
Usualmente, é suficiente definir uma única rota adicional para um computador, chamada de '''rota default''' (ou ''rota padrão''). Essa rota tem o seguinte significado: se o destino não estiver em minha própria subrede, e nenhuma outra rota específica existir para a subrede onde se encontra, então repasse o pacote para o roteador indicado. Em um computador Linux isso pode ser feito assim:<br />
<br />
<syntaxhighlight lang=bash><br />
# adiciona a rota default, que passa pelo roteador 192.168.10.100<br />
route add default gw 192.168.10.100<br />
</syntaxhighlight><br />
<br />
<br />
Para que o acesso a rede esteja completo, falta apenas configurar um servidor DNS para ser possível a tradução de nomes de domínio para endereços IP. Esta configuração pode ser feita da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
# Editar o arquivo /etc/resolv.conf<br />
vi /etc/resolv.conf<br />
<br />
#Editar o seu conteúdo e inserir a linha abaixo<br />
nameserver 200.135.37.65<br />
</syntaxhighlight><br />
<br />
<br />
Além de toda a configuração básica apresentada acima, pode-se associar mais de um endereço a uma mesma interface de rede. Isto se chama '''''IP alias''''':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M1:~> ifconfig eth0:0 192.168.1.110 netmask 255.255.255.0<br />
aluno@M1:~> ifconfig eth0:1 192.168.2.100 netmask 255.255.255.0<br />
aluno@M1:~> ifconfig -a<br />
eth0 Link encap:Ethernet HWaddr 00:19:D1:7D:C9:A9<br />
inet addr:192.168.1.100 Bcast:192.168.1.255 Mask:255.255.255.0<br />
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br />
RX packets:37295731 errors:0 dropped:0 overruns:0 frame:0<br />
TX packets:42068558 errors:0 dropped:0 overruns:0 carrier:0<br />
collisions:0 txqueuelen:1000<br />
RX bytes:20942258027 (19972.0 Mb) TX bytes:18294794452 (17447.2 Mb)<br />
Interrupt:16 Base address:0xc000<br />
<br />
eth0:0 Link encap:Ethernet HWaddr 00:19:D1:7D:C9:A9<br />
inet addr:192.168.1.110 Bcast:192.168.1.255 Mask:255.255.255.0<br />
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br />
Interrupt:16 Base address:0xc000<br />
<br />
eth0:1 Link encap:Ethernet HWaddr 00:19:D1:7D:C9:A9<br />
inet addr:192.168.2.100 Bcast:192.168.2.255 Mask:255.255.255.0<br />
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1<br />
Interrupt:16 Base address:0xc000<br />
aluno@M1:~><br />
</syntaxhighlight><br />
<br />
==== Configuração permanente ====<br />
<br />
----<br />
<br />
Todo sistema operacional possui alguma forma de configurar suas interfaces de rede, para que sejam automaticamente ativadas no boot com seus endereços IP. Por exemplo, em sistemas Linux Ubuntu e Debian, a configuração de rede se concentra no arquivo [http://manpages.ubuntu.com/manpages/xenial/man5/interfaces.5.html /etc/network/interfaces]:<br />
<br />
<syntaxhighlight lang=text><br />
# This file describes the network interfaces available on your system<br />
# and how to activate them. For more information, see interfaces(5).<br />
<br />
# The loopback network interface<br />
auto lo<br />
iface lo inet loopback<br />
address 127.0.0.1<br />
netmask 255.0.0.0<br />
<br />
# a interface ethernet eth0<br />
auto eth0<br />
iface eth0 inet static<br />
address 192.168.1.100<br />
netmask 255.255.255.0<br />
gateway 192.168.1.254<br />
dns-nameservers 200.135.37.65<br />
</syntaxhighlight><br />
<br />
Esses arquivo é lido pelos scripts [http://manpages.ubuntu.com/manpages/xenial/en/man8/ifup.8.html ifup] e [http://manpages.ubuntu.com/manpages/xenial/en/man8/ifdown.8.html ifdown]. Esses scripts servem para ativar ou parar interfaces específicas, fazendo todas as operações necessárias para isto:<br />
<br />
<syntaxhighlight lang=bash><br />
# Ativa a interface eth0<br />
ifup eth0<br />
<br />
# Desativa a interface eth0<br />
ifdown eth0<br />
</syntaxhighlight><br />
<br />
Para ativar, desativar ou recarregar as configurações de todas as interfaces de rede:<br />
<br />
<syntaxhighlight lang=bash><br />
# desativa todas as interfaces de rede<br />
sudo /etc/init.d/networking stop<br />
<br />
# ativa todas as interfaces de rede<br />
sudo /etc/init.d/networking start<br />
<br />
# recarrega as configurações de todas as interfaces de rede<br />
sudo /etc/init.d/networking restart<br />
</syntaxhighlight><br />
<br />
== O que todo host deve possuir ==<br />
<br />
----<br />
<br />
Com o que se fez até o momento, pode-se concluir que todo host (computador, tablet, smartphone, ..., qualquer dispositivo que rode aplicações da Internet) precisa de:<br />
* '''Endereço IP e máscara de rede''': um host precisa de um endereço para que possa se comunicar com outros hosts. A máscara de rede informa o tamanho da subrede IP em que ele se encontra.<br />
* '''Rota default (padrão)''': para se comunicar com hosts de outras subredes, é preciso enviar os pacotes para um roteador que saiba encaminhá-los a seus destinos. O roteador ''default'' (ou ''padrão'') é um roteador para quem se destinam todos esses pacotes. Tecnicamente ele corresponde à rota para o destino ''0.0.0.0/0''.<br />
* '''Endereço IP do servidor DNS''': usuários costumam endereçar hosts e servidores por seus nomes de domínio, e não por seus endereços IP. Isso é muito mais fácil de memorizar do que os endereços numéricos. Como explicado em aula, nomes de domínio são análogos a nomes de assinantes em um catálogo telefônico. No entanto, as aplicações precisam dos endereços IP para se comunicarem. O servidor DNS faz a tradução de nome de domínio para endereço IP, e é usado pelas aplicações transparentemente (isso é, você não percebe que isso ocorre). O endereço desse servidor deve ser configurado em cada host, para que se possam traduzir nomes de domínio.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 14}}<br />
<br />
=09/04/2019: Configuração de rede - Subredes=<br />
<br />
{{Collapse top | Aula 15}}<br />
<font size="3"><br />
<br />
<br />
===Sistema binário===<br />
<br />
O sistema binário ou de base 2 é um sistema de numeração posicional em que todas as quantidades se representam com base em dois números, ou seja, zero e um (0 e 1).<br />
<br />
Os computadores digitais trabalham internamente com dois níveis de tensão, pelo que o seu sistema de numeração natural é o sistema binário. Com efeito, num sistema simples como este é possível simplificar o cálculo, com o auxílio da lógica booliana. Em computação, chama-se um dígito binário (0 ou 1) de bit, que vem do inglês Binary Digit. Um agrupamento de 8 bits corresponde a um byte (Binary Term). Um agrupamento de 4 bits, ainda, é chamado de nibble.<br />
<br />
Um processador é formado por milhares de blocos lógicos complexos, formados por portas lógicas básicas, e o funcionamento destas está amparado por um postulado fundamental à eletrônica digital que determina que um circuito opere apenas com dois níveis de tensão bem definidos. Em um circuito digital TTL (Transistor Transistor Logic), os dois níveis de tensão padronizados são 0V (zero volt) e 5V (cinco volts). Ao projetar um sistema digital, ao invés de trabalhar com níveis de tensão trabalha-se com níveis lógicos, então, no caso do circuito TTL, 0V será representado por “0” e 5V será representado por “1”, e os níveis de tensão entre eles serão ignorados, ou seja, adotar-se-á uma faixa até a qual será considerado nível lógico zero, e a partir dela, nível lógico 1. Neste caso, de 0V a 2,5V temos “0”, e a partir daí até 5V temos “1”.<br />
<br />
O sistema binário é base para a Álgebra booliana (de George Boole — matemático inglês), que permite fazer operações lógicas e aritméticas usando-se apenas dois dígitos ou dois estados (sim ou não, verdadeiro ou falso, tudo ou nada, ligado ou desligado, 1 ou 0). Toda a electrónica digital e computação estão baseadas nesse sistema binário e na lógica de Boole, que permite representar por circuitos electrónicos digitais (portas lógicas) os números, caracteres, realizar operações lógicas e aritméticas. Os programas de computadores são codificados sob forma binária e armazenados nas mídias (memórias, discos, etc) sob esse formato. Assim, para informação armazenada na memória RAM do computador, o formato será de voltagem mais alta (1) ou mais baixa (0). Em discos magnéticos a binariedade se dará por diferença de polaridade, positiva ou negativa.<br />
<br />
====Convertendo decimal para binário====<br />
<br />
----<br />
<br />
Para converter um número decimal para binário, basta realizar divisões sucessivas do número decimal por 2 (base do sistema binário) e verificar se essa divisão possui resto ou não. Se possuir, o valor é 1 se não possuir, o valor é 0.<br />
<br />
Exemplo de conversão do valor 29 para binário:<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:binario29.jpg]]</div><br/><br />
<br />
<br />
Exemplo de conversão do valor 10 para binário:<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:binario10.jpg]]</div><br/><br />
<br />
<br />
====Convertendo binário para decimal====<br />
<br />
----<br />
<br />
Para converter um número binário para decimal, basta multiplicar cada bit pelo seu valor de posição e somar os resultados.<br />
<br />
Exemplo de conversão do valor 10101 para decimal:<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:decima10101.jpg]]</div><br/><br />
<br />
<br />
Exemplo de conversão do valor 11101 para decimal:<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:decimal11101.jpg]]</div><br/><br />
<br />
<br />
===Estrutura do endereço IPv4===<br />
<br />
O IPv4 é representado na notação de ponto decimal (por exemplo, 192.168.23.245 ), somente para benefício humano, pois os computadores entendem o endereço na sua notação binária nativa com 32 bits de tamanho, compostos de 4 octetos de 8 bits cada, separados por um ponto:<br />
<br />
<div style="text-align: center;">[[Arquivo:estruturaipv4.jpg]]</div><br/><br />
<br />
<br />
Os endereços IPv4 são divididos em duas partes: o ID de rede e o ID de host. A primeira parte do endereço é o ID de rede que identifica uma determinada rede. A última parte é o ID de host, que identifica um host dentro da rede definida pelo ID de rede.<br />
<br />
<br />
'''<div style="text-align: center;">ID de rede + ID de host = 32 bits</div>'''<br />
<br />
<br />
Somente através da máscara de sub-rede que é possível definir o tamanho do ID de rede e ID de host. Apenas examinando um endereço IPv4 como 192.168.23.245, não sabemos quais dos 32 bits são utilizados em cada ID, pois eles variam de acordo com a máscara.<br />
<br />
<br />
====Criando Subredes====<br />
<br />
----<br />
<br />
Criar sub-redes é a pratica para subdividir logicamente um espaço de endereços, alterando a máscara de sub-rede de uma rede, dividindo as redes em vários domínios de difusão (broadcast), evitando futuras lentidões com o aumento da rede. A divisão da rede também ajuda em um melhor aproveitamento do bloco de endereços disponível.<br />
<br />
====Dividindo as subredes====<br />
<br />
----<br />
<br />
Nesse método, pegamos um bloco de endereços e criamos várias sub-redes do mesmo tamanho, ou seja, com a mesma máscara. Podemos determinar o número de sub-redes que vamos criar, utilizando uma fórmula bem simples:<br />
<br />
'''<div style="text-align: center;">2 <sup>(n2 - n1)</sup></div>'''<br />
<br />
<br />
* N2 representa o comprimento (em bits) do seu novo ID de rede usado internamente na organização.<br />
* N1 é o comprimento do ID original de rede atribuído externamente para indicar o bloco de endereços inteiro.<br />
<br />
<br />
Vamos entender melhor com o seguinte exemplo: Você tem um bloco 192.168.0.1/24. Com isso, o 24 será o valor de N1, ou seja, do bloco original de rede atribuído. Uma máscara /24 tem 256 endereços. Pretendemos subdividir a rede em sub-redes /27, ou seja, criar várias redes /27 através do bloco (192.168.0.1/24), logo N2 tem o valor 27. Agora já podemos verificar quantas sub-redes /27 poderão ser feitas com o bloco /24, com o seguinte cálculo:<br />
<br />
<br />
'''<div style="text-align: center;">2 <sup>(27-24)</sup> = 2 <sup>3</sup> = 8 subredes</div>'''<br />
<br />
<br />
Com a mesma fórmula podemos descobrir quantos endereços teremos em cada uma dessas 8 subredes /27. Basta subtrair 32 (bits totais) com o número 27 e calcular da seguinte forma:<br />
<br />
'''<div style="text-align: center;">2 <sup>(32-27)</sup> = 2 <sup>5</sup> = 32 endereços</div>'''<br />
<br />
<br />
Sempre que realizar essa fórmula, lembre-se que o primeiro endereço é reservado para o endereço de rede, e o último para o endereço de difusão ou broadcast. Com isso, um /27 tem 30 endereços disponíveis. A rede também usará um gateway padrão, que normalmente é o primeiro ou o último endereço disponível. Veremos abaixo como ficará a rede /27:<br />
<br />
<div style="text-align: center;">[[Arquivo:rede27.jpg]]</div><br/><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 15}}<br />
<br />
=11/04/2019: Configuração de rede - Subredes (exercícios)=<br />
<br />
{{Collapse top | Aula 16}}<br />
<font size="3"><br />
===Avaliação docente===<br />
<br />
[https://avaliacao.ifsc.edu.br/ Avaliação do Docente]<br />
<br />
===Exercícios===<br />
<br />
Considerando o IP 200.168.10.66/26, responda:<br />
<br />
# Qual o endereço de rede?<br />
# Qual o endereço de Broadcast?<br />
# Qual a máscara de sub-redes?<br />
# Quantos hosts há nessa rede?<br />
# Qual o intervalo válido de IPs para essa rede?<br />
<br />
<!--Respostas:<br />
<br />
Vamos começar a responder a questão pelo item C para descobrir qual máscara corresponde o CIDR /26. Máscara de sub-rede é um número de 32 bits que divide o endereço IP em duas partes: a primeira parte para rede e a segunda parte para os hosts. Para manter o endereço da rede é fixa, preenche-se os bits responsáveis pela rede com os bits 1. Já para os endereços dos hosts, na máscara de sub-rede, é alocado 0 bits.<br />
<br />
Sabendo que dos 32 bits possíveis, 26 estão sendo usados, temos a seguinte máscara:<br />
<br />
11111111.11111111.11111111.11000000<br />
<br />
Temos os 3 primeiros octetos com os 8 bits preenchidos e apenas 2 no último octeto. Para melhor visualização, vamos converter apenas o último octeto, pois os outros 3 já são 255 (128+64+32+16+8+4+2+1).<br />
<br />
128 64 32 16 8 4 2 1<br />
1 1 0 0 0 0 0 0<br />
<br />
Somando os octetos preenchidos com 1 bit, vamos somar os 2 primeiro. 128 + 64 = 192. Ou seja, nossa máscara de sub-rede é 255.255.255.192<br />
<br />
c) Qual a máscara de sub-redes?<br />
R: 255.255.255.192<br />
<br />
<br />
Agora vamos descobrir o endereço de rede, o item A. Como temos a máscara de sub-rede e sabemos que o último octeto termina em 192 (128+64), nossa rede vai ser “contada” de 64 em 64. A primeira rede sempre começa com 0. As redes seguintes começam com o primeiro endereço de host após o broadcast da rede anterior. Abaixo há todas as redes possíveis do IP do exercício proposto.<br />
<br />
1ª Rede: 200.168.10.0<br />
2ª Rede: 200.168.10.64<br />
3ª Rede: 200.168.10.128<br />
4ª Rede: 200.168.10.192<br />
<br />
Como o IP fornecido foi o 200.168.10.66, nossa rede é a 2ª, 200.168.10.64 até 200.168.10.127.<br />
<br />
a) Qual o endereço de rede?<br />
R: 2ª Rede: 200.168.10.64<br />
<br />
<br />
<br />
<br />
<br />
Com o endereço de rede e a máscara descobertos, vamos descobrir o Broadcast, item B do questionário.<br />
Broadcast é a transmissão de um pacote que será enviado a todos os hosts da rede. Ele é sempre o último endereço da rede. Como sabemos que a nossa rede é de 200.168.10.64 até 200.168.10.127, e o primeiro endereço é sempre o endereço da rede, o último é do Broadcast, no caso o 200.168.10.127<br />
<br />
b) Qual o endereço de Broadcast?<br />
R: 200.168.10.127<br />
<br />
<br />
<br />
<br />
<br />
O próximo item será o D, pois o C foi o primeiro a ser respondido. A pergunta é sobre qual o número de Hosts na rede.<br />
<br />
Como vimos anteriormente, o último octeto está “divido em duas partes”. A primeira parte dessa divisão está preenchida com 1 bit e a segunda com 0 bit. Todos os que estão preenchidos com 1 bit correspondem à rede e os que estão com 0 bit corresponde ao hosts.<br />
<br />
128 64 32 16 8 4 2 1<br />
1 1 0 0 0 0 0 0<br />
<br />
Agora vamos utilizar o número de 0 à direita para saber a quantidade de host. O cálculo é feito em base 2 elevado ao número de 0 correspondente aos hosts. Há seis 0 no hosts, então fica 2^6 (dois elevado a potência de 6) e o resultado é 64 hosts.<br />
<br />
Porém, temos que tirar 2 desses 64 endereços. Na resposta do item B vimos que o primeiro endereço é sempre da rede e o último é sempre do Broadcast. Então o cálculo correto é (2^6) – 2 = 62 hosts.<br />
<br />
d) Quantos hosts há nessa rede?<br />
R: 62 hosts.<br />
<br />
<br />
O último item pergunta qual intervalo válido de IPs para os hosts. Nos itens anteriores vimos que 2 endereços da rede são sempre da rede (o primeiro) e Broadcast (último). Também vimos que há 62 hosts em cada uma das 4 redes. A nossa rede é a 2ª rede (200.168.10.64 até 200.168.10.127), sabemos que o Broadcast é o 200.168.10.127 e a rede é o primeiro, 200.168.10.64, nos sobra o restante da rede como intervalo válido de IPs para hosts.<br />
<br />
e) Qual o intervalo válido de IPs para essa rede?<br />
R: 200.168.10.65 até 200.168.10.126--><br />
<br />
<br />
Dividir a seguinte rede classe C: 229.45.32.0/255.255.255.0. São necessárias, pelo menos, 10 sub-redes. Determinar o seguinte:<br />
<br />
# Quantos bits serão necessários para fazer a divisão e obter pelo menos 10 sub-redes?<br />
# Quantos números IP (hosts) estarão disponíveis em cada sub-rede?<br />
# Qual a nova máscara de sub-rede?<br />
# Listar a faixa de endereços de cada sub-rede.<br />
<br />
<br />
<!--Para responder a questão da letra a, você deve lembrar da fórmula:<br />
<br />
Núm. de sub-redes = 2n1-n2<br />
<br />
Você pode ir substituindo n por valores sucessivos, até atingir ou superar o valor de 10. Por exemplo, para n=2, a fórmula resulta em 2, para n=3, a fórmula resulta em 8, para n=4 a fórmula resulta em 16. Bem, está respondida a questão da letra a, temos que utilizar quatro bits do quarto octeto para fazer parte da máscara de sub-rede.<br />
<br />
a) Quantos bits serão necessários para fazer a divisão e obter pelo menos 10 sub-redes?<br />
<br />
R: 4 bits.<br />
<br />
Como utilizei quatro bits do último octeto (além dos 24 bits dos três primeiros octetos, os quais já faziam parte da máscara original), sobraram apenas 4 bits para os endereços IP, ou seja, para os endereços de hosts em cada sub-rede. Tenho que lembrar da seguinte fórmula:<br />
<br />
Núm. de end. IP dentro de cada sub-rede = 2n<br />
substituindo n por 4, vou obter um valor de 16. Com isso já estou em condições de responder a alternativa b.<br />
<br />
b) Quantos números IP (hosts) estarão disponíveis em cada sub-rede?<br />
<br />
R: 14.<br />
<br />
Como utilizei quatro bits do quarto octeto para fazer a divisão em sub-redes, os quatro primeiros bits foram definidos iguais a 1. Basta somar os respectivos valores, ou seja: 128+64+32+16 = 240. Ou seja, com os quatro primeiros bits do quarto octeto sendo iguais a 1, o valor do quarto octeto passa para 240, com isso já temos condições de responder a alternativa c.<br />
<br />
c) Qual a nova máscara de sub-rede?<br />
<br />
R: 255.255.255.240<br />
<br />
É importante lembrar, mais uma vez, que esta será a máscara de sub-rede utilizada por todas as 16 sub-redes.<br />
<br />
d) Listar a faixa de endereços de cada sub-rede.<br />
<br />
Esta é a novidade deste item. Como saber de que número até que número vai cada endereço IP. Esta também é fácil, embora seja novidade. Observe o último bit definido para a máscara. No nosso exemplo é o quarto bit do quarto octeto. Qual o valor decimal do quarto bit? 16 (o primeiro é 128, o segundo 64, o terceiro 32 e assim por diante, conforme explicado na Parte 2). O valor do último bit é um indicativo das faixas de variação para este exemplo. Ou seja, na prática temos 16 hosts em cada sub-rede, embora o primeiro e o último não devam ser utilizados, pois o primeiro é o endereço da própria sub-rede e o último é o endereço de broadcast da sub-rede. Por isso que ficam 14 hosts por sub-rede, devido ao ‘-2’ na fórmula, o ‘-2’ significa: - o primeiro – o último. Ao listar as faixas, consideramos os 16 hosts, apenas é importante salienar que o primeiro e o último não são utilizados. Com isso a primeira sub-rede vai do host 0 até o 15, a segunda sub-rede do 16 até o 31, a terceira do 32 até o 47 e assim por diante, conforme indicado no esquema a seguir:<br />
<br />
Divisão da rede em 14 sub-redes, onde cada sub-rede fica com 16 endereços IP, sendo que a primeira e a última sub-rede não são utilizadas e o primeiro e o último número IP, dentro de cada sub-rede, também não são utilizados:<br />
<br />
Sub-rede 01 229.45.32.0 -> 229.45.32.15<br />
Sub-rede 02 229.45.32.16 -> 229.45.32.31<br />
Sub-rede 03 229.45.32.32 -> 229.45.32.47<br />
Sub-rede 04 229.45.32.48 -> 229.45.32.63<br />
Sub-rede 05 229.45.32.64 -> 229.45.32.79<br />
Sub-rede 06 229.45.32.80 -> 229.45.32.95<br />
Sub-rede 07 229.45.32.96 -> 229.45.32.111<br />
Sub-rede 08 229.45.32.112 -> 229.45.32.127<br />
Sub-rede 09 229.45.32.128 -> 229.45.32.143<br />
Sub-rede 10 229.45.32.144 -> 229.45.32.159<br />
Sub-rede 11 229.45.32.160 -> 229.45.32.175<br />
Sub-rede 12 229.45.32.176 -> 229.45.32.191<br />
Sub-rede 13 229.45.32.192 -> 229.45.32.207<br />
Sub-rede 14 229.45.32.208 -> 229.45.32.223<br />
Sub-rede 15 229.45.32.224 -> 229.45.32.239<br />
Sub-rede 16 229.45.32.240 -> 229.45.32.255--><br />
<br />
<br />
Dividir a seguinte rede classe B: 150.100.0.0/255.255.0.0. São necessárias, pelo menos, 20 sub-redes. Determinar o seguinte:<br />
<br />
# Quantos bits serão necessários para fazer a divisão e obter pelo menos 20 sub-redes?<br />
# Quantos números IP (hosts) estarão disponíveis em cada sub-rede?<br />
# Qual a nova máscara de sub-rede?<br />
# Listar a faixa de endereços de cada sub-rede.<br />
<br />
<br />
<!--Para responder a questão da letra a, você deve lembrar da fórmula:<br />
<br />
Núm. de sub-redes = 2n1-n2<br />
Você pode ir substituindo n por valores sucessivos, até atingir ou superar o valor de 10. Por exemplo, para n=2, a fórmula resulta em 2, para n=3, a fórmula resulta em 8, para n=4 a fórmula resulta em 16 e para n=5 a fórmula resulta em 32. Bem, está respondida a questão da letra a, temos que utilizar cinco bits do terceiro octeto para fazer parte da máscara de sub-rede. Pois se utilizarmos apenas 4 bits, obteremos somente 16 sub-redes e usando mais de 5 bits, obteremos um número de sub-redes bem maior do que o necessário.<br />
<br />
a) Quantos bits serão necessários para fazer a divisão e obter pelo menos 20 sub-redes?<br />
<br />
R: 5 bits.<br />
<br />
Como utilizei cinco bits do terceiro octeto (além dos 16 bits dos dois primeiros octetos, os quais já faziam parte da máscara original)., sobraram apenas 11 bits (os três restantes do terceiro octeto mais os 8 bits do quarto octeto) para os endereços IP, ou seja, para os endereços de hosts em cada sub-rede. Tenho que lembrar da seguinte fórmula:<br />
<br />
Núm. de endereços IP dentro de cada sub-rede = 2n-2<br />
<br />
substituindo n por 11 (número de bits que restarama para a parte de host), vou obter um valor de 2046, já descontando o primeiro e o último número, os quais não podem ser utilizados, conforme já descrito anteriormente. Com isso já estou em condições de responder a alternativa b.<br />
<br />
b) Quantos números IP (hosts) estarão disponíveis em cada sub-rede?<br />
R: 2046.<br />
<br />
Como utilizei cinco bits do terceiro octeto para fazer a divisão em sub-redes, os cinco primeiros bits foram definidos iguais a 1. Basta somar os respectivos valores, ou seja: 128+64+32+16+8 = 248. Ou seja, com os quatro primeiros bits do quarto octeto sendo iguais a 1, o valor do quarto octeto passa para 248, com isso já temos condições de responder a alternativa c.<br />
<br />
c) Qual a nova máscara de sub-rede?<br />
<br />
R: 255.255.248.0<br />
<br />
É importante lembrar, mais uma vez, que esta será a máscara de sub-rede utilizada por todas as 30 sub-redes.<br />
<br />
d) Listar a faixa de endereços de cada sub-rede.<br />
<br />
Como saber de que número até que número vai cada endereço IP. Esta também é fácil e o raciocínio é o mesmo utilizado para o exemplo anterior, onde foi feita uma divisão de uma rede classe C. Observe o último bit definido para a máscara. No nosso exemplo é o quinto bit do terceiro octeto. Qual o valor decimal do quinto bit (de qualque octeto)? 8 (o primeiro é 128, o segundo 64, o terceiro 32, o quarto é 16 e o quinto é 8, conforme explicado na Parte 2). O valor do último bit é um indicativo das faixas de variação para este exemplo. Ou seja, na prática temos 2048 hosts em cada sub-rede, embora o primeiro e o último não devam ser utilizados, pois o primeiro é o endereço da própria sub-rede e o último é o endereço de broadcast da sub-rede. Por isso que ficam 2046 hosts por sub-rede, devido ao ‘-2’ na fórmula, o ‘-2’ significa: - o primeiro – o último. Ao listar as faixas, consideramos o valor do último bit da máscara. No nosso exemplo é o 8. A primeira faixa vai do zero até um número anterior ao valor do último bit, no caso do 0 ao 7. A seguir indico a faixa de endereços da primeira sub-rede (sub-rede que não será utilizada na prática, pois descarta-se a primeira e a última):<br />
<br />
Sub-rede 01 150.100.0.1 -> 150.100.7.254<br />
<br />
Com isso todo endereço IP que tiver o terceiro número na faixa entre 0 e 7, será um número IP da primeira sub-rede, conforme os exemplos a seguir:<br />
<br />
150.100.0.25<br />
150.100.3.20<br />
150.100.5.0<br />
150.100.6.244<br />
<br />
Importante: Observe que os valores de 0 a 7 são definidos no terceiro octeto, que é onde estamos utilizando cinco bits a mais para fazer a divisão em sub-redes.<br />
<br />
Qual seria a faixa de endereços IP da próxima sub-rede. Aqui vale o mesmo reciocínio. O último bit da máscara equivale ao valor 8. Esta é a variação da terceira parte do número IP, que é onde esta sendo feita a divisão em sub-redes. Então, se a primeira foi de 0 até 7, a segunda sub-rede terá valores de 8 a 15 no terceiro octeto, a terceira sub-rede terá valores de 16 a 23 e assim por diante.<br />
<br />
Divisão da rede em 32 sub-redes, onde cada sub-rede fica com 2048 endereços IP, sendo que a primeira e a última sub-rede não são utilizadas e o primeiro e o último número IP, dentro de cada sub-rede, também não são utilizados:<br />
<br />
Sub-rede Primeiro IP Último IP End. de broadcast Número<br />
<br />
150.100.0.0 150.100.0.1 150.100.7.254 150.100.7.255 01<br />
150.100.8.0 150.100.8.1 150.100.15.254 150.100.15.255 02<br />
150.100.16.0 150.100.16.1 150.100.23.254 150.100.23.255 03<br />
150.100.24.0 150.100.24.1 150.100.31.254 150.100.31.255 04<br />
150.100.32.0 150.100.32.1 150.100.39.254 150.100.39.255 05<br />
150.100.40.0 150.100.40.1 150.100.47.254 150.100.47.255 06<br />
150.100.48.0 150.100.48.1 150.100.55.254 150.100.55.255 07<br />
150.100.56.0 150.100.56.1 150.100.63.254 150.100.63.255 08<br />
150.100.64.0 150.100.64.1 150.100.71.254 150.100.71.255 09<br />
150.100.72.0 150.100.72.1 150.100.79.254 150.100.79.255 10<br />
150.100.80.0 150.100.80.1 150.100.87.254 150.100.87.255 11<br />
150.100.88.0 150.100.88.1 150.100.95.254 150.100.95.255 12<br />
150.100.96.0 150.100.96.1 150.100.103.254 150.100.103.255 13<br />
150.100.104.0 150.100.104.1 150.100.111.254 150.100.111.255 14<br />
150.100.112.0 150.100.112.1 150.100.119.254 150.100.119.255 15<br />
150.100.120.0 150.100.120.1 150.100.127.254 150.100.127.255 16<br />
150.100.128.0 150.100.128.1 150.100.135.254 150.100.135.255 17<br />
150.100.136.0 150.100.136.1 150.100.143.254 150.100.143.255 18<br />
150.100.144.0 150.100.144.1 150.100.151.254 150.100.151.255 19<br />
150.100.152.0 150.100.152.1 150.100.159.254 150.100.159.255 20<br />
150.100.160.0 150.100.160.1 150.100.167.254 150.100.167.255 21<br />
150.100.168.0 150.100.168.1 150.100.175.254 150.100.175.255 22<br />
150.100.176.0 150.100.176.1 150.100.183.254 150.100.183.255 23<br />
150.100.184.0 150.100.184.1 150.100.191.254 150.100.191.255 24<br />
150.100.192.0 150.100.192.1 150.100.199.254 150.100.199.255 25<br />
150.100.200.0 150.100.200.1 150.100.207.254 150.100.207.255 26<br />
150.100.208.0 150.100.208.1 150.100.215.254 150.100.215.255 27<br />
150.100.216.0 150.100.216.1 150.100.223.254 150.100.223.255 28<br />
150.100.224.0 150.100.224.1 150.100.231.254 150.100.231.255 29<br />
150.100.232.0 150.100.232.1 150.100.239.254 150.100.239.255 30<br />
150.100.240.0 150.100.240.1 150.100.247.254 150.100.247.255 31<br />
150.100.248.0 150.100.248.1 150.100.255.254 150.100.255.255 32<br />
<br />
Com base na tabela apresentada, fica fácil responder em que sub-rede está contido um determinado número IP. Por exemplo, considere o número IP 1500.100.130.222. Primeiro você observa o terceiro octeto do número IP (o terceiro, porque é neste octeto que estão os últimos bits que foram utilizados para a máscara de sub-rede). Consultando a tabela anterior, você observa o valor de 130 para o terceiro octeto corresponde a sub-rede 17, na qual o terceiro octeto varia entre 128 e 135, conforme indicado a seguir:<br />
<br />
150.100.128.0 150.100.128.1 150.100.135.254 150.100.135.255 17--><br />
<br />
<br />
<br />
Leituras úteis:<br />
<br />
* [http://www.dltec.com.br/blog/redes/tecnica-4-em-1-para-analise-de-endereco-ip/ Técnica 4 em 1 para análise de endereço IP]<br />
<br />
</font><br />
{{Collapse bottom | Aula 16}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=156293PJI2-2019-12019-04-01T20:44:34Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Usuário:juliana.camilo|Juliana Camilo]] ([mailto:juliana.camilo@ifsc.edu.br juliana.camilo@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=14/03/2019: Usuários e grupos e permissões - Exercício adicional=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
=== Atividade (não é necessário adicionar esta atividade ao relatório)===<br />
<br />
Considere o cenário abaixo relativo a grupos e usuários:<br />
<br />
[[imagem:usuariosgrupos.png]]<br />
<br />
* Crie um diretório em /home para cada grupo, com o nome grupo-arquivos (exemplo, o grupo lab1 terá um diretório chamado lab1-arquivos).<br />
<br />
* Dentro destes diretórios dos grupos, cada usuário deverá possuir um diretório com o seu nome.<br />
<br />
* O shell utilizado será o /bin/bash.<br />
<br />
* Defina a senha de cada usuário.<br />
<br />
* Exibir o arquivo que contém os usuários do sistema.<br />
<br />
* Exibir o arquivo que contém os grupos do sistema<br />
<br />
* Exibir o arquivo que contém as senhas criptografadas dos usuários do sistema.<br />
<br />
* Mudar o nome de login do usuário ana para anaclara<br />
<br />
* Mudar o nome do grupo alunos para usuarios<br />
<br />
* Inclua no grupo usuarios, os usuários luiz e marta.<br />
<br />
* Apague o grupo usuarios.<br />
<br />
* Apague os grupos lab1, lab2.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://ivanix.wordpress.com/2009/01/25/arquivos-de-usuarios-grupos-e-senhas/ Arquivos de usuários, grupos e senhas]<br />
<br />
[https://alexandrebbarbosa.wordpress.com/2014/05/26/criando-usuario-e-grupos-no-linux/ Administrando usuários e grupos no Linux]<br />
<br />
[http://pajeonline.blogspot.com.br/2010/12/como-listar-os-usuarios-e-grupos.html Como Listar os Usuários e Grupos Existentes no Linux?]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=21/03/2019: Instalação de Sistema Operacional=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 2048 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* '''sudo apt-get update'''<br />
* '''sudo apt-get install build-essential module-assistant dkms'''<br />
* '''sudo m-a prepare'''<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
===Exercícios===<br />
<br />
Neste exercício iremos efetuar a instalação de um sistema operacional diferente. Iremos instalar o Linux Mint.<br />
A configuração da máquina virtual deve ser a seguinte:<br />
<br />
* 3072 MB de Ram;<br />
* 20 GB de espaço em disco;<br />
* 2 processadores;<br />
* 64 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<br />
No decorrer da instalação deve ser efetuada a documentação com a explicação e imagens de cada etapa do processo, desde a criação da máquina virtual até a finalização da instalação.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=26/03/2019: Linha de comando: Instalação de softwares=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
=== Instalação de software ===<br />
<br />
A instalação de software pode ser feita de diferentes maneiras:<br />
* ''A partir do software em formato de código-fonte:'' envolve transferir o código-fonte do seu repositório, e então compilá-lo. Isso requer um maior conhecimento técnico, e é uma habilidade esperada para um Técnico que atue na área de Telecomunicações. <br />
* ''A partir do software já preparado (compilado):'' essa forma é mais simples, pois basicamente implica obter o software compilado e copiá-lo para dentro do seu sistema. É também a prática mais comum, por ser mais rápida, fácil e menos trabalhosa. Todas as distribuições Linux (e também o FreeBSD, entre outras variantes de Unix) provêem alguma forma de instalar softwares dessa maneira. Esses sistemas criam o conceito de '''pacote de software''', que é um arquivo especial contendo todos os arquivos do software a ser instalado, e todas as informações necessárias para que a instalação tenha sucesso (versão, dependências, e outras). <br />
<br />
No escopo desta disciplina de Projeto Integrador, são usados '''pacotes de software'''. Mas nada impede que se demonstre como seria realizar uma instalação a partir do código-fonte, caso exista a curiosidade.<br />
<br />
No Ubuntu Linux (e também nas distribuições originadas no Debian), o sistema de pacotes de software se chama ''dpkg'' (Debian Package). Existem diferentes formas de instalar e remover sofware, dentre elas:<br />
# '''Diretamente a partir dos arquivos de pacote de software:''' esses arquivos têm extensão ''.deb'', e devem ser instalados por meio do programa [http://manpages.ubuntu.com/manpages/trusty/man1/dpkg.1.html dpkg]. Os arquivos ''.deb'' devem ser obtidos manualmente pelo usuário, podendo ser copiados de DVDs do sistema, ou obtidos de servidores na rede. Para removê-los, deve-se usar também o ''dpkg''.<br />
# '''Obtendo automaticamente pacotes de software de repositórios:''' essa forma de administrar os pacotes é muito mais fácil, pois os pacotes de software são obtidos de servidores de pacotes na rede. Ela se baseia num sistema de gerenciamento de pacotes chamado de APT, e pode ser realizada por meio dos aplicativos [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get] ou [http://manpages.ubuntu.com/manpages/precise/en/man8/aptitude.8.html aptitude] (este é ainda mais fácil). Existem também versões gráficas para esses gerenciadores de pacotes.<br />
<br />
<br />
=== Instalação manual com ''dpkg'' ===<br />
<br />
Para instalar pacotes de software manualmente, primeiro devem-se obter os respectivos arquivos de instalação. Cada pacote de software está contido em um arquivo com extensão ''.deb''. Esses arquivos podem ser obtidos dos CD e DVD de instalação, ou de repositórios na Internet. Exemplos:<br />
* [http://ubuntu.c3sl.ufpr.br/ubuntu/ um repositório do Ubuntu no Brasil]<br />
* [http://archive.raspbian.org/raspbian/ Repositório para o Raspbian (Debian para o RaspberryPi)]<br />
<br />
<br />
Cada arquivo de instalação deve ser instalado da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -i nome_do_pacote.deb<br />
</syntaxhighlight><br />
<br />
Se o pacote de software não puder ser instalado, uma mensagem de erro é apresentada. Uma causa para esse problema é existirem dependências em relação a outros pacotes de software, os quais devem então ser instalados previamente.<br />
<br />
Para descobrir as dependência de um pacote podemos utilizar o comando a seguir:<br />
<br />
# sudo apt-cache depends nome-do-pacote<br />
<br />
A remoção de um pacote de software pode ser feita assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -r nome_do_pacote<br />
</syntaxhighlight><br />
<br />
Se o pacote a ser removido for dependência para outros pacotes instalados, a remoção será abortada.<br />
<br />
<br />
A listagem de todos os pacotes instalados pode ser obtida com este comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -l<br />
</syntaxhighlight><br />
<br />
A listagem dos arquivos instalados por um pacote é mostrada com este outro comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -L nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Informações detalhadas sobre um pacote podem ser mostradas assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -p nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://sourceforge.net/projects/nevernote/files/NixNote2%20-%202.0.2/ Pacote deb NixNote]<br />
<br />
[https://sourceforge.net/projects/openofficeorg.mirror/files/4.1.5/binaries/pt-BR/Apache_OpenOffice_4.1.5_Linux_x86-64_install-deb_pt-BR.tar.gz/download Pacote deb Open Office]<br />
<br />
[https://deb.opera.com/opera/pool/non-free/o/opera-stable/ Pacote deb do navegador Opera]<br />
<br />
=== Obtenção automática de software ===<br />
<br />
Os pacotes de softwares dos sistemas operacionais Ubuntu e Debian são organizados e disponibilizados em repositórios, que são servidores na Internet onde há cópias dos arquivos de instalação desses pacotes. Os repositórios são configurados durante a própria instalação do sistema, ficando registrados no arquivo [http://manpages.ubuntu.com/manpages/trusty/man5/sources.list.5.html /etc/apt/sources.list]. Esse arquivo pode ser modificado para incluir ou remover repositórios, quando necessário.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get]:<br />
* '''apt-get update''': atualiza o catálogo de pacotes de software conhecidos. Isso implica consultar os repositórios configurados e transferir as listas de pacotes lá existentes. Isso é importante para ter acesso a versões atualizadas dos pacotes de software.<br />
* '''apt-get install nome_do_pacote''': instala o pacote de software chamado ''nome_do_pacote''. Se houver dependências de outros pacotes, eles também serão instalados.<br />
* '''apt-get remove nome_do_pacote''': remove o pacote de software chamado ''nome_do_pacote''. se outros pacotes dependerem desse pacote, eles também serão removidos.<br />
* '''apt-get clean''': remove as cópias dos arquivos de pacotes de software transferidos e não mais necessários.<br />
* '''apt-get upgrade''': atualiza todos os pacotes de software para suas versões mais recentes, caso existam.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/aptitude.8.html aptitude]:<br />
* '''aptitude update''': mesmo que ''apt-get update''<br />
* '''aptitude install nome_do_pacote''': mesmo que ''apt-get install''<br />
* '''aptitude remove nome_do_pacote''': mesmo que ''apt-get remove''<br />
* '''aptitude search nome''': lista todos os pacotes de software conhecidos cujos nomes contenham ''nome''<br />
<br />
Links úteis:<br />
<br />
<br />
[https://repogen.simplylinux.ch/ Gerador de lista de repositórios sources.list]<br />
<br />
===Utilizando repositório PPA (Personal Package Archives)===<br />
<br />
PPA quer dizer Personal Package Archives, os repositórios deste tipo nada mais são do quer servidores na internet onde se encontram os programas que não estão nos repositórios oficias da sua distro.<br />
Mas essa é uma generalização porque alguns programas que estão na Central de Programas possuem PPA, caso do WINE por exemplo, a diferença entre instalar a versão da Central de Programas e instalar via PPA é que a versão que está na Central de Programas e suas possíveis atualizações já foram testadas e apresentam um nível bom de segurança e estabilidade, porém, não trazem os mesmos recursos muitas vezes, das versões mais recentes, coisa que o PPA trás.<br />
<br />
Mas antes de adicionar PPAs no seu sistema, procure informações referentes aos desenvolvedores, procedência, etc, pois se trata de programas de terceiros, não oficiais da lista de repositório da versão do seu sistema operacional.<br />
<br />
O comando em si é simples:<br />
<br />
# sudo add-apt-repository nome-do-repositorio-ppa<br />
<br />
Como exemplo, vamos utilizar o PPA do Wine, ele é um software que permite rodar aplicações Windows no Linux:<br />
<br />
# sudo add-apt-repository ppa:ubuntu-wine/ppa<br />
<br />
Posteriormente devemos atualizar a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalar o pacote:<br />
<br />
# sudo apt-get install wine<br />
<br />
Também podemos remover repositórios PPA, seja pelo fato de não estar mais disponível ou simplesmente porque não queremos mais utilizá-lo. Para isso utilizamos o comando a seguir:<br />
<br />
# sudo add-apt-repository -r ppa:endereço-do-repositorio<br />
<br />
e posteriormente atualizamos a lista:<br />
<br />
# sudo apt-get update<br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://www.ubuntuupdates.org/ppas Repositórios PPA]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=28/03/2019: Linha de comando: Instalação de softwares - Continuação=<br />
<br />
{{Collapse top | Aula 12}}<br />
<font size="3"><br />
<br />
<br />
=== Atividades ===<br />
<br />
''Execute os passos seguintes tanto com instalação manual quanto automática de software.''<br />
# Instale estes softwares:<br />
#* mplayer<br />
#* mencoder<br />
#* handbrake<br />
#* pppoe<br />
#* hostapd<br />
#* vlan<br />
# Após instalá-los, obtenha suas descrições. Veja também as descrições destes outros softwares já instalados:<br />
#* bash<br />
#* iproute2<br />
#* iptables<br />
#* tcpdump<br />
# Liste todos os softwares instalados.<br />
# Remova os softwares instalados nos passos anteriores.<br />
# Descubra como se podem instalar softwares em modo gráfico.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://www.debian.org/doc/manuals/apt-howto/ch-search.pt-br.html Como usar o APT - Obtendo informações sobre pacotes]<br />
<br />
[https://www.ubuntuupdates.org/ppas Lista de PPAs]<br />
<br />
[https://pkgs.org/ Pacotes .deb]<br />
<br />
[http://e-tinet.com/linux/41-softwares-linux-alternativa/ 41 Softwares para Linux]<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=02/04/2019: Linha de comando: Backups=<br />
<br />
{{Collapse top | Aula 13}}<br />
<font size="3"><br />
<br />
=== Backups ===<br />
<br />
Existem muitos programas para realizar cópias de segurança no Linux (chamadas de ''backup''). Porém tradicionalmente a forma mais simples de realizar uma cópia pessoal de um conjunto de arquivos e diretórios faz uso de um programa simples chamado ''tar''. <br />
<br />
=== tar ===<br />
<br />
O programa ''[http://manpages.ubuntu.com/manpages/trusty/en/man1/tar.1.html tar]'' é um utilitário do mundo Unix originalmente criado para backups em fita (daí seu nome: ''TApe aRchiver'', se bem que ''tar'' é também um trocadilho que pode significar piche, pois ele de certa forma gruda um arquivo ao outro). O resultado da execução do ''tar'' é um arquivo contendo todos os arquivos e diretórios que foram selecionados para inclusão. Esse arquivo ''tar'' pode ser então compactado, obtendo-se algo parecido com o que faz zip ou rar.<br />
<br />
Mas porque não usar então zip e rar ? Afinal, eles existem também no Linux ... No entanto, esses compactadores nasceram no mundo do antigo MS-DOS, e assim não são capazes de armazenar todos os atributos de arquivos que existem em sistemas Unix (informações tais como usuário e grupo dono do arquivo, permissões de acesso, tipo do arquivo, datas de último acesso e modificação). O ''tar'', pelo contrário, consegue preservar esses atributos, e por isto se torna mais adequado para uso no Unix em geral.<br />
<br />
Uso do ''tar'':<br />
* '''Criação de arquivo tar:''' <syntaxhighlight lang=bash>tar cf nome_arquivo.tar arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
* '''Mostrar o conteúdo de arquivo tar:''' <syntaxhighlight lang=bash>tar tvf nome_arquivo.tar </syntaxhighlight><br />
* '''Extrair conteúdo de arquivo tar:''' <syntaxhighlight lang=bash>tar xf nome_arquivo.tar</syntaxhighlight><br />
<br />
Os usos acima não compactam os arquivos incluídos dentro do arquivo ''tar''. Para compactá-los deve-se adicionar uma opção de compactação:<br />
* '''Criação de arquivo tar compactado:''' <br />
** '''''Com compress:''''' <syntaxhighlight lang=bash>tar cZf nome_arquivo.tar.Z arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
** '''''Com gzip:''''' <syntaxhighlight lang=bash>tar czf nome_arquivo.tar.gz arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
** '''''Com bzip2:''''' <syntaxhighlight lang=bash>tar cjf nome_arquivo.tar.bz2 arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
** '''''Com xz:''''' <syntaxhighlight lang=bash>tar cJf nome_arquivo.tar.xz arquivo_ou_diretorio1 [arquivo_ou_diretorio2 ...]</syntaxhighlight><br />
* '''Mostrar o conteúdo de arquivo tar:''' <br />
** '''''Com compress:''''' <syntaxhighlight lang=bash>tar tvZf nome_arquivo.tar.Z </syntaxhighlight><br />
** '''''Com gzip:''''' <syntaxhighlight lang=bash>tar tvzf nome_arquivo.tar.gz </syntaxhighlight><br />
** '''''Com bzip2:''''' <syntaxhighlight lang=bash>tar tvjf nome_arquivo.tar.bz2 </syntaxhighlight><br />
** '''''Com xz:''''' <syntaxhighlight lang=bash>tar tvJf nome_arquivo.tar.xz </syntaxhighlight><br />
* '''Extrair conteúdo de arquivo tar:''' <br />
** '''''Com compress:''''' <syntaxhighlight lang=bash>tar xZf nome_arquivo.tar.Z </syntaxhighlight><br />
** '''''Com gzip:''''' <syntaxhighlight lang=bash>tar xzf nome_arquivo.tar.gz </syntaxhighlight><br />
** '''''Com bzip2:''''' <syntaxhighlight lang=bash>tar xjf nome_arquivo.tar.bz2 </syntaxhighlight><br />
** '''''Com xz:''''' <syntaxhighlight lang=bash>tar xJf nome_arquivo.tar.xz </syntaxhighlight><br />
<br />
Parâmetros:<br />
<br />
-c - cria um novo arquivo tar;<br />
<br />
-M - cria, lista ou extrai um arquivo multivolume;<br />
<br />
-p - mantém as permissões originais do(s) arquivo(s);<br />
<br />
-r - acrescenta arquivos a um arquivo tar;<br />
<br />
-t - exibe o conteúdo de um arquivo tar;<br />
<br />
-v - exibe detalhes da operação;<br />
<br />
-w - pede confirmação antes de cada ação;<br />
<br />
-x - extrai arquivos de um arquivo tar;<br />
<br />
-z - comprime ou extrai arquivos tar resultante com o gzip;<br />
<br />
-j - comprime ou extrai arquivos tar resultante com o bz2;<br />
<br />
-f - especifica o arquivo tar a ser usado;<br />
<br />
-C - especifica o diretório dos arquivos a serem armazenados.<br />
<br />
=== Compactadores no modo texto ===<br />
<br />
Vários compactadores de arquivos existem no Linux, e o ''nautilus'' simplifica sua seleção e uso. Esses compactadores podem ser usados também no modo texto ... aliás, eles originalmente foram criados para serem usados dessa forma ! O que o ''nautilus'' faz é facilitar seu uso por meio de uma interface gráfica.<br />
<br />
Os principais compactadores são:<br />
* [http://manpages.ubuntu.com/manpages/karmic/en/man1/compress.1.html compress]: compactador mais antigo e comum nos Unix em geral, porém em desuso. Gera arquivos compactados com extensão .Z. Precisa do pacote de software ''ncompress'' no Ubuntu. Exemplo de uso: <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ compress palavras.txt <br />
msobral@curl2:~/tmp$ ls -l palavras.txt.Z <br />
-rw-rw-r-- 1 msobral msobral 932433 Jun 29 14:59 palavras.txt.Z<br />
msobral@curl2:~/tmp$ uncompress palavras.txt.Z <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt</syntaxhighlight><br />
* [http://manpages.ubuntu.com/manpages/karmic/en/man1/gzip.1.html GNU zip]: compactador bastante utilizado, com maior poder de compactação que ''compress''. Gera arquivos compactados com extensão .gz. Já vem instalado no Ubuntu. Exemplo de uso: <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ gzip palavras.txt<br />
msobral@curl2:~/tmp$ ls -l palavras.txt.gz<br />
-rw-rw-r-- 1 msobral msobral 532756 Jun 29 14:59 palavras.txt.gz<br />
msobral@curl2:~/tmp$ gunzip palavras.txt.gz <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt<br />
</syntaxhighlight><br />
* [http://manpages.ubuntu.com/manpages/karmic/en/man1/bzip2.1.html bzip2]: vem sendo bastante usado por ter um poder de compactação ainda maior, porém à custa de maior processamento (compactação fica mais lenta). Gera arquivos compactados com extensão .bz2. Também já vem instalado no Ubuntu. <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ bzip2 palavras.txt<br />
msobral@curl2:~/tmp$ ls -l palavras.txt.bz2 <br />
-rw-rw-r-- 1 msobral msobral 720099 Jun 29 14:59 palavras.txt.bz2<br />
msobral@curl2:~/tmp$ bunzip2 palavras.txt.bz2 <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt<br />
</syntaxhighlight><br />
* [http://manpages.ubuntu.com/manpages/trusty/en/man1/xz.1.html xz]: outro compactador bastante usado recentemente. Pode compactar ainda mais que ''bzip2'', porém a um custo computacional maior. Isso significa que ele demora mais para compactar um arquivo que esse outro compactador. Gera arquivos com extensão ''.xz''. Ele já vem instalado no Ubuntu. <syntaxhighlight lang=bash><br />
msobral@curl2:~/tmp$ xz palavras.txt <br />
msobral@curl2:~/tmp$ ls -l palavras.txt.xz <br />
-rw-rw-r-- 1 msobral msobral 387056 Jun 29 14:59 palavras.txt.xz<br />
msobral@curl2:~/tmp$ unxz palavras.txt.xz <br />
msobral@curl2:~/tmp$ ls -l palavras.txt<br />
-rw-rw-r-- 1 msobral msobral 2856243 Jun 29 14:59 palavras.txt<br />
</syntaxhighlight><br />
<br />
* ... outros menos populares no mundo do Linux, tais como [http://manpages.ubuntu.com/manpages/karmic/en/man1/zip.1.html zip], [http://manpages.ubuntu.com/manpages/karmic/en/man1/rar.1.html rar] e [http://manpages.ubuntu.com/manpages/karmic/en/man1/zoo.1.html zoo].<br />
<br />
Note que os compactadores ''compress'', ''gzip'', ''bzip2'' e ''xz'' compactam um arquivo por vez. Assim, com eles não é possível juntar vários arquivos e diretórios dentro de um único arquivo compactado (o que se faz corriqueiramente com '''zip''' ou '''rar''' ...). Portanto, se for necessário compactar um diretório ou um conjunto de arquivos, o melhor é combinar um compactador com o programa [http://manpages.ubuntu.com/manpages/karmic/en/man1/tar.1.html tar].<br />
<br />
<br />
Leituras interessantes:<br />
<br />
[https://pt.wikipedia.org/wiki/Tar_(computa%C3%A7%C3%A3o) Comando TAR]<br />
<br />
=== Exercícios ===<br />
<br />
Faça os exercícios abaixo usando os compactadores no modo texto:<br />
<br />
# Procure um arquivo de texto (extensão .txt, .html, ou .doc) com ao menos 100 kB e compacte-o com compress, gzip, bzip2 e xz. Compare os tamanhos dos arquivos resultantes.<br />
# Usando o programa tar, compacte todo o diretório ''Documentos'' do usuário ''aluno''. Experimente criar o arquivo tar sem compactação, e depois compactado com cada um dos compactadores vistos. Você terá portanto como resultado quatro arquivos tar diferentes ...<br />
# Descompacte os arquivos tar gerados na questão anterior. Para evitar sobreposição, descompacte cada um deles em um diretório separado.<br />
<br />
<br />
Baixe o arquivo do link abaixo e faça o exercício proposto:<br />
<br />
[https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing Arquivos_gerais.tar.gz]<br />
<br />
# Descompacte o arquivo.<br />
# Separe os arquivos em suas respectivas pastas (vídeos, músicas, documentos, imagens) através de comandos para mover no terminal.<br />
# Compacte os arquivos usando o compress, gzip, bzip2 e xz em conjunto com o tar. Compare os tamanhos dos arquivos resultantes.<br />
# Liste o conteúdo de cada um dos arquivos compactados<br />
# Descompacte os arquivos criados anteriormente no diretório /home/aluno/arquivos_gerais<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI4-2019-1&diff=156292PJI4-2019-12019-04-01T20:29:43Z<p>Ederson.luiz: /* 01/04/2019: Avaliação - Continuação */</p>
<hr />
<div>= Projeto Integrador IV= <br />
<font size="3"><br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 2a feira/19:00, 4a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 4a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji4-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
#Implantar um PABX IP integrado com serviços de telefonia fixa e móvel convencionais. <br />
#Prover a infraestrutura de rede necessária para o adequado funcionamento deste PABX IP. <br />
#Integrar os serviços de telefonia com outros serviços de rede.<br />
<br />
== Links interessantes ==<br />
<br />
* [https://hakin9.org/voip-hacking-techniques/ VoIP Hacking Techniques]<br />
* [https://www.vivaolinux.com.br/artigo/Asterisk-nao-e-um-Sip-Proxy Asterisk não é um SIP proxy]<br />
* [https://www.rnp.br/servicos/servicos-avancados/fonernp FoneRNP]<br />
* [https://www.digium.com/products/business-phone-systems/on-premise/virtual-pbx SwitchVox: PBX virtual]<br />
* [http://convergecom.com.br/teletime/21/03/2006/embratel-e-net-lancam-servico-de-telefonia-fixa-local/ Net Fone da Embratel é VoIP, mas não usa SIP]<br />
** [https://en.wikipedia.org/wiki/PacketCable ... e sim PacketCable]<br />
* [http://thevoipreport.com/article/cold-hard-voip-stats/ Estatísticas sobre VoIP no mundo]<br />
* [https://www.cisco.com/c/en/us/support/docs/voice/digital-cas/5717-e1-r2-sig.html Sinalização R2 (E1)]<br />
=== Provedores VoIP no Brasil ===<br />
* [https://www.falemaisvoip.com.br/o-que-e-voip/ FaleMaisVoIP]<br />
* [http://www.directcall.com.br/ DirectCall]<br />
* [http://www.teleco.com.br/opvoip.asp outros ...]<br />
<br />
== Resumo de comandos da CLI para o Asterisk ==<br />
<br />
# O Asterisk pode ser carregado de duas formas:<br />
#* '''foreground''': utilizado para depurar problemas na inicialização do Asterisk, quando ele não puder ser inicializado.<br />
#* '''background''': modo padrão de inicialização<br><br><br />
# Conectar à CLI do Asterisk carregado <syntaxhighlight lang=text><br />
asterisk -r<br />
rasterisk <br />
</syntaxhighlight><br />
# Comandos na CLI<br />
## Saindo da CLI sem interromper o processo <syntaxhighlight lang=text><br />
exit<br />
</syntaxhighlight><br />
## Carrega canais SIP previamente registrados <syntaxhighlight lang=text><br />
sip reload<br />
</syntaxhighlight><br />
## Mostra canais SIP registrados <syntaxhighlight lang=text><br />
sip show peers<br />
</syntaxhighlight><br />
## Carrega plano de discagem <syntaxhighlight lang=text><br />
dialplan reload<br />
</syntaxhighlight><br />
## Mostra a extensão criada no plano de discagem <syntaxhighlight lang=text><br />
dialplan show default<br />
</syntaxhighlight><br />
## Finalizando processo no Asterisk <syntaxhighlight lang=bash><br />
sudo core stop now<br />
</syntaxhighlight><br />
## Ver aplicações disponíveis no Asterisk <syntaxhighlight lang=text><br />
core show applications<br />
</syntaxhighlight><br />
# Iniciando Asterisk em modo Background <syntaxhighlight lang=bash><br />
sudo service asterisk start<br />
</syntaxhighlight><br />
# Carregar o Asterisk em modo ForeGround <syntaxhighlight lang=bash><br />
sudo asterisk -gc<br />
</syntaxhighlight><br />
</font><br />
<br />
=11/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1MNqwAklC8WL0-geeBuC_4kCTjGqDxcyi/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador IV===<br />
<br />
O foco do Projeto Integrador IV está na oferta de serviços ao usuário final e na convergência de serviços de telecomunicações, incluindo a integração dos serviços de telefonia fixa, móvel e VoIP. Além disso, também tem como objetivo a integração destes serviços de telecomunicações com outros serviços de rede como servidores Web, Email, Telefonia IP, administração de sistemas e usuários, compartilhamento de recursos, DNS, etc. <br />
<br />
<br />
Na figura abaixo é apresentado um esboço do cenário que foi desenvolvido durante o Projeto Integrador III. A proposta inicial é integrar a este cenário serviços de telefonia IP e convencional. Além disso, outros serviços podem ser integrados a ambos, como e-mail, DNS, acesso à câmeras IP, etc. <br />
<br />
[[imagem:Diagrama-PJI3.png|600px]]<br />
<br />
<br />
Uma vez integrados os serviços de rede e de telefonia e tendo em mente que a qualidade de serviço é um ponto sensível à aplicações de telefonia IP, espera-se desenvolver métodos de medição de rede para assegurar seu correto funcionamento.<br />
<br />
== PBX IP ==<br />
<br />
<br />
Um PBX IP funciona como uma central telefônica, porém intermediando chamadas VoIP. Com isso, as chamadas são feitas de um telefone IP em direção ao PBX IP, que a encaminha ao telefone IP de destino de acordo com suas regras de discagem. A figura abaixo ilustra como funciona uma chamada VoIP típica através de um PBX IP.<br />
<br />
[[imagem:Voip-call.png|500px]]<br />
<br />
<br />
Nas nossas aulas faremos uso de um PBX IP [http://www.asterisk.org/ Asterisk], que é um software desenvolvido pela [http://www.digium.com/ Digium]. O Asterisk roda em computadores do tipo PC que possuem sistema operacional baseado em Linux. Sua licença é livre, o que significa que não há custo de licenciamento para utilizá-lo.<br />
* [http://www.asterisk.org/get-started Uma visão geral sobre Asterisk]<br />
<br />
== PBX IP Asterisk ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/rmu/slides/aula-25.pdf Transparências]<br />
* [http://www.asterisk.org Site oficial do Asterisk]<br />
* [http://www.asteriskguru.com/ Asterisk Guru]<br />
* [http://www.voip-info.org/wiki Dicas sobre Asterisk]<br />
* [http://www.asteriskdocs.org/ Livro online gratuito sobre Asterisk]<br />
* [http://www.packetizer.com/ipmc/sip/papers/understanding_sip_voip/ Introdução a VoIP e SIP]<br />
* Livro [http://www.shopvoip.com.br/index.php?route=product/product&product_id=1263 ''Asterisk: Guia de Configuração - 5a geração''], de Flávio Gonçalves.<br />
<br />
<br />
'''Asterisk:''' uma solução completa de PABX baseado em software, permitindo ligar o mundo IP ao mundo da rede pública de telefonia comutada.<br />
<br />
'''Características Básicas:''' faz tudo que um PABX pequeno e simples faz e pouco mais<br />
* Transferência, música de espera, siga-me, etc.<br />
* Conferência, correio de voz, URA, fila de chamadas, monitoramento de chamadas, integração com o Jabber (Google talk)<br />
<br />
<br />
[[imagem:Asterisk-ex1.png|400px]]<br />
<br>''Exemplo de cenário de uso do Asterisk''<br />
<br />
<br />
<!-- [[imagem:Asterisk-arch.png|500px]]<br />
<br>''Arquitetura modular do Asterisk'' ---><br />
<br />
<br />
O Asterisk é um software complexo e com muitos recursos. Porém sua função mais elementar, que é intermediar chamadas, pode ser entendida com base em dois elementos importantes desse tipo de PBX. Esses elementos são o '''plano de discagem''' e '''configurações de canais'''. Na terminologia do Asterisk, um canal pode ser entendido como um ramal ou tronco. Para ter o Asterisk funcionando como uma central simplificada, é suficiente configurar esses dois elementos.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 4'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI4 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador IV'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professores: Ederson Luiz de Souza Santos e Mayara de Sousa'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2018'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=13/02/2019: Conceitos gerais, preparação do servidor e instalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
<b>Telefonia IP ou VoIP: O que é?</b><br />
----<br />
A Comunicação de Voz em Redes IP, chamada de VoIP, consiste no uso das redes de dados que utilizam o conjunto de protocolos das redes IP (TCP/UDP/IP) para a transmissão de sinais de Voz em tempo real na forma de pacotes de dados.<br />
<br />
A sua evolução natural levou ao aparecimento da Telefonia IP, que consiste no fornecimento de serviços de telefonia utilizando a rede IP para o estabelecimento de chamadas e comunicação de Voz.<br />
<br />
Nessas redes são implementados protocolos adicionais de sinalização de chamadas e transporte de Voz que permitem a comunicação com qualidade próxima àquela fornecida pelas redes convencionais dos sistemas públicos de telefonia comutada ou de telefonia móvel.<br/><br/><br />
<br />
<b>Digitalização de Sinais de Voz</b><br />
----<br />
Nos sistemas tradicionais o sinal de Voz utiliza uma banda de 4 kHz, e é digitalizado com uma taxa de amostragem de 8 kHz para ser recuperado adequadamente (Princípio de Nyquist). Como cada amostra é representada por um byte (8 bits, com até 256 valores distintos), cada canal de Voz necessita de uma banda de 64 kbit/s (8.000 amostras x 8 bits).<br />
<br />
Esta forma de digitalização do sinal de Voz atende a recomendação ITU-T G.711 - Pulse code modulation (PCM) of voice frequencies.<br />
<br />
Nos sistema de transmissão de Voz sobre IP, onde a demanda por banda é crítica, torna-se necessário utilizar também algoritmos de compressão do sinal de Voz. Esses algoritmos têm papel relevante pela economia de banda que proporcionam.<br />
<br />
O seu uso tem sido possível graças ao desenvolvimento dos processadores de sinais digitais (DSP’s), cuja capacidade de processamento tem crescido vertiginosamente.<br />
<br />
Estas necessidades incentivaram o desenvolvimento de tecnologias mais complexas para a digitalização e compressão de Voz, e que foram registradas através de recomendações do ITU-T. Estas recomendações são apresentadas na tabela abaixo, com algumas características relevantes.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs.jpg]]</div><br/><br/><br />
<br />
<b>Asterisk</b><br />
----<br />
O Asterisk é a implementação de uma central telefônica PBX (Private Branch eXchange) em software, criado por Mark Spencer em 1999, e distribuído pela Digium livremente seguindo a licençaGPL (GNU General Public License – GPL), ou através de código proprietário.<br />
<br />
O nome Asterisk vem do símbolo ‘*’, muito comum no mundo da telefonia.<br />
<br />
O Asterisk foi originalmente desenvolvido para Linux, mas atualmente podeser instalado e executado em uma grande variedade de sistemas operacionais, incluindo NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris e até mesmo Microsoft Windows, onde é conhecido por Asterisk Win32.<br/><br/><br />
<br />
<b>Características do Asterisk</b><br />
----<br />
O Asterisk é um software, baseado na licença GPL (GNU General Public License), que executa todas as funções de uma central telefônica convencional através das principais tecnologias de comunicação existentes no mercado, como por exemplo: linhas telefônicas analógicas, links de telefonia digital via placas de comunicação TDM (Time-Division Multplexing, ou Multiplexaçã ,o por divisão detempo), VoIP (Voice over IP, ou Voz sobre IP) através dos protocolos SIP, H.323, IAX2, MGCP, Skinny,GoogleTalk, Skype, entre outros.<br />
<br />
Através do Asterisk é possível estabelecer uma chamada entre qualquer um desses protocolos. O Asterisk é o que chamamos de B2B User Agent, ou melhor, Back-to-Back User Agent, ele estabelece uma chamada telefônica, separando cada “perna” da chamada entre origem e destino, e monitora todo o tráfego de áudio entre esses pontos. Por isso, caso esses pontos estejam utilizando CODECs diferentes, o Asterisk consegue transcodificar o áudio sem qualquer problema. Pode-se dizer que o Asterisk possui todas as funcionalidades das chamadas centrais telefônicas convencionais, como URAs, correio de voz, conferência, distribuição automática de chamadas, entre outras, e caso seja necessário, é possível acrescentar novas funcionalidades ao sistema através do próprio plano de discagem do Asterisk, módulos customizados escritos em C, ou ainda através de scripts escritos em Asterisk Gateway Interface (AGI). *Fonte: Construindo um PBX IP na pratica (Alexandre Keller)<br/><br/><br />
<br />
<b>Codecs</b><br />
----<br />
Um dos componentes necessários para transmissão de voz numa rede de dados é o Áudio CODEC (Codificador-Decodificador). Este componente é o responsável por transformar a voz humana (um sinal analógico) em uma seqüência de bits (um sinal digital) para transmissão numa rede de dados, fazendo amostragens periódicas no sinal de voz. Em equipamentos do tipo gateways VoIP, esses CODECs são implementados através de um componente chamado DSP (Digital Signal Processor).<br />
A introdução dos microprocessadores no final dos anos 70 e início dos anos 80 tornou possível usar técnicas de processamento digital de sinais (Digital Signal Processing) em um range muito maior de aplicações.<br />
Durante os anos 80 a importância crescente do processamento digital de sinais levou vários fabricantes importantes (como Texas Instruments, Analog Devices e Motorola) a desenvolverem os chips DSP, ou seja, microprocessadores especializados com arquiteturas projetadas especificamente para os tipos de operações requeridas ao processamento digital de sinais.<br />
Como um microprocessador de uso geral, um DSP é um dispositivo programável, com seu próprio conjunto de instruções nativas. O uso desses chips associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO-CODEC1].<br />
Cada CODEC provê certa qualidade de voz. A medida de qualidade da voz transmitida é uma resposta subjetiva de um ouvinte. Uma medida comum usada para determinar a qualidade do som produzido pelos CODECs específicos é o MOS (Mean Opinion Score). Com o uso do MOS, um amplo range de ouvintes julgam a qualidade de uma amostra de voz (correspondendo a um CODEC particular) numa escala de 1 a 5. A partir desses resultados, é calculada a média dos scores para atribuir o MOS para aquela amostra [CISCO-CODEC2].<br />
Na tabela 1 são apresentados alguns scores MOS para os CODECs mais usados. Na Tabela 2 são descritos os scores MOS.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs2.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:codecs3.jpg]]</div><br/><br />
<br />
<br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 1500 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* sudo apt-get update<br />
* sudo apt-get install build-essential module-assistant dkms<br />
* sudo m-a prepare<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
<br />
===<b>Instalação do Asterisk</b>===<br />
----<br />
Neste semestre iremos trabalhar com o Asterisk versão 13.22.0, o LibPRI 1.6.0, que é uma biblioteca Libpri será instalada para que tenhamos suporte aos canais PRI( ISDN, E1, T1 ), e o DAHDI, que é um pacote (Digium Asterisk Hardware Device Interface) nos permite carregar os drivers e configurar diversos tipos de placas de telefonia (para conectar telefones analógicos, linhas telefônicas, linhas digitais e outros).<br />
Antes de qualquer coisa, devemos atualizar o sistema via console de comando:<br />
<br />
#apt-get update<br />
#apt-get upgrade<br />
<br />
Também devemos instalar algumas dependências:<br />
<br />
# apt-get install -y make wget libssl-dev ncurses-dev libnewt-dev libxml2-dev linux-headers-generic g++ libsqlite3-dev uuid-dev libjansson-dev<br />
# apt-get install -y mysql-server libmysqld-dev<br />
<br />
Para baixar os arquivos do Asterisk, DAHDI e LibPRI, seguem os links abaixo (os comandos para a instalação completa do Asterisk, Libpri, Dahdi e banco de dados serão repassados em aula):<br />
<br />
[http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.22.0.tar.gz Asterisk 13.22.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz LibPRI 1.6.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz DAHDI]<br/><br />
<br />
Campos para o banco de dados:<br />
<br />
[https://docs.google.com/document/d/135vf4dUJhMmG0fVqzFXEYPQ095iBzpBU0O7fZz04hZs/edit?usp=sharing Arquivo banco de dados]<br />
<br />
<br/><br/><br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=18/02/2019: Instalação do Sistema Operacional Ubuntu 16.04.5 e reinstalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
...<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=20/02/2019: Comandos e configurações do Asterisk. Criação de ramais=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<b>Comandos Asterisk</b><br />
<br />
Para iniciarmos a utilização do Asterisk, devemos conhecer alguns comandos que serão utilizados no decorrer da disciplina.<br />
<br />
<br />
<b>Tipo: SIP</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do SIP<br />
<br />
sip set debug on<br/><br />
sip set debug off<br/><br />
<br />
'''sip reload''': Reload No arquivo: sip.conf<br/><br />
'''sip show channels:''' Visualizar canais ativos do Tipo SIP<br/><br />
'''sip show channel''': Detalhar 1 determinado canal ativo SIP<br/><br />
'''sip show inuse''': Listar todos os canais/peer existentes no Asterisk<br/><br />
'''sip show peers''': Visualizar os pares que registraram ou não no Asterisk usando SIP<br/><br />
'''sip show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando SIP)<br/><br />
'''sip show users''': Visualizar Dispositivos SIP, Plano de Discagem e Senha<br/><br />
'''sip show channelstats''': Visualizar estatísticas de buffer e jitter na rede e nas chamadas SIP ativas<br/><br />
<br />
<br />
<b>Tipo: IAX2</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do IAX2:<br/><br />
<br />
iax2 set debug on<br/><br />
iax2 set debug off<br/><br />
<br />
'''iax2 show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
'''iax2 show netstats''': Visualizar estatisticas de buffer e jitter na rede e nas chamadas IAX ativas<br/><br />
'''iax2 show peers''': Visualizar os pares que registraram ou não no Asterisk usando IAX<br/><br />
'''iax2 show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando IAX)<br/><br />
'''iax2 show stats''': Visualizar estatisticas do IAX<br/><br />
'''iax2 show users''': Visualizar Dispositivos IAX, Plano de Discagem e Senha<br/><br />
'''iax show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
<br />
<br />
<b>Tipo: Gerenciamento do Asterisk</b><br/><br />
<br />
<br />
'''restart now''': Restart Asterisk imediatamente<br/><br />
'''restart when convenient''': Aguarda inatividade no Asterisk para restartar o Asterisk em seguida<br/><br />
'''reload''': Reload nas configurações<br/><br />
'''stop now:''' Shut down no Asterisk imediatamente<br/><br />
'''dialplan reload''': Reload nos arquivos de configurações do plano de discagem extensions.conf<br/><br />
'''modules show''': Lista os módulos carregados no sistema<br/><br />
'''core show uptime''': Visualizar o tempo do Asterisk no Ar<br/><br />
'''core show version''': Visualizar informações sobre a versão do Asterisk<br/><br />
<br />
<br />
<b>Tipo: Comandos Gerais</b><br/><br />
<br />
<br />
'''dialplan show''': visualizar informações sobre um contexto<br/><br />
'''core show queues''': visualizar as filas criadas no Asterisk<br/><br />
'''soft hangup''': derrubar uma chamada ativa no Asterisk<br/><br />
'''core show applications''': visualizar informação sobre as aplicações disponíveis<br/><br />
'''core show application''': “Aplicação”: detalhar informação sobre determinada aplicação<br/><br />
<br />
<br />
<br />
<b>Preparar o servidor para liberar portas</b><br />
<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica.<br />
<br />
Script para liberação de portas <syntaxhighlight lang=bash><br />
#!/bin/sh<br />
<br />
### BEGIN INIT INFO<br />
# Provides: firewall.sh<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall.sh at boot time<br />
# Description: Enable service provided by firewall.sh.<br />
### END INIT INFO<br />
<br />
PATH="/bin:/sbin:/usr/bin:/usr/sbin"<br />
<br />
set -e<br />
<br />
echo "Starting firewall..."<br />
<br />
IPT="/sbin/iptables"<br />
<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
</syntaxhighlight><br />
<br />
<br />
<b>Iniciando a configuração dos ramais</b><br />
<br />
<br />
O asterisk possui um diretório onde ficam os arquivos de configuração, ele está localizado em /etc/asterisk.<br />
Para definirmos nossos ramais sip, o arquivo de configuração responsável é o sip.conf.<br />
<br />
<br />
Abaixo segue um exemplo de configuração do arquivo <b>sip.conf</b>:<br />
<br />
<br />
[general]<br/><br />
bindport=5060<br/><br />
bindaddr=0.0.0.0<br/><br />
context=default<br/><br />
disallow=all<br/><br />
allow=ulaw<br/><br />
allow=alaw<br/><br />
allow=gsm<br/><br />
maxexpirey=120<br/><br />
defaultexpirey=80<br/><br />
<br />
<br />
[1000]<br/><br />
type=friend<br/><br />
secret=123<br/><br />
host=dynamic<br/><br />
qualify=yes<br/><br />
<br />
<br />
Onde:<br />
<br />
<br />
'''bindaddr''': Endereço IP onde o Asterisk irá esperar pelas conexões SIP. O comportamento padrão é esperar em todas as interfaces e endereços secundários.<br />
<br />
'''Context''': Configura o contexto padrão onde todos os clientes serão colocados, a menos que seja sobrescrito na definição da entidade.<br />
<br />
'''Allow''': Permite que um determinado codec seja usado.<br />
<br />
'''Disallow''': Proíbe um determinado codec.<br />
<br />
'''Bindport''': Porta que o Asterisk deve esperar por conexões de entrada SIP. O padrão é 5060.<br />
<br />
'''maxexpirey''': Tempo máximo para registro em segundos.<br />
<br />
'''Defaultexpirey''': Tempo padrão para registro em segundos.<br />
<br />
<br />
<br />
'''[name]''': Quando um dispositivo SIP conecta-se ao Asterisk, ele utiliza a parte username do SIP URI para encontrar o peer/user.<br />
<br />
'''Type''': Configura a classe de conexão, as opções são peer, user e friend.<br />
<br />
'''Peer''': Entidade para a qual o Asterisk envia chamadas.<br />
<br />
'''User''': Entidade que faz chamadas através do Asterisk.<br />
<br />
'''Friend''': Os dois ao mesmo tempo.<br />
<br />
'''Host''': Configura o endereço IP ou o nome do host. Pode-se usar também a opção ‘dynamic’ onde se espera que o host faça o registro, é a opção mais comum.<br />
<br />
'''Secret''': Senha usada para autenticar o peer ou user fazendo uma chamada.<br />
<br />
'''Qualify''': caso esteja yes, o asterisk enviará um comando regularmente para verificar se o dispositivo ainda está online.<br />
<br />
<br />
<br />
<b>Plano de discagem</b><br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
<br />
Para criar um plano de discagem, deve-se editar o arquivo responsável, o extensions.conf. Este arquivo está localizado em /etc/asterisk. Uma parte importante neste arquivo é o contexto <b>general</b>:<br />
<br />
[general]<br/><br />
static=yes<br/><br />
writeprotect=no<br/><br />
autofallthrough=yes<br/><br />
clearglobalvars=no<br/><br />
priorityjumping=no<br/><br />
<br />
<br />
<br />
'''static e writeprotect''' – permite salvar o plano de discagem a partir da linha de comando.<br/><br />
'''Autofallthrough''' – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br/><br />
'''Clearglobalvars''' – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br/><br />
'''Priorityjumping''' – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br/><br />
<br />
Também devemos criar um contexto que já foi pré definido no ramal criado. No nosso caso se chamará <b>default</b>:<br />
<br />
<br />
[default]<br/><br />
exten = 1000,1,Dial(SIP/1000,30)<br/><br />
exten = 1000,2,Hangup()<br/><br />
<br />
<br />
Neste caso usamos duas aplicações, <b>Dial</b> e <b>Hangup</b>, responsáveis por discar e encerrar uma chamada, respectivamente.<br />
<br />
As aplicações mais comuns no Asterisk são:<br />
<br />
<br />
'''Answer''' – Atende uma chamada<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mas salva a posição de retorno<br/><br />
'''NooP''' – imprime na cli do asterisk o termo<br/><br />
<br />
<br />
<b>Exercício</b><br />
<br />
<br />
Crie 6 ramais (1000, 1001, 1002, 1003, 1004, 1005).<br />
<br />
Crie também um plano de discagem que permita a ligação entre todos os ramais.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=25/02/2019: Plano de discagem e máscaras=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
===Plano de discagem===<br />
<br />
O plano de discagem define como o Asterisk irá gerenciar as chamadas. Ele consiste de uma lista de instruções ou passos que o Asterisk deveria seguir. Essas instruções são disparadas a partir dos dígitos recebidos de um canal ou aplicação.<br />
O extensions.conf pode ser separado em quatro partes:<br />
<br />
* Contextos;<br />
* Extensões;<br />
* Prioridades;<br />
* Aplicações.<br />
<br />
<br />
====Contextos====<br />
<br />
Os contextos definem o escopo e permitem separar diferentes partes do plano de discagem, recebem o seu nome dentro de chaves ([]).<br />
No início do arquivo extensions.conf existe um contexto chamado [globals] onde as variáveis globais são definidas e podem ser usadas por todo o plano de discagem. E o contexto [general] que é utilizado para definir alguns parâmetros gerais.<br />
Os contextos estão ligados diretamente aos canais. Quando uma ligação entra no Asterisk por um canal ela é processada dentro do contexto deste canal.<br />
Ex:<br />
<br />
[gerentes]<br/><br />
exten=>9000,1,Playback(gerente)<br />
<br />
[visitantes]<br/><br />
exten=>9000,1,Playback(visitante)<br />
<br />
<br />
====Extensões====<br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
Exemplo:<br />
<br />
exten => 9001,1,Dial(SIP/9001,20) ; Extensão 9001, prioridade 1, disca para o ramal 9001 pelo protocolo SIP, tempo de resposta em segundos.<br/><br />
Exten => 9001,2,Hangup() ; Extensão 9001, prioridade 2, efetua o desligamento.<br />
<br />
Dentro de uma extensão, podemos ter as chamadas variáveis de canal, como abaixo:<br />
<br />
exten =>2001,2,DIAL(SIP/${RAMAL})<br />
<br />
Neste exemplo acima, criamos a variável “RAMAL” em tempo de execução, ou seja, na criação do Canal, ou da chamada.<br />
As variáveis de canais são as mais utilizadas normalmente, para trazer informação dos canais normalmente, como nome do canal , nome do contexto, extensão, etc. Vejamos abaixo algumas das variáveis mais usadas:<br />
<br />
${CALLERID} Identificador da chamada (nome ou número)<br/><br />
${CALLERIDNAME} O nome do id. Da chamada<br/><br />
${CALLERIDNUM} O número do id. Da chamada.<br/><br />
${CHANNEL} Nome do Canal atual ou corrente.<br/><br />
${CONTEXT} Nome do Contexto atual ou corrente.<br/><br />
${DATATIME} Data e hora no formato o YYYY-MM-DD_HH:MM:SS.<br/><br />
${DIALPEERNUMBER} Número de que foi chamada.<br/><br />
${DIALSTATUS} Status da Chamada.<br/><br />
${EXTEN} Extensão da chamada atual ou corrente.<br/><br />
${HANGUPCAUSE} Causa do término da chamada<br/><br />
${LANGUAGE} A Linguagem Atual.<br/><br />
${PRIORITY} Prioridade Atual<br/><br />
<br />
<br />
exemplo:<br />
<br />
exten => _20XX,1,Dial(SIP/${EXTEN})<br />
<br />
<br />
Neste exemplo podemos ver o uso de máscara e da variável do Asterisk EXTEN. Esse é justamente o exemplo que havia falado acima, para evitar o a criação de uma infinidades de canais. Quando um ramal começando com 20 e mais dois números for solicitado, irá chamar a aplicação DIAL para discar para o ramal ( SIP/${EXTEN}), onde esta variável trará o próprio numero discado. Assim precisamos apenas de uma entrada para todos os ramais do tipo 20XX.<br />
<br />
<br />
====Aplicações básicas do Asterisk====<br />
<br />
'''Answer''' – Atende uma chamada.<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução.<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados.<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mais salva a posição de retorno.<br/><br />
'''NooP''' – imprime na cli do asterisk o termo.<br/><br />
<br />
Para verificar as aplicações no asterisk, basta digitar n cli do mesmo o seguinte comando:<br />
<br />
# ubuntu-server*cli> core show applications<br />
<br />
Caso queira uma explicação detalhada de uma aplicação, utilize o comando:<br />
<br />
# ubuntu-server*cli> core show application nome_da_aplicacao<br />
<br />
Onde o termo nome_da_aplicacao corresponde a aplicação a qual queremos os detalhes.<br />
<br />
<br />
Formato das extensões<br />
<br />
8000 – numérica<br/><br />
Alexander – alfanumérica<br/><br />
4321/1234 – Numérica com callerID<br/><br />
_4XXX – Usando máscaras<br/><br />
s – padrões pré definidos<br/><br />
<br />
Máscaras<br />
<br />
_ - início de uma máscaras<br/><br />
. - aceita n caracteres subsequentes<br/><br />
[13-9] – qualquer dígito dentro dos colchetes (1, de 3 até 9), mas apenas um deles<br/><br />
X – qualquer dígito entre 0 e 9<br/><br />
Z – qualquer dígito entre 1 e 9<br/><br />
N – qualquer dígito entre 2 e 9<br/><br />
<br />
Prioridades<br />
<br />
Prioridades são passos numerados na execução de cada extensão. Cada prioridade chama uma aplicação especifica. Se os números das prioridades não forem sequenciais o Asterisk aborta a execução. A partir da versão 1.2 do Asterisk, tornou-se comum o uso da prioridade “n”, no lugar da associação manual de números, assim como a possibilidade da utilização de labels e aliases.<br />
<br />
<br />
'''Exercícios'''<br />
<br />
<br />
# Deve-se criar extensões para ramais com 4 dígitos, permitindo que iniciem com 2 ou 3 e tenham sua numeração entre 2000 e 2499, e também entre 3000 e 3499;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando em 6 ou 7 e que tenham sua numeração entre 6500 e 6599, e também entre 7500 e 7599;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando com 9 e que tenham numeração entre 9600 a 9700;<br/><br />
# Criar extensões para celulares com 9 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para celulares com 9 dígitos, sem operadora;<br/><br />
# Criar extensões para telefones fixos com 8 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para telefones fixos com 8 dígitos, sem operadora.<br/><br />
<br />
<br />
'''Observações:'''<br />
<br />
* Os celulares iniciam com o dígito 9 e telefones fixos com 2 ou 3.<br />
<br />
* Em cada extensão usar uma aplicação para escrever na CLI do Asterisk qual a ligação está sendo efetuada, o número e o nome dado ao ramal. Ex: Esta ligação está sendo efetuada de celular sem operadora de longa distância.<br />
<br />
<br />
<br />
Leituras que podem ser úteis:<br />
<br />
[http://stato.blog.br/wordpress/asterisk-parte-3-variaveis-macros-e-mascaras/ Variáveis, Macros e Máscaras]<br />
<br />
[https://www.vivaolinux.com.br/etc/extensions.conf-caue.garcia/ Extensions.conf]<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=27/02/2019: Plano de discagem e máscaras - continuação=<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=06/03/2019: Liberação de portas, Aplicações e instalação de áudio em português=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
===Liberação de portas===<br />
<br />
Preparando o servidor para liberação de portas para autenticação dos ramais e efetuar chamadas, caso necessário<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica. Para isso iremos criar um script de firewall no diretório /etc/init.d/ com o nome de firewall.<br />
Neste arquivo colocaremos o seguinte conteúdo:<br />
<br />
#!/bin/sh<br />
### BEGIN INIT INFO<br />
# Provides: firewall<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall at boot time<br />
# Description: Enable service provided by firewall.<br />
### END INIT INFO<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
===Aplicações===<br />
<br />
As aplicações são partes fundamentais do Asterisk, elas tratam o canal de voz, tocando sons, aceitando dígitos ou encerrando uma chamada. As aplicações são chamadas com opções que afetam a sua forma de funcionamento.<br />
<br />
Agora testaremos este ramal, iremos criar uma aplicação onde discaremos *65 no ramal registrado e o asterisk nos dirá qual é o ramal que está em uso.<br />
<br />
Para isso, vamos editar o arquivo responsável pelos planos de discagem, o extensions.conf. Este arquivo está localizado em /etc/asterisk.<br />
<br />
Criaremos um contexto chamado app:<br />
<br />
<br />
'''[app]'''<br/><br />
'''exten =>*65,1,Goto(function-speakextnum,s,1)'''<br />
<br />
<br />
Ao discarmos *65, este contexto encaminhará, através da função Goto (enviar para), para outro contexto, chamado function-speakextnum:<br />
<br />
<br />
'''[function-speakextnum]'''<br/><br />
'''exten => s,1,Set(Description="Identifica ramal")'''<br/><br />
'''exten => s,2,Answer()'''<br/><br />
'''exten => s,3,Wait(2)'''<br/><br />
'''exten => s,4,Playback(telephone-number&is)'''<br/><br />
'''exten => s,5,SayDigits(${CALLERID(num)})'''<br/><br />
'''exten => s,6,Wait(2)'''<br/><br />
'''exten => s,7,Hangup()'''<br/><br />
<br />
<br />
Basicamente, este contexto terá uma descrição, utilizará os sons previamente criados no asterisk para nos dizer qual o ramal em uso e após 2 segundos desligar.<br />
<br />
Agora necessitamos incluir a aplicação no contexto definido no arquivo sip.conf. Devemos recordar que este contexto se chama default:<br />
<br />
<br />
'''[default]'''<br/><br />
'''include => app'''<br />
<br />
<br />
Pudemos identificar que a linguagem utilizada é o inglês. O que iremos fazer é instalar o idioma português.<br />
<br />
Para isso, devemos efetuar o download do arquivo de áudio em português, neste link:<br />
<br />
Baixe os arquivos de som:<br />
<br />
# wget -O core.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-core-pt-BR-sln16.zip<br />
# wget -O extra.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-extra-pt-BR-sln16.zip<br />
<br />
<br />
Arquivo Convert deve conter os comandos abaixo:<br />
#!/bin/bash<br />
for a in $(find . -name '*.sln16'); do<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\<br />
done<br />
<br />
===Avaliação===<br />
<br />
<br />
Deve ser entregue o relatório parcial, via Sigaa, com todo o conteúdo visto até o momento. Serão avaliados os seguintes itens:<br />
<br />
# Conteúdo;<br />
# Organização;<br />
# Metodologia (formatação do conteúdo de acordo com o que foi passado em aula).<br />
<br />
O relatório deve ser entregue até as 23:59 de 10/03/2019, em formato '''PDF''' (não serão considerados outros formatos).<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=11/03/2019: Utilização de Macros. Planos de discagem em arquivos externos=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
===Macros===<br />
<br />
Macros são sub-rotinas que são usadas mais de uma vez dentro do plano de discagem, evitando à reedificação de dados. Facilitando operações, organização, onde os códigos podem ser reutilizados.<br />
<br />
Formato: <br />
<br />
Macro(Nome da macro, Arg1, Arg2)<br />
<br />
Onde temos:<br />
<br />
Macro: A chamada para criação da Macro.<br />
Nome da macro: O nome da macro que está sendo criada, e será referenciado posteriormente.<br />
Arg(n): Argumentos que serão passados para macro.<br />
<br />
Vejamos um exemplo de macro sendo utilizado. Iremos criar uma macro chamada atendimento, onde irá atender a ligação, mostrar na tela o número originador, o nome do ramal, irá executar um playback chamada hello-world e em seguida vai gerar na tela a mensagem Áudio executado com sucesso. Após efetuar os argumentos, a macro retorna para o contexto de origem e continua executando os demais comandos (Também podemos incluir a aplicação [http://www.asteriskguru.com/tutorials/dumpchan.html DumpChan], que nos trará informações complementares relacionadas aos ramais e a chamada efetuada).<br />
<br />
'''Exercício'''<br />
<br />
Crie um plano de discagem para o número 12345 onde a extensão deverá chamar uma macro com o nome ''ramal555''. Esta macro deverá efetuar uma chamada para o ramal 555 que deverá estar configurado em um softphone.<br />
<br />
===Criando planos de discagem em arquivos externos===<br />
<br />
o asterisk utiliza o arquivo extensions.conf para que possamos efetuar nossos planos de discagem, mas existe uma forma de criar estes planos em arquivos diferentes. Para isso, devemos criar um arquivo com o nome desejado e salvar com a extensão .conf, no diretório /etc/asterisk. <br />
<br />
Mas como vinculamos o arquivo criado no plano de discagem existente no extensions.conf? <br />
<br />
Através da aplicação #include.<br />
<br />
Para exemplificar, criaremos um arquivo chamado rota_123.conf<br />
<br />
<br />
'''Exercício'''<br />
<br />
Efetue um plano de discagem para o ramal 999 utilizando um arquivo externo chamado ramal999.conf. Este arquivo externo deverá chamar uma macro que irá ligar para o ramal 555.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=13/03/2019: Habilitando gravação de chamadas=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
<br />
===Verificando o banco de dados e criando a macro Record===<br />
<br />
Como vimos até agora, já possuímos ramais e planos de discagem entre ramais, mas não temos uma forma de ouvir novamente o que foi dito nestas ligações. Esse é um ponto importante para várias empresas e instituições. Por enquanto o Asterisk está gerando relatórios em nossa tabela cdr, mas não está gerando arquivos .wav das ligações. Para começarmos a gravar as ligações iremos criar uma macro e utilizar a aplicação [https://wiki.asterisk.org/wiki/display/AST/Asterisk+11+Application_MixMonitor Mixmonitor]. O MixMonitor é uma aplicação nativa do Asterisk utilizada para fazer a gravação das chamadas telefônicas e mixar os arquivos de áudio em tempo real. Vamos verificar no nosso banco o campo monitor e ter certeza que não está sendo gravado:<br />
<br />
# mysql cdr -u cdr_user -p<br />
<br />
Onde:<br />
cdr -> Banco<br />
cdr_user -> Usuario para conectar no Banco<br />
<br />
Para verificarmos os registros, usamos o seguinte comando:<br />
<br />
mysql> select * from cdr\G;<br />
<br />
Teremos uma saída parecida com esta:<br />
<br />
<div style="text-align: center;">[[Arquivo:bancorecord.jpg]]</div><br/><br />
<br />
Caso o banco de dados apresente campos em branco, basta efetuar o carregamento do módulo cdr_mysql.so através dos dois comandos abaixo:<br />
<br />
ubuntu-server*cli> module unload cdr_mysql.so<br />
<br />
ubuntu-server*cli> module load cdr_mysql.so<br />
<br />
Como podemos verificar, o campo monitor está vazio, indicando que não existe arquivo de gravação.<br />
Devemos editar o arquivo extensions.conf e criar a macro record, e além disso devemos chamar a macro antes da ligação ser atendida para que efetivamente aconteça a gravação.<br />
<br />
<div style="text-align: center;">[[Arquivo:extensionconfrecord.jpg]]</div><br/><br />
<br />
[macro-record]<br />
exten => s,1,NoOP(${CALLERID(num)})<br />
exten => s,n,Set(ARG1=${CALLERID(num)})<br />
exten => s,n,Set(CALLFILENAME=CHANNEL-${ARG1}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID})<br />
exten => s,n,Set(TIME=${STRFTIME(${EPOCH},,%Y%m%d)})<br />
exten => s,n,MixMonitor(/var/spool/asterisk/monitor/${TIME}/${CALLFILENAME}${TRANSFER}.wav49,${BRIDGE}a)<br />
exten => s,n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)<br />
exten => s,n,Set(CDR(monitor)=${CALLFILENAME}${TRANSFER}.WAV)<br />
<br />
<br />
O diretório padrão no asterisk para salvar as gravações é /var/spool/asterisk/monitor/, e nele é criado automaticamente diretórios com as datas para armazenar os arquivos.<br />
<br />
===Exercício 1===<br />
<br />
# Crie um arquivo chamado ramaisinternos.conf no diretório /etc/asterisk e neste arquivo efetue plano de discagem para os ramais 5000 a 6999, efetuando a gravação das chamadas.<br />
# Crie um plano de discagem para o número 1001 onde a extensão deverá chamar uma macro com o nome telefonista. Esta macro deverá efetuar uma chamada para o ramal 1000 que deverá estar configurado em um softphone. Este plano de discagem deve ter a gravação de chamadas ativado.<br />
<br />
<br />
<br />
===Exercício 2===<br />
<br />
<br />
Você como administrador do setor de telefonia da empresa deverá fazer com que alguns ramais não tenham suas ligações gravadas. Estes ramais serão do 3000 à 3019(gravação desabilitada).<br />
<br />
Os ramais do 3020 ao 3100 terão suas gravações habilitadas.<br />
<br />
Como você faria isso de forma que não polua o seu arquivo extensions.conf?<br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=20/03/2019: Criando uma URA=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
<br />
===O conceito de URA===<br />
<br />
<br />
Idealizada e desenvolvida no início da década de 1980, a URA (Unidade de Resposta Audível) é uma interface eletrônica à qual direciona o cliente a um script de atendimento pré-configurado, com base nos setores e/ou assuntos atendidos pela empresa.<br />
<br />
O sistema funciona como um menu digital: quem liga tem à sua disposição uma série de opções (por exemplo: “falar com suporte”, “falar com o comercial”). Ao selecionar a opção a pessoa é transferida – tanto para outra gama de opções quanto para um operador referente a opção escolhida pelo usuário.<br />
<br />
Esse tipo de serviço otimiza a filtragem das ligações, a fim de agilizar o atendimento e facilitar o contato com o cliente. Atualmente, milhares de empresas adotaram a solução, dentre elas call centers de bancos, escolas, hotéis e muitas outras.<br />
<br />
Normalmente contrata-se empresas especializadas em gravação de áudio para URAs, mas iremos utilizar um método mais caseiro.<br />
<br />
<br />
===Instalando programas para efetuar a gravação da URA===<br />
<br />
<br />
Para termos um áudio com opções para a nossa URA, devemos instalar um programa para captura de áudio chamado Audio Recorder. Devemos inicialmente adicionar o repositório onde o aplicativo se encontra, através do comando abaixo:<br />
<br />
# sudo add-apt-repository ppa:audio-recorder/ppa<br />
<br />
Então atualizamos a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalamos o aplicativo:<br />
<br />
# sudo apt-get install audio-recorder<br />
<br />
Após efetuada a instalação, podemos abrir o programa e alterar a opção formato para .WAV (lossless wav 44khz):<br />
<br />
<div style="text-align: center;">[[Arquivo:audiorecorder.jpg]]</div><br/><br />
<br />
<br />
===Criando arquivo de áudio para a URA===<br />
<br />
Para transformarmos texto em voz, podemos utilizar o Google tradutor, escrever o texto que queremos e ouvir a pronúncia enquanto o Audio Recorder efetua a gravação. O áudio gerado será armazenado no diretório /home/usuário/Audio, onde o usuário é o nome do usuário utilizado no login do computador. O arquivo gerado terá o formato %Y-%m-%d-%H:%M:%S, como mostrado abaixo:<br />
<br />
<div style="text-align: center;">[[Arquivo:listaaudio.jpg]]</div><br/><br />
<br />
Mas este áudio ainda não pode ser executado no asterisk, pois está com taxa de amostragem de 44100 hz, devemos alterar para 8000 hz. Para isso iremos usar um programa chamado Sox. Sua instalação se dá pelo comando:<br />
<br />
# apt-get install sox libsox-fmt-all<br />
<br />
o arquivo original deve ser convertido através do comando:<br />
<br />
# sox 2018-01-27-10:40:59.wav -r 8000 -c1 ura.wav<br />
<br />
Por fim, devemos movê-lo para o diretório /var/lib/asterisk/sounds/pt_BR:<br />
<br />
# mv ura.wav /var/lib/asterisk/sounds/pt-br<br />
<br />
===Configurando a URA===<br />
<br />
Neste momento estaremos prontos para iniciar a criação da URA. Iremos até o diretório /etc/asterisk/ e criaremos o arquivo ura.conf, no qual iremos inserir os comandos necessários para a sua criação:<br />
<br />
<div style="text-align: center;">[[Arquivo:ura.jpg]]</div><br/><br />
<br />
Ao ligarmos para o ramal 9000, caímos na URA, onde é feito o desvio para o contexto ura, extensão s e prioridade 1.<br />
<br />
Já na ura, o primeiro item é o TIMEOUT, relacionado ao tempo. Nesse primeiro caso, ela limita o tempo que o usuário tem para digitar a extensão, se em 10 segundo ele não digitar, automaticamente vai ser encaminhado para extensão t, onde será tocado o arquivo vm-goodbye.<br />
<br />
No segundo item TIMEOUT(digit) , especificamos o tempo máximo entre um dígito e outro. Obviamente em nosso caso não há necessidade, pois as extensões têm apenas um digito, mas caso houvesse mais, seria o tempo padrão de 2 segundos.<br />
<br />
A ura ira atender em Answer, e em seguida iniciará tocar o que está especificado em Background, que é justamente o menu gravado anteriormente.<br />
<br />
A opção WaitExten tem por finalidade aguardar a digitação referente ao ramal que deve ser chamado, durante o tempo especificado.<br />
<br />
Extensões 1 e 2 encaminham a ligação para seus respectivos ramais.<br />
<br />
A extensão “i”, é utilizado quando é digitado um ramal inexistente, neste caso será utilizada o arquivo invalid para tocar, para informar ao usuário que o ramal é invalido, em seguida é novamente utilizado o Goto para desviar a ligação para o começo da ura, no label repete.<br />
<br />
E por fim a extensão “t”, utilizado com os primeiros itens de TIMEOUT, desliga a chamada.<br />
<br />
Devemos alterar o arquivo extensions.conf, incluído o contexto ura e adicionando um plano de discagem para o número fictício 9000, simulando nosso número principal:<br />
<br />
<div style="text-align: center;">[[Arquivo:gotoura.jpg]]</div><br/><br />
<br />
Devemos também alterar o parâmetro autofallthrough para no, o que permite o uso de tempo, com TIMEOUT, para digitação dos dígitos na URA.<br />
<br />
Outro ponto importante é incluir no arquivo sip.conf a linha dtmfmode=rfc2833, que é o padrão mais comum na digitação da maioria dos telefones.<br />
<br />
Devemos ficar atentos na seguinte situação: enviamos a ligação diretamente para o ramal, através do comando exten = 1,1,Dial(SIP/1000) sem passar por um contexto, fazendo com que a ligação não tivesse gravação:<br />
<br />
<div style="text-align: center;">[[Arquivo:gravacao.jpg]]</div><br/><br />
<br />
Para resolver este problema, vamos substituir a aplicação Dial pela aplicação GoTo, enviando para o contexto default no ramal desejado e sua prioridade, o que fará passar a gravar a ligação. Neste caso podemos dispensar a aplicação HangUp, pois a aplicação GoTo, não retorna para o contexto de origem:<br />
<br />
<div style="text-align: center;">[[Arquivo:gotoramal.jpg]]</div><br/><br />
<br />
<br />
===Exercício===<br />
<br />
<br />
# Crie uma URA com os seguintes ramais:<br />
<br />
* Suporte Técnico: Este ramal deverá direcionar para uma ramal de Suporte técnico em Hardware e outro ramal de Suporte técnico em software;<br />
* Comercial;<br />
* Vendas: Deverá existir uma ramal para vendas de equipamentos e um ramal para vendas de serviços e softwares;<br />
* Administrativo.<br />
* Caso a pessoa não digite nada, a chamada deverá ser direcionada para a telefonista.<br />
<br />
Deverá existir um áudio para orientar a pessoa que estiver ligando para o número que contém a URA e as subURAs.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=25/03/2019: Criando uma URA - Continuação=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=27/03/2019: Criando uma URA - Continuação=<br />
<br />
{{Collapse top | Aula 12}}<br />
<font size="3"><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=01/04/2019: Avaliação=<br />
<br />
{{Collapse top | Aula 13}}<br />
<font size="3"><br />
<br />
#Efetue um backup do seu arquivo '''sip.conf''' e '''extensions.conf''' (cria um diretório em '''/root''' com o nome de '''backup''' e copie os arquivos para este diretório), crie um novo arquivo sem nenhum informação para desenvolver a avaliação.<br />
#Crie uma faixa de ramais de 1000 a 1010.<br />
#Crie um plano de discagem onde todos esses ramais possam se comunicar.<br />
#Você como administrador do setor de telefonia da empresa deverá fazer com que alguns ramais não tenham suas ligações gravadas. Estes ramais serão do 1000 à 1005(gravação desabilitada). Os ramais do 1006 ao 1010 terão suas gravações habilitadas. <br />
#Crie uma URA com os seguintes ramais: Suporte Técnico(ramal 1006), Comercial(ramal 1007), Vendas(ramal 1008), e Administrativo(ramal 1010). Caso a pessoa não digite nada, a chamada deverá ser direcionada para a telefonista (ramal 1000). Deverá existir um áudio para orientar a pessoa que estiver ligando para o número que contém a URA.<br />
<br />
<br />
Ao finalizar a avaliação, compacte todos os arquivos utilizados(sip.conf, extensions.conf, arquivos de áudios utilizados na URA e demais arquivos que venha a utilizar) para desenvolver a avaliação. Após a compactação, envie este arquivo via sigaa. '''A tarefa ficará aberta até o dia 03/04/2019 as 22h'''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}<br />
<br />
=03/04/2019: Avaliação - Continuação=<br />
<br />
{{Collapse top | Aula 14}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 14}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI4-2019-1&diff=156291PJI4-2019-12019-04-01T20:29:31Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador IV= <br />
<font size="3"><br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 2a feira/19:00, 4a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 4a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji4-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
#Implantar um PABX IP integrado com serviços de telefonia fixa e móvel convencionais. <br />
#Prover a infraestrutura de rede necessária para o adequado funcionamento deste PABX IP. <br />
#Integrar os serviços de telefonia com outros serviços de rede.<br />
<br />
== Links interessantes ==<br />
<br />
* [https://hakin9.org/voip-hacking-techniques/ VoIP Hacking Techniques]<br />
* [https://www.vivaolinux.com.br/artigo/Asterisk-nao-e-um-Sip-Proxy Asterisk não é um SIP proxy]<br />
* [https://www.rnp.br/servicos/servicos-avancados/fonernp FoneRNP]<br />
* [https://www.digium.com/products/business-phone-systems/on-premise/virtual-pbx SwitchVox: PBX virtual]<br />
* [http://convergecom.com.br/teletime/21/03/2006/embratel-e-net-lancam-servico-de-telefonia-fixa-local/ Net Fone da Embratel é VoIP, mas não usa SIP]<br />
** [https://en.wikipedia.org/wiki/PacketCable ... e sim PacketCable]<br />
* [http://thevoipreport.com/article/cold-hard-voip-stats/ Estatísticas sobre VoIP no mundo]<br />
* [https://www.cisco.com/c/en/us/support/docs/voice/digital-cas/5717-e1-r2-sig.html Sinalização R2 (E1)]<br />
=== Provedores VoIP no Brasil ===<br />
* [https://www.falemaisvoip.com.br/o-que-e-voip/ FaleMaisVoIP]<br />
* [http://www.directcall.com.br/ DirectCall]<br />
* [http://www.teleco.com.br/opvoip.asp outros ...]<br />
<br />
== Resumo de comandos da CLI para o Asterisk ==<br />
<br />
# O Asterisk pode ser carregado de duas formas:<br />
#* '''foreground''': utilizado para depurar problemas na inicialização do Asterisk, quando ele não puder ser inicializado.<br />
#* '''background''': modo padrão de inicialização<br><br><br />
# Conectar à CLI do Asterisk carregado <syntaxhighlight lang=text><br />
asterisk -r<br />
rasterisk <br />
</syntaxhighlight><br />
# Comandos na CLI<br />
## Saindo da CLI sem interromper o processo <syntaxhighlight lang=text><br />
exit<br />
</syntaxhighlight><br />
## Carrega canais SIP previamente registrados <syntaxhighlight lang=text><br />
sip reload<br />
</syntaxhighlight><br />
## Mostra canais SIP registrados <syntaxhighlight lang=text><br />
sip show peers<br />
</syntaxhighlight><br />
## Carrega plano de discagem <syntaxhighlight lang=text><br />
dialplan reload<br />
</syntaxhighlight><br />
## Mostra a extensão criada no plano de discagem <syntaxhighlight lang=text><br />
dialplan show default<br />
</syntaxhighlight><br />
## Finalizando processo no Asterisk <syntaxhighlight lang=bash><br />
sudo core stop now<br />
</syntaxhighlight><br />
## Ver aplicações disponíveis no Asterisk <syntaxhighlight lang=text><br />
core show applications<br />
</syntaxhighlight><br />
# Iniciando Asterisk em modo Background <syntaxhighlight lang=bash><br />
sudo service asterisk start<br />
</syntaxhighlight><br />
# Carregar o Asterisk em modo ForeGround <syntaxhighlight lang=bash><br />
sudo asterisk -gc<br />
</syntaxhighlight><br />
</font><br />
<br />
=11/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1MNqwAklC8WL0-geeBuC_4kCTjGqDxcyi/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador IV===<br />
<br />
O foco do Projeto Integrador IV está na oferta de serviços ao usuário final e na convergência de serviços de telecomunicações, incluindo a integração dos serviços de telefonia fixa, móvel e VoIP. Além disso, também tem como objetivo a integração destes serviços de telecomunicações com outros serviços de rede como servidores Web, Email, Telefonia IP, administração de sistemas e usuários, compartilhamento de recursos, DNS, etc. <br />
<br />
<br />
Na figura abaixo é apresentado um esboço do cenário que foi desenvolvido durante o Projeto Integrador III. A proposta inicial é integrar a este cenário serviços de telefonia IP e convencional. Além disso, outros serviços podem ser integrados a ambos, como e-mail, DNS, acesso à câmeras IP, etc. <br />
<br />
[[imagem:Diagrama-PJI3.png|600px]]<br />
<br />
<br />
Uma vez integrados os serviços de rede e de telefonia e tendo em mente que a qualidade de serviço é um ponto sensível à aplicações de telefonia IP, espera-se desenvolver métodos de medição de rede para assegurar seu correto funcionamento.<br />
<br />
== PBX IP ==<br />
<br />
<br />
Um PBX IP funciona como uma central telefônica, porém intermediando chamadas VoIP. Com isso, as chamadas são feitas de um telefone IP em direção ao PBX IP, que a encaminha ao telefone IP de destino de acordo com suas regras de discagem. A figura abaixo ilustra como funciona uma chamada VoIP típica através de um PBX IP.<br />
<br />
[[imagem:Voip-call.png|500px]]<br />
<br />
<br />
Nas nossas aulas faremos uso de um PBX IP [http://www.asterisk.org/ Asterisk], que é um software desenvolvido pela [http://www.digium.com/ Digium]. O Asterisk roda em computadores do tipo PC que possuem sistema operacional baseado em Linux. Sua licença é livre, o que significa que não há custo de licenciamento para utilizá-lo.<br />
* [http://www.asterisk.org/get-started Uma visão geral sobre Asterisk]<br />
<br />
== PBX IP Asterisk ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/rmu/slides/aula-25.pdf Transparências]<br />
* [http://www.asterisk.org Site oficial do Asterisk]<br />
* [http://www.asteriskguru.com/ Asterisk Guru]<br />
* [http://www.voip-info.org/wiki Dicas sobre Asterisk]<br />
* [http://www.asteriskdocs.org/ Livro online gratuito sobre Asterisk]<br />
* [http://www.packetizer.com/ipmc/sip/papers/understanding_sip_voip/ Introdução a VoIP e SIP]<br />
* Livro [http://www.shopvoip.com.br/index.php?route=product/product&product_id=1263 ''Asterisk: Guia de Configuração - 5a geração''], de Flávio Gonçalves.<br />
<br />
<br />
'''Asterisk:''' uma solução completa de PABX baseado em software, permitindo ligar o mundo IP ao mundo da rede pública de telefonia comutada.<br />
<br />
'''Características Básicas:''' faz tudo que um PABX pequeno e simples faz e pouco mais<br />
* Transferência, música de espera, siga-me, etc.<br />
* Conferência, correio de voz, URA, fila de chamadas, monitoramento de chamadas, integração com o Jabber (Google talk)<br />
<br />
<br />
[[imagem:Asterisk-ex1.png|400px]]<br />
<br>''Exemplo de cenário de uso do Asterisk''<br />
<br />
<br />
<!-- [[imagem:Asterisk-arch.png|500px]]<br />
<br>''Arquitetura modular do Asterisk'' ---><br />
<br />
<br />
O Asterisk é um software complexo e com muitos recursos. Porém sua função mais elementar, que é intermediar chamadas, pode ser entendida com base em dois elementos importantes desse tipo de PBX. Esses elementos são o '''plano de discagem''' e '''configurações de canais'''. Na terminologia do Asterisk, um canal pode ser entendido como um ramal ou tronco. Para ter o Asterisk funcionando como uma central simplificada, é suficiente configurar esses dois elementos.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 4'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI4 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador IV'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professores: Ederson Luiz de Souza Santos e Mayara de Sousa'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2018'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=13/02/2019: Conceitos gerais, preparação do servidor e instalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
<b>Telefonia IP ou VoIP: O que é?</b><br />
----<br />
A Comunicação de Voz em Redes IP, chamada de VoIP, consiste no uso das redes de dados que utilizam o conjunto de protocolos das redes IP (TCP/UDP/IP) para a transmissão de sinais de Voz em tempo real na forma de pacotes de dados.<br />
<br />
A sua evolução natural levou ao aparecimento da Telefonia IP, que consiste no fornecimento de serviços de telefonia utilizando a rede IP para o estabelecimento de chamadas e comunicação de Voz.<br />
<br />
Nessas redes são implementados protocolos adicionais de sinalização de chamadas e transporte de Voz que permitem a comunicação com qualidade próxima àquela fornecida pelas redes convencionais dos sistemas públicos de telefonia comutada ou de telefonia móvel.<br/><br/><br />
<br />
<b>Digitalização de Sinais de Voz</b><br />
----<br />
Nos sistemas tradicionais o sinal de Voz utiliza uma banda de 4 kHz, e é digitalizado com uma taxa de amostragem de 8 kHz para ser recuperado adequadamente (Princípio de Nyquist). Como cada amostra é representada por um byte (8 bits, com até 256 valores distintos), cada canal de Voz necessita de uma banda de 64 kbit/s (8.000 amostras x 8 bits).<br />
<br />
Esta forma de digitalização do sinal de Voz atende a recomendação ITU-T G.711 - Pulse code modulation (PCM) of voice frequencies.<br />
<br />
Nos sistema de transmissão de Voz sobre IP, onde a demanda por banda é crítica, torna-se necessário utilizar também algoritmos de compressão do sinal de Voz. Esses algoritmos têm papel relevante pela economia de banda que proporcionam.<br />
<br />
O seu uso tem sido possível graças ao desenvolvimento dos processadores de sinais digitais (DSP’s), cuja capacidade de processamento tem crescido vertiginosamente.<br />
<br />
Estas necessidades incentivaram o desenvolvimento de tecnologias mais complexas para a digitalização e compressão de Voz, e que foram registradas através de recomendações do ITU-T. Estas recomendações são apresentadas na tabela abaixo, com algumas características relevantes.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs.jpg]]</div><br/><br/><br />
<br />
<b>Asterisk</b><br />
----<br />
O Asterisk é a implementação de uma central telefônica PBX (Private Branch eXchange) em software, criado por Mark Spencer em 1999, e distribuído pela Digium livremente seguindo a licençaGPL (GNU General Public License – GPL), ou através de código proprietário.<br />
<br />
O nome Asterisk vem do símbolo ‘*’, muito comum no mundo da telefonia.<br />
<br />
O Asterisk foi originalmente desenvolvido para Linux, mas atualmente podeser instalado e executado em uma grande variedade de sistemas operacionais, incluindo NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris e até mesmo Microsoft Windows, onde é conhecido por Asterisk Win32.<br/><br/><br />
<br />
<b>Características do Asterisk</b><br />
----<br />
O Asterisk é um software, baseado na licença GPL (GNU General Public License), que executa todas as funções de uma central telefônica convencional através das principais tecnologias de comunicação existentes no mercado, como por exemplo: linhas telefônicas analógicas, links de telefonia digital via placas de comunicação TDM (Time-Division Multplexing, ou Multiplexaçã ,o por divisão detempo), VoIP (Voice over IP, ou Voz sobre IP) através dos protocolos SIP, H.323, IAX2, MGCP, Skinny,GoogleTalk, Skype, entre outros.<br />
<br />
Através do Asterisk é possível estabelecer uma chamada entre qualquer um desses protocolos. O Asterisk é o que chamamos de B2B User Agent, ou melhor, Back-to-Back User Agent, ele estabelece uma chamada telefônica, separando cada “perna” da chamada entre origem e destino, e monitora todo o tráfego de áudio entre esses pontos. Por isso, caso esses pontos estejam utilizando CODECs diferentes, o Asterisk consegue transcodificar o áudio sem qualquer problema. Pode-se dizer que o Asterisk possui todas as funcionalidades das chamadas centrais telefônicas convencionais, como URAs, correio de voz, conferência, distribuição automática de chamadas, entre outras, e caso seja necessário, é possível acrescentar novas funcionalidades ao sistema através do próprio plano de discagem do Asterisk, módulos customizados escritos em C, ou ainda através de scripts escritos em Asterisk Gateway Interface (AGI). *Fonte: Construindo um PBX IP na pratica (Alexandre Keller)<br/><br/><br />
<br />
<b>Codecs</b><br />
----<br />
Um dos componentes necessários para transmissão de voz numa rede de dados é o Áudio CODEC (Codificador-Decodificador). Este componente é o responsável por transformar a voz humana (um sinal analógico) em uma seqüência de bits (um sinal digital) para transmissão numa rede de dados, fazendo amostragens periódicas no sinal de voz. Em equipamentos do tipo gateways VoIP, esses CODECs são implementados através de um componente chamado DSP (Digital Signal Processor).<br />
A introdução dos microprocessadores no final dos anos 70 e início dos anos 80 tornou possível usar técnicas de processamento digital de sinais (Digital Signal Processing) em um range muito maior de aplicações.<br />
Durante os anos 80 a importância crescente do processamento digital de sinais levou vários fabricantes importantes (como Texas Instruments, Analog Devices e Motorola) a desenvolverem os chips DSP, ou seja, microprocessadores especializados com arquiteturas projetadas especificamente para os tipos de operações requeridas ao processamento digital de sinais.<br />
Como um microprocessador de uso geral, um DSP é um dispositivo programável, com seu próprio conjunto de instruções nativas. O uso desses chips associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO-CODEC1].<br />
Cada CODEC provê certa qualidade de voz. A medida de qualidade da voz transmitida é uma resposta subjetiva de um ouvinte. Uma medida comum usada para determinar a qualidade do som produzido pelos CODECs específicos é o MOS (Mean Opinion Score). Com o uso do MOS, um amplo range de ouvintes julgam a qualidade de uma amostra de voz (correspondendo a um CODEC particular) numa escala de 1 a 5. A partir desses resultados, é calculada a média dos scores para atribuir o MOS para aquela amostra [CISCO-CODEC2].<br />
Na tabela 1 são apresentados alguns scores MOS para os CODECs mais usados. Na Tabela 2 são descritos os scores MOS.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs2.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:codecs3.jpg]]</div><br/><br />
<br />
<br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 1500 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* sudo apt-get update<br />
* sudo apt-get install build-essential module-assistant dkms<br />
* sudo m-a prepare<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
<br />
===<b>Instalação do Asterisk</b>===<br />
----<br />
Neste semestre iremos trabalhar com o Asterisk versão 13.22.0, o LibPRI 1.6.0, que é uma biblioteca Libpri será instalada para que tenhamos suporte aos canais PRI( ISDN, E1, T1 ), e o DAHDI, que é um pacote (Digium Asterisk Hardware Device Interface) nos permite carregar os drivers e configurar diversos tipos de placas de telefonia (para conectar telefones analógicos, linhas telefônicas, linhas digitais e outros).<br />
Antes de qualquer coisa, devemos atualizar o sistema via console de comando:<br />
<br />
#apt-get update<br />
#apt-get upgrade<br />
<br />
Também devemos instalar algumas dependências:<br />
<br />
# apt-get install -y make wget libssl-dev ncurses-dev libnewt-dev libxml2-dev linux-headers-generic g++ libsqlite3-dev uuid-dev libjansson-dev<br />
# apt-get install -y mysql-server libmysqld-dev<br />
<br />
Para baixar os arquivos do Asterisk, DAHDI e LibPRI, seguem os links abaixo (os comandos para a instalação completa do Asterisk, Libpri, Dahdi e banco de dados serão repassados em aula):<br />
<br />
[http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.22.0.tar.gz Asterisk 13.22.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz LibPRI 1.6.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz DAHDI]<br/><br />
<br />
Campos para o banco de dados:<br />
<br />
[https://docs.google.com/document/d/135vf4dUJhMmG0fVqzFXEYPQ095iBzpBU0O7fZz04hZs/edit?usp=sharing Arquivo banco de dados]<br />
<br />
<br/><br/><br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=18/02/2019: Instalação do Sistema Operacional Ubuntu 16.04.5 e reinstalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
...<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=20/02/2019: Comandos e configurações do Asterisk. Criação de ramais=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<b>Comandos Asterisk</b><br />
<br />
Para iniciarmos a utilização do Asterisk, devemos conhecer alguns comandos que serão utilizados no decorrer da disciplina.<br />
<br />
<br />
<b>Tipo: SIP</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do SIP<br />
<br />
sip set debug on<br/><br />
sip set debug off<br/><br />
<br />
'''sip reload''': Reload No arquivo: sip.conf<br/><br />
'''sip show channels:''' Visualizar canais ativos do Tipo SIP<br/><br />
'''sip show channel''': Detalhar 1 determinado canal ativo SIP<br/><br />
'''sip show inuse''': Listar todos os canais/peer existentes no Asterisk<br/><br />
'''sip show peers''': Visualizar os pares que registraram ou não no Asterisk usando SIP<br/><br />
'''sip show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando SIP)<br/><br />
'''sip show users''': Visualizar Dispositivos SIP, Plano de Discagem e Senha<br/><br />
'''sip show channelstats''': Visualizar estatísticas de buffer e jitter na rede e nas chamadas SIP ativas<br/><br />
<br />
<br />
<b>Tipo: IAX2</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do IAX2:<br/><br />
<br />
iax2 set debug on<br/><br />
iax2 set debug off<br/><br />
<br />
'''iax2 show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
'''iax2 show netstats''': Visualizar estatisticas de buffer e jitter na rede e nas chamadas IAX ativas<br/><br />
'''iax2 show peers''': Visualizar os pares que registraram ou não no Asterisk usando IAX<br/><br />
'''iax2 show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando IAX)<br/><br />
'''iax2 show stats''': Visualizar estatisticas do IAX<br/><br />
'''iax2 show users''': Visualizar Dispositivos IAX, Plano de Discagem e Senha<br/><br />
'''iax show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
<br />
<br />
<b>Tipo: Gerenciamento do Asterisk</b><br/><br />
<br />
<br />
'''restart now''': Restart Asterisk imediatamente<br/><br />
'''restart when convenient''': Aguarda inatividade no Asterisk para restartar o Asterisk em seguida<br/><br />
'''reload''': Reload nas configurações<br/><br />
'''stop now:''' Shut down no Asterisk imediatamente<br/><br />
'''dialplan reload''': Reload nos arquivos de configurações do plano de discagem extensions.conf<br/><br />
'''modules show''': Lista os módulos carregados no sistema<br/><br />
'''core show uptime''': Visualizar o tempo do Asterisk no Ar<br/><br />
'''core show version''': Visualizar informações sobre a versão do Asterisk<br/><br />
<br />
<br />
<b>Tipo: Comandos Gerais</b><br/><br />
<br />
<br />
'''dialplan show''': visualizar informações sobre um contexto<br/><br />
'''core show queues''': visualizar as filas criadas no Asterisk<br/><br />
'''soft hangup''': derrubar uma chamada ativa no Asterisk<br/><br />
'''core show applications''': visualizar informação sobre as aplicações disponíveis<br/><br />
'''core show application''': “Aplicação”: detalhar informação sobre determinada aplicação<br/><br />
<br />
<br />
<br />
<b>Preparar o servidor para liberar portas</b><br />
<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica.<br />
<br />
Script para liberação de portas <syntaxhighlight lang=bash><br />
#!/bin/sh<br />
<br />
### BEGIN INIT INFO<br />
# Provides: firewall.sh<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall.sh at boot time<br />
# Description: Enable service provided by firewall.sh.<br />
### END INIT INFO<br />
<br />
PATH="/bin:/sbin:/usr/bin:/usr/sbin"<br />
<br />
set -e<br />
<br />
echo "Starting firewall..."<br />
<br />
IPT="/sbin/iptables"<br />
<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
</syntaxhighlight><br />
<br />
<br />
<b>Iniciando a configuração dos ramais</b><br />
<br />
<br />
O asterisk possui um diretório onde ficam os arquivos de configuração, ele está localizado em /etc/asterisk.<br />
Para definirmos nossos ramais sip, o arquivo de configuração responsável é o sip.conf.<br />
<br />
<br />
Abaixo segue um exemplo de configuração do arquivo <b>sip.conf</b>:<br />
<br />
<br />
[general]<br/><br />
bindport=5060<br/><br />
bindaddr=0.0.0.0<br/><br />
context=default<br/><br />
disallow=all<br/><br />
allow=ulaw<br/><br />
allow=alaw<br/><br />
allow=gsm<br/><br />
maxexpirey=120<br/><br />
defaultexpirey=80<br/><br />
<br />
<br />
[1000]<br/><br />
type=friend<br/><br />
secret=123<br/><br />
host=dynamic<br/><br />
qualify=yes<br/><br />
<br />
<br />
Onde:<br />
<br />
<br />
'''bindaddr''': Endereço IP onde o Asterisk irá esperar pelas conexões SIP. O comportamento padrão é esperar em todas as interfaces e endereços secundários.<br />
<br />
'''Context''': Configura o contexto padrão onde todos os clientes serão colocados, a menos que seja sobrescrito na definição da entidade.<br />
<br />
'''Allow''': Permite que um determinado codec seja usado.<br />
<br />
'''Disallow''': Proíbe um determinado codec.<br />
<br />
'''Bindport''': Porta que o Asterisk deve esperar por conexões de entrada SIP. O padrão é 5060.<br />
<br />
'''maxexpirey''': Tempo máximo para registro em segundos.<br />
<br />
'''Defaultexpirey''': Tempo padrão para registro em segundos.<br />
<br />
<br />
<br />
'''[name]''': Quando um dispositivo SIP conecta-se ao Asterisk, ele utiliza a parte username do SIP URI para encontrar o peer/user.<br />
<br />
'''Type''': Configura a classe de conexão, as opções são peer, user e friend.<br />
<br />
'''Peer''': Entidade para a qual o Asterisk envia chamadas.<br />
<br />
'''User''': Entidade que faz chamadas através do Asterisk.<br />
<br />
'''Friend''': Os dois ao mesmo tempo.<br />
<br />
'''Host''': Configura o endereço IP ou o nome do host. Pode-se usar também a opção ‘dynamic’ onde se espera que o host faça o registro, é a opção mais comum.<br />
<br />
'''Secret''': Senha usada para autenticar o peer ou user fazendo uma chamada.<br />
<br />
'''Qualify''': caso esteja yes, o asterisk enviará um comando regularmente para verificar se o dispositivo ainda está online.<br />
<br />
<br />
<br />
<b>Plano de discagem</b><br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
<br />
Para criar um plano de discagem, deve-se editar o arquivo responsável, o extensions.conf. Este arquivo está localizado em /etc/asterisk. Uma parte importante neste arquivo é o contexto <b>general</b>:<br />
<br />
[general]<br/><br />
static=yes<br/><br />
writeprotect=no<br/><br />
autofallthrough=yes<br/><br />
clearglobalvars=no<br/><br />
priorityjumping=no<br/><br />
<br />
<br />
<br />
'''static e writeprotect''' – permite salvar o plano de discagem a partir da linha de comando.<br/><br />
'''Autofallthrough''' – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br/><br />
'''Clearglobalvars''' – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br/><br />
'''Priorityjumping''' – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br/><br />
<br />
Também devemos criar um contexto que já foi pré definido no ramal criado. No nosso caso se chamará <b>default</b>:<br />
<br />
<br />
[default]<br/><br />
exten = 1000,1,Dial(SIP/1000,30)<br/><br />
exten = 1000,2,Hangup()<br/><br />
<br />
<br />
Neste caso usamos duas aplicações, <b>Dial</b> e <b>Hangup</b>, responsáveis por discar e encerrar uma chamada, respectivamente.<br />
<br />
As aplicações mais comuns no Asterisk são:<br />
<br />
<br />
'''Answer''' – Atende uma chamada<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mas salva a posição de retorno<br/><br />
'''NooP''' – imprime na cli do asterisk o termo<br/><br />
<br />
<br />
<b>Exercício</b><br />
<br />
<br />
Crie 6 ramais (1000, 1001, 1002, 1003, 1004, 1005).<br />
<br />
Crie também um plano de discagem que permita a ligação entre todos os ramais.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=25/02/2019: Plano de discagem e máscaras=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
===Plano de discagem===<br />
<br />
O plano de discagem define como o Asterisk irá gerenciar as chamadas. Ele consiste de uma lista de instruções ou passos que o Asterisk deveria seguir. Essas instruções são disparadas a partir dos dígitos recebidos de um canal ou aplicação.<br />
O extensions.conf pode ser separado em quatro partes:<br />
<br />
* Contextos;<br />
* Extensões;<br />
* Prioridades;<br />
* Aplicações.<br />
<br />
<br />
====Contextos====<br />
<br />
Os contextos definem o escopo e permitem separar diferentes partes do plano de discagem, recebem o seu nome dentro de chaves ([]).<br />
No início do arquivo extensions.conf existe um contexto chamado [globals] onde as variáveis globais são definidas e podem ser usadas por todo o plano de discagem. E o contexto [general] que é utilizado para definir alguns parâmetros gerais.<br />
Os contextos estão ligados diretamente aos canais. Quando uma ligação entra no Asterisk por um canal ela é processada dentro do contexto deste canal.<br />
Ex:<br />
<br />
[gerentes]<br/><br />
exten=>9000,1,Playback(gerente)<br />
<br />
[visitantes]<br/><br />
exten=>9000,1,Playback(visitante)<br />
<br />
<br />
====Extensões====<br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
Exemplo:<br />
<br />
exten => 9001,1,Dial(SIP/9001,20) ; Extensão 9001, prioridade 1, disca para o ramal 9001 pelo protocolo SIP, tempo de resposta em segundos.<br/><br />
Exten => 9001,2,Hangup() ; Extensão 9001, prioridade 2, efetua o desligamento.<br />
<br />
Dentro de uma extensão, podemos ter as chamadas variáveis de canal, como abaixo:<br />
<br />
exten =>2001,2,DIAL(SIP/${RAMAL})<br />
<br />
Neste exemplo acima, criamos a variável “RAMAL” em tempo de execução, ou seja, na criação do Canal, ou da chamada.<br />
As variáveis de canais são as mais utilizadas normalmente, para trazer informação dos canais normalmente, como nome do canal , nome do contexto, extensão, etc. Vejamos abaixo algumas das variáveis mais usadas:<br />
<br />
${CALLERID} Identificador da chamada (nome ou número)<br/><br />
${CALLERIDNAME} O nome do id. Da chamada<br/><br />
${CALLERIDNUM} O número do id. Da chamada.<br/><br />
${CHANNEL} Nome do Canal atual ou corrente.<br/><br />
${CONTEXT} Nome do Contexto atual ou corrente.<br/><br />
${DATATIME} Data e hora no formato o YYYY-MM-DD_HH:MM:SS.<br/><br />
${DIALPEERNUMBER} Número de que foi chamada.<br/><br />
${DIALSTATUS} Status da Chamada.<br/><br />
${EXTEN} Extensão da chamada atual ou corrente.<br/><br />
${HANGUPCAUSE} Causa do término da chamada<br/><br />
${LANGUAGE} A Linguagem Atual.<br/><br />
${PRIORITY} Prioridade Atual<br/><br />
<br />
<br />
exemplo:<br />
<br />
exten => _20XX,1,Dial(SIP/${EXTEN})<br />
<br />
<br />
Neste exemplo podemos ver o uso de máscara e da variável do Asterisk EXTEN. Esse é justamente o exemplo que havia falado acima, para evitar o a criação de uma infinidades de canais. Quando um ramal começando com 20 e mais dois números for solicitado, irá chamar a aplicação DIAL para discar para o ramal ( SIP/${EXTEN}), onde esta variável trará o próprio numero discado. Assim precisamos apenas de uma entrada para todos os ramais do tipo 20XX.<br />
<br />
<br />
====Aplicações básicas do Asterisk====<br />
<br />
'''Answer''' – Atende uma chamada.<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução.<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados.<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mais salva a posição de retorno.<br/><br />
'''NooP''' – imprime na cli do asterisk o termo.<br/><br />
<br />
Para verificar as aplicações no asterisk, basta digitar n cli do mesmo o seguinte comando:<br />
<br />
# ubuntu-server*cli> core show applications<br />
<br />
Caso queira uma explicação detalhada de uma aplicação, utilize o comando:<br />
<br />
# ubuntu-server*cli> core show application nome_da_aplicacao<br />
<br />
Onde o termo nome_da_aplicacao corresponde a aplicação a qual queremos os detalhes.<br />
<br />
<br />
Formato das extensões<br />
<br />
8000 – numérica<br/><br />
Alexander – alfanumérica<br/><br />
4321/1234 – Numérica com callerID<br/><br />
_4XXX – Usando máscaras<br/><br />
s – padrões pré definidos<br/><br />
<br />
Máscaras<br />
<br />
_ - início de uma máscaras<br/><br />
. - aceita n caracteres subsequentes<br/><br />
[13-9] – qualquer dígito dentro dos colchetes (1, de 3 até 9), mas apenas um deles<br/><br />
X – qualquer dígito entre 0 e 9<br/><br />
Z – qualquer dígito entre 1 e 9<br/><br />
N – qualquer dígito entre 2 e 9<br/><br />
<br />
Prioridades<br />
<br />
Prioridades são passos numerados na execução de cada extensão. Cada prioridade chama uma aplicação especifica. Se os números das prioridades não forem sequenciais o Asterisk aborta a execução. A partir da versão 1.2 do Asterisk, tornou-se comum o uso da prioridade “n”, no lugar da associação manual de números, assim como a possibilidade da utilização de labels e aliases.<br />
<br />
<br />
'''Exercícios'''<br />
<br />
<br />
# Deve-se criar extensões para ramais com 4 dígitos, permitindo que iniciem com 2 ou 3 e tenham sua numeração entre 2000 e 2499, e também entre 3000 e 3499;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando em 6 ou 7 e que tenham sua numeração entre 6500 e 6599, e também entre 7500 e 7599;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando com 9 e que tenham numeração entre 9600 a 9700;<br/><br />
# Criar extensões para celulares com 9 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para celulares com 9 dígitos, sem operadora;<br/><br />
# Criar extensões para telefones fixos com 8 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para telefones fixos com 8 dígitos, sem operadora.<br/><br />
<br />
<br />
'''Observações:'''<br />
<br />
* Os celulares iniciam com o dígito 9 e telefones fixos com 2 ou 3.<br />
<br />
* Em cada extensão usar uma aplicação para escrever na CLI do Asterisk qual a ligação está sendo efetuada, o número e o nome dado ao ramal. Ex: Esta ligação está sendo efetuada de celular sem operadora de longa distância.<br />
<br />
<br />
<br />
Leituras que podem ser úteis:<br />
<br />
[http://stato.blog.br/wordpress/asterisk-parte-3-variaveis-macros-e-mascaras/ Variáveis, Macros e Máscaras]<br />
<br />
[https://www.vivaolinux.com.br/etc/extensions.conf-caue.garcia/ Extensions.conf]<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=27/02/2019: Plano de discagem e máscaras - continuação=<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=06/03/2019: Liberação de portas, Aplicações e instalação de áudio em português=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
===Liberação de portas===<br />
<br />
Preparando o servidor para liberação de portas para autenticação dos ramais e efetuar chamadas, caso necessário<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica. Para isso iremos criar um script de firewall no diretório /etc/init.d/ com o nome de firewall.<br />
Neste arquivo colocaremos o seguinte conteúdo:<br />
<br />
#!/bin/sh<br />
### BEGIN INIT INFO<br />
# Provides: firewall<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall at boot time<br />
# Description: Enable service provided by firewall.<br />
### END INIT INFO<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
===Aplicações===<br />
<br />
As aplicações são partes fundamentais do Asterisk, elas tratam o canal de voz, tocando sons, aceitando dígitos ou encerrando uma chamada. As aplicações são chamadas com opções que afetam a sua forma de funcionamento.<br />
<br />
Agora testaremos este ramal, iremos criar uma aplicação onde discaremos *65 no ramal registrado e o asterisk nos dirá qual é o ramal que está em uso.<br />
<br />
Para isso, vamos editar o arquivo responsável pelos planos de discagem, o extensions.conf. Este arquivo está localizado em /etc/asterisk.<br />
<br />
Criaremos um contexto chamado app:<br />
<br />
<br />
'''[app]'''<br/><br />
'''exten =>*65,1,Goto(function-speakextnum,s,1)'''<br />
<br />
<br />
Ao discarmos *65, este contexto encaminhará, através da função Goto (enviar para), para outro contexto, chamado function-speakextnum:<br />
<br />
<br />
'''[function-speakextnum]'''<br/><br />
'''exten => s,1,Set(Description="Identifica ramal")'''<br/><br />
'''exten => s,2,Answer()'''<br/><br />
'''exten => s,3,Wait(2)'''<br/><br />
'''exten => s,4,Playback(telephone-number&is)'''<br/><br />
'''exten => s,5,SayDigits(${CALLERID(num)})'''<br/><br />
'''exten => s,6,Wait(2)'''<br/><br />
'''exten => s,7,Hangup()'''<br/><br />
<br />
<br />
Basicamente, este contexto terá uma descrição, utilizará os sons previamente criados no asterisk para nos dizer qual o ramal em uso e após 2 segundos desligar.<br />
<br />
Agora necessitamos incluir a aplicação no contexto definido no arquivo sip.conf. Devemos recordar que este contexto se chama default:<br />
<br />
<br />
'''[default]'''<br/><br />
'''include => app'''<br />
<br />
<br />
Pudemos identificar que a linguagem utilizada é o inglês. O que iremos fazer é instalar o idioma português.<br />
<br />
Para isso, devemos efetuar o download do arquivo de áudio em português, neste link:<br />
<br />
Baixe os arquivos de som:<br />
<br />
# wget -O core.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-core-pt-BR-sln16.zip<br />
# wget -O extra.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-extra-pt-BR-sln16.zip<br />
<br />
<br />
Arquivo Convert deve conter os comandos abaixo:<br />
#!/bin/bash<br />
for a in $(find . -name '*.sln16'); do<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\<br />
done<br />
<br />
===Avaliação===<br />
<br />
<br />
Deve ser entregue o relatório parcial, via Sigaa, com todo o conteúdo visto até o momento. Serão avaliados os seguintes itens:<br />
<br />
# Conteúdo;<br />
# Organização;<br />
# Metodologia (formatação do conteúdo de acordo com o que foi passado em aula).<br />
<br />
O relatório deve ser entregue até as 23:59 de 10/03/2019, em formato '''PDF''' (não serão considerados outros formatos).<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=11/03/2019: Utilização de Macros. Planos de discagem em arquivos externos=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
===Macros===<br />
<br />
Macros são sub-rotinas que são usadas mais de uma vez dentro do plano de discagem, evitando à reedificação de dados. Facilitando operações, organização, onde os códigos podem ser reutilizados.<br />
<br />
Formato: <br />
<br />
Macro(Nome da macro, Arg1, Arg2)<br />
<br />
Onde temos:<br />
<br />
Macro: A chamada para criação da Macro.<br />
Nome da macro: O nome da macro que está sendo criada, e será referenciado posteriormente.<br />
Arg(n): Argumentos que serão passados para macro.<br />
<br />
Vejamos um exemplo de macro sendo utilizado. Iremos criar uma macro chamada atendimento, onde irá atender a ligação, mostrar na tela o número originador, o nome do ramal, irá executar um playback chamada hello-world e em seguida vai gerar na tela a mensagem Áudio executado com sucesso. Após efetuar os argumentos, a macro retorna para o contexto de origem e continua executando os demais comandos (Também podemos incluir a aplicação [http://www.asteriskguru.com/tutorials/dumpchan.html DumpChan], que nos trará informações complementares relacionadas aos ramais e a chamada efetuada).<br />
<br />
'''Exercício'''<br />
<br />
Crie um plano de discagem para o número 12345 onde a extensão deverá chamar uma macro com o nome ''ramal555''. Esta macro deverá efetuar uma chamada para o ramal 555 que deverá estar configurado em um softphone.<br />
<br />
===Criando planos de discagem em arquivos externos===<br />
<br />
o asterisk utiliza o arquivo extensions.conf para que possamos efetuar nossos planos de discagem, mas existe uma forma de criar estes planos em arquivos diferentes. Para isso, devemos criar um arquivo com o nome desejado e salvar com a extensão .conf, no diretório /etc/asterisk. <br />
<br />
Mas como vinculamos o arquivo criado no plano de discagem existente no extensions.conf? <br />
<br />
Através da aplicação #include.<br />
<br />
Para exemplificar, criaremos um arquivo chamado rota_123.conf<br />
<br />
<br />
'''Exercício'''<br />
<br />
Efetue um plano de discagem para o ramal 999 utilizando um arquivo externo chamado ramal999.conf. Este arquivo externo deverá chamar uma macro que irá ligar para o ramal 555.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=13/03/2019: Habilitando gravação de chamadas=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
<br />
===Verificando o banco de dados e criando a macro Record===<br />
<br />
Como vimos até agora, já possuímos ramais e planos de discagem entre ramais, mas não temos uma forma de ouvir novamente o que foi dito nestas ligações. Esse é um ponto importante para várias empresas e instituições. Por enquanto o Asterisk está gerando relatórios em nossa tabela cdr, mas não está gerando arquivos .wav das ligações. Para começarmos a gravar as ligações iremos criar uma macro e utilizar a aplicação [https://wiki.asterisk.org/wiki/display/AST/Asterisk+11+Application_MixMonitor Mixmonitor]. O MixMonitor é uma aplicação nativa do Asterisk utilizada para fazer a gravação das chamadas telefônicas e mixar os arquivos de áudio em tempo real. Vamos verificar no nosso banco o campo monitor e ter certeza que não está sendo gravado:<br />
<br />
# mysql cdr -u cdr_user -p<br />
<br />
Onde:<br />
cdr -> Banco<br />
cdr_user -> Usuario para conectar no Banco<br />
<br />
Para verificarmos os registros, usamos o seguinte comando:<br />
<br />
mysql> select * from cdr\G;<br />
<br />
Teremos uma saída parecida com esta:<br />
<br />
<div style="text-align: center;">[[Arquivo:bancorecord.jpg]]</div><br/><br />
<br />
Caso o banco de dados apresente campos em branco, basta efetuar o carregamento do módulo cdr_mysql.so através dos dois comandos abaixo:<br />
<br />
ubuntu-server*cli> module unload cdr_mysql.so<br />
<br />
ubuntu-server*cli> module load cdr_mysql.so<br />
<br />
Como podemos verificar, o campo monitor está vazio, indicando que não existe arquivo de gravação.<br />
Devemos editar o arquivo extensions.conf e criar a macro record, e além disso devemos chamar a macro antes da ligação ser atendida para que efetivamente aconteça a gravação.<br />
<br />
<div style="text-align: center;">[[Arquivo:extensionconfrecord.jpg]]</div><br/><br />
<br />
[macro-record]<br />
exten => s,1,NoOP(${CALLERID(num)})<br />
exten => s,n,Set(ARG1=${CALLERID(num)})<br />
exten => s,n,Set(CALLFILENAME=CHANNEL-${ARG1}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID})<br />
exten => s,n,Set(TIME=${STRFTIME(${EPOCH},,%Y%m%d)})<br />
exten => s,n,MixMonitor(/var/spool/asterisk/monitor/${TIME}/${CALLFILENAME}${TRANSFER}.wav49,${BRIDGE}a)<br />
exten => s,n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)<br />
exten => s,n,Set(CDR(monitor)=${CALLFILENAME}${TRANSFER}.WAV)<br />
<br />
<br />
O diretório padrão no asterisk para salvar as gravações é /var/spool/asterisk/monitor/, e nele é criado automaticamente diretórios com as datas para armazenar os arquivos.<br />
<br />
===Exercício 1===<br />
<br />
# Crie um arquivo chamado ramaisinternos.conf no diretório /etc/asterisk e neste arquivo efetue plano de discagem para os ramais 5000 a 6999, efetuando a gravação das chamadas.<br />
# Crie um plano de discagem para o número 1001 onde a extensão deverá chamar uma macro com o nome telefonista. Esta macro deverá efetuar uma chamada para o ramal 1000 que deverá estar configurado em um softphone. Este plano de discagem deve ter a gravação de chamadas ativado.<br />
<br />
<br />
<br />
===Exercício 2===<br />
<br />
<br />
Você como administrador do setor de telefonia da empresa deverá fazer com que alguns ramais não tenham suas ligações gravadas. Estes ramais serão do 3000 à 3019(gravação desabilitada).<br />
<br />
Os ramais do 3020 ao 3100 terão suas gravações habilitadas.<br />
<br />
Como você faria isso de forma que não polua o seu arquivo extensions.conf?<br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=20/03/2019: Criando uma URA=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
<br />
===O conceito de URA===<br />
<br />
<br />
Idealizada e desenvolvida no início da década de 1980, a URA (Unidade de Resposta Audível) é uma interface eletrônica à qual direciona o cliente a um script de atendimento pré-configurado, com base nos setores e/ou assuntos atendidos pela empresa.<br />
<br />
O sistema funciona como um menu digital: quem liga tem à sua disposição uma série de opções (por exemplo: “falar com suporte”, “falar com o comercial”). Ao selecionar a opção a pessoa é transferida – tanto para outra gama de opções quanto para um operador referente a opção escolhida pelo usuário.<br />
<br />
Esse tipo de serviço otimiza a filtragem das ligações, a fim de agilizar o atendimento e facilitar o contato com o cliente. Atualmente, milhares de empresas adotaram a solução, dentre elas call centers de bancos, escolas, hotéis e muitas outras.<br />
<br />
Normalmente contrata-se empresas especializadas em gravação de áudio para URAs, mas iremos utilizar um método mais caseiro.<br />
<br />
<br />
===Instalando programas para efetuar a gravação da URA===<br />
<br />
<br />
Para termos um áudio com opções para a nossa URA, devemos instalar um programa para captura de áudio chamado Audio Recorder. Devemos inicialmente adicionar o repositório onde o aplicativo se encontra, através do comando abaixo:<br />
<br />
# sudo add-apt-repository ppa:audio-recorder/ppa<br />
<br />
Então atualizamos a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalamos o aplicativo:<br />
<br />
# sudo apt-get install audio-recorder<br />
<br />
Após efetuada a instalação, podemos abrir o programa e alterar a opção formato para .WAV (lossless wav 44khz):<br />
<br />
<div style="text-align: center;">[[Arquivo:audiorecorder.jpg]]</div><br/><br />
<br />
<br />
===Criando arquivo de áudio para a URA===<br />
<br />
Para transformarmos texto em voz, podemos utilizar o Google tradutor, escrever o texto que queremos e ouvir a pronúncia enquanto o Audio Recorder efetua a gravação. O áudio gerado será armazenado no diretório /home/usuário/Audio, onde o usuário é o nome do usuário utilizado no login do computador. O arquivo gerado terá o formato %Y-%m-%d-%H:%M:%S, como mostrado abaixo:<br />
<br />
<div style="text-align: center;">[[Arquivo:listaaudio.jpg]]</div><br/><br />
<br />
Mas este áudio ainda não pode ser executado no asterisk, pois está com taxa de amostragem de 44100 hz, devemos alterar para 8000 hz. Para isso iremos usar um programa chamado Sox. Sua instalação se dá pelo comando:<br />
<br />
# apt-get install sox libsox-fmt-all<br />
<br />
o arquivo original deve ser convertido através do comando:<br />
<br />
# sox 2018-01-27-10:40:59.wav -r 8000 -c1 ura.wav<br />
<br />
Por fim, devemos movê-lo para o diretório /var/lib/asterisk/sounds/pt_BR:<br />
<br />
# mv ura.wav /var/lib/asterisk/sounds/pt-br<br />
<br />
===Configurando a URA===<br />
<br />
Neste momento estaremos prontos para iniciar a criação da URA. Iremos até o diretório /etc/asterisk/ e criaremos o arquivo ura.conf, no qual iremos inserir os comandos necessários para a sua criação:<br />
<br />
<div style="text-align: center;">[[Arquivo:ura.jpg]]</div><br/><br />
<br />
Ao ligarmos para o ramal 9000, caímos na URA, onde é feito o desvio para o contexto ura, extensão s e prioridade 1.<br />
<br />
Já na ura, o primeiro item é o TIMEOUT, relacionado ao tempo. Nesse primeiro caso, ela limita o tempo que o usuário tem para digitar a extensão, se em 10 segundo ele não digitar, automaticamente vai ser encaminhado para extensão t, onde será tocado o arquivo vm-goodbye.<br />
<br />
No segundo item TIMEOUT(digit) , especificamos o tempo máximo entre um dígito e outro. Obviamente em nosso caso não há necessidade, pois as extensões têm apenas um digito, mas caso houvesse mais, seria o tempo padrão de 2 segundos.<br />
<br />
A ura ira atender em Answer, e em seguida iniciará tocar o que está especificado em Background, que é justamente o menu gravado anteriormente.<br />
<br />
A opção WaitExten tem por finalidade aguardar a digitação referente ao ramal que deve ser chamado, durante o tempo especificado.<br />
<br />
Extensões 1 e 2 encaminham a ligação para seus respectivos ramais.<br />
<br />
A extensão “i”, é utilizado quando é digitado um ramal inexistente, neste caso será utilizada o arquivo invalid para tocar, para informar ao usuário que o ramal é invalido, em seguida é novamente utilizado o Goto para desviar a ligação para o começo da ura, no label repete.<br />
<br />
E por fim a extensão “t”, utilizado com os primeiros itens de TIMEOUT, desliga a chamada.<br />
<br />
Devemos alterar o arquivo extensions.conf, incluído o contexto ura e adicionando um plano de discagem para o número fictício 9000, simulando nosso número principal:<br />
<br />
<div style="text-align: center;">[[Arquivo:gotoura.jpg]]</div><br/><br />
<br />
Devemos também alterar o parâmetro autofallthrough para no, o que permite o uso de tempo, com TIMEOUT, para digitação dos dígitos na URA.<br />
<br />
Outro ponto importante é incluir no arquivo sip.conf a linha dtmfmode=rfc2833, que é o padrão mais comum na digitação da maioria dos telefones.<br />
<br />
Devemos ficar atentos na seguinte situação: enviamos a ligação diretamente para o ramal, através do comando exten = 1,1,Dial(SIP/1000) sem passar por um contexto, fazendo com que a ligação não tivesse gravação:<br />
<br />
<div style="text-align: center;">[[Arquivo:gravacao.jpg]]</div><br/><br />
<br />
Para resolver este problema, vamos substituir a aplicação Dial pela aplicação GoTo, enviando para o contexto default no ramal desejado e sua prioridade, o que fará passar a gravar a ligação. Neste caso podemos dispensar a aplicação HangUp, pois a aplicação GoTo, não retorna para o contexto de origem:<br />
<br />
<div style="text-align: center;">[[Arquivo:gotoramal.jpg]]</div><br/><br />
<br />
<br />
===Exercício===<br />
<br />
<br />
# Crie uma URA com os seguintes ramais:<br />
<br />
* Suporte Técnico: Este ramal deverá direcionar para uma ramal de Suporte técnico em Hardware e outro ramal de Suporte técnico em software;<br />
* Comercial;<br />
* Vendas: Deverá existir uma ramal para vendas de equipamentos e um ramal para vendas de serviços e softwares;<br />
* Administrativo.<br />
* Caso a pessoa não digite nada, a chamada deverá ser direcionada para a telefonista.<br />
<br />
Deverá existir um áudio para orientar a pessoa que estiver ligando para o número que contém a URA e as subURAs.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=25/03/2019: Criando uma URA - Continuação=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=27/03/2019: Criando uma URA - Continuação=<br />
<br />
{{Collapse top | Aula 12}}<br />
<font size="3"><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=01/04/2019: Avaliação=<br />
<br />
{{Collapse top | Aula 13}}<br />
<font size="3"><br />
<br />
#Efetue um backup do seu arquivo '''sip.conf''' e '''extensions.conf''' (cria um diretório em '''/root''' com o nome de '''backup''' e copie os arquivos para este diretório), crie um novo arquivo sem nenhum informação para desenvolver a avaliação.<br />
#Crie uma faixa de ramais de 1000 a 1010.<br />
#Crie um plano de discagem onde todos esses ramais possam se comunicar.<br />
#Você como administrador do setor de telefonia da empresa deverá fazer com que alguns ramais não tenham suas ligações gravadas. Estes ramais serão do 1000 à 1005(gravação desabilitada). Os ramais do 1006 ao 1010 terão suas gravações habilitadas. <br />
#Crie uma URA com os seguintes ramais: Suporte Técnico(ramal 1006), Comercial(ramal 1007), Vendas(ramal 1008), e Administrativo(ramal 1010). Caso a pessoa não digite nada, a chamada deverá ser direcionada para a telefonista (ramal 1000). Deverá existir um áudio para orientar a pessoa que estiver ligando para o número que contém a URA.<br />
<br />
<br />
Ao finalizar a avaliação, compacte todos os arquivos utilizados(sip.conf, extensions.conf, arquivos de áudios utilizados na URA e demais arquivos que venha a utilizar) para desenvolver a avaliação. Após a compactação, envie este arquivo via sigaa. '''A tarefa ficará aberta até o dia 03/04/2019 as 22h'''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}<br />
<br />
=01/04/2019: Avaliação - Continuação=<br />
<br />
{{Collapse top | Aula 14}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 14}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI4-2019-1&diff=156290PJI4-2019-12019-04-01T20:22:54Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador IV= <br />
<font size="3"><br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 2a feira/19:00, 4a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 4a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji4-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
#Implantar um PABX IP integrado com serviços de telefonia fixa e móvel convencionais. <br />
#Prover a infraestrutura de rede necessária para o adequado funcionamento deste PABX IP. <br />
#Integrar os serviços de telefonia com outros serviços de rede.<br />
<br />
== Links interessantes ==<br />
<br />
* [https://hakin9.org/voip-hacking-techniques/ VoIP Hacking Techniques]<br />
* [https://www.vivaolinux.com.br/artigo/Asterisk-nao-e-um-Sip-Proxy Asterisk não é um SIP proxy]<br />
* [https://www.rnp.br/servicos/servicos-avancados/fonernp FoneRNP]<br />
* [https://www.digium.com/products/business-phone-systems/on-premise/virtual-pbx SwitchVox: PBX virtual]<br />
* [http://convergecom.com.br/teletime/21/03/2006/embratel-e-net-lancam-servico-de-telefonia-fixa-local/ Net Fone da Embratel é VoIP, mas não usa SIP]<br />
** [https://en.wikipedia.org/wiki/PacketCable ... e sim PacketCable]<br />
* [http://thevoipreport.com/article/cold-hard-voip-stats/ Estatísticas sobre VoIP no mundo]<br />
* [https://www.cisco.com/c/en/us/support/docs/voice/digital-cas/5717-e1-r2-sig.html Sinalização R2 (E1)]<br />
=== Provedores VoIP no Brasil ===<br />
* [https://www.falemaisvoip.com.br/o-que-e-voip/ FaleMaisVoIP]<br />
* [http://www.directcall.com.br/ DirectCall]<br />
* [http://www.teleco.com.br/opvoip.asp outros ...]<br />
<br />
== Resumo de comandos da CLI para o Asterisk ==<br />
<br />
# O Asterisk pode ser carregado de duas formas:<br />
#* '''foreground''': utilizado para depurar problemas na inicialização do Asterisk, quando ele não puder ser inicializado.<br />
#* '''background''': modo padrão de inicialização<br><br><br />
# Conectar à CLI do Asterisk carregado <syntaxhighlight lang=text><br />
asterisk -r<br />
rasterisk <br />
</syntaxhighlight><br />
# Comandos na CLI<br />
## Saindo da CLI sem interromper o processo <syntaxhighlight lang=text><br />
exit<br />
</syntaxhighlight><br />
## Carrega canais SIP previamente registrados <syntaxhighlight lang=text><br />
sip reload<br />
</syntaxhighlight><br />
## Mostra canais SIP registrados <syntaxhighlight lang=text><br />
sip show peers<br />
</syntaxhighlight><br />
## Carrega plano de discagem <syntaxhighlight lang=text><br />
dialplan reload<br />
</syntaxhighlight><br />
## Mostra a extensão criada no plano de discagem <syntaxhighlight lang=text><br />
dialplan show default<br />
</syntaxhighlight><br />
## Finalizando processo no Asterisk <syntaxhighlight lang=bash><br />
sudo core stop now<br />
</syntaxhighlight><br />
## Ver aplicações disponíveis no Asterisk <syntaxhighlight lang=text><br />
core show applications<br />
</syntaxhighlight><br />
# Iniciando Asterisk em modo Background <syntaxhighlight lang=bash><br />
sudo service asterisk start<br />
</syntaxhighlight><br />
# Carregar o Asterisk em modo ForeGround <syntaxhighlight lang=bash><br />
sudo asterisk -gc<br />
</syntaxhighlight><br />
</font><br />
<br />
=11/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1MNqwAklC8WL0-geeBuC_4kCTjGqDxcyi/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador IV===<br />
<br />
O foco do Projeto Integrador IV está na oferta de serviços ao usuário final e na convergência de serviços de telecomunicações, incluindo a integração dos serviços de telefonia fixa, móvel e VoIP. Além disso, também tem como objetivo a integração destes serviços de telecomunicações com outros serviços de rede como servidores Web, Email, Telefonia IP, administração de sistemas e usuários, compartilhamento de recursos, DNS, etc. <br />
<br />
<br />
Na figura abaixo é apresentado um esboço do cenário que foi desenvolvido durante o Projeto Integrador III. A proposta inicial é integrar a este cenário serviços de telefonia IP e convencional. Além disso, outros serviços podem ser integrados a ambos, como e-mail, DNS, acesso à câmeras IP, etc. <br />
<br />
[[imagem:Diagrama-PJI3.png|600px]]<br />
<br />
<br />
Uma vez integrados os serviços de rede e de telefonia e tendo em mente que a qualidade de serviço é um ponto sensível à aplicações de telefonia IP, espera-se desenvolver métodos de medição de rede para assegurar seu correto funcionamento.<br />
<br />
== PBX IP ==<br />
<br />
<br />
Um PBX IP funciona como uma central telefônica, porém intermediando chamadas VoIP. Com isso, as chamadas são feitas de um telefone IP em direção ao PBX IP, que a encaminha ao telefone IP de destino de acordo com suas regras de discagem. A figura abaixo ilustra como funciona uma chamada VoIP típica através de um PBX IP.<br />
<br />
[[imagem:Voip-call.png|500px]]<br />
<br />
<br />
Nas nossas aulas faremos uso de um PBX IP [http://www.asterisk.org/ Asterisk], que é um software desenvolvido pela [http://www.digium.com/ Digium]. O Asterisk roda em computadores do tipo PC que possuem sistema operacional baseado em Linux. Sua licença é livre, o que significa que não há custo de licenciamento para utilizá-lo.<br />
* [http://www.asterisk.org/get-started Uma visão geral sobre Asterisk]<br />
<br />
== PBX IP Asterisk ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/rmu/slides/aula-25.pdf Transparências]<br />
* [http://www.asterisk.org Site oficial do Asterisk]<br />
* [http://www.asteriskguru.com/ Asterisk Guru]<br />
* [http://www.voip-info.org/wiki Dicas sobre Asterisk]<br />
* [http://www.asteriskdocs.org/ Livro online gratuito sobre Asterisk]<br />
* [http://www.packetizer.com/ipmc/sip/papers/understanding_sip_voip/ Introdução a VoIP e SIP]<br />
* Livro [http://www.shopvoip.com.br/index.php?route=product/product&product_id=1263 ''Asterisk: Guia de Configuração - 5a geração''], de Flávio Gonçalves.<br />
<br />
<br />
'''Asterisk:''' uma solução completa de PABX baseado em software, permitindo ligar o mundo IP ao mundo da rede pública de telefonia comutada.<br />
<br />
'''Características Básicas:''' faz tudo que um PABX pequeno e simples faz e pouco mais<br />
* Transferência, música de espera, siga-me, etc.<br />
* Conferência, correio de voz, URA, fila de chamadas, monitoramento de chamadas, integração com o Jabber (Google talk)<br />
<br />
<br />
[[imagem:Asterisk-ex1.png|400px]]<br />
<br>''Exemplo de cenário de uso do Asterisk''<br />
<br />
<br />
<!-- [[imagem:Asterisk-arch.png|500px]]<br />
<br>''Arquitetura modular do Asterisk'' ---><br />
<br />
<br />
O Asterisk é um software complexo e com muitos recursos. Porém sua função mais elementar, que é intermediar chamadas, pode ser entendida com base em dois elementos importantes desse tipo de PBX. Esses elementos são o '''plano de discagem''' e '''configurações de canais'''. Na terminologia do Asterisk, um canal pode ser entendido como um ramal ou tronco. Para ter o Asterisk funcionando como uma central simplificada, é suficiente configurar esses dois elementos.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 4'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI4 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador IV'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professores: Ederson Luiz de Souza Santos e Mayara de Sousa'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2018'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=13/02/2019: Conceitos gerais, preparação do servidor e instalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
<b>Telefonia IP ou VoIP: O que é?</b><br />
----<br />
A Comunicação de Voz em Redes IP, chamada de VoIP, consiste no uso das redes de dados que utilizam o conjunto de protocolos das redes IP (TCP/UDP/IP) para a transmissão de sinais de Voz em tempo real na forma de pacotes de dados.<br />
<br />
A sua evolução natural levou ao aparecimento da Telefonia IP, que consiste no fornecimento de serviços de telefonia utilizando a rede IP para o estabelecimento de chamadas e comunicação de Voz.<br />
<br />
Nessas redes são implementados protocolos adicionais de sinalização de chamadas e transporte de Voz que permitem a comunicação com qualidade próxima àquela fornecida pelas redes convencionais dos sistemas públicos de telefonia comutada ou de telefonia móvel.<br/><br/><br />
<br />
<b>Digitalização de Sinais de Voz</b><br />
----<br />
Nos sistemas tradicionais o sinal de Voz utiliza uma banda de 4 kHz, e é digitalizado com uma taxa de amostragem de 8 kHz para ser recuperado adequadamente (Princípio de Nyquist). Como cada amostra é representada por um byte (8 bits, com até 256 valores distintos), cada canal de Voz necessita de uma banda de 64 kbit/s (8.000 amostras x 8 bits).<br />
<br />
Esta forma de digitalização do sinal de Voz atende a recomendação ITU-T G.711 - Pulse code modulation (PCM) of voice frequencies.<br />
<br />
Nos sistema de transmissão de Voz sobre IP, onde a demanda por banda é crítica, torna-se necessário utilizar também algoritmos de compressão do sinal de Voz. Esses algoritmos têm papel relevante pela economia de banda que proporcionam.<br />
<br />
O seu uso tem sido possível graças ao desenvolvimento dos processadores de sinais digitais (DSP’s), cuja capacidade de processamento tem crescido vertiginosamente.<br />
<br />
Estas necessidades incentivaram o desenvolvimento de tecnologias mais complexas para a digitalização e compressão de Voz, e que foram registradas através de recomendações do ITU-T. Estas recomendações são apresentadas na tabela abaixo, com algumas características relevantes.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs.jpg]]</div><br/><br/><br />
<br />
<b>Asterisk</b><br />
----<br />
O Asterisk é a implementação de uma central telefônica PBX (Private Branch eXchange) em software, criado por Mark Spencer em 1999, e distribuído pela Digium livremente seguindo a licençaGPL (GNU General Public License – GPL), ou através de código proprietário.<br />
<br />
O nome Asterisk vem do símbolo ‘*’, muito comum no mundo da telefonia.<br />
<br />
O Asterisk foi originalmente desenvolvido para Linux, mas atualmente podeser instalado e executado em uma grande variedade de sistemas operacionais, incluindo NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris e até mesmo Microsoft Windows, onde é conhecido por Asterisk Win32.<br/><br/><br />
<br />
<b>Características do Asterisk</b><br />
----<br />
O Asterisk é um software, baseado na licença GPL (GNU General Public License), que executa todas as funções de uma central telefônica convencional através das principais tecnologias de comunicação existentes no mercado, como por exemplo: linhas telefônicas analógicas, links de telefonia digital via placas de comunicação TDM (Time-Division Multplexing, ou Multiplexaçã ,o por divisão detempo), VoIP (Voice over IP, ou Voz sobre IP) através dos protocolos SIP, H.323, IAX2, MGCP, Skinny,GoogleTalk, Skype, entre outros.<br />
<br />
Através do Asterisk é possível estabelecer uma chamada entre qualquer um desses protocolos. O Asterisk é o que chamamos de B2B User Agent, ou melhor, Back-to-Back User Agent, ele estabelece uma chamada telefônica, separando cada “perna” da chamada entre origem e destino, e monitora todo o tráfego de áudio entre esses pontos. Por isso, caso esses pontos estejam utilizando CODECs diferentes, o Asterisk consegue transcodificar o áudio sem qualquer problema. Pode-se dizer que o Asterisk possui todas as funcionalidades das chamadas centrais telefônicas convencionais, como URAs, correio de voz, conferência, distribuição automática de chamadas, entre outras, e caso seja necessário, é possível acrescentar novas funcionalidades ao sistema através do próprio plano de discagem do Asterisk, módulos customizados escritos em C, ou ainda através de scripts escritos em Asterisk Gateway Interface (AGI). *Fonte: Construindo um PBX IP na pratica (Alexandre Keller)<br/><br/><br />
<br />
<b>Codecs</b><br />
----<br />
Um dos componentes necessários para transmissão de voz numa rede de dados é o Áudio CODEC (Codificador-Decodificador). Este componente é o responsável por transformar a voz humana (um sinal analógico) em uma seqüência de bits (um sinal digital) para transmissão numa rede de dados, fazendo amostragens periódicas no sinal de voz. Em equipamentos do tipo gateways VoIP, esses CODECs são implementados através de um componente chamado DSP (Digital Signal Processor).<br />
A introdução dos microprocessadores no final dos anos 70 e início dos anos 80 tornou possível usar técnicas de processamento digital de sinais (Digital Signal Processing) em um range muito maior de aplicações.<br />
Durante os anos 80 a importância crescente do processamento digital de sinais levou vários fabricantes importantes (como Texas Instruments, Analog Devices e Motorola) a desenvolverem os chips DSP, ou seja, microprocessadores especializados com arquiteturas projetadas especificamente para os tipos de operações requeridas ao processamento digital de sinais.<br />
Como um microprocessador de uso geral, um DSP é um dispositivo programável, com seu próprio conjunto de instruções nativas. O uso desses chips associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO-CODEC1].<br />
Cada CODEC provê certa qualidade de voz. A medida de qualidade da voz transmitida é uma resposta subjetiva de um ouvinte. Uma medida comum usada para determinar a qualidade do som produzido pelos CODECs específicos é o MOS (Mean Opinion Score). Com o uso do MOS, um amplo range de ouvintes julgam a qualidade de uma amostra de voz (correspondendo a um CODEC particular) numa escala de 1 a 5. A partir desses resultados, é calculada a média dos scores para atribuir o MOS para aquela amostra [CISCO-CODEC2].<br />
Na tabela 1 são apresentados alguns scores MOS para os CODECs mais usados. Na Tabela 2 são descritos os scores MOS.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs2.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:codecs3.jpg]]</div><br/><br />
<br />
<br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 1500 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* sudo apt-get update<br />
* sudo apt-get install build-essential module-assistant dkms<br />
* sudo m-a prepare<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
<br />
===<b>Instalação do Asterisk</b>===<br />
----<br />
Neste semestre iremos trabalhar com o Asterisk versão 13.22.0, o LibPRI 1.6.0, que é uma biblioteca Libpri será instalada para que tenhamos suporte aos canais PRI( ISDN, E1, T1 ), e o DAHDI, que é um pacote (Digium Asterisk Hardware Device Interface) nos permite carregar os drivers e configurar diversos tipos de placas de telefonia (para conectar telefones analógicos, linhas telefônicas, linhas digitais e outros).<br />
Antes de qualquer coisa, devemos atualizar o sistema via console de comando:<br />
<br />
#apt-get update<br />
#apt-get upgrade<br />
<br />
Também devemos instalar algumas dependências:<br />
<br />
# apt-get install -y make wget libssl-dev ncurses-dev libnewt-dev libxml2-dev linux-headers-generic g++ libsqlite3-dev uuid-dev libjansson-dev<br />
# apt-get install -y mysql-server libmysqld-dev<br />
<br />
Para baixar os arquivos do Asterisk, DAHDI e LibPRI, seguem os links abaixo (os comandos para a instalação completa do Asterisk, Libpri, Dahdi e banco de dados serão repassados em aula):<br />
<br />
[http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.22.0.tar.gz Asterisk 13.22.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz LibPRI 1.6.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz DAHDI]<br/><br />
<br />
Campos para o banco de dados:<br />
<br />
[https://docs.google.com/document/d/135vf4dUJhMmG0fVqzFXEYPQ095iBzpBU0O7fZz04hZs/edit?usp=sharing Arquivo banco de dados]<br />
<br />
<br/><br/><br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=18/02/2019: Instalação do Sistema Operacional Ubuntu 16.04.5 e reinstalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
...<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=20/02/2019: Comandos e configurações do Asterisk. Criação de ramais=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<b>Comandos Asterisk</b><br />
<br />
Para iniciarmos a utilização do Asterisk, devemos conhecer alguns comandos que serão utilizados no decorrer da disciplina.<br />
<br />
<br />
<b>Tipo: SIP</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do SIP<br />
<br />
sip set debug on<br/><br />
sip set debug off<br/><br />
<br />
'''sip reload''': Reload No arquivo: sip.conf<br/><br />
'''sip show channels:''' Visualizar canais ativos do Tipo SIP<br/><br />
'''sip show channel''': Detalhar 1 determinado canal ativo SIP<br/><br />
'''sip show inuse''': Listar todos os canais/peer existentes no Asterisk<br/><br />
'''sip show peers''': Visualizar os pares que registraram ou não no Asterisk usando SIP<br/><br />
'''sip show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando SIP)<br/><br />
'''sip show users''': Visualizar Dispositivos SIP, Plano de Discagem e Senha<br/><br />
'''sip show channelstats''': Visualizar estatísticas de buffer e jitter na rede e nas chamadas SIP ativas<br/><br />
<br />
<br />
<b>Tipo: IAX2</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do IAX2:<br/><br />
<br />
iax2 set debug on<br/><br />
iax2 set debug off<br/><br />
<br />
'''iax2 show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
'''iax2 show netstats''': Visualizar estatisticas de buffer e jitter na rede e nas chamadas IAX ativas<br/><br />
'''iax2 show peers''': Visualizar os pares que registraram ou não no Asterisk usando IAX<br/><br />
'''iax2 show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando IAX)<br/><br />
'''iax2 show stats''': Visualizar estatisticas do IAX<br/><br />
'''iax2 show users''': Visualizar Dispositivos IAX, Plano de Discagem e Senha<br/><br />
'''iax show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
<br />
<br />
<b>Tipo: Gerenciamento do Asterisk</b><br/><br />
<br />
<br />
'''restart now''': Restart Asterisk imediatamente<br/><br />
'''restart when convenient''': Aguarda inatividade no Asterisk para restartar o Asterisk em seguida<br/><br />
'''reload''': Reload nas configurações<br/><br />
'''stop now:''' Shut down no Asterisk imediatamente<br/><br />
'''dialplan reload''': Reload nos arquivos de configurações do plano de discagem extensions.conf<br/><br />
'''modules show''': Lista os módulos carregados no sistema<br/><br />
'''core show uptime''': Visualizar o tempo do Asterisk no Ar<br/><br />
'''core show version''': Visualizar informações sobre a versão do Asterisk<br/><br />
<br />
<br />
<b>Tipo: Comandos Gerais</b><br/><br />
<br />
<br />
'''dialplan show''': visualizar informações sobre um contexto<br/><br />
'''core show queues''': visualizar as filas criadas no Asterisk<br/><br />
'''soft hangup''': derrubar uma chamada ativa no Asterisk<br/><br />
'''core show applications''': visualizar informação sobre as aplicações disponíveis<br/><br />
'''core show application''': “Aplicação”: detalhar informação sobre determinada aplicação<br/><br />
<br />
<br />
<br />
<b>Preparar o servidor para liberar portas</b><br />
<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica.<br />
<br />
Script para liberação de portas <syntaxhighlight lang=bash><br />
#!/bin/sh<br />
<br />
### BEGIN INIT INFO<br />
# Provides: firewall.sh<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall.sh at boot time<br />
# Description: Enable service provided by firewall.sh.<br />
### END INIT INFO<br />
<br />
PATH="/bin:/sbin:/usr/bin:/usr/sbin"<br />
<br />
set -e<br />
<br />
echo "Starting firewall..."<br />
<br />
IPT="/sbin/iptables"<br />
<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
</syntaxhighlight><br />
<br />
<br />
<b>Iniciando a configuração dos ramais</b><br />
<br />
<br />
O asterisk possui um diretório onde ficam os arquivos de configuração, ele está localizado em /etc/asterisk.<br />
Para definirmos nossos ramais sip, o arquivo de configuração responsável é o sip.conf.<br />
<br />
<br />
Abaixo segue um exemplo de configuração do arquivo <b>sip.conf</b>:<br />
<br />
<br />
[general]<br/><br />
bindport=5060<br/><br />
bindaddr=0.0.0.0<br/><br />
context=default<br/><br />
disallow=all<br/><br />
allow=ulaw<br/><br />
allow=alaw<br/><br />
allow=gsm<br/><br />
maxexpirey=120<br/><br />
defaultexpirey=80<br/><br />
<br />
<br />
[1000]<br/><br />
type=friend<br/><br />
secret=123<br/><br />
host=dynamic<br/><br />
qualify=yes<br/><br />
<br />
<br />
Onde:<br />
<br />
<br />
'''bindaddr''': Endereço IP onde o Asterisk irá esperar pelas conexões SIP. O comportamento padrão é esperar em todas as interfaces e endereços secundários.<br />
<br />
'''Context''': Configura o contexto padrão onde todos os clientes serão colocados, a menos que seja sobrescrito na definição da entidade.<br />
<br />
'''Allow''': Permite que um determinado codec seja usado.<br />
<br />
'''Disallow''': Proíbe um determinado codec.<br />
<br />
'''Bindport''': Porta que o Asterisk deve esperar por conexões de entrada SIP. O padrão é 5060.<br />
<br />
'''maxexpirey''': Tempo máximo para registro em segundos.<br />
<br />
'''Defaultexpirey''': Tempo padrão para registro em segundos.<br />
<br />
<br />
<br />
'''[name]''': Quando um dispositivo SIP conecta-se ao Asterisk, ele utiliza a parte username do SIP URI para encontrar o peer/user.<br />
<br />
'''Type''': Configura a classe de conexão, as opções são peer, user e friend.<br />
<br />
'''Peer''': Entidade para a qual o Asterisk envia chamadas.<br />
<br />
'''User''': Entidade que faz chamadas através do Asterisk.<br />
<br />
'''Friend''': Os dois ao mesmo tempo.<br />
<br />
'''Host''': Configura o endereço IP ou o nome do host. Pode-se usar também a opção ‘dynamic’ onde se espera que o host faça o registro, é a opção mais comum.<br />
<br />
'''Secret''': Senha usada para autenticar o peer ou user fazendo uma chamada.<br />
<br />
'''Qualify''': caso esteja yes, o asterisk enviará um comando regularmente para verificar se o dispositivo ainda está online.<br />
<br />
<br />
<br />
<b>Plano de discagem</b><br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
<br />
Para criar um plano de discagem, deve-se editar o arquivo responsável, o extensions.conf. Este arquivo está localizado em /etc/asterisk. Uma parte importante neste arquivo é o contexto <b>general</b>:<br />
<br />
[general]<br/><br />
static=yes<br/><br />
writeprotect=no<br/><br />
autofallthrough=yes<br/><br />
clearglobalvars=no<br/><br />
priorityjumping=no<br/><br />
<br />
<br />
<br />
'''static e writeprotect''' – permite salvar o plano de discagem a partir da linha de comando.<br/><br />
'''Autofallthrough''' – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br/><br />
'''Clearglobalvars''' – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br/><br />
'''Priorityjumping''' – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br/><br />
<br />
Também devemos criar um contexto que já foi pré definido no ramal criado. No nosso caso se chamará <b>default</b>:<br />
<br />
<br />
[default]<br/><br />
exten = 1000,1,Dial(SIP/1000,30)<br/><br />
exten = 1000,2,Hangup()<br/><br />
<br />
<br />
Neste caso usamos duas aplicações, <b>Dial</b> e <b>Hangup</b>, responsáveis por discar e encerrar uma chamada, respectivamente.<br />
<br />
As aplicações mais comuns no Asterisk são:<br />
<br />
<br />
'''Answer''' – Atende uma chamada<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mas salva a posição de retorno<br/><br />
'''NooP''' – imprime na cli do asterisk o termo<br/><br />
<br />
<br />
<b>Exercício</b><br />
<br />
<br />
Crie 6 ramais (1000, 1001, 1002, 1003, 1004, 1005).<br />
<br />
Crie também um plano de discagem que permita a ligação entre todos os ramais.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=25/02/2019: Plano de discagem e máscaras=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
===Plano de discagem===<br />
<br />
O plano de discagem define como o Asterisk irá gerenciar as chamadas. Ele consiste de uma lista de instruções ou passos que o Asterisk deveria seguir. Essas instruções são disparadas a partir dos dígitos recebidos de um canal ou aplicação.<br />
O extensions.conf pode ser separado em quatro partes:<br />
<br />
* Contextos;<br />
* Extensões;<br />
* Prioridades;<br />
* Aplicações.<br />
<br />
<br />
====Contextos====<br />
<br />
Os contextos definem o escopo e permitem separar diferentes partes do plano de discagem, recebem o seu nome dentro de chaves ([]).<br />
No início do arquivo extensions.conf existe um contexto chamado [globals] onde as variáveis globais são definidas e podem ser usadas por todo o plano de discagem. E o contexto [general] que é utilizado para definir alguns parâmetros gerais.<br />
Os contextos estão ligados diretamente aos canais. Quando uma ligação entra no Asterisk por um canal ela é processada dentro do contexto deste canal.<br />
Ex:<br />
<br />
[gerentes]<br/><br />
exten=>9000,1,Playback(gerente)<br />
<br />
[visitantes]<br/><br />
exten=>9000,1,Playback(visitante)<br />
<br />
<br />
====Extensões====<br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
Exemplo:<br />
<br />
exten => 9001,1,Dial(SIP/9001,20) ; Extensão 9001, prioridade 1, disca para o ramal 9001 pelo protocolo SIP, tempo de resposta em segundos.<br/><br />
Exten => 9001,2,Hangup() ; Extensão 9001, prioridade 2, efetua o desligamento.<br />
<br />
Dentro de uma extensão, podemos ter as chamadas variáveis de canal, como abaixo:<br />
<br />
exten =>2001,2,DIAL(SIP/${RAMAL})<br />
<br />
Neste exemplo acima, criamos a variável “RAMAL” em tempo de execução, ou seja, na criação do Canal, ou da chamada.<br />
As variáveis de canais são as mais utilizadas normalmente, para trazer informação dos canais normalmente, como nome do canal , nome do contexto, extensão, etc. Vejamos abaixo algumas das variáveis mais usadas:<br />
<br />
${CALLERID} Identificador da chamada (nome ou número)<br/><br />
${CALLERIDNAME} O nome do id. Da chamada<br/><br />
${CALLERIDNUM} O número do id. Da chamada.<br/><br />
${CHANNEL} Nome do Canal atual ou corrente.<br/><br />
${CONTEXT} Nome do Contexto atual ou corrente.<br/><br />
${DATATIME} Data e hora no formato o YYYY-MM-DD_HH:MM:SS.<br/><br />
${DIALPEERNUMBER} Número de que foi chamada.<br/><br />
${DIALSTATUS} Status da Chamada.<br/><br />
${EXTEN} Extensão da chamada atual ou corrente.<br/><br />
${HANGUPCAUSE} Causa do término da chamada<br/><br />
${LANGUAGE} A Linguagem Atual.<br/><br />
${PRIORITY} Prioridade Atual<br/><br />
<br />
<br />
exemplo:<br />
<br />
exten => _20XX,1,Dial(SIP/${EXTEN})<br />
<br />
<br />
Neste exemplo podemos ver o uso de máscara e da variável do Asterisk EXTEN. Esse é justamente o exemplo que havia falado acima, para evitar o a criação de uma infinidades de canais. Quando um ramal começando com 20 e mais dois números for solicitado, irá chamar a aplicação DIAL para discar para o ramal ( SIP/${EXTEN}), onde esta variável trará o próprio numero discado. Assim precisamos apenas de uma entrada para todos os ramais do tipo 20XX.<br />
<br />
<br />
====Aplicações básicas do Asterisk====<br />
<br />
'''Answer''' – Atende uma chamada.<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução.<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados.<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mais salva a posição de retorno.<br/><br />
'''NooP''' – imprime na cli do asterisk o termo.<br/><br />
<br />
Para verificar as aplicações no asterisk, basta digitar n cli do mesmo o seguinte comando:<br />
<br />
# ubuntu-server*cli> core show applications<br />
<br />
Caso queira uma explicação detalhada de uma aplicação, utilize o comando:<br />
<br />
# ubuntu-server*cli> core show application nome_da_aplicacao<br />
<br />
Onde o termo nome_da_aplicacao corresponde a aplicação a qual queremos os detalhes.<br />
<br />
<br />
Formato das extensões<br />
<br />
8000 – numérica<br/><br />
Alexander – alfanumérica<br/><br />
4321/1234 – Numérica com callerID<br/><br />
_4XXX – Usando máscaras<br/><br />
s – padrões pré definidos<br/><br />
<br />
Máscaras<br />
<br />
_ - início de uma máscaras<br/><br />
. - aceita n caracteres subsequentes<br/><br />
[13-9] – qualquer dígito dentro dos colchetes (1, de 3 até 9), mas apenas um deles<br/><br />
X – qualquer dígito entre 0 e 9<br/><br />
Z – qualquer dígito entre 1 e 9<br/><br />
N – qualquer dígito entre 2 e 9<br/><br />
<br />
Prioridades<br />
<br />
Prioridades são passos numerados na execução de cada extensão. Cada prioridade chama uma aplicação especifica. Se os números das prioridades não forem sequenciais o Asterisk aborta a execução. A partir da versão 1.2 do Asterisk, tornou-se comum o uso da prioridade “n”, no lugar da associação manual de números, assim como a possibilidade da utilização de labels e aliases.<br />
<br />
<br />
'''Exercícios'''<br />
<br />
<br />
# Deve-se criar extensões para ramais com 4 dígitos, permitindo que iniciem com 2 ou 3 e tenham sua numeração entre 2000 e 2499, e também entre 3000 e 3499;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando em 6 ou 7 e que tenham sua numeração entre 6500 e 6599, e também entre 7500 e 7599;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando com 9 e que tenham numeração entre 9600 a 9700;<br/><br />
# Criar extensões para celulares com 9 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para celulares com 9 dígitos, sem operadora;<br/><br />
# Criar extensões para telefones fixos com 8 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para telefones fixos com 8 dígitos, sem operadora.<br/><br />
<br />
<br />
'''Observações:'''<br />
<br />
* Os celulares iniciam com o dígito 9 e telefones fixos com 2 ou 3.<br />
<br />
* Em cada extensão usar uma aplicação para escrever na CLI do Asterisk qual a ligação está sendo efetuada, o número e o nome dado ao ramal. Ex: Esta ligação está sendo efetuada de celular sem operadora de longa distância.<br />
<br />
<br />
<br />
Leituras que podem ser úteis:<br />
<br />
[http://stato.blog.br/wordpress/asterisk-parte-3-variaveis-macros-e-mascaras/ Variáveis, Macros e Máscaras]<br />
<br />
[https://www.vivaolinux.com.br/etc/extensions.conf-caue.garcia/ Extensions.conf]<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=27/02/2019: Plano de discagem e máscaras - continuação=<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=06/03/2019: Liberação de portas, Aplicações e instalação de áudio em português=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
===Liberação de portas===<br />
<br />
Preparando o servidor para liberação de portas para autenticação dos ramais e efetuar chamadas, caso necessário<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica. Para isso iremos criar um script de firewall no diretório /etc/init.d/ com o nome de firewall.<br />
Neste arquivo colocaremos o seguinte conteúdo:<br />
<br />
#!/bin/sh<br />
### BEGIN INIT INFO<br />
# Provides: firewall<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall at boot time<br />
# Description: Enable service provided by firewall.<br />
### END INIT INFO<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
===Aplicações===<br />
<br />
As aplicações são partes fundamentais do Asterisk, elas tratam o canal de voz, tocando sons, aceitando dígitos ou encerrando uma chamada. As aplicações são chamadas com opções que afetam a sua forma de funcionamento.<br />
<br />
Agora testaremos este ramal, iremos criar uma aplicação onde discaremos *65 no ramal registrado e o asterisk nos dirá qual é o ramal que está em uso.<br />
<br />
Para isso, vamos editar o arquivo responsável pelos planos de discagem, o extensions.conf. Este arquivo está localizado em /etc/asterisk.<br />
<br />
Criaremos um contexto chamado app:<br />
<br />
<br />
'''[app]'''<br/><br />
'''exten =>*65,1,Goto(function-speakextnum,s,1)'''<br />
<br />
<br />
Ao discarmos *65, este contexto encaminhará, através da função Goto (enviar para), para outro contexto, chamado function-speakextnum:<br />
<br />
<br />
'''[function-speakextnum]'''<br/><br />
'''exten => s,1,Set(Description="Identifica ramal")'''<br/><br />
'''exten => s,2,Answer()'''<br/><br />
'''exten => s,3,Wait(2)'''<br/><br />
'''exten => s,4,Playback(telephone-number&is)'''<br/><br />
'''exten => s,5,SayDigits(${CALLERID(num)})'''<br/><br />
'''exten => s,6,Wait(2)'''<br/><br />
'''exten => s,7,Hangup()'''<br/><br />
<br />
<br />
Basicamente, este contexto terá uma descrição, utilizará os sons previamente criados no asterisk para nos dizer qual o ramal em uso e após 2 segundos desligar.<br />
<br />
Agora necessitamos incluir a aplicação no contexto definido no arquivo sip.conf. Devemos recordar que este contexto se chama default:<br />
<br />
<br />
'''[default]'''<br/><br />
'''include => app'''<br />
<br />
<br />
Pudemos identificar que a linguagem utilizada é o inglês. O que iremos fazer é instalar o idioma português.<br />
<br />
Para isso, devemos efetuar o download do arquivo de áudio em português, neste link:<br />
<br />
Baixe os arquivos de som:<br />
<br />
# wget -O core.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-core-pt-BR-sln16.zip<br />
# wget -O extra.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-extra-pt-BR-sln16.zip<br />
<br />
<br />
Arquivo Convert deve conter os comandos abaixo:<br />
#!/bin/bash<br />
for a in $(find . -name '*.sln16'); do<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\<br />
done<br />
<br />
===Avaliação===<br />
<br />
<br />
Deve ser entregue o relatório parcial, via Sigaa, com todo o conteúdo visto até o momento. Serão avaliados os seguintes itens:<br />
<br />
# Conteúdo;<br />
# Organização;<br />
# Metodologia (formatação do conteúdo de acordo com o que foi passado em aula).<br />
<br />
O relatório deve ser entregue até as 23:59 de 10/03/2019, em formato '''PDF''' (não serão considerados outros formatos).<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=11/03/2019: Utilização de Macros. Planos de discagem em arquivos externos=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
===Macros===<br />
<br />
Macros são sub-rotinas que são usadas mais de uma vez dentro do plano de discagem, evitando à reedificação de dados. Facilitando operações, organização, onde os códigos podem ser reutilizados.<br />
<br />
Formato: <br />
<br />
Macro(Nome da macro, Arg1, Arg2)<br />
<br />
Onde temos:<br />
<br />
Macro: A chamada para criação da Macro.<br />
Nome da macro: O nome da macro que está sendo criada, e será referenciado posteriormente.<br />
Arg(n): Argumentos que serão passados para macro.<br />
<br />
Vejamos um exemplo de macro sendo utilizado. Iremos criar uma macro chamada atendimento, onde irá atender a ligação, mostrar na tela o número originador, o nome do ramal, irá executar um playback chamada hello-world e em seguida vai gerar na tela a mensagem Áudio executado com sucesso. Após efetuar os argumentos, a macro retorna para o contexto de origem e continua executando os demais comandos (Também podemos incluir a aplicação [http://www.asteriskguru.com/tutorials/dumpchan.html DumpChan], que nos trará informações complementares relacionadas aos ramais e a chamada efetuada).<br />
<br />
'''Exercício'''<br />
<br />
Crie um plano de discagem para o número 12345 onde a extensão deverá chamar uma macro com o nome ''ramal555''. Esta macro deverá efetuar uma chamada para o ramal 555 que deverá estar configurado em um softphone.<br />
<br />
===Criando planos de discagem em arquivos externos===<br />
<br />
o asterisk utiliza o arquivo extensions.conf para que possamos efetuar nossos planos de discagem, mas existe uma forma de criar estes planos em arquivos diferentes. Para isso, devemos criar um arquivo com o nome desejado e salvar com a extensão .conf, no diretório /etc/asterisk. <br />
<br />
Mas como vinculamos o arquivo criado no plano de discagem existente no extensions.conf? <br />
<br />
Através da aplicação #include.<br />
<br />
Para exemplificar, criaremos um arquivo chamado rota_123.conf<br />
<br />
<br />
'''Exercício'''<br />
<br />
Efetue um plano de discagem para o ramal 999 utilizando um arquivo externo chamado ramal999.conf. Este arquivo externo deverá chamar uma macro que irá ligar para o ramal 555.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=13/03/2019: Habilitando gravação de chamadas=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
<br />
===Verificando o banco de dados e criando a macro Record===<br />
<br />
Como vimos até agora, já possuímos ramais e planos de discagem entre ramais, mas não temos uma forma de ouvir novamente o que foi dito nestas ligações. Esse é um ponto importante para várias empresas e instituições. Por enquanto o Asterisk está gerando relatórios em nossa tabela cdr, mas não está gerando arquivos .wav das ligações. Para começarmos a gravar as ligações iremos criar uma macro e utilizar a aplicação [https://wiki.asterisk.org/wiki/display/AST/Asterisk+11+Application_MixMonitor Mixmonitor]. O MixMonitor é uma aplicação nativa do Asterisk utilizada para fazer a gravação das chamadas telefônicas e mixar os arquivos de áudio em tempo real. Vamos verificar no nosso banco o campo monitor e ter certeza que não está sendo gravado:<br />
<br />
# mysql cdr -u cdr_user -p<br />
<br />
Onde:<br />
cdr -> Banco<br />
cdr_user -> Usuario para conectar no Banco<br />
<br />
Para verificarmos os registros, usamos o seguinte comando:<br />
<br />
mysql> select * from cdr\G;<br />
<br />
Teremos uma saída parecida com esta:<br />
<br />
<div style="text-align: center;">[[Arquivo:bancorecord.jpg]]</div><br/><br />
<br />
Caso o banco de dados apresente campos em branco, basta efetuar o carregamento do módulo cdr_mysql.so através dos dois comandos abaixo:<br />
<br />
ubuntu-server*cli> module unload cdr_mysql.so<br />
<br />
ubuntu-server*cli> module load cdr_mysql.so<br />
<br />
Como podemos verificar, o campo monitor está vazio, indicando que não existe arquivo de gravação.<br />
Devemos editar o arquivo extensions.conf e criar a macro record, e além disso devemos chamar a macro antes da ligação ser atendida para que efetivamente aconteça a gravação.<br />
<br />
<div style="text-align: center;">[[Arquivo:extensionconfrecord.jpg]]</div><br/><br />
<br />
[macro-record]<br />
exten => s,1,NoOP(${CALLERID(num)})<br />
exten => s,n,Set(ARG1=${CALLERID(num)})<br />
exten => s,n,Set(CALLFILENAME=CHANNEL-${ARG1}-${STRFTIME(${EPOCH},,%Y%m%d-%H%M%S)}-${UNIQUEID})<br />
exten => s,n,Set(TIME=${STRFTIME(${EPOCH},,%Y%m%d)})<br />
exten => s,n,MixMonitor(/var/spool/asterisk/monitor/${TIME}/${CALLFILENAME}${TRANSFER}.wav49,${BRIDGE}a)<br />
exten => s,n,Set(AUDIOHOOK_INHERIT(MixMonitor)=yes)<br />
exten => s,n,Set(CDR(monitor)=${CALLFILENAME}${TRANSFER}.WAV)<br />
<br />
<br />
O diretório padrão no asterisk para salvar as gravações é /var/spool/asterisk/monitor/, e nele é criado automaticamente diretórios com as datas para armazenar os arquivos.<br />
<br />
===Exercício 1===<br />
<br />
# Crie um arquivo chamado ramaisinternos.conf no diretório /etc/asterisk e neste arquivo efetue plano de discagem para os ramais 5000 a 6999, efetuando a gravação das chamadas.<br />
# Crie um plano de discagem para o número 1001 onde a extensão deverá chamar uma macro com o nome telefonista. Esta macro deverá efetuar uma chamada para o ramal 1000 que deverá estar configurado em um softphone. Este plano de discagem deve ter a gravação de chamadas ativado.<br />
<br />
<br />
<br />
===Exercício 2===<br />
<br />
<br />
Você como administrador do setor de telefonia da empresa deverá fazer com que alguns ramais não tenham suas ligações gravadas. Estes ramais serão do 3000 à 3019(gravação desabilitada).<br />
<br />
Os ramais do 3020 ao 3100 terão suas gravações habilitadas.<br />
<br />
Como você faria isso de forma que não polua o seu arquivo extensions.conf?<br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=20/03/2019: Criando uma URA=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
<br />
===O conceito de URA===<br />
<br />
<br />
Idealizada e desenvolvida no início da década de 1980, a URA (Unidade de Resposta Audível) é uma interface eletrônica à qual direciona o cliente a um script de atendimento pré-configurado, com base nos setores e/ou assuntos atendidos pela empresa.<br />
<br />
O sistema funciona como um menu digital: quem liga tem à sua disposição uma série de opções (por exemplo: “falar com suporte”, “falar com o comercial”). Ao selecionar a opção a pessoa é transferida – tanto para outra gama de opções quanto para um operador referente a opção escolhida pelo usuário.<br />
<br />
Esse tipo de serviço otimiza a filtragem das ligações, a fim de agilizar o atendimento e facilitar o contato com o cliente. Atualmente, milhares de empresas adotaram a solução, dentre elas call centers de bancos, escolas, hotéis e muitas outras.<br />
<br />
Normalmente contrata-se empresas especializadas em gravação de áudio para URAs, mas iremos utilizar um método mais caseiro.<br />
<br />
<br />
===Instalando programas para efetuar a gravação da URA===<br />
<br />
<br />
Para termos um áudio com opções para a nossa URA, devemos instalar um programa para captura de áudio chamado Audio Recorder. Devemos inicialmente adicionar o repositório onde o aplicativo se encontra, através do comando abaixo:<br />
<br />
# sudo add-apt-repository ppa:audio-recorder/ppa<br />
<br />
Então atualizamos a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalamos o aplicativo:<br />
<br />
# sudo apt-get install audio-recorder<br />
<br />
Após efetuada a instalação, podemos abrir o programa e alterar a opção formato para .WAV (lossless wav 44khz):<br />
<br />
<div style="text-align: center;">[[Arquivo:audiorecorder.jpg]]</div><br/><br />
<br />
<br />
===Criando arquivo de áudio para a URA===<br />
<br />
Para transformarmos texto em voz, podemos utilizar o Google tradutor, escrever o texto que queremos e ouvir a pronúncia enquanto o Audio Recorder efetua a gravação. O áudio gerado será armazenado no diretório /home/usuário/Audio, onde o usuário é o nome do usuário utilizado no login do computador. O arquivo gerado terá o formato %Y-%m-%d-%H:%M:%S, como mostrado abaixo:<br />
<br />
<div style="text-align: center;">[[Arquivo:listaaudio.jpg]]</div><br/><br />
<br />
Mas este áudio ainda não pode ser executado no asterisk, pois está com taxa de amostragem de 44100 hz, devemos alterar para 8000 hz. Para isso iremos usar um programa chamado Sox. Sua instalação se dá pelo comando:<br />
<br />
# apt-get install sox libsox-fmt-all<br />
<br />
o arquivo original deve ser convertido através do comando:<br />
<br />
# sox 2018-01-27-10:40:59.wav -r 8000 -c1 ura.wav<br />
<br />
Por fim, devemos movê-lo para o diretório /var/lib/asterisk/sounds/pt_BR:<br />
<br />
# mv ura.wav /var/lib/asterisk/sounds/pt-br<br />
<br />
===Configurando a URA===<br />
<br />
Neste momento estaremos prontos para iniciar a criação da URA. Iremos até o diretório /etc/asterisk/ e criaremos o arquivo ura.conf, no qual iremos inserir os comandos necessários para a sua criação:<br />
<br />
<div style="text-align: center;">[[Arquivo:ura.jpg]]</div><br/><br />
<br />
Ao ligarmos para o ramal 9000, caímos na URA, onde é feito o desvio para o contexto ura, extensão s e prioridade 1.<br />
<br />
Já na ura, o primeiro item é o TIMEOUT, relacionado ao tempo. Nesse primeiro caso, ela limita o tempo que o usuário tem para digitar a extensão, se em 10 segundo ele não digitar, automaticamente vai ser encaminhado para extensão t, onde será tocado o arquivo vm-goodbye.<br />
<br />
No segundo item TIMEOUT(digit) , especificamos o tempo máximo entre um dígito e outro. Obviamente em nosso caso não há necessidade, pois as extensões têm apenas um digito, mas caso houvesse mais, seria o tempo padrão de 2 segundos.<br />
<br />
A ura ira atender em Answer, e em seguida iniciará tocar o que está especificado em Background, que é justamente o menu gravado anteriormente.<br />
<br />
A opção WaitExten tem por finalidade aguardar a digitação referente ao ramal que deve ser chamado, durante o tempo especificado.<br />
<br />
Extensões 1 e 2 encaminham a ligação para seus respectivos ramais.<br />
<br />
A extensão “i”, é utilizado quando é digitado um ramal inexistente, neste caso será utilizada o arquivo invalid para tocar, para informar ao usuário que o ramal é invalido, em seguida é novamente utilizado o Goto para desviar a ligação para o começo da ura, no label repete.<br />
<br />
E por fim a extensão “t”, utilizado com os primeiros itens de TIMEOUT, desliga a chamada.<br />
<br />
Devemos alterar o arquivo extensions.conf, incluído o contexto ura e adicionando um plano de discagem para o número fictício 9000, simulando nosso número principal:<br />
<br />
<div style="text-align: center;">[[Arquivo:gotoura.jpg]]</div><br/><br />
<br />
Devemos também alterar o parâmetro autofallthrough para no, o que permite o uso de tempo, com TIMEOUT, para digitação dos dígitos na URA.<br />
<br />
Outro ponto importante é incluir no arquivo sip.conf a linha dtmfmode=rfc2833, que é o padrão mais comum na digitação da maioria dos telefones.<br />
<br />
Devemos ficar atentos na seguinte situação: enviamos a ligação diretamente para o ramal, através do comando exten = 1,1,Dial(SIP/1000) sem passar por um contexto, fazendo com que a ligação não tivesse gravação:<br />
<br />
<div style="text-align: center;">[[Arquivo:gravacao.jpg]]</div><br/><br />
<br />
Para resolver este problema, vamos substituir a aplicação Dial pela aplicação GoTo, enviando para o contexto default no ramal desejado e sua prioridade, o que fará passar a gravar a ligação. Neste caso podemos dispensar a aplicação HangUp, pois a aplicação GoTo, não retorna para o contexto de origem:<br />
<br />
<div style="text-align: center;">[[Arquivo:gotoramal.jpg]]</div><br/><br />
<br />
<br />
===Exercício===<br />
<br />
<br />
# Crie uma URA com os seguintes ramais:<br />
<br />
* Suporte Técnico: Este ramal deverá direcionar para uma ramal de Suporte técnico em Hardware e outro ramal de Suporte técnico em software;<br />
* Comercial;<br />
* Vendas: Deverá existir uma ramal para vendas de equipamentos e um ramal para vendas de serviços e softwares;<br />
* Administrativo.<br />
* Caso a pessoa não digite nada, a chamada deverá ser direcionada para a telefonista.<br />
<br />
Deverá existir um áudio para orientar a pessoa que estiver ligando para o número que contém a URA e as subURAs.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=25/03/2019: Criando uma URA - Continuação=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=27/03/2019: Criando uma URA - Continuação=<br />
<br />
{{Collapse top | Aula 12}}<br />
<font size="3"><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=01/04/2019: Avaliação=<br />
<br />
{{Collapse top | Aula 13}}<br />
<font size="3"><br />
<br />
#Efetue um backup do seu arquivo '''sip.conf''' e '''extensions.conf''' (cria um diretório em '''/root''' com o nome de '''backup''' e copie os arquivos para este diretório), crie um novo arquivo sem nenhum informação para desenvolver a avaliação.<br />
#Crie uma faixa de ramais de 1000 a 1010.<br />
#Crie um plano de discagem onde todos esses ramais possam se comunicar.<br />
#Você como administrador do setor de telefonia da empresa deverá fazer com que alguns ramais não tenham suas ligações gravadas. Estes ramais serão do 1000 à 1005(gravação desabilitada). Os ramais do 1006 ao 1010 terão suas gravações habilitadas. <br />
#Crie uma URA com os seguintes ramais: Suporte Técnico(ramal 1006), Comercial(ramal 1007), Vendas(ramal 1008), e Administrativo(ramal 1010). Caso a pessoa não digite nada, a chamada deverá ser direcionada para a telefonista (ramal 1000). Deverá existir um áudio para orientar a pessoa que estiver ligando para o número que contém a URA.<br />
<br />
<br />
Ao finalizar a avaliação, compacte todos os arquivos utilizados(sip.conf, extensions.conf, arquivos de áudios utilizados na URA e demais arquivos que venha a utilizar) para desenvolver a avaliação. Após a compactação, envie este arquivo via sigaa. '''A tarefa ficará aberta até o dia 03/04/2019 as 22h'''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=156009PJI2-2019-12019-03-26T19:23:43Z<p>Ederson.luiz: /* Obtenção automática de software */</p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Usuário:juliana.camilo|Juliana Camilo]] ([mailto:juliana.camilo@ifsc.edu.br juliana.camilo@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=14/03/2019: Usuários e grupos e permissões - Exercício adicional=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
=== Atividade (não é necessário adicionar esta atividade ao relatório)===<br />
<br />
Considere o cenário abaixo relativo a grupos e usuários:<br />
<br />
[[imagem:usuariosgrupos.png]]<br />
<br />
* Crie um diretório em /home para cada grupo, com o nome grupo-arquivos (exemplo, o grupo lab1 terá um diretório chamado lab1-arquivos).<br />
<br />
* Dentro destes diretórios dos grupos, cada usuário deverá possuir um diretório com o seu nome.<br />
<br />
* O shell utilizado será o /bin/bash.<br />
<br />
* Defina a senha de cada usuário.<br />
<br />
* Exibir o arquivo que contém os usuários do sistema.<br />
<br />
* Exibir o arquivo que contém os grupos do sistema<br />
<br />
* Exibir o arquivo que contém as senhas criptografadas dos usuários do sistema.<br />
<br />
* Mudar o nome de login do usuário ana para anaclara<br />
<br />
* Mudar o nome do grupo alunos para usuarios<br />
<br />
* Inclua no grupo usuarios, os usuários luiz e marta.<br />
<br />
* Apague o grupo usuarios.<br />
<br />
* Apague os grupos lab1, lab2.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://ivanix.wordpress.com/2009/01/25/arquivos-de-usuarios-grupos-e-senhas/ Arquivos de usuários, grupos e senhas]<br />
<br />
[https://alexandrebbarbosa.wordpress.com/2014/05/26/criando-usuario-e-grupos-no-linux/ Administrando usuários e grupos no Linux]<br />
<br />
[http://pajeonline.blogspot.com.br/2010/12/como-listar-os-usuarios-e-grupos.html Como Listar os Usuários e Grupos Existentes no Linux?]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=21/03/2019: Instalação de Sistema Operacional=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 2048 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* '''sudo apt-get update'''<br />
* '''sudo apt-get install build-essential module-assistant dkms'''<br />
* '''sudo m-a prepare'''<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
===Exercícios===<br />
<br />
Neste exercício iremos efetuar a instalação de um sistema operacional diferente. Iremos instalar o Linux Mint.<br />
A configuração da máquina virtual deve ser a seguinte:<br />
<br />
* 3072 MB de Ram;<br />
* 20 GB de espaço em disco;<br />
* 2 processadores;<br />
* 64 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<br />
No decorrer da instalação deve ser efetuada a documentação com a explicação e imagens de cada etapa do processo, desde a criação da máquina virtual até a finalização da instalação.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=26/03/2019: Linha de comando: Instalação de softwares=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
=== Instalação de software ===<br />
<br />
A instalação de software pode ser feita de diferentes maneiras:<br />
* ''A partir do software em formato de código-fonte:'' envolve transferir o código-fonte do seu repositório, e então compilá-lo. Isso requer um maior conhecimento técnico, e é uma habilidade esperada para um Técnico que atue na área de Telecomunicações. <br />
* ''A partir do software já preparado (compilado):'' essa forma é mais simples, pois basicamente implica obter o software compilado e copiá-lo para dentro do seu sistema. É também a prática mais comum, por ser mais rápida, fácil e menos trabalhosa. Todas as distribuições Linux (e também o FreeBSD, entre outras variantes de Unix) provêem alguma forma de instalar softwares dessa maneira. Esses sistemas criam o conceito de '''pacote de software''', que é um arquivo especial contendo todos os arquivos do software a ser instalado, e todas as informações necessárias para que a instalação tenha sucesso (versão, dependências, e outras). <br />
<br />
No escopo desta disciplina de Projeto Integrador, são usados '''pacotes de software'''. Mas nada impede que se demonstre como seria realizar uma instalação a partir do código-fonte, caso exista a curiosidade.<br />
<br />
No Ubuntu Linux (e também nas distribuições originadas no Debian), o sistema de pacotes de software se chama ''dpkg'' (Debian Package). Existem diferentes formas de instalar e remover sofware, dentre elas:<br />
# '''Diretamente a partir dos arquivos de pacote de software:''' esses arquivos têm extensão ''.deb'', e devem ser instalados por meio do programa [http://manpages.ubuntu.com/manpages/trusty/man1/dpkg.1.html dpkg]. Os arquivos ''.deb'' devem ser obtidos manualmente pelo usuário, podendo ser copiados de DVDs do sistema, ou obtidos de servidores na rede. Para removê-los, deve-se usar também o ''dpkg''.<br />
# '''Obtendo automaticamente pacotes de software de repositórios:''' essa forma de administrar os pacotes é muito mais fácil, pois os pacotes de software são obtidos de servidores de pacotes na rede. Ela se baseia num sistema de gerenciamento de pacotes chamado de APT, e pode ser realizada por meio dos aplicativos [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get] ou [http://manpages.ubuntu.com/manpages/precise/en/man8/aptitude.8.html aptitude] (este é ainda mais fácil). Existem também versões gráficas para esses gerenciadores de pacotes.<br />
<br />
<br />
=== Instalação manual com ''dpkg'' ===<br />
<br />
Para instalar pacotes de software manualmente, primeiro devem-se obter os respectivos arquivos de instalação. Cada pacote de software está contido em um arquivo com extensão ''.deb''. Esses arquivos podem ser obtidos dos CD e DVD de instalação, ou de repositórios na Internet. Exemplos:<br />
* [http://ubuntu.c3sl.ufpr.br/ubuntu/ um repositório do Ubuntu no Brasil]<br />
* [http://archive.raspbian.org/raspbian/ Repositório para o Raspbian (Debian para o RaspberryPi)]<br />
<br />
<br />
Cada arquivo de instalação deve ser instalado da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -i nome_do_pacote.deb<br />
</syntaxhighlight><br />
<br />
Se o pacote de software não puder ser instalado, uma mensagem de erro é apresentada. Uma causa para esse problema é existirem dependências em relação a outros pacotes de software, os quais devem então ser instalados previamente.<br />
<br />
Para descobrir as dependência de um pacote podemos utilizar o comando a seguir:<br />
<br />
# sudo apt-cache depends nome-do-pacote<br />
<br />
A remoção de um pacote de software pode ser feita assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -r nome_do_pacote<br />
</syntaxhighlight><br />
<br />
Se o pacote a ser removido for dependência para outros pacotes instalados, a remoção será abortada.<br />
<br />
<br />
A listagem de todos os pacotes instalados pode ser obtida com este comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -l<br />
</syntaxhighlight><br />
<br />
A listagem dos arquivos instalados por um pacote é mostrada com este outro comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -L nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Informações detalhadas sobre um pacote podem ser mostradas assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -p nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://sourceforge.net/projects/nevernote/files/NixNote2%20-%202.0.2/ Pacote deb NixNote]<br />
<br />
[https://sourceforge.net/projects/openofficeorg.mirror/files/4.1.5/binaries/pt-BR/Apache_OpenOffice_4.1.5_Linux_x86-64_install-deb_pt-BR.tar.gz/download Pacote deb Open Office]<br />
<br />
[https://deb.opera.com/opera/pool/non-free/o/opera-stable/ Pacote deb do navegador Opera]<br />
<br />
=== Obtenção automática de software ===<br />
<br />
Os pacotes de softwares dos sistemas operacionais Ubuntu e Debian são organizados e disponibilizados em repositórios, que são servidores na Internet onde há cópias dos arquivos de instalação desses pacotes. Os repositórios são configurados durante a própria instalação do sistema, ficando registrados no arquivo [http://manpages.ubuntu.com/manpages/trusty/man5/sources.list.5.html /etc/apt/sources.list]. Esse arquivo pode ser modificado para incluir ou remover repositórios, quando necessário.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get]:<br />
* '''apt-get update''': atualiza o catálogo de pacotes de software conhecidos. Isso implica consultar os repositórios configurados e transferir as listas de pacotes lá existentes. Isso é importante para ter acesso a versões atualizadas dos pacotes de software.<br />
* '''apt-get install nome_do_pacote''': instala o pacote de software chamado ''nome_do_pacote''. Se houver dependências de outros pacotes, eles também serão instalados.<br />
* '''apt-get remove nome_do_pacote''': remove o pacote de software chamado ''nome_do_pacote''. se outros pacotes dependerem desse pacote, eles também serão removidos.<br />
* '''apt-get clean''': remove as cópias dos arquivos de pacotes de software transferidos e não mais necessários.<br />
* '''apt-get upgrade''': atualiza todos os pacotes de software para suas versões mais recentes, caso existam.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/aptitude.8.html aptitude]:<br />
* '''aptitude update''': mesmo que ''apt-get update''<br />
* '''aptitude install nome_do_pacote''': mesmo que ''apt-get install''<br />
* '''aptitude remove nome_do_pacote''': mesmo que ''apt-get remove''<br />
* '''aptitude search nome''': lista todos os pacotes de software conhecidos cujos nomes contenham ''nome''<br />
<br />
Links úteis:<br />
<br />
<br />
[https://repogen.simplylinux.ch/ Gerador de lista de repositórios sources.list]<br />
<br />
===Utilizando repositório PPA (Personal Package Archives)===<br />
<br />
PPA quer dizer Personal Package Archives, os repositórios deste tipo nada mais são do quer servidores na internet onde se encontram os programas que não estão nos repositórios oficias da sua distro.<br />
Mas essa é uma generalização porque alguns programas que estão na Central de Programas possuem PPA, caso do WINE por exemplo, a diferença entre instalar a versão da Central de Programas e instalar via PPA é que a versão que está na Central de Programas e suas possíveis atualizações já foram testadas e apresentam um nível bom de segurança e estabilidade, porém, não trazem os mesmos recursos muitas vezes, das versões mais recentes, coisa que o PPA trás.<br />
<br />
Mas antes de adicionar PPAs no seu sistema, procure informações referentes aos desenvolvedores, procedência, etc, pois se trata de programas de terceiros, não oficiais da lista de repositório da versão do seu sistema operacional.<br />
<br />
O comando em si é simples:<br />
<br />
# sudo add-apt-repository nome-do-repositorio-ppa<br />
<br />
Como exemplo, vamos utilizar o PPA do Wine, ele é um software que permite rodar aplicações Windows no Linux:<br />
<br />
# sudo add-apt-repository ppa:ubuntu-wine/ppa<br />
<br />
Posteriormente devemos atualizar a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalar o pacote:<br />
<br />
# sudo apt-get install wine<br />
<br />
Também podemos remover repositórios PPA, seja pelo fato de não estar mais disponível ou simplesmente porque não queremos mais utilizá-lo. Para isso utilizamos o comando a seguir:<br />
<br />
# sudo add-apt-repository -r ppa:endereço-do-repositorio<br />
<br />
e posteriormente atualizamos a lista:<br />
<br />
# sudo apt-get update<br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://www.ubuntuupdates.org/ppas Repositórios PPA]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=156008PJI2-2019-12019-03-26T19:23:10Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Usuário:juliana.camilo|Juliana Camilo]] ([mailto:juliana.camilo@ifsc.edu.br juliana.camilo@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=14/03/2019: Usuários e grupos e permissões - Exercício adicional=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
=== Atividade (não é necessário adicionar esta atividade ao relatório)===<br />
<br />
Considere o cenário abaixo relativo a grupos e usuários:<br />
<br />
[[imagem:usuariosgrupos.png]]<br />
<br />
* Crie um diretório em /home para cada grupo, com o nome grupo-arquivos (exemplo, o grupo lab1 terá um diretório chamado lab1-arquivos).<br />
<br />
* Dentro destes diretórios dos grupos, cada usuário deverá possuir um diretório com o seu nome.<br />
<br />
* O shell utilizado será o /bin/bash.<br />
<br />
* Defina a senha de cada usuário.<br />
<br />
* Exibir o arquivo que contém os usuários do sistema.<br />
<br />
* Exibir o arquivo que contém os grupos do sistema<br />
<br />
* Exibir o arquivo que contém as senhas criptografadas dos usuários do sistema.<br />
<br />
* Mudar o nome de login do usuário ana para anaclara<br />
<br />
* Mudar o nome do grupo alunos para usuarios<br />
<br />
* Inclua no grupo usuarios, os usuários luiz e marta.<br />
<br />
* Apague o grupo usuarios.<br />
<br />
* Apague os grupos lab1, lab2.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://ivanix.wordpress.com/2009/01/25/arquivos-de-usuarios-grupos-e-senhas/ Arquivos de usuários, grupos e senhas]<br />
<br />
[https://alexandrebbarbosa.wordpress.com/2014/05/26/criando-usuario-e-grupos-no-linux/ Administrando usuários e grupos no Linux]<br />
<br />
[http://pajeonline.blogspot.com.br/2010/12/como-listar-os-usuarios-e-grupos.html Como Listar os Usuários e Grupos Existentes no Linux?]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=21/03/2019: Instalação de Sistema Operacional=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 2048 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* '''sudo apt-get update'''<br />
* '''sudo apt-get install build-essential module-assistant dkms'''<br />
* '''sudo m-a prepare'''<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
===Exercícios===<br />
<br />
Neste exercício iremos efetuar a instalação de um sistema operacional diferente. Iremos instalar o Linux Mint.<br />
A configuração da máquina virtual deve ser a seguinte:<br />
<br />
* 3072 MB de Ram;<br />
* 20 GB de espaço em disco;<br />
* 2 processadores;<br />
* 64 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<br />
No decorrer da instalação deve ser efetuada a documentação com a explicação e imagens de cada etapa do processo, desde a criação da máquina virtual até a finalização da instalação.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=26/03/2019: Linha de comando: Instalação de softwares=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
=== Instalação de software ===<br />
<br />
A instalação de software pode ser feita de diferentes maneiras:<br />
* ''A partir do software em formato de código-fonte:'' envolve transferir o código-fonte do seu repositório, e então compilá-lo. Isso requer um maior conhecimento técnico, e é uma habilidade esperada para um Técnico que atue na área de Telecomunicações. <br />
* ''A partir do software já preparado (compilado):'' essa forma é mais simples, pois basicamente implica obter o software compilado e copiá-lo para dentro do seu sistema. É também a prática mais comum, por ser mais rápida, fácil e menos trabalhosa. Todas as distribuições Linux (e também o FreeBSD, entre outras variantes de Unix) provêem alguma forma de instalar softwares dessa maneira. Esses sistemas criam o conceito de '''pacote de software''', que é um arquivo especial contendo todos os arquivos do software a ser instalado, e todas as informações necessárias para que a instalação tenha sucesso (versão, dependências, e outras). <br />
<br />
No escopo desta disciplina de Projeto Integrador, são usados '''pacotes de software'''. Mas nada impede que se demonstre como seria realizar uma instalação a partir do código-fonte, caso exista a curiosidade.<br />
<br />
No Ubuntu Linux (e também nas distribuições originadas no Debian), o sistema de pacotes de software se chama ''dpkg'' (Debian Package). Existem diferentes formas de instalar e remover sofware, dentre elas:<br />
# '''Diretamente a partir dos arquivos de pacote de software:''' esses arquivos têm extensão ''.deb'', e devem ser instalados por meio do programa [http://manpages.ubuntu.com/manpages/trusty/man1/dpkg.1.html dpkg]. Os arquivos ''.deb'' devem ser obtidos manualmente pelo usuário, podendo ser copiados de DVDs do sistema, ou obtidos de servidores na rede. Para removê-los, deve-se usar também o ''dpkg''.<br />
# '''Obtendo automaticamente pacotes de software de repositórios:''' essa forma de administrar os pacotes é muito mais fácil, pois os pacotes de software são obtidos de servidores de pacotes na rede. Ela se baseia num sistema de gerenciamento de pacotes chamado de APT, e pode ser realizada por meio dos aplicativos [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get] ou [http://manpages.ubuntu.com/manpages/precise/en/man8/aptitude.8.html aptitude] (este é ainda mais fácil). Existem também versões gráficas para esses gerenciadores de pacotes.<br />
<br />
<br />
=== Instalação manual com ''dpkg'' ===<br />
<br />
Para instalar pacotes de software manualmente, primeiro devem-se obter os respectivos arquivos de instalação. Cada pacote de software está contido em um arquivo com extensão ''.deb''. Esses arquivos podem ser obtidos dos CD e DVD de instalação, ou de repositórios na Internet. Exemplos:<br />
* [http://ubuntu.c3sl.ufpr.br/ubuntu/ um repositório do Ubuntu no Brasil]<br />
* [http://archive.raspbian.org/raspbian/ Repositório para o Raspbian (Debian para o RaspberryPi)]<br />
<br />
<br />
Cada arquivo de instalação deve ser instalado da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -i nome_do_pacote.deb<br />
</syntaxhighlight><br />
<br />
Se o pacote de software não puder ser instalado, uma mensagem de erro é apresentada. Uma causa para esse problema é existirem dependências em relação a outros pacotes de software, os quais devem então ser instalados previamente.<br />
<br />
Para descobrir as dependência de um pacote podemos utilizar o comando a seguir:<br />
<br />
# sudo apt-cache depends nome-do-pacote<br />
<br />
A remoção de um pacote de software pode ser feita assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -r nome_do_pacote<br />
</syntaxhighlight><br />
<br />
Se o pacote a ser removido for dependência para outros pacotes instalados, a remoção será abortada.<br />
<br />
<br />
A listagem de todos os pacotes instalados pode ser obtida com este comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -l<br />
</syntaxhighlight><br />
<br />
A listagem dos arquivos instalados por um pacote é mostrada com este outro comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -L nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Informações detalhadas sobre um pacote podem ser mostradas assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -p nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://sourceforge.net/projects/nevernote/files/NixNote2%20-%202.0.2/ Pacote deb NixNote]<br />
<br />
[https://sourceforge.net/projects/openofficeorg.mirror/files/4.1.5/binaries/pt-BR/Apache_OpenOffice_4.1.5_Linux_x86-64_install-deb_pt-BR.tar.gz/download Pacote deb Open Office]<br />
<br />
[https://deb.opera.com/opera/pool/non-free/o/opera-stable/ Pacote deb do navegador Opera]<br />
<br />
=== Obtenção automática de software ===<br />
<br />
Os pacotes de softwares dos sistemas operacionais Ubuntu e Debian são organizados e disponibilizados em repositórios, que são servidores na Internet onde há cópias dos arquivos de instalação desses pacotes. Os repositórios são configurados durante a própria instalação do sistema, ficando registrados no arquivo [http://manpages.ubuntu.com/manpages/trusty/man5/sources.list.5.html /etc/apt/sources.list]. Esse arquivo pode ser modificado para incluir ou remover repositórios, quando necessário.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get]:<br />
* '''apt-get update''': atualiza o catálogo de pacotes de software conhecidos. Isso implica consultar os repositórios configurados e transferir as listas de pacotes lá existentes. Isso é importante para ter acesso a versões atualizadas dos pacotes de software.<br />
* '''apt-get install nome_do_pacote''': instala o pacote de software chamado ''nome_do_pacote''. Se houver dependências de outros pacotes, eles também serão instalados.<br />
* '''apt-get remove nome_do_pacote''': remove o pacote de software chamado ''nome_do_pacote''. se outros pacotes dependerem desse pacote, eles também serão removidos.<br />
* '''apt-get clean''': remove as cópias dos arquivos de pacotes de software transferidos e não mais necessários.<br />
* '''apt-get upgrade''': atualiza todos os pacotes de software para suas versões mais recentes, caso existam.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/aptitude.8.html aptitude]:<br />
* '''aptitude update''': mesmo que ''apt-get update''<br />
* '''aptitude install nome_do_pacote''': mesmo que ''apt-get install''<br />
* '''aptitude remove nome_do_pacote''': mesmo que ''apt-get remove''<br />
* '''aptitude search nome''': lista todos os pacotes de software conhecidos cujos nomes contenham ''nome''<br />
<br />
<br />
[https://repogen.simplylinux.ch/ Gerador de lista de repositórios sources.list]<br />
<br />
===Utilizando repositório PPA (Personal Package Archives)===<br />
<br />
PPA quer dizer Personal Package Archives, os repositórios deste tipo nada mais são do quer servidores na internet onde se encontram os programas que não estão nos repositórios oficias da sua distro.<br />
Mas essa é uma generalização porque alguns programas que estão na Central de Programas possuem PPA, caso do WINE por exemplo, a diferença entre instalar a versão da Central de Programas e instalar via PPA é que a versão que está na Central de Programas e suas possíveis atualizações já foram testadas e apresentam um nível bom de segurança e estabilidade, porém, não trazem os mesmos recursos muitas vezes, das versões mais recentes, coisa que o PPA trás.<br />
<br />
Mas antes de adicionar PPAs no seu sistema, procure informações referentes aos desenvolvedores, procedência, etc, pois se trata de programas de terceiros, não oficiais da lista de repositório da versão do seu sistema operacional.<br />
<br />
O comando em si é simples:<br />
<br />
# sudo add-apt-repository nome-do-repositorio-ppa<br />
<br />
Como exemplo, vamos utilizar o PPA do Wine, ele é um software que permite rodar aplicações Windows no Linux:<br />
<br />
# sudo add-apt-repository ppa:ubuntu-wine/ppa<br />
<br />
Posteriormente devemos atualizar a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalar o pacote:<br />
<br />
# sudo apt-get install wine<br />
<br />
Também podemos remover repositórios PPA, seja pelo fato de não estar mais disponível ou simplesmente porque não queremos mais utilizá-lo. Para isso utilizamos o comando a seguir:<br />
<br />
# sudo add-apt-repository -r ppa:endereço-do-repositorio<br />
<br />
e posteriormente atualizamos a lista:<br />
<br />
# sudo apt-get update<br />
<br />
<br />
Links úteis:<br />
<br />
<br />
[https://www.ubuntuupdates.org/ppas Repositórios PPA]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=156007PJI2-2019-12019-03-26T19:21:47Z<p>Ederson.luiz: /* Utilizando repositório PPA (Personal Package Archives) */</p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Usuário:juliana.camilo|Juliana Camilo]] ([mailto:juliana.camilo@ifsc.edu.br juliana.camilo@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=14/03/2019: Usuários e grupos e permissões - Exercício adicional=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
=== Atividade (não é necessário adicionar esta atividade ao relatório)===<br />
<br />
Considere o cenário abaixo relativo a grupos e usuários:<br />
<br />
[[imagem:usuariosgrupos.png]]<br />
<br />
* Crie um diretório em /home para cada grupo, com o nome grupo-arquivos (exemplo, o grupo lab1 terá um diretório chamado lab1-arquivos).<br />
<br />
* Dentro destes diretórios dos grupos, cada usuário deverá possuir um diretório com o seu nome.<br />
<br />
* O shell utilizado será o /bin/bash.<br />
<br />
* Defina a senha de cada usuário.<br />
<br />
* Exibir o arquivo que contém os usuários do sistema.<br />
<br />
* Exibir o arquivo que contém os grupos do sistema<br />
<br />
* Exibir o arquivo que contém as senhas criptografadas dos usuários do sistema.<br />
<br />
* Mudar o nome de login do usuário ana para anaclara<br />
<br />
* Mudar o nome do grupo alunos para usuarios<br />
<br />
* Inclua no grupo usuarios, os usuários luiz e marta.<br />
<br />
* Apague o grupo usuarios.<br />
<br />
* Apague os grupos lab1, lab2.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://ivanix.wordpress.com/2009/01/25/arquivos-de-usuarios-grupos-e-senhas/ Arquivos de usuários, grupos e senhas]<br />
<br />
[https://alexandrebbarbosa.wordpress.com/2014/05/26/criando-usuario-e-grupos-no-linux/ Administrando usuários e grupos no Linux]<br />
<br />
[http://pajeonline.blogspot.com.br/2010/12/como-listar-os-usuarios-e-grupos.html Como Listar os Usuários e Grupos Existentes no Linux?]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=21/03/2019: Instalação de Sistema Operacional=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 2048 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* '''sudo apt-get update'''<br />
* '''sudo apt-get install build-essential module-assistant dkms'''<br />
* '''sudo m-a prepare'''<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
===Exercícios===<br />
<br />
Neste exercício iremos efetuar a instalação de um sistema operacional diferente. Iremos instalar o Linux Mint.<br />
A configuração da máquina virtual deve ser a seguinte:<br />
<br />
* 3072 MB de Ram;<br />
* 20 GB de espaço em disco;<br />
* 2 processadores;<br />
* 64 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<br />
No decorrer da instalação deve ser efetuada a documentação com a explicação e imagens de cada etapa do processo, desde a criação da máquina virtual até a finalização da instalação.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=26/03/2019: Linha de comando: Instalação de softwares=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
=== Instalação de software ===<br />
<br />
A instalação de software pode ser feita de diferentes maneiras:<br />
* ''A partir do software em formato de código-fonte:'' envolve transferir o código-fonte do seu repositório, e então compilá-lo. Isso requer um maior conhecimento técnico, e é uma habilidade esperada para um Técnico que atue na área de Telecomunicações. <br />
* ''A partir do software já preparado (compilado):'' essa forma é mais simples, pois basicamente implica obter o software compilado e copiá-lo para dentro do seu sistema. É também a prática mais comum, por ser mais rápida, fácil e menos trabalhosa. Todas as distribuições Linux (e também o FreeBSD, entre outras variantes de Unix) provêem alguma forma de instalar softwares dessa maneira. Esses sistemas criam o conceito de '''pacote de software''', que é um arquivo especial contendo todos os arquivos do software a ser instalado, e todas as informações necessárias para que a instalação tenha sucesso (versão, dependências, e outras). <br />
<br />
No escopo desta disciplina de Projeto Integrador, são usados '''pacotes de software'''. Mas nada impede que se demonstre como seria realizar uma instalação a partir do código-fonte, caso exista a curiosidade.<br />
<br />
No Ubuntu Linux (e também nas distribuições originadas no Debian), o sistema de pacotes de software se chama ''dpkg'' (Debian Package). Existem diferentes formas de instalar e remover sofware, dentre elas:<br />
# '''Diretamente a partir dos arquivos de pacote de software:''' esses arquivos têm extensão ''.deb'', e devem ser instalados por meio do programa [http://manpages.ubuntu.com/manpages/trusty/man1/dpkg.1.html dpkg]. Os arquivos ''.deb'' devem ser obtidos manualmente pelo usuário, podendo ser copiados de DVDs do sistema, ou obtidos de servidores na rede. Para removê-los, deve-se usar também o ''dpkg''.<br />
# '''Obtendo automaticamente pacotes de software de repositórios:''' essa forma de administrar os pacotes é muito mais fácil, pois os pacotes de software são obtidos de servidores de pacotes na rede. Ela se baseia num sistema de gerenciamento de pacotes chamado de APT, e pode ser realizada por meio dos aplicativos [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get] ou [http://manpages.ubuntu.com/manpages/precise/en/man8/aptitude.8.html aptitude] (este é ainda mais fácil). Existem também versões gráficas para esses gerenciadores de pacotes.<br />
<br />
<br />
=== Instalação manual com ''dpkg'' ===<br />
<br />
Para instalar pacotes de software manualmente, primeiro devem-se obter os respectivos arquivos de instalação. Cada pacote de software está contido em um arquivo com extensão ''.deb''. Esses arquivos podem ser obtidos dos CD e DVD de instalação, ou de repositórios na Internet. Exemplos:<br />
* [http://ubuntu.c3sl.ufpr.br/ubuntu/ um repositório do Ubuntu no Brasil]<br />
* [http://archive.raspbian.org/raspbian/ Repositório para o Raspbian (Debian para o RaspberryPi)]<br />
<br />
<br />
Cada arquivo de instalação deve ser instalado da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -i nome_do_pacote.deb<br />
</syntaxhighlight><br />
<br />
Se o pacote de software não puder ser instalado, uma mensagem de erro é apresentada. Uma causa para esse problema é existirem dependências em relação a outros pacotes de software, os quais devem então ser instalados previamente.<br />
<br />
Para descobrir as dependência de um pacote podemos utilizar o comando a seguir:<br />
<br />
# sudo apt-cache depends nome-do-pacote<br />
<br />
A remoção de um pacote de software pode ser feita assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -r nome_do_pacote<br />
</syntaxhighlight><br />
<br />
Se o pacote a ser removido for dependência para outros pacotes instalados, a remoção será abortada.<br />
<br />
<br />
A listagem de todos os pacotes instalados pode ser obtida com este comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -l<br />
</syntaxhighlight><br />
<br />
A listagem dos arquivos instalados por um pacote é mostrada com este outro comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -L nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Informações detalhadas sobre um pacote podem ser mostradas assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -p nome_do_pacote<br />
</syntaxhighlight><br />
<br />
[https://sourceforge.net/projects/nevernote/files/NixNote2%20-%202.0.2/ Pacote deb NixNote]<br />
<br />
[https://sourceforge.net/projects/openofficeorg.mirror/files/4.1.5/binaries/pt-BR/Apache_OpenOffice_4.1.5_Linux_x86-64_install-deb_pt-BR.tar.gz/download Pacote deb Open Office]<br />
<br />
[https://deb.opera.com/opera/pool/non-free/o/opera-stable/ Pacote deb do navegador Opera]<br />
<br />
=== Obtenção automática de software ===<br />
<br />
Os pacotes de softwares dos sistemas operacionais Ubuntu e Debian são organizados e disponibilizados em repositórios, que são servidores na Internet onde há cópias dos arquivos de instalação desses pacotes. Os repositórios são configurados durante a própria instalação do sistema, ficando registrados no arquivo [http://manpages.ubuntu.com/manpages/trusty/man5/sources.list.5.html /etc/apt/sources.list]. Esse arquivo pode ser modificado para incluir ou remover repositórios, quando necessário.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get]:<br />
* '''apt-get update''': atualiza o catálogo de pacotes de software conhecidos. Isso implica consultar os repositórios configurados e transferir as listas de pacotes lá existentes. Isso é importante para ter acesso a versões atualizadas dos pacotes de software.<br />
* '''apt-get install nome_do_pacote''': instala o pacote de software chamado ''nome_do_pacote''. Se houver dependências de outros pacotes, eles também serão instalados.<br />
* '''apt-get remove nome_do_pacote''': remove o pacote de software chamado ''nome_do_pacote''. se outros pacotes dependerem desse pacote, eles também serão removidos.<br />
* '''apt-get clean''': remove as cópias dos arquivos de pacotes de software transferidos e não mais necessários.<br />
* '''apt-get upgrade''': atualiza todos os pacotes de software para suas versões mais recentes, caso existam.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/aptitude.8.html aptitude]:<br />
* '''aptitude update''': mesmo que ''apt-get update''<br />
* '''aptitude install nome_do_pacote''': mesmo que ''apt-get install''<br />
* '''aptitude remove nome_do_pacote''': mesmo que ''apt-get remove''<br />
* '''aptitude search nome''': lista todos os pacotes de software conhecidos cujos nomes contenham ''nome''<br />
<br />
<br />
[https://repogen.simplylinux.ch/ Gerador de lista de repositórios sources.list]<br />
<br />
===Utilizando repositório PPA (Personal Package Archives)===<br />
<br />
PPA quer dizer Personal Package Archives, os repositórios deste tipo nada mais são do quer servidores na internet onde se encontram os programas que não estão nos repositórios oficias da sua distro.<br />
Mas essa é uma generalização porque alguns programas que estão na Central de Programas possuem PPA, caso do WINE por exemplo, a diferença entre instalar a versão da Central de Programas e instalar via PPA é que a versão que está na Central de Programas e suas possíveis atualizações já foram testadas e apresentam um nível bom de segurança e estabilidade, porém, não trazem os mesmos recursos muitas vezes, das versões mais recentes, coisa que o PPA trás.<br />
<br />
Mas antes de adicionar PPAs no seu sistema, procure informações referentes aos desenvolvedores, procedência, etc, pois se trata de programas de terceiros, não oficiais da lista de repositório da versão do seu sistema operacional.<br />
<br />
O comando em si é simples:<br />
<br />
# sudo add-apt-repository nome-do-repositorio-ppa<br />
<br />
Como exemplo, vamos utilizar o PPA do Wine, ele é um software que permite rodar aplicações Windows no Linux:<br />
<br />
# sudo add-apt-repository ppa:ubuntu-wine/ppa<br />
<br />
Posteriormente devemos atualizar a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalar o pacote:<br />
<br />
# sudo apt-get install wine<br />
<br />
Também podemos remover repositórios PPA, seja pelo fato de não estar mais disponível ou simplesmente porque não queremos mais utilizá-lo. Para isso utilizamos o comando a seguir:<br />
<br />
# sudo add-apt-repository -r ppa:endereço-do-repositorio<br />
<br />
e posteriormente atualizamos a lista:<br />
<br />
# sudo apt-get update<br />
<br />
https://www.ubuntuupdates.org/ppas<br />
</font><br />
{{Collapse bottom | Aula 11}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=156006PJI2-2019-12019-03-26T19:19:56Z<p>Ederson.luiz: /* Obtenção automática de software */</p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Usuário:juliana.camilo|Juliana Camilo]] ([mailto:juliana.camilo@ifsc.edu.br juliana.camilo@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=14/03/2019: Usuários e grupos e permissões - Exercício adicional=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
=== Atividade (não é necessário adicionar esta atividade ao relatório)===<br />
<br />
Considere o cenário abaixo relativo a grupos e usuários:<br />
<br />
[[imagem:usuariosgrupos.png]]<br />
<br />
* Crie um diretório em /home para cada grupo, com o nome grupo-arquivos (exemplo, o grupo lab1 terá um diretório chamado lab1-arquivos).<br />
<br />
* Dentro destes diretórios dos grupos, cada usuário deverá possuir um diretório com o seu nome.<br />
<br />
* O shell utilizado será o /bin/bash.<br />
<br />
* Defina a senha de cada usuário.<br />
<br />
* Exibir o arquivo que contém os usuários do sistema.<br />
<br />
* Exibir o arquivo que contém os grupos do sistema<br />
<br />
* Exibir o arquivo que contém as senhas criptografadas dos usuários do sistema.<br />
<br />
* Mudar o nome de login do usuário ana para anaclara<br />
<br />
* Mudar o nome do grupo alunos para usuarios<br />
<br />
* Inclua no grupo usuarios, os usuários luiz e marta.<br />
<br />
* Apague o grupo usuarios.<br />
<br />
* Apague os grupos lab1, lab2.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://ivanix.wordpress.com/2009/01/25/arquivos-de-usuarios-grupos-e-senhas/ Arquivos de usuários, grupos e senhas]<br />
<br />
[https://alexandrebbarbosa.wordpress.com/2014/05/26/criando-usuario-e-grupos-no-linux/ Administrando usuários e grupos no Linux]<br />
<br />
[http://pajeonline.blogspot.com.br/2010/12/como-listar-os-usuarios-e-grupos.html Como Listar os Usuários e Grupos Existentes no Linux?]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=21/03/2019: Instalação de Sistema Operacional=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 2048 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* '''sudo apt-get update'''<br />
* '''sudo apt-get install build-essential module-assistant dkms'''<br />
* '''sudo m-a prepare'''<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
===Exercícios===<br />
<br />
Neste exercício iremos efetuar a instalação de um sistema operacional diferente. Iremos instalar o Linux Mint.<br />
A configuração da máquina virtual deve ser a seguinte:<br />
<br />
* 3072 MB de Ram;<br />
* 20 GB de espaço em disco;<br />
* 2 processadores;<br />
* 64 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<br />
No decorrer da instalação deve ser efetuada a documentação com a explicação e imagens de cada etapa do processo, desde a criação da máquina virtual até a finalização da instalação.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=26/03/2019: Linha de comando: Instalação de softwares=<br />
<br />
{{Collapse top | Aula 11}}<br />
<font size="3"><br />
<br />
=== Instalação de software ===<br />
<br />
A instalação de software pode ser feita de diferentes maneiras:<br />
* ''A partir do software em formato de código-fonte:'' envolve transferir o código-fonte do seu repositório, e então compilá-lo. Isso requer um maior conhecimento técnico, e é uma habilidade esperada para um Técnico que atue na área de Telecomunicações. <br />
* ''A partir do software já preparado (compilado):'' essa forma é mais simples, pois basicamente implica obter o software compilado e copiá-lo para dentro do seu sistema. É também a prática mais comum, por ser mais rápida, fácil e menos trabalhosa. Todas as distribuições Linux (e também o FreeBSD, entre outras variantes de Unix) provêem alguma forma de instalar softwares dessa maneira. Esses sistemas criam o conceito de '''pacote de software''', que é um arquivo especial contendo todos os arquivos do software a ser instalado, e todas as informações necessárias para que a instalação tenha sucesso (versão, dependências, e outras). <br />
<br />
No escopo desta disciplina de Projeto Integrador, são usados '''pacotes de software'''. Mas nada impede que se demonstre como seria realizar uma instalação a partir do código-fonte, caso exista a curiosidade.<br />
<br />
No Ubuntu Linux (e também nas distribuições originadas no Debian), o sistema de pacotes de software se chama ''dpkg'' (Debian Package). Existem diferentes formas de instalar e remover sofware, dentre elas:<br />
# '''Diretamente a partir dos arquivos de pacote de software:''' esses arquivos têm extensão ''.deb'', e devem ser instalados por meio do programa [http://manpages.ubuntu.com/manpages/trusty/man1/dpkg.1.html dpkg]. Os arquivos ''.deb'' devem ser obtidos manualmente pelo usuário, podendo ser copiados de DVDs do sistema, ou obtidos de servidores na rede. Para removê-los, deve-se usar também o ''dpkg''.<br />
# '''Obtendo automaticamente pacotes de software de repositórios:''' essa forma de administrar os pacotes é muito mais fácil, pois os pacotes de software são obtidos de servidores de pacotes na rede. Ela se baseia num sistema de gerenciamento de pacotes chamado de APT, e pode ser realizada por meio dos aplicativos [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get] ou [http://manpages.ubuntu.com/manpages/precise/en/man8/aptitude.8.html aptitude] (este é ainda mais fácil). Existem também versões gráficas para esses gerenciadores de pacotes.<br />
<br />
<br />
=== Instalação manual com ''dpkg'' ===<br />
<br />
Para instalar pacotes de software manualmente, primeiro devem-se obter os respectivos arquivos de instalação. Cada pacote de software está contido em um arquivo com extensão ''.deb''. Esses arquivos podem ser obtidos dos CD e DVD de instalação, ou de repositórios na Internet. Exemplos:<br />
* [http://ubuntu.c3sl.ufpr.br/ubuntu/ um repositório do Ubuntu no Brasil]<br />
* [http://archive.raspbian.org/raspbian/ Repositório para o Raspbian (Debian para o RaspberryPi)]<br />
<br />
<br />
Cada arquivo de instalação deve ser instalado da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -i nome_do_pacote.deb<br />
</syntaxhighlight><br />
<br />
Se o pacote de software não puder ser instalado, uma mensagem de erro é apresentada. Uma causa para esse problema é existirem dependências em relação a outros pacotes de software, os quais devem então ser instalados previamente.<br />
<br />
Para descobrir as dependência de um pacote podemos utilizar o comando a seguir:<br />
<br />
# sudo apt-cache depends nome-do-pacote<br />
<br />
A remoção de um pacote de software pode ser feita assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg -r nome_do_pacote<br />
</syntaxhighlight><br />
<br />
Se o pacote a ser removido for dependência para outros pacotes instalados, a remoção será abortada.<br />
<br />
<br />
A listagem de todos os pacotes instalados pode ser obtida com este comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -l<br />
</syntaxhighlight><br />
<br />
A listagem dos arquivos instalados por um pacote é mostrada com este outro comando:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -L nome_do_pacote<br />
</syntaxhighlight><br />
<br />
<br />
Informações detalhadas sobre um pacote podem ser mostradas assim:<br />
<br />
<syntaxhighlight lang=bash><br />
dpkg-query -p nome_do_pacote<br />
</syntaxhighlight><br />
<br />
[https://sourceforge.net/projects/nevernote/files/NixNote2%20-%202.0.2/ Pacote deb NixNote]<br />
<br />
[https://sourceforge.net/projects/openofficeorg.mirror/files/4.1.5/binaries/pt-BR/Apache_OpenOffice_4.1.5_Linux_x86-64_install-deb_pt-BR.tar.gz/download Pacote deb Open Office]<br />
<br />
[https://deb.opera.com/opera/pool/non-free/o/opera-stable/ Pacote deb do navegador Opera]<br />
<br />
=== Obtenção automática de software ===<br />
<br />
Os pacotes de softwares dos sistemas operacionais Ubuntu e Debian são organizados e disponibilizados em repositórios, que são servidores na Internet onde há cópias dos arquivos de instalação desses pacotes. Os repositórios são configurados durante a própria instalação do sistema, ficando registrados no arquivo [http://manpages.ubuntu.com/manpages/trusty/man5/sources.list.5.html /etc/apt/sources.list]. Esse arquivo pode ser modificado para incluir ou remover repositórios, quando necessário.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/apt-get.8.html apt-get]:<br />
* '''apt-get update''': atualiza o catálogo de pacotes de software conhecidos. Isso implica consultar os repositórios configurados e transferir as listas de pacotes lá existentes. Isso é importante para ter acesso a versões atualizadas dos pacotes de software.<br />
* '''apt-get install nome_do_pacote''': instala o pacote de software chamado ''nome_do_pacote''. Se houver dependências de outros pacotes, eles também serão instalados.<br />
* '''apt-get remove nome_do_pacote''': remove o pacote de software chamado ''nome_do_pacote''. se outros pacotes dependerem desse pacote, eles também serão removidos.<br />
* '''apt-get clean''': remove as cópias dos arquivos de pacotes de software transferidos e não mais necessários.<br />
* '''apt-get upgrade''': atualiza todos os pacotes de software para suas versões mais recentes, caso existam.<br />
<br />
<br />
Um resumo dos comandos que podem ser usados com [http://manpages.ubuntu.com/manpages/trusty/en/man8/aptitude.8.html aptitude]:<br />
* '''aptitude update''': mesmo que ''apt-get update''<br />
* '''aptitude install nome_do_pacote''': mesmo que ''apt-get install''<br />
* '''aptitude remove nome_do_pacote''': mesmo que ''apt-get remove''<br />
* '''aptitude search nome''': lista todos os pacotes de software conhecidos cujos nomes contenham ''nome''<br />
<br />
<br />
[https://repogen.simplylinux.ch/ Gerador de lista de repositórios sources.list]<br />
<br />
===Utilizando repositório PPA (Personal Package Archives)===<br />
<br />
PPA quer dizer Personal Package Archives, os repositórios deste tipo nada mais são do quer servidores na internet onde se encontram os programas que não estão nos repositórios oficias da sua distro.<br />
Mas essa é uma generalização porque alguns programas que estão na Central de Programas possuem PPA, caso do WINE por exemplo, a diferença entre instalar a versão da Central de Programas e instalar via PPA é que a versão que está na Central de Programas e suas possíveis atualizações já foram testadas e apresentam um nível bom de segurança e estabilidade, porém, não trazem os mesmos recursos muitas vezes, das versões mais recentes, coisa que o PPA trás.<br />
<br />
Mas antes de adicionar PPAs no seu sistema, procure informações referentes aos desenvolvedores, procedência, etc, pois se trata de programas de terceiros, não oficiais da lista de repositório da versão do seu sistema operacional.<br />
<br />
O comando em si é simples:<br />
<br />
# sudo add-apt-repository nome-do-repositorio-ppa<br />
<br />
Como exemplo, vamos utilizar o PPA do Wine, ele é um software que permite rodar aplicações Windows no Linux:<br />
<br />
# sudo add-apt-repository ppa:ubuntu-wine/ppa<br />
<br />
Posteriormente devemos atualizar a lista de repositórios:<br />
<br />
# sudo apt-get update<br />
<br />
E por fim instalar o pacote:<br />
<br />
# sudo apt-get install wine<br />
<br />
Também podemos remover repositórios PPA, seja pelo fato de não estar mais disponível ou simplesmente porque não queremos mais utilizá-lo. Para isso utilizamos o comando a seguir:<br />
<br />
# sudo add-apt-repository -r ppa:endereço-do-repositorio<br />
<br />
e posteriormente atualizamos a lista:<br />
<br />
# sudo apt-get update<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=155751PJI2-2019-12019-03-21T18:26:23Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Usuário:juliana.camilo|Juliana Camilo]] ([mailto:juliana.camilo@ifsc.edu.br juliana.camilo@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=14/03/2019: Usuários e grupos e permissões - Exercício adicional=<br />
<br />
{{Collapse top | Aula 9}}<br />
<font size="3"><br />
=== Atividade (não é necessário adicionar esta atividade ao relatório)===<br />
<br />
Considere o cenário abaixo relativo a grupos e usuários:<br />
<br />
[[imagem:usuariosgrupos.png]]<br />
<br />
* Crie um diretório em /home para cada grupo, com o nome grupo-arquivos (exemplo, o grupo lab1 terá um diretório chamado lab1-arquivos).<br />
<br />
* Dentro destes diretórios dos grupos, cada usuário deverá possuir um diretório com o seu nome.<br />
<br />
* O shell utilizado será o /bin/bash.<br />
<br />
* Defina a senha de cada usuário.<br />
<br />
* Exibir o arquivo que contém os usuários do sistema.<br />
<br />
* Exibir o arquivo que contém os grupos do sistema<br />
<br />
* Exibir o arquivo que contém as senhas criptografadas dos usuários do sistema.<br />
<br />
* Mudar o nome de login do usuário ana para anaclara<br />
<br />
* Mudar o nome do grupo alunos para usuarios<br />
<br />
* Inclua no grupo usuarios, os usuários luiz e marta.<br />
<br />
* Apague o grupo usuarios.<br />
<br />
* Apague os grupos lab1, lab2.<br />
<br />
<br />
'''Leituras úteis''':<br />
<br />
[https://ivanix.wordpress.com/2009/01/25/arquivos-de-usuarios-grupos-e-senhas/ Arquivos de usuários, grupos e senhas]<br />
<br />
[https://alexandrebbarbosa.wordpress.com/2014/05/26/criando-usuario-e-grupos-no-linux/ Administrando usuários e grupos no Linux]<br />
<br />
[http://pajeonline.blogspot.com.br/2010/12/como-listar-os-usuarios-e-grupos.html Como Listar os Usuários e Grupos Existentes no Linux?]<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=21/03/2019: Instalação de Sistema Operacional=<br />
<br />
{{Collapse top | Aula 10}}<br />
<font size="3"><br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 2048 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* '''sudo apt-get update'''<br />
* '''sudo apt-get install build-essential module-assistant dkms'''<br />
* '''sudo m-a prepare'''<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
===Exercícios===<br />
<br />
Neste exercício iremos efetuar a instalação de um sistema operacional diferente. Iremos instalar o Linux Mint.<br />
A configuração da máquina virtual deve ser a seguinte:<br />
<br />
* 3072 MB de Ram;<br />
* 20 GB de espaço em disco;<br />
* 2 processadores;<br />
* 64 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<br />
No decorrer da instalação deve ser efetuada a documentação com a explicação e imagens de cada etapa do processo, desde a criação da máquina virtual até a finalização da instalação.<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=155390PJI2-2019-12019-03-12T23:49:21Z<p>Ederson.luiz: /* Projeto Integrador II */</p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Usuário:juliana.camilo|Juliana Camilo]] ([mailto:juliana.camilo@ifsc.edu.br juliana.camilo@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=155197PJI2-2019-12019-03-08T14:32:33Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=26/02/2019: Uso do SO: Manipulação do arquivos e diretórios (continuação)=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=28/02/2019: Usuários e grupos =<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Links úteis===<br />
<br />
* [http://www.linfo.org/root.html Root]<br />
* [https://en.wikipedia.org/wiki/Superuser Superusuário]<br />
* [https://wiki.archlinux.org/index.php/users_and_groups Usuários e grupos]<br />
<br />
===Usuários e grupos===<br />
<br />
Um usuário Linux é uma entidade que possui uma identificação no sistema onde os principais parâmetros são: login, senha, e número de identificação. Estas informações permitem ao Linux controlar como o acesso é garantido aos usuários e o que eles podem fazer depois de obter a permissão de acesso. Um grupo é um conjunto de usuários. Cada grupo também possui identificação única no sistema, um nome e um número. O administradores de sistemas normalmente fazem controle de acesso por meio dos grupos.<br />
<br />
Um usuário no Linux (e no Unix em geral) é definido pelo seguinte conjunto de informações:<br />
<br />
* '''Nome de usuário (ou ''login''):''' um apelido que identifica o usuário no sistema<br />
* '''UID (User Identifier):''' um número único que identifica o usuário<br />
* '''GID (Group Identifier):''' o número do grupo primário do usuário<br />
* '''Senha (password):''' senha para verificação de acesso<br />
* '''Nome completo (''full name''):''' nome completo do usuário<br />
* '''Diretório inicial (''homedir''):''' o subddiretório pessoal do usuário, onde ele é colocado ao entrar no sistema<br />
* '''Shell:''' o programa a ser executado quando o usuário entrar no sistema<br />
<br />
As contas de usuários, que contêm as informações acima, podem ficar armazenadas em diferentes bases de dados (chamadas de ''bases de dados de usuários''). Dentre elas, a mais simples é composta pelo arquivo [http://www.kernel.org/doc/man-pages/online/pages/man5/passwd.5.html ''/etc/passwd'']:<br />
<br />
root:x:0:0:root:/root:/bin/bash<br />
sshd:x:71:65:SSH daemon:/var/lib/sshd:/bin/false<br />
suse-ncc:x:105:107:Novell Customer Center User:/var/lib/YaST2/suse-ncc-fakehome:/bin/bash<br />
wwwrun:x:30:8:WWW daemon apache:/var/lib/wwwrun:/bin/false<br />
man:x:13:62:Manual pages viewer:/var/cache/man:/bin/bash<br />
news:x:9:13:News system:/etc/news:/bin/bash<br />
uucp:x:10:14:Unix-to-Unix CoPy system:/etc/uucp:/bin/bash<br />
roberto:x:1001:100:Roberto de Matos:/data1/roberto:/bin/bash<br />
<br />
Acima um exemplo de arquivo ''/etc/passwd''<br />
<br />
Cada linha desse arquivo define uma conta de usuário no seguinte formato:<br />
<br />
''nome de usuário:senha:UID:GID:Nome completo:Diretório inicial:Shell''<br />
<br />
O campo ''senha'' em ''/etc/passwd'' pode assumir os valores:<br />
* ''x'': significa que a senha se encontra em ''/etc/shadow''<br />
* ''*'': significa que a conta está bloqueada<br />
* ''senha encriptada'': a senha de fato, porém encriptada usando algoritmo hash [http://pt.wikipedia.org/wiki/Md5 MD5] ou [http://www.kernel.org/doc/man-pages/online/pages/man3/crypt.3.html crypt]. Porém usualmente a senha fica armazenada no arquivo ''/etc/shadow''.<br />
<br />
O arquivo ''/etc/shadow'' armazena exclusivamente as informações relativas a senha e validade da conta. Nele cada conta possui as seguintes informações:<br />
* Nome de usuário<br />
* Senha encriptada (sobrepõe a senha que porventura exista em ''/etc/passwd'')<br />
* Data da última modificação da senha<br />
* Dias até que a senha possa ser modificada (validade mínima da senha)<br />
* Dias após que a senha deve ser modificada<br />
* Dias antes da expiração da senha em que o usuário deve ser alertado<br />
* Dias após a expiração da senha em que a conta é desabilitada<br />
* Data em que a conta foi desabilitada<br />
<br />
Um exemplo do arquivo ''/etc/shadow'' segue abaixo:<br />
<br />
root:$2a$05$8IZNUuFTMoA3xv5grggWa.oBUBfvrE4MfgRDTlUI1zWDXGOHi9dzG:13922::::::<br />
suse-ncc:!:13922:0:99999:7:::<br />
uucp:*:13922::::::<br />
wwwrun:*:13922::::::<br />
roberto:$1$meoaWjv3$NUhmMHVdnxjmyyRNlli5M1:14222:0:99999:7:::<br />
<br />
''Exercício: quando a senha do usuário ''roberto'' irá expirar ?''<br />
<br />
Sugestão de leitura para responder a questão anterior:<br />
<br />
[http://eriberto.pro.br/blog/?p=967 Cálculo de datas com o comando date]<br />
<br />
<br />
Um grupo é um conjunto de usuários definido da seguinte forma:<br />
* '''Nome de group (group name):''' o nome que identifica o grupo no sistema<br />
* '''GID (Group Identifier):''' um número único que identifica o grupo<br />
* '''Lista de usuários:''' um conjunto de usuários que são membros do grupo<br />
<br />
Assim como as contas de usuários, os grupos ficam armazenados em bases de dados de usuários, sendo o arquivo ''/etc/group'' a mais simples delas:<br />
<br />
root:x:0:<br />
trusted:x:42:<br />
tty:x:5:<br />
utmp:x:22:<br />
uucp:x:14:<br />
video:x:33:roberto<br />
www:x:8:roberto<br />
users:x:100:<br />
radiusd:!:108:<br />
vboxusers:!:1000:<br />
<br />
Os membros de um grupo são os usuários que o têm como grupo primário (especificado na conta do usuário em ''/etc/passwd''), ou que aparecem listados em ''/etc/group''.<br />
<br />
=== Gerenciamento de usuários e grupos ===<br />
<br />
Para gerenciar usuários e grupos podem-se editar diretamente os arquivos ''/etc/passwd'', ''/etc/shadow'' e ''/etc/group'', porém existem utilitários que facilitam essa tarefa:<br />
<br />
* '''useradd''' ou '''adduser''': adiciona um usuário<br />
** Ex: ''useradd -m roberto'' : cria o usuário ''roberto'' juntamente com o diretório (-m --makedir).<br />
** Ex: ''useradd -c "Roberto de Matos" -m roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos"<br />
** Ex: ''useradd -c "Roberto de Matos" -g users -m -d /usuarios/roberto -s /bin/tcsh roberto'' : cria o usuário ''roberto'' com nome completo "Roberto de Matos", grupo ''users'', diretório inicial /usuarios/roberto e shell /bin/tcsh<br />
* '''userdel:''' remove um usuário<br />
** Ex: ''userdel roberto'' : remove o usuário ''roberto'', porém preservando seu diretório home<br />
** Ex: ''userdel -r roberto'' : remove o usuário ''roberto'', incluindo seu diretório home<br />
* '''usermod:''' modifica as informações da conta de um usuário<br />
** Ex: ''usermod -g wheel roberto'' : modifica o GID do usuário ''roberto''<br />
** Ex: ''usermod -G users,wheel roberto'' : modifica os grupos secundários do usuário ''roberto''<br />
** Ex: ''usermod -d /contas/roberto roberto'' : modifica o diretório inicial do usuário ''roberto'' (mas não copia os arquivos ...)<br />
** Ex: ''usermod -l robertomatos roberto'' : modifica o login do usuário ''roberto''<br />
** Ex: ''usermod -m ...'' : cria o diretório home do usuário ''roberto''<br />
** Ex: ''usermod -c "Roberto Matos, R. dos Navegantes, 33333333"'' : atribui comentários ao usuário ''roberto''<br />
* '''passwd:''' modifica a senha de usuário<br />
** Ex: ''passwd roberto''<br />
* '''login:''' logo como outro usuário. Tem de estar como root<br />
** Ex: ''login roberto''<br />
* '''groupadd:''' adiciona um grupo<br />
** Ex: ''groupadd ger'': cria o grupo ''ger''<br />
* '''groupdel:''' remove um grupo<br />
** Ex: ''groupdel ger'': remove o grupo ''ger''<br />
<br />
<!--Esses utilitários usam os arquivos ''/etc/login.defs'' e ''/etc/default/useradd'' para obter seus parâmetros padrão. O ''/etc/adduser.conf'' tem o mesmo intuito mas é seta exclusivamente os parâmetros do comando ''adduser''. O arquivo /etc/login.defs contém uma série de diretivas e padrões que serão utilizados na criação das próximas contas de usuários. Seu principal conteúdo é:<br />
<br />
MAIL_DIR dir # Diretório de e-mail<br />
PASS_MAX_DAYS 99999 #Número de dias até que a senha expire<br />
PASS_MIN_DAYS 0 #Número mínimo de dias entre duas trocas senha<br />
PASS_MIN_LEN 5 #Número mínimo de caracteres para composição da senha<br />
PASS_WARN_AGE 7 #Número de dias para notificação da expiração da senha<br />
UID_MIN 500 #Número mínimo para UID<br />
UID_MAX 60000 #Número máximo para UID<br />
GID_MIN 500 #Número mínimo para GID<br />
GID_MAX 60000 #Número máximo para GID<br />
CREATE_HOME yes #Criar ou não o diretório home<br />
<br />
Como o login.defs o arquivo /etc/default/useradd contém padrões para criação de contas. Seu principal conteúdo é:<br />
<br />
GROUP=100 #GID primário para os usuários criados <br />
HOME=/home #Diretório a partir do qual serão criados os “homes”<br />
INACTIVE=-1 #Quantos dias após a expiração da senha a conta é desativada<br />
EXPIRE=AAAA/MM/DD #Dia da expiração da conta<br />
SHEL=/bin/bash #Shell atribuído ao usuário.<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
GROUPS=video,dialout<br />
CREATE_MAIL_SPOOL=no<br />
<br />
O /etc/adduser.conf também possui uma série de padrões que funcionam especificamente para o comando adduser:<br />
DSHELL=/bin/bash #Shell atribuído ao usuário.<br />
DHOME=/home #Diretório a partir do qual serão criados os “homes”<br />
SKEL=/etc/skel #Arquivos e diretórios padrão para os novos usuários.<br />
FIRST_UID=1000 #Número mínimo para UID<br />
LAST_UID=29999 #Número máximo para UID<br />
FIRST_GID=1000 #Número mínimo para GID<br />
LAST_GID=29999 #Número máximo para GID<br />
QUOTAUSER="" #Se o sistema de cotas estiver funcional, pode atribuir quota ao usuário criado.--><br />
<br />
=== Atividade ===<br />
<br />
# Crie um usuário com o nome de jose usando o comando adduser. <br />
# Dê ao usuário jose a senha jose123.<br />
# Confirme a correta criação do usuário jose: <syntaxhighlight lang=bash> tail /etc/passwd </syntaxhighlight>...ou:<syntaxhighlight lang=bash> grep jose /etc/passwd</syntaxhighlight>... ou<syntaxhighlight lang=bash>id jose</syntaxhighlight><br />
# Confirme se o diretório home de jose foi criado corretamente dentro de /home.<br />
# Logue utilizando o usuário jose.<syntaxhighlight lang=bash>su - jose</syntaxhighlight><br />
# Crie o grupo turma.<br />
# Crie o diretório manoel em /home.<br />
# Crie um usuário com o nome de manoel usando o comando useradd. Deve-se ao criar o usuário definir os seguintes parâmetros: <br />
## Pertencer ao grupo turma;<br />
## O diretório home deve ser /home/manoel;<br />
## Configurar o shell do usuário como sendo /bin/bash;<br />
## Observar qual a diferença entre os comandos adduser e useradd. <syntaxhighlight lang=text> useradd -g turma -d /home/manoel -s /bin/bash manoel </syntaxhighlight><br />
# Dê ao usuário manoel a senha mane123. <syntaxhighlight lang=text> passwd manoel </syntaxhighlight><br />
# Acrescente, por comandos, ao perfil do usuário seu nome completo e endereço: Manoel da Silva, R. dos Pinheiros, 2476666. <syntaxhighlight lang=text> usermod -c "Manoel da Silva, R. dos Pinheiros, 2476666" manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme se o usuário manoel está OK.<br />
# Mude, por comandos, o diretório home do manoel de /home/manoel para /home/contas/manoel. <syntaxhighlight lang=text> usermod -d /home/contas/manoel manoel </syntaxhighlight><br />
# Verifique o arquivo /etc/passwd e confirme a alteração.<br />
# Logue como manoel e verifique as mensagens na tela. <syntaxhighlight lang=text> login manoel </syntaxhighlight><br />
# Crie o diretório /home/contas e dentro de contas crie o diretório manoel. Tente logar novamente.<br />
# Mude o login do manoel para manoelsilva. <syntaxhighlight lang=text> usermod -l manoelsilva manoel </syntaxhighlight><br />
# Torne o usuário manoelsilva capaz de executar comandos com sudo<br />
# Logue como manoelsilva<br />
# Estando logado como manoelsilva, remova o usuário ''jose''<br />
# Deslogue de manoelsilva<br />
# Remova os usuários criados, inclusive seus diretórios home<br />
# Remova os grupos criados<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=07/03/2019: Usuários e grupos - continuação=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=12/03/2019: Linha de comando: arquivos e diretórios; permissões=<br />
<br />
{{Collapse top | Aula 8}}<br />
<font size="3"><br />
<br />
Há uma maneira de restringir o acesso aos arquivos e diretórios para que somente determinados usuários possam acessá-los. A cada arquivo e diretório é associado um conjunto de permissões. Essas permissões determinam quais usuários podem ler, e escrever (alterar) um arquivo e, no caso de ser um arquivo executável, quais usuários podem executá-lo. Se um usuário tem permissão de execução para um diretório, significa que ele pode realizar buscas dentro daquele diretório, e não executá-lo como se fosse um programa.<br />
<br />
Quando um usuário cria um arquivo ou um diretório, o LINUX determina que ele é o proprietário (owner) daquele arquivo ou diretório. O esquema de permissões do LINUX permite que o proprietário determine quem tem acesso e em que modalidade eles poderão acessar os arquivos e diretórios que ele criou. O super-usuário (root), entretanto, tem acesso a qualquer arquivo ou diretório do sistema de arquivos.<br />
<br />
O conjunto de permissões é dividido em três classes: proprietário, grupo e usuários. Um grupo pode conter pessoas do mesmo departamento ou quem está trabalhando junto em um projeto. Os usuários que pertencem ao mesmo grupo recebem o mesmo número do grupo (também chamado de Group Id ou GID). Este número é armazenado no arquivo /etc/passwd junto com outras informações de identificação sobre cada usuário, e o arquivo correspondente as senhas criptogravadas dos usuários é /etc/shadow. O arquivo /etc/group contém informações de controle sobre todos os grupos do sistema, e o arquivo correspondente a senhas criptografadas é /etc/gshadow. Assim, pode -se dar permissões de acesso diferentes para cada uma destas três classes. <br />
<br />
Quando se executa ''ls -l'' em um diretório qualquer, os arquivos são exibidos de maneira semelhante a seguinte:<br />
<br />
> ls -l<br />
total 403196<br />
drwxr-xr-x 4 odilson admin 4096 Abr 2 14:48 BrOffice_2.1_Intalacao_Windows/<br />
-rw-r--r-- 1 luizp admin 113811828 Out 31 21:28 broffice.org.2.0.4.rpm.tar.bz2<br />
-rw-r--r-- 1 root root 117324614 Dez 27 14:47 broffice.org.2.1.0.rpm.tar.bz2<br />
-rw-r--r-- 1 luizp admin 90390186 Out 31 22:04 BrOo_2.0.4_Win32Intel_install_pt-BR.exe<br />
-rw-r--r-- 1 root root 91327615 Jan 5 21:27 BrOo_2.1.0_070105_Win32Intel_install_pt-BR.exe<br />
><br />
<br />
As colunas que aparecem na listagem são:<br />
# Esquema de permissões;<br />
# Número de ligações do arquivo;<br />
# Nome do usuário dono do arquivo;<br />
# Nome do grupo associado ao arquivo;<br />
# Tamanho do arquivo, em bytes;<br />
# Mês da criação do arquivo; Dia da criação do arquivo;<br />
# Hora da criação do arquivo;<br />
# Nome do arquivo;<br />
<br />
O esquema de permissões está dividido em 10 colunas, que indicam se o arquivo é um diretório ou não (coluna 1), e o modo de acesso permitido para o proprietário (colunas 2, 3 e 4), para o grupo (colunas 5, 6 e 7) e para os demais usuários (colunas 8, 9 e 10). A figura a seguir destaca as classes de permissões mostradas em uma listagem de diretório.<br />
<br />
[[imagem:Pji-Permissoes2.png]]<br />
<br />
<br />
Existem três modos distintos de permissão de acesso: leitura (read), escrita (write) e execução (execute). A cada classe de usuários você pode atribuir um conjunto diferente de permissões de acesso. Por exemplo, atribuir permissão de acesso irrestrito (de leitura, escrita e execução) para você mesmo, apenas de leitura para seus colegas, que estão no mesmo grupo que você, e nenhum acesso aos demais usuários. A permissão de execução somente se aplica a arquivos que podem ser executados, obviamente, como programas já compilados ou script shell. Os valores válidos para cada uma das colunas são os seguintes:<br />
*1 d se o arquivo for um diretório; Se estiver com - vai ser um arquivo;<br />
*2,5,8 r se existe permissão de leitura; Se estiver com - não tem permissão;<br />
*3,6,9 w se existe permissão de alteração; Se estiver com - não tem permissão;<br />
*4,7,10 x se existe permissão de execução; Se estiver com - não tem permissão;<br />
<br />
A permissão de acesso a um diretório tem outras considerações. As permissões de um diretório podem afetar a disposição final das permissões de um arquivo. Por exemplo, se o diretório dá permissão de gravação a todos os usuários, os arquivos dentro do diretório podem ser removidos, mesmo que esses arquivos não tenham permissão de leitura, gravação ou execução para o usuário. Quando a permissão de execução é definida para um diretório, ela permite que se pesquise ou liste o conteúdo do diretório.<br />
<br />
Existem dois modos de definir uma permissão, através do modo Octal e modo Textual. <br />
<br />
===Textual===<br />
<br />
Usamos letras antes das permissões (chmod é o comando para modificar permissões de arquivos): <br />
<br />
$ chmod u+rw, g+w, o-rwx teste.txt <br />
<br />
Onde:<br />
* U - representa usuário;<br />
* G - representa grupo;<br />
* O - representa outros.<br />
<br />
<br />
===Octal===<br />
<br />
O modo Octal tem a mesma função de definir permissões, só que em números. Exemplo: <br />
<br />
$ chmod 620 teste.txt <br />
<br />
(comando) (permissão) (arquivo) <br />
<br />
Tipo de permissão Octal:<br />
* 4 - Indica permissão de leitura;<br />
* 2 - Permissão de escrita;<br />
* 1 - Indica permissão de execução;<br />
* 0 - Indica sem permissões.<br />
<br />
A modificação das permissões de acesso a arquivos e diretórios pode ser feita usando-se os utilitários:<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chmod.1.html chmod]:''' muda as permissões de acesso (também chamado de modo de acesso). Somente pode ser executado pelo dono do arquivo ou pelo superusuário<br />
** Ex: ''chmod +x /home/usuario/programa'' : adiciona para todos os usuários a permissão de execução ao arquivo /home/usuario/programa<br />
** Ex: ''chmod -w /home/usuario/programa'' : remove para todos os usuários a permissão de escrita do arquivo /home/usuario/programa<br />
** Ex: ''chmod o-rwx /home/usuario/programa'' : remove todas as permissões de acesso ao arquivo /home/usuario/programa para todos os usuários que não o proprietário e membros do grupo proprietário<br />
** Ex: ''chmod 755 /home/usuario/programa'' : define as permissões rwxr-xr-x para o arquivo /home/usuario/programa<br />
* '''[http://manpages.ubuntu.com/manpages/karmic/en/man1/chown.1.html chown]:''' muda o proprietário de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chown roberto /home/usuario/programa'': faz com que o usuário ''roberto'' seja o dono do arquivo<br />
* '''[http://manpages.ubuntu.com/manpages/hardy/pt/man1/chgrp.1.html chgrp]''': muda o grupo dono de um arquivo. Somente pode ser executado pelo superusuário.<br />
** Ex: ''chgrp users /home/usuario/programa'': faz com que o grupo ''users'' seja o grupo dono do arquivo /home/usuario/programa<br />
<br />
Há também o utilitário [http://manpages.ubuntu.com/manpages/karmic/en/man1/umask.1posix.html umask], que define as permissões default para os novos arquivos e diretórios que um usuário criar. Esse utilitário define uma máscara (em octal) usada para indicar que permissões devem ser removidas. Exemplos:<br />
<br />
* ''umask 022'': tira a permissão de escrita para group e demais usuários<br />
* ''umask 027'': tira a permissão de escrita para group, e todas as permissões para demais usuários<br />
<br />
=== Atividade ===<br />
<br />
# Crie a partir do /home 3 diretórios, um com nome '''aln''', outro '''prf''' e o último '''svd'''.<br />
# Crie 3 grupos com os mesmos nomes acima.<br />
# Crie 3 contas de usuários pertencentes ao grupo aln: aluno1, aluno2, aluno3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/aln/. Por exemplo para o aluno1 teremos /home/aln/aluno1. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo prf: prof1, prof2, prof3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/prf/. Configure a shell dos usuários como /bin/bash.<br />
# Crie 3 contas pertencentes ao grupo svd: serv1, serv2, serv3. Estas contas deverão ter seus diretórios homes criados por comando dentro do diretório /home/svd/. Configure a shell dos usuários como /bin/bash.<br />
# Crie senhas para os usuários.<br />
# Logue com o usuário aluno1 e crie um arquivo chamado aluno1.txt, executando o comando: <syntaxhighlight lang=bash><br />
echo "Teste aluno1" > aluno1.txt</syntaxhighlight>... e saia do usuário aluno1.<br />
# Os diretórios dos alunos, e todo o seu conteúdo, devem ser visíveis e editáveis aos membros do próprio grupo, visíveis mas não apagáveis a todos os demais usuários da rede.<br />
# Logue com a conta aluno2. Faça um ''ls -l'' dentro do diretório home do usuário aluno1. Faça um ''cat'' no arquivo aluno1.txt. <br />
# Posteriormente, tente fazer o seguinte comando dentro do diretório de aluno1:<syntaxhighlight lang=bash><br />
echo "Teste aluno2" >> aluno1.txt</syntaxhighlight>Foi possível executar este comando? Se não, por quê?<br />
# Deslogue do usuário aluno2<br />
# Logue com prof1 e crie um arquivo chamado prof1.txt, executando o comando:<syntaxhighlight lang=bash><br />
echo "Teste prof1" > prof1.txt</syntaxhighlight>Saia do usuário prof1.<br />
# Os diretórios dos professores e servidores devem ser mutuamente visíveis, mas não apagáveis, entre os membros dos grupos professores e servidores. Além disso, não devem ser sequer visíveis aos membros do grupo alunos.<br />
# Logue com um outro usuário prof e teste se você consegue listar o conteúdo do diretório home do usuário prof1, exibir o conteúdo do arquivo criado no diretório de prof1 e escrever algo neste mesmo arquivo.<br />
# Logue com o usuário servidor1 e faça um ''ls -l'' dentro do diretório home do usuário prof1. Dê um cat no arquivo prof1.txt que está destro deste diretório. Tente editar este arquivo.<br />
# Logue com um usuário aluno e faça um ''ls -l'' dentro do diretório home do usuário prof1. Foi possível executar este comando? Se não, por quê?<br />
# Crie um diretório chamado ''trabalho'' dentro de ''/var/tmp''. Descreva tudo que é necessário fazer para que:<br />
#* Usuários do grupo ''prof'' consigam criar arquivos dentro desse subdiretório<br />
#* Demais usuários não possam entrar nesse subdiretório, tampouco listá-lo<br />
#* Qualquer arquivo existente dentro desse subdiretório, ou que venha a ser criado, deve poder ser lido e editado pelos usuários grupo ''prof''.<br />
#* Qualquer arquivo existente nesse subdiretório somente pode ser removido pelo usuário que o criou.<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2019-1&diff=155196INF-2019-12019-03-08T14:21:20Z<p>Ederson.luiz: </p>
<hr />
<div>=Informática Básica I= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 6a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2019-1<br />
<br />
==Ementa==<br />
<br />
Componentes de um computador, hardware e software. Dispositivos de entrada e saída, periféricos e dispositivos de armazenamento. Sistema operacional e aplicativos. Informação, documentos e arquivos.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Conhecer os seus principais componentes de hardware e software do computador, bem como o impacto desse na sociedade da informação;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Identificar os componentes de hardware: dispositivos básicos, de entrada e saída e outros;<br />
* Conhecer o sistema operacional e suas funções: arquivos, usuários, programas, etc;<br />
* Manipular arquivos e diretórios;<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional.<br />
<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.infowester.com/guiahdinic.php/ Guia de hardware para iniciantes]<br />
* [https://www.gcfaprendelivre.org/tecnologia/curso/informatica_basica/comecando_a_usar_um_computador/1.do O que são os computadores?]<br />
* [https://www.oficinadanet.com.br/artigo/851/o_que_e_um_sistema_operacional O que é um Sistema Operacional?]<br />
<br />
=15/02/2019: Apresentação da disciplina=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina, Introdução ao computador===<br />
<br />
Introdução ao componente curricular e noções do computador.<br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1ywcoDEq9XkO6VgN2Z8eNJ-j4CmY7KhF0/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://drive.google.com/file/d/1f_j_x2jnQh7t4bstdLTmy1Ch8viFBDbP/view?usp=sharing Hardware]<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=22/02/2019: Sistema Operacional Linux=<br />
<font size="3"><br />
{{Collapse top | Aula 2}}<br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também as um pouco mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=01/03/2019: Uso de navegadores=<br />
<font size="3"><br />
{{Collapse top | Aula 3}}<br />
<br />
===Tipos de conexão===<br />
<br />
Para que possamos navegar na internet, algo que é essencial é uma conexão. Temos alguns tipos de conexão, as quais dependem de fatores como disponibilidade no local, velocidade, preço, etc. de acordo com a sua prioridade.<br />
<br />
<br />
====Linha telefônica====<br />
<br />
----<br />
<br />
Conexão por linha discada ou dial-up, é um tipo de acesso à Internet no qual uma pessoa usa um modem e uma linha telefônica convencional para acessar a rede mundial de computadores. Este tipo de conexão está caindo em desuso por ser lenta (não passa de 56 kbs, no máximo) e também devido à popularização dos serviços de acesso em banda larga, que oferecem mais velocidade de transferência de dados.<br />
<br />
Além da baixa velocidade, a conexão discada não é estável e mantém ocupada a linha telefônica quando se está conecta; ou seja, não é possível falar pelo telefone ao mesmo tempo em que se navega pela web. Dependendo do horário em que o acesso é feito, os gastos com a conta telefônica podem ser altos.<br />
<br />
<br />
====Linha telefônica digital (ADSL, ISDN)====<br />
<br />
----<br />
<br />
Esse tipo de acesso é fornecido por meio da rede de telefonia convencional mas é diferente do acesso discado. Em primeiro lugar, mesmo que o usuário esteja conectado e navegando pela web, a linha telefônica estará desocupada e pode ser usada livremente para chamadas de voz. <br />
<br />
Isso é possível porque um modem xDSL que deve ser instalado converte as informações em um sinal elétrico que trafega em uma freqüência diferente daquela que é utilizada para a voz. Ou seja, um sinal não interfere no outro. É necessário, também, que o PC tenha uma placa de rede Ethernet instalada. <br />
<br />
O serviço xDSL também exige a contratação de um provedor de acesso web, já que a concessionária telefônica - por lei - não pode ser o provedor. Cada concessionária, dependendo da infra-estrutura que tiver instalada, pode oferecer diversas velocidades de acesso. No ADSL, por exemplo, a velocidade varia de 256 kbps a 8 mbps; o ADSL2 ou ADSL2+ vai 256 kbps até 24 Mbps; já o VDSL pode chegar a 52 Mbps e o VDSL2 até 100 Mbps. Apesar da popularidade desse tipo de acesso, ele não está disponível em todos os lugares.<br />
<br />
<br />
====Cabo====<br />
<br />
----<br />
<br />
A conexão via cabo utiliza a mesma infra-estrutura (cabo) do serviço de TV por assinatura, por onde trafegam, ao mesmo tempo, tanto o serviço de televisão quanto os dados de internet. Por isso, a oferta deste tipo de acesso está restrita às regiões onde também existe o serviço de TV paga via cabo.<br />
<br />
<br />
====Satélite====<br />
<br />
----<br />
<br />
Diferentemente dos demais tipos de acesso à internet, o acesso por satélite apresenta disponibilidade superior a 99% do tempo no período de um ano. Quem optar por ele - ou quem não tiver alternativa - vai necessitar de alguns aparatos de hardware um pouco mais específicos e caros. Você precisa ter uma antena que consiga captar o sinal do satélite e transmiti-lo para o computador (ou computadores) que tenha receptores, que podem ser internos – instalados dentro do PC – ou caixas externas. Trata-se dos modems de satélite. A antena pode tanto ser fornecida pelo provedor de acesso quanto ter que ser adquirida pelo usuário, a depender do caso. <br />
<br />
Uma das boas vantagens deste tipo de conexão é que o acesso torna-se independente de localização. Ainda que se esteja em zonas afastadas e esquecidas do Brasil, onde não é oferecido acesso à Internet pelos meios mais convencionais, o acesso via satélite funciona, pois a cobertura atinge todo o território nacional. Só que quanto mais remoto for o local da instalação, mais potência a antena a ser utilizada deve ter. <br />
<br />
<br />
====Rádio====<br />
<br />
----<br />
<br />
O acesso à internet por rádio é uma forma de estender uma conexão web que chega em banda larga a um ponto qualquer por meio das tecnologias convencionais a outro onde não existe tal serviço. Esse ponto pode ser uma área restrita, por exemplo, uma empresa, um condomínio, residência e até uma cidade inteira, dependendo da solução que for usada. Estão inclusos nessa modalidade o Wi-Fi e Wi-Max.<br />
<br />
Uma de suas características é a possibilidade de compartilhamento do acesso e garantir mobilidade aos usuários. A infra-estrutura básica exige um ponto de entrega de serviço de internet (cabo, xDSL, satélite), um modem compatível como serviço, um Access Point (espécie de rádio) e que cada computador tenha um receptor ou adaptador de rede sem fio para captar o sinal.<br />
<br />
<br />
====Celular====<br />
<br />
----<br />
<br />
Não é de hoje que se pode acessar a Internet pelo telefone celular. O problema é que este tipo de conexão sempre foi muito lento, com pouca capacidade de transmissão de informações. O que promete mudar esse panorama é a chegada da chamada rede 3G e 4G ao Brasil – que oferece banda larga aos telefones móveis.<br />
<br />
Velocidade e mobilidade são os dois maiores benefícios da 4G, com velocidades que chegam a 15 Mbps.<br />
<br />
<br />
<br />
===Navegadores===<br />
<br />
<br />
Um navegador é um programa de computador que tem por finalidade trabalhar com request e response ou pedido e resposta. Inicialmente quando você digita o endereço de um site ou clica em um link qualquer, ele faz uma requisição daquela página. Este pedido é enviado para o servidor onde o site está hospedado e cabe a este responder com os arquivos que compõe a página.<br />
<br />
De posse desses arquivos, o browser irá montar a página de acordo com as instruções do arquivo HTML que ele recebeu e por fim mostrar para o usuário a página solicitada.<br />
<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:navegadores.jpg|700px]]</div><br />
<br />
<br />
<br />
==== Navegadores mais utilizados no mundo ====<br />
<br />
----<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:navegadores2.jpg|700px]]</div><br />
<br />
<br />
===Sites===<br />
<br />
Um site é o conteúdo acessado através da digitação de um endereço de internet em um navegador. Este endereço de internet é o que chamamos de domínio, mas não há nada demais em dizer site do Terra se referindo ao domínio “terra.com.br”.<br />
<br />
Outra confusão comum com a palavra site é dizer “página” ao invés de site. Você pode considerar que um site seja um livro e uma página de um site é como uma página de um livro. Em um site podem existir dezenas ou milhares de páginas. Este artigo que você está lendo é uma página do site Palpite Digital. Nem todo site é feito apenas de texto e imagens, com artigos no estilo de um jornal ou revista. Existem sites que prestam um determinado serviço como o Gmail onde você vê seus e-mais ou o Facebook que é uma rede social. Nestes tipos de sites é um pouco mais complicado ou às vezes sequer faz sentido determinar o que é uma página.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=08/03/2019: Uso de navegadores - Criação e utilização de e-mail=<br />
<font size="3"><br />
{{Collapse top | Aula 4}}<br />
<br />
===O que é um e-mail===<br />
<br />
E-mail, email ou correio eletrônico, é um sistema de comunicação baseado no envio e recebimento de mensagens eletrônicas através de computadores pela Internet. Atualmente, com o uso cada vez maior de programas de mensagens instantâneas, como o Windows Live Messenger, por exemplo, o uso do e-mail vem diminuindo gradativamente, entretanto, ainda é um meio de comunicação de grande popularidade, principalmente no ambiente empresarial. <br />
<br />
O correio eletrônico é mais antigo que a própria internet. Aliás, o mesmo foi um dos principais motivos para a criação da grande rede dos computadores. Acredita-se que os primeiros sistemas de e-mail desenvolvidos foram o Q32 da SDC (System Development Corporation) e o CTSS do MIT (Massachusetts Institute of Technology).<br />
<br />
<br />
Os e-mails são enviados e recebidos por meio de um sistema de correio eletrônico, o qual utiliza um protocolo de internet para permitir o encaminhamento dos dados. <br />
<br />
Mais especificamente, a mensagem é enviada ao servidor de e-mail encarregado do transporte, o MTA (Mail Transport Agent - Agente de transporte de e-mail), até ao MTA do destinatário. Na Web, os MTA se comunicam entre eles graças ao protocolo SMTP. Por isso, esses servidores são chamados de SMTP.<br />
<br />
O servidor MTA do destinatário entrega a mensagem ao servidor de e-mail de entrada, chamado MDA (Mail Delivery Agent - Agente de entrega de e-mail), que a armazena esperando que o usuário venha recuperá-la. Existem dois protocolos que permitem recuperar mensagnes em um MDA: o protocolo POP3 (Post Office Protocol 3 - Protocolo de Correio 3), mais antigo, que recupera a mensagem e pode, eventualmente, deixar uma cópia no servidor; e o protocolo IMAP (Internet Message Access Protoco - Protocolo de acesso à mensagem na Internet), que permite sincronizar os status das mensagens (lido, excluído, movido, etc.) entre vários clientes do serviço de mensagens. Com o protocolo IMAP uma cópia de todas as mensagens é salva no servidor para garantir a sincronização. Assim, os servidores de correio de entrada são chamados de servidores POP ou servidores IMAP, dependendo do protocolo utilizado.<br />
<br />
Em comparação com o mundo real, os MTA funcionam como os Correios (centro de triagem com um carteiro fazendo o transporte), enquanto que os MDA funcionam como caixa de correio, para armazenar as mensagens (no limite da sua capacidade em termos de volume), até que os destinatários abram as suas caixas de entrada de e-mails. Isto significa que não é preciso que o destinatário esteja conectado à internet para poder receber e-mails. E, para evitar que qualquer pessoa possa consultar o e-mail de um usuário, o acesso ao MDA é protegido por um nome de usuário (login) e uma senha. <br />
<br />
A recuperação do e-mail é feita graças a um software chamado MUA (Mail User Agent - Agente de e-mail de usuário). Quando o MUA for um software instalado no sistema do usuário, chamamos de cliente de serviço de mensagens (ex: Gmail, Outlook, Yahoo, Incredimail, etc.) e quando se trata de uma interface web que permite se passar por um servidor de e-mail de entrada, chamamos de webmail.<br />
<br />
===Criando um e-mail===<br />
<br />
Parece estranho querer ajudar alguém a criar uma conta de e-mail em pleno ano de 2017, onde quase tudo gira em torno da internet, o digital já está presente numa porcentagem bastante grande em nossa vida e afinal, criar um e-mail é simples e de fácil compreensão. <br />
<br />
Neste caso iremos criar uma conta no Gmail.<br />
<br />
Antes um mero buscador, agora o maior mecanismo de busca da internet, o Google compra tudo quanto lhe brilha aos olhos. Foi assim que a companhia comprou o Youtube, Picasa, Blogger, Android, apenas alguns exemplos das muitas empresas adquiridas pela companhia.<br />
<br />
O Gmail foi criado pelo Google em 2004, no dia 1 de abril. No seu início o serviço oferecia 1GB de espaço para armazenamento gratuito, o que na época era o maior espaço disponibilizados entre os e-mails concorrentes como Hotmail, Yahoo! e MSN.<br />
<br />
Hoje em dia, dentre os aplicativos, programas, gedgets e serviços que utilizamos no computador, a probabilidade de que sejam conectados diretamente pelo Google, é muito grande. Para isso ter uma única conta de e-mail que sincronize tudo isto é uma boa pedida, e ter um Gmail, é o que eles querem. Desta forma, seus dados, e-mail, preferencias, estarão todas interligadas numa única conta de e-mail.<br />
<br />
Criar qualquer conta de e-mail é simples pela facilidade de acessar o cadastro na própria página inicial do serviço, nesta questão, o GMAIL. Basta que você clique no link do Gmail logo ali atrás, ou acesse através do seu navegador o seguinte endereço: [https://www.google.com/intl/pt_br/gmail/about/ https://www.google.com/intl/pt_br/gmail/about/].<br />
<br />
No nosso caso, vamos clicar no canto superior direito da página, onde encontramos a seguinte pergunta: “Novo usuário no Gmail?”, então clicamos no botão “Criar uma Conta”.<br />
<br />
<div style="text-align: center;">[[Arquivo:contagmail.jpg|700px]]</div><br />
<br />
<br />
O que nos interessa mesmo é o quadro do lado direito, é alí que devemos inserir nossos dados pessoais como:<br />
<br />
Nome;<br />
Sobrenome;<br />
Endereço de e-mail preterido (observe que o “@gmail.com” já está presente no campo, portanto não é necessário que o domínio seja escrito novamente);<br />
Senha (atente para as instruções de senha, ela deve ter pelo menos oito caracteres e possivelmente exigir pelo menos uma letra);<br />
Data de nascimento<br />
Celular<br />
Endereço de e-mail atual (caso já possua uma conta de e-mail).<br />
<br />
<div style="text-align: center;">[[Arquivo:contagmail2.jpg|700px]]</div><br />
<br />
Efetuado o cadastro, será enviado uma mensagem de sms para o celular cadastrado, para confirmação da conta criada.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI4-2019-1&diff=155054PJI4-2019-12019-03-06T22:38:18Z<p>Ederson.luiz: /* Liberação de portas */</p>
<hr />
<div>= Projeto Integrador IV= <br />
<font size="3"><br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 2a feira/19:00, 4a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 4a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji4-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
#Implantar um PABX IP integrado com serviços de telefonia fixa e móvel convencionais. <br />
#Prover a infraestrutura de rede necessária para o adequado funcionamento deste PABX IP. <br />
#Integrar os serviços de telefonia com outros serviços de rede.<br />
<br />
== Links interessantes ==<br />
<br />
* [https://hakin9.org/voip-hacking-techniques/ VoIP Hacking Techniques]<br />
* [https://www.vivaolinux.com.br/artigo/Asterisk-nao-e-um-Sip-Proxy Asterisk não é um SIP proxy]<br />
* [https://www.rnp.br/servicos/servicos-avancados/fonernp FoneRNP]<br />
* [https://www.digium.com/products/business-phone-systems/on-premise/virtual-pbx SwitchVox: PBX virtual]<br />
* [http://convergecom.com.br/teletime/21/03/2006/embratel-e-net-lancam-servico-de-telefonia-fixa-local/ Net Fone da Embratel é VoIP, mas não usa SIP]<br />
** [https://en.wikipedia.org/wiki/PacketCable ... e sim PacketCable]<br />
* [http://thevoipreport.com/article/cold-hard-voip-stats/ Estatísticas sobre VoIP no mundo]<br />
* [https://www.cisco.com/c/en/us/support/docs/voice/digital-cas/5717-e1-r2-sig.html Sinalização R2 (E1)]<br />
=== Provedores VoIP no Brasil ===<br />
* [https://www.falemaisvoip.com.br/o-que-e-voip/ FaleMaisVoIP]<br />
* [http://www.directcall.com.br/ DirectCall]<br />
* [http://www.teleco.com.br/opvoip.asp outros ...]<br />
<br />
== Resumo de comandos da CLI para o Asterisk ==<br />
<br />
# O Asterisk pode ser carregado de duas formas:<br />
#* '''foreground''': utilizado para depurar problemas na inicialização do Asterisk, quando ele não puder ser inicializado.<br />
#* '''background''': modo padrão de inicialização<br><br><br />
# Conectar à CLI do Asterisk carregado <syntaxhighlight lang=text><br />
asterisk -r<br />
rasterisk <br />
</syntaxhighlight><br />
# Comandos na CLI<br />
## Saindo da CLI sem interromper o processo <syntaxhighlight lang=text><br />
exit<br />
</syntaxhighlight><br />
## Carrega canais SIP previamente registrados <syntaxhighlight lang=text><br />
sip reload<br />
</syntaxhighlight><br />
## Mostra canais SIP registrados <syntaxhighlight lang=text><br />
sip show peers<br />
</syntaxhighlight><br />
## Carrega plano de discagem <syntaxhighlight lang=text><br />
dialplan reload<br />
</syntaxhighlight><br />
## Mostra a extensão criada no plano de discagem <syntaxhighlight lang=text><br />
dialplan show default<br />
</syntaxhighlight><br />
## Finalizando processo no Asterisk <syntaxhighlight lang=bash><br />
sudo core stop now<br />
</syntaxhighlight><br />
## Ver aplicações disponíveis no Asterisk <syntaxhighlight lang=text><br />
core show applications<br />
</syntaxhighlight><br />
# Iniciando Asterisk em modo Background <syntaxhighlight lang=bash><br />
sudo service asterisk start<br />
</syntaxhighlight><br />
# Carregar o Asterisk em modo ForeGround <syntaxhighlight lang=bash><br />
sudo asterisk -gc<br />
</syntaxhighlight><br />
</font><br />
<br />
=11/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1MNqwAklC8WL0-geeBuC_4kCTjGqDxcyi/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador IV===<br />
<br />
O foco do Projeto Integrador IV está na oferta de serviços ao usuário final e na convergência de serviços de telecomunicações, incluindo a integração dos serviços de telefonia fixa, móvel e VoIP. Além disso, também tem como objetivo a integração destes serviços de telecomunicações com outros serviços de rede como servidores Web, Email, Telefonia IP, administração de sistemas e usuários, compartilhamento de recursos, DNS, etc. <br />
<br />
<br />
Na figura abaixo é apresentado um esboço do cenário que foi desenvolvido durante o Projeto Integrador III. A proposta inicial é integrar a este cenário serviços de telefonia IP e convencional. Além disso, outros serviços podem ser integrados a ambos, como e-mail, DNS, acesso à câmeras IP, etc. <br />
<br />
[[imagem:Diagrama-PJI3.png|600px]]<br />
<br />
<br />
Uma vez integrados os serviços de rede e de telefonia e tendo em mente que a qualidade de serviço é um ponto sensível à aplicações de telefonia IP, espera-se desenvolver métodos de medição de rede para assegurar seu correto funcionamento.<br />
<br />
== PBX IP ==<br />
<br />
<br />
Um PBX IP funciona como uma central telefônica, porém intermediando chamadas VoIP. Com isso, as chamadas são feitas de um telefone IP em direção ao PBX IP, que a encaminha ao telefone IP de destino de acordo com suas regras de discagem. A figura abaixo ilustra como funciona uma chamada VoIP típica através de um PBX IP.<br />
<br />
[[imagem:Voip-call.png|500px]]<br />
<br />
<br />
Nas nossas aulas faremos uso de um PBX IP [http://www.asterisk.org/ Asterisk], que é um software desenvolvido pela [http://www.digium.com/ Digium]. O Asterisk roda em computadores do tipo PC que possuem sistema operacional baseado em Linux. Sua licença é livre, o que significa que não há custo de licenciamento para utilizá-lo.<br />
* [http://www.asterisk.org/get-started Uma visão geral sobre Asterisk]<br />
<br />
== PBX IP Asterisk ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/rmu/slides/aula-25.pdf Transparências]<br />
* [http://www.asterisk.org Site oficial do Asterisk]<br />
* [http://www.asteriskguru.com/ Asterisk Guru]<br />
* [http://www.voip-info.org/wiki Dicas sobre Asterisk]<br />
* [http://www.asteriskdocs.org/ Livro online gratuito sobre Asterisk]<br />
* [http://www.packetizer.com/ipmc/sip/papers/understanding_sip_voip/ Introdução a VoIP e SIP]<br />
* Livro [http://www.shopvoip.com.br/index.php?route=product/product&product_id=1263 ''Asterisk: Guia de Configuração - 5a geração''], de Flávio Gonçalves.<br />
<br />
<br />
'''Asterisk:''' uma solução completa de PABX baseado em software, permitindo ligar o mundo IP ao mundo da rede pública de telefonia comutada.<br />
<br />
'''Características Básicas:''' faz tudo que um PABX pequeno e simples faz e pouco mais<br />
* Transferência, música de espera, siga-me, etc.<br />
* Conferência, correio de voz, URA, fila de chamadas, monitoramento de chamadas, integração com o Jabber (Google talk)<br />
<br />
<br />
[[imagem:Asterisk-ex1.png|400px]]<br />
<br>''Exemplo de cenário de uso do Asterisk''<br />
<br />
<br />
<!-- [[imagem:Asterisk-arch.png|500px]]<br />
<br>''Arquitetura modular do Asterisk'' ---><br />
<br />
<br />
O Asterisk é um software complexo e com muitos recursos. Porém sua função mais elementar, que é intermediar chamadas, pode ser entendida com base em dois elementos importantes desse tipo de PBX. Esses elementos são o '''plano de discagem''' e '''configurações de canais'''. Na terminologia do Asterisk, um canal pode ser entendido como um ramal ou tronco. Para ter o Asterisk funcionando como uma central simplificada, é suficiente configurar esses dois elementos.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 4'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI4 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador IV'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professores: Ederson Luiz de Souza Santos e Mayara de Sousa'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2018'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=13/02/2019: Conceitos gerais, preparação do servidor e instalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
<b>Telefonia IP ou VoIP: O que é?</b><br />
----<br />
A Comunicação de Voz em Redes IP, chamada de VoIP, consiste no uso das redes de dados que utilizam o conjunto de protocolos das redes IP (TCP/UDP/IP) para a transmissão de sinais de Voz em tempo real na forma de pacotes de dados.<br />
<br />
A sua evolução natural levou ao aparecimento da Telefonia IP, que consiste no fornecimento de serviços de telefonia utilizando a rede IP para o estabelecimento de chamadas e comunicação de Voz.<br />
<br />
Nessas redes são implementados protocolos adicionais de sinalização de chamadas e transporte de Voz que permitem a comunicação com qualidade próxima àquela fornecida pelas redes convencionais dos sistemas públicos de telefonia comutada ou de telefonia móvel.<br/><br/><br />
<br />
<b>Digitalização de Sinais de Voz</b><br />
----<br />
Nos sistemas tradicionais o sinal de Voz utiliza uma banda de 4 kHz, e é digitalizado com uma taxa de amostragem de 8 kHz para ser recuperado adequadamente (Princípio de Nyquist). Como cada amostra é representada por um byte (8 bits, com até 256 valores distintos), cada canal de Voz necessita de uma banda de 64 kbit/s (8.000 amostras x 8 bits).<br />
<br />
Esta forma de digitalização do sinal de Voz atende a recomendação ITU-T G.711 - Pulse code modulation (PCM) of voice frequencies.<br />
<br />
Nos sistema de transmissão de Voz sobre IP, onde a demanda por banda é crítica, torna-se necessário utilizar também algoritmos de compressão do sinal de Voz. Esses algoritmos têm papel relevante pela economia de banda que proporcionam.<br />
<br />
O seu uso tem sido possível graças ao desenvolvimento dos processadores de sinais digitais (DSP’s), cuja capacidade de processamento tem crescido vertiginosamente.<br />
<br />
Estas necessidades incentivaram o desenvolvimento de tecnologias mais complexas para a digitalização e compressão de Voz, e que foram registradas através de recomendações do ITU-T. Estas recomendações são apresentadas na tabela abaixo, com algumas características relevantes.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs.jpg]]</div><br/><br/><br />
<br />
<b>Asterisk</b><br />
----<br />
O Asterisk é a implementação de uma central telefônica PBX (Private Branch eXchange) em software, criado por Mark Spencer em 1999, e distribuído pela Digium livremente seguindo a licençaGPL (GNU General Public License – GPL), ou através de código proprietário.<br />
<br />
O nome Asterisk vem do símbolo ‘*’, muito comum no mundo da telefonia.<br />
<br />
O Asterisk foi originalmente desenvolvido para Linux, mas atualmente podeser instalado e executado em uma grande variedade de sistemas operacionais, incluindo NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris e até mesmo Microsoft Windows, onde é conhecido por Asterisk Win32.<br/><br/><br />
<br />
<b>Características do Asterisk</b><br />
----<br />
O Asterisk é um software, baseado na licença GPL (GNU General Public License), que executa todas as funções de uma central telefônica convencional através das principais tecnologias de comunicação existentes no mercado, como por exemplo: linhas telefônicas analógicas, links de telefonia digital via placas de comunicação TDM (Time-Division Multplexing, ou Multiplexaçã ,o por divisão detempo), VoIP (Voice over IP, ou Voz sobre IP) através dos protocolos SIP, H.323, IAX2, MGCP, Skinny,GoogleTalk, Skype, entre outros.<br />
<br />
Através do Asterisk é possível estabelecer uma chamada entre qualquer um desses protocolos. O Asterisk é o que chamamos de B2B User Agent, ou melhor, Back-to-Back User Agent, ele estabelece uma chamada telefônica, separando cada “perna” da chamada entre origem e destino, e monitora todo o tráfego de áudio entre esses pontos. Por isso, caso esses pontos estejam utilizando CODECs diferentes, o Asterisk consegue transcodificar o áudio sem qualquer problema. Pode-se dizer que o Asterisk possui todas as funcionalidades das chamadas centrais telefônicas convencionais, como URAs, correio de voz, conferência, distribuição automática de chamadas, entre outras, e caso seja necessário, é possível acrescentar novas funcionalidades ao sistema através do próprio plano de discagem do Asterisk, módulos customizados escritos em C, ou ainda através de scripts escritos em Asterisk Gateway Interface (AGI). *Fonte: Construindo um PBX IP na pratica (Alexandre Keller)<br/><br/><br />
<br />
<b>Codecs</b><br />
----<br />
Um dos componentes necessários para transmissão de voz numa rede de dados é o Áudio CODEC (Codificador-Decodificador). Este componente é o responsável por transformar a voz humana (um sinal analógico) em uma seqüência de bits (um sinal digital) para transmissão numa rede de dados, fazendo amostragens periódicas no sinal de voz. Em equipamentos do tipo gateways VoIP, esses CODECs são implementados através de um componente chamado DSP (Digital Signal Processor).<br />
A introdução dos microprocessadores no final dos anos 70 e início dos anos 80 tornou possível usar técnicas de processamento digital de sinais (Digital Signal Processing) em um range muito maior de aplicações.<br />
Durante os anos 80 a importância crescente do processamento digital de sinais levou vários fabricantes importantes (como Texas Instruments, Analog Devices e Motorola) a desenvolverem os chips DSP, ou seja, microprocessadores especializados com arquiteturas projetadas especificamente para os tipos de operações requeridas ao processamento digital de sinais.<br />
Como um microprocessador de uso geral, um DSP é um dispositivo programável, com seu próprio conjunto de instruções nativas. O uso desses chips associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO-CODEC1].<br />
Cada CODEC provê certa qualidade de voz. A medida de qualidade da voz transmitida é uma resposta subjetiva de um ouvinte. Uma medida comum usada para determinar a qualidade do som produzido pelos CODECs específicos é o MOS (Mean Opinion Score). Com o uso do MOS, um amplo range de ouvintes julgam a qualidade de uma amostra de voz (correspondendo a um CODEC particular) numa escala de 1 a 5. A partir desses resultados, é calculada a média dos scores para atribuir o MOS para aquela amostra [CISCO-CODEC2].<br />
Na tabela 1 são apresentados alguns scores MOS para os CODECs mais usados. Na Tabela 2 são descritos os scores MOS.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs2.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:codecs3.jpg]]</div><br/><br />
<br />
<br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 1500 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* sudo apt-get update<br />
* sudo apt-get install build-essential module-assistant dkms<br />
* sudo m-a prepare<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
<br />
===<b>Instalação do Asterisk</b>===<br />
----<br />
Neste semestre iremos trabalhar com o Asterisk versão 13.22.0, o LibPRI 1.6.0, que é uma biblioteca Libpri será instalada para que tenhamos suporte aos canais PRI( ISDN, E1, T1 ), e o DAHDI, que é um pacote (Digium Asterisk Hardware Device Interface) nos permite carregar os drivers e configurar diversos tipos de placas de telefonia (para conectar telefones analógicos, linhas telefônicas, linhas digitais e outros).<br />
Antes de qualquer coisa, devemos atualizar o sistema via console de comando:<br />
<br />
#apt-get update<br />
#apt-get upgrade<br />
<br />
Também devemos instalar algumas dependências:<br />
<br />
# apt-get install -y make wget libssl-dev ncurses-dev libnewt-dev libxml2-dev linux-headers-generic g++ libsqlite3-dev uuid-dev libjansson-dev<br />
# apt-get install -y mysql-server libmysqld-dev<br />
<br />
Para baixar os arquivos do Asterisk, DAHDI e LibPRI, seguem os links abaixo (os comandos para a instalação completa do Asterisk, Libpri, Dahdi e banco de dados serão repassados em aula):<br />
<br />
[http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.22.0.tar.gz Asterisk 13.22.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz LibPRI 1.6.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz DAHDI]<br/><br />
<br />
Campos para o banco de dados:<br />
<br />
[https://docs.google.com/document/d/135vf4dUJhMmG0fVqzFXEYPQ095iBzpBU0O7fZz04hZs/edit?usp=sharing Arquivo banco de dados]<br />
<br />
<br/><br/><br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=18/02/2019: Instalação do Sistema Operacional Ubuntu 16.04.5 e reinstalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
...<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=20/02/2019: Comandos e configurações do Asterisk. Criação de ramais=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<b>Comandos Asterisk</b><br />
<br />
Para iniciarmos a utilização do Asterisk, devemos conhecer alguns comandos que serão utilizados no decorrer da disciplina.<br />
<br />
<br />
<b>Tipo: SIP</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do SIP<br />
<br />
sip set debug on<br/><br />
sip set debug off<br/><br />
<br />
'''sip reload''': Reload No arquivo: sip.conf<br/><br />
'''sip show channels:''' Visualizar canais ativos do Tipo SIP<br/><br />
'''sip show channel''': Detalhar 1 determinado canal ativo SIP<br/><br />
'''sip show inuse''': Listar todos os canais/peer existentes no Asterisk<br/><br />
'''sip show peers''': Visualizar os pares que registraram ou não no Asterisk usando SIP<br/><br />
'''sip show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando SIP)<br/><br />
'''sip show users''': Visualizar Dispositivos SIP, Plano de Discagem e Senha<br/><br />
'''sip show channelstats''': Visualizar estatísticas de buffer e jitter na rede e nas chamadas SIP ativas<br/><br />
<br />
<br />
<b>Tipo: IAX2</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do IAX2:<br/><br />
<br />
iax2 set debug on<br/><br />
iax2 set debug off<br/><br />
<br />
'''iax2 show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
'''iax2 show netstats''': Visualizar estatisticas de buffer e jitter na rede e nas chamadas IAX ativas<br/><br />
'''iax2 show peers''': Visualizar os pares que registraram ou não no Asterisk usando IAX<br/><br />
'''iax2 show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando IAX)<br/><br />
'''iax2 show stats''': Visualizar estatisticas do IAX<br/><br />
'''iax2 show users''': Visualizar Dispositivos IAX, Plano de Discagem e Senha<br/><br />
'''iax show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
<br />
<br />
<b>Tipo: Gerenciamento do Asterisk</b><br/><br />
<br />
<br />
'''restart now''': Restart Asterisk imediatamente<br/><br />
'''restart when convenient''': Aguarda inatividade no Asterisk para restartar o Asterisk em seguida<br/><br />
'''reload''': Reload nas configurações<br/><br />
'''stop now:''' Shut down no Asterisk imediatamente<br/><br />
'''dialplan reload''': Reload nos arquivos de configurações do plano de discagem extensions.conf<br/><br />
'''modules show''': Lista os módulos carregados no sistema<br/><br />
'''core show uptime''': Visualizar o tempo do Asterisk no Ar<br/><br />
'''core show version''': Visualizar informações sobre a versão do Asterisk<br/><br />
<br />
<br />
<b>Tipo: Comandos Gerais</b><br/><br />
<br />
<br />
'''dialplan show''': visualizar informações sobre um contexto<br/><br />
'''core show queues''': visualizar as filas criadas no Asterisk<br/><br />
'''soft hangup''': derrubar uma chamada ativa no Asterisk<br/><br />
'''core show applications''': visualizar informação sobre as aplicações disponíveis<br/><br />
'''core show application''': “Aplicação”: detalhar informação sobre determinada aplicação<br/><br />
<br />
<br />
<br />
<b>Preparar o servidor para liberar portas</b><br />
<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica.<br />
<br />
Script para liberação de portas <syntaxhighlight lang=bash><br />
#!/bin/sh<br />
<br />
### BEGIN INIT INFO<br />
# Provides: firewall.sh<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall.sh at boot time<br />
# Description: Enable service provided by firewall.sh.<br />
### END INIT INFO<br />
<br />
PATH="/bin:/sbin:/usr/bin:/usr/sbin"<br />
<br />
set -e<br />
<br />
echo "Starting firewall..."<br />
<br />
IPT="/sbin/iptables"<br />
<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
</syntaxhighlight><br />
<br />
<br />
<b>Iniciando a configuração dos ramais</b><br />
<br />
<br />
O asterisk possui um diretório onde ficam os arquivos de configuração, ele está localizado em /etc/asterisk.<br />
Para definirmos nossos ramais sip, o arquivo de configuração responsável é o sip.conf.<br />
<br />
<br />
Abaixo segue um exemplo de configuração do arquivo <b>sip.conf</b>:<br />
<br />
<br />
[general]<br/><br />
bindport=5060<br/><br />
bindaddr=0.0.0.0<br/><br />
context=default<br/><br />
disallow=all<br/><br />
allow=ulaw<br/><br />
allow=alaw<br/><br />
allow=gsm<br/><br />
maxexpirey=120<br/><br />
defaultexpirey=80<br/><br />
<br />
<br />
[1000]<br/><br />
type=friend<br/><br />
secret=123<br/><br />
host=dynamic<br/><br />
qualify=yes<br/><br />
<br />
<br />
Onde:<br />
<br />
<br />
'''bindaddr''': Endereço IP onde o Asterisk irá esperar pelas conexões SIP. O comportamento padrão é esperar em todas as interfaces e endereços secundários.<br />
<br />
'''Context''': Configura o contexto padrão onde todos os clientes serão colocados, a menos que seja sobrescrito na definição da entidade.<br />
<br />
'''Allow''': Permite que um determinado codec seja usado.<br />
<br />
'''Disallow''': Proíbe um determinado codec.<br />
<br />
'''Bindport''': Porta que o Asterisk deve esperar por conexões de entrada SIP. O padrão é 5060.<br />
<br />
'''maxexpirey''': Tempo máximo para registro em segundos.<br />
<br />
'''Defaultexpirey''': Tempo padrão para registro em segundos.<br />
<br />
<br />
<br />
'''[name]''': Quando um dispositivo SIP conecta-se ao Asterisk, ele utiliza a parte username do SIP URI para encontrar o peer/user.<br />
<br />
'''Type''': Configura a classe de conexão, as opções são peer, user e friend.<br />
<br />
'''Peer''': Entidade para a qual o Asterisk envia chamadas.<br />
<br />
'''User''': Entidade que faz chamadas através do Asterisk.<br />
<br />
'''Friend''': Os dois ao mesmo tempo.<br />
<br />
'''Host''': Configura o endereço IP ou o nome do host. Pode-se usar também a opção ‘dynamic’ onde se espera que o host faça o registro, é a opção mais comum.<br />
<br />
'''Secret''': Senha usada para autenticar o peer ou user fazendo uma chamada.<br />
<br />
'''Qualify''': caso esteja yes, o asterisk enviará um comando regularmente para verificar se o dispositivo ainda está online.<br />
<br />
<br />
<br />
<b>Plano de discagem</b><br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
<br />
Para criar um plano de discagem, deve-se editar o arquivo responsável, o extensions.conf. Este arquivo está localizado em /etc/asterisk. Uma parte importante neste arquivo é o contexto <b>general</b>:<br />
<br />
[general]<br/><br />
static=yes<br/><br />
writeprotect=no<br/><br />
autofallthrough=yes<br/><br />
clearglobalvars=no<br/><br />
priorityjumping=no<br/><br />
<br />
<br />
<br />
'''static e writeprotect''' – permite salvar o plano de discagem a partir da linha de comando.<br/><br />
'''Autofallthrough''' – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br/><br />
'''Clearglobalvars''' – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br/><br />
'''Priorityjumping''' – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br/><br />
<br />
Também devemos criar um contexto que já foi pré definido no ramal criado. No nosso caso se chamará <b>default</b>:<br />
<br />
<br />
[default]<br/><br />
exten = 1000,1,Dial(SIP/1000,30)<br/><br />
exten = 1000,2,Hangup()<br/><br />
<br />
<br />
Neste caso usamos duas aplicações, <b>Dial</b> e <b>Hangup</b>, responsáveis por discar e encerrar uma chamada, respectivamente.<br />
<br />
As aplicações mais comuns no Asterisk são:<br />
<br />
<br />
'''Answer''' – Atende uma chamada<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mas salva a posição de retorno<br/><br />
'''NooP''' – imprime na cli do asterisk o termo<br/><br />
<br />
<br />
<b>Exercício</b><br />
<br />
<br />
Crie 6 ramais (1000, 1001, 1002, 1003, 1004, 1005).<br />
<br />
Crie também um plano de discagem que permita a ligação entre todos os ramais.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=25/02/2019: Plano de discagem e máscaras=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
===Plano de discagem===<br />
<br />
O plano de discagem define como o Asterisk irá gerenciar as chamadas. Ele consiste de uma lista de instruções ou passos que o Asterisk deveria seguir. Essas instruções são disparadas a partir dos dígitos recebidos de um canal ou aplicação.<br />
O extensions.conf pode ser separado em quatro partes:<br />
<br />
* Contextos;<br />
* Extensões;<br />
* Prioridades;<br />
* Aplicações.<br />
<br />
<br />
====Contextos====<br />
<br />
Os contextos definem o escopo e permitem separar diferentes partes do plano de discagem, recebem o seu nome dentro de chaves ([]).<br />
No início do arquivo extensions.conf existe um contexto chamado [globals] onde as variáveis globais são definidas e podem ser usadas por todo o plano de discagem. E o contexto [general] que é utilizado para definir alguns parâmetros gerais.<br />
Os contextos estão ligados diretamente aos canais. Quando uma ligação entra no Asterisk por um canal ela é processada dentro do contexto deste canal.<br />
Ex:<br />
<br />
[gerentes]<br/><br />
exten=>9000,1,Playback(gerente)<br />
<br />
[visitantes]<br/><br />
exten=>9000,1,Playback(visitante)<br />
<br />
<br />
====Extensões====<br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
Exemplo:<br />
<br />
exten => 9001,1,Dial(SIP/9001,20) ; Extensão 9001, prioridade 1, disca para o ramal 9001 pelo protocolo SIP, tempo de resposta em segundos.<br/><br />
Exten => 9001,2,Hangup() ; Extensão 9001, prioridade 2, efetua o desligamento.<br />
<br />
Dentro de uma extensão, podemos ter as chamadas variáveis de canal, como abaixo:<br />
<br />
exten =>2001,2,DIAL(SIP/${RAMAL})<br />
<br />
Neste exemplo acima, criamos a variável “RAMAL” em tempo de execução, ou seja, na criação do Canal, ou da chamada.<br />
As variáveis de canais são as mais utilizadas normalmente, para trazer informação dos canais normalmente, como nome do canal , nome do contexto, extensão, etc. Vejamos abaixo algumas das variáveis mais usadas:<br />
<br />
${CALLERID} Identificador da chamada (nome ou número)<br/><br />
${CALLERIDNAME} O nome do id. Da chamada<br/><br />
${CALLERIDNUM} O número do id. Da chamada.<br/><br />
${CHANNEL} Nome do Canal atual ou corrente.<br/><br />
${CONTEXT} Nome do Contexto atual ou corrente.<br/><br />
${DATATIME} Data e hora no formato o YYYY-MM-DD_HH:MM:SS.<br/><br />
${DIALPEERNUMBER} Número de que foi chamada.<br/><br />
${DIALSTATUS} Status da Chamada.<br/><br />
${EXTEN} Extensão da chamada atual ou corrente.<br/><br />
${HANGUPCAUSE} Causa do término da chamada<br/><br />
${LANGUAGE} A Linguagem Atual.<br/><br />
${PRIORITY} Prioridade Atual<br/><br />
<br />
<br />
exemplo:<br />
<br />
exten => _20XX,1,Dial(SIP/${EXTEN})<br />
<br />
<br />
Neste exemplo podemos ver o uso de máscara e da variável do Asterisk EXTEN. Esse é justamente o exemplo que havia falado acima, para evitar o a criação de uma infinidades de canais. Quando um ramal começando com 20 e mais dois números for solicitado, irá chamar a aplicação DIAL para discar para o ramal ( SIP/${EXTEN}), onde esta variável trará o próprio numero discado. Assim precisamos apenas de uma entrada para todos os ramais do tipo 20XX.<br />
<br />
<br />
====Aplicações básicas do Asterisk====<br />
<br />
'''Answer''' – Atende uma chamada.<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução.<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados.<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mais salva a posição de retorno.<br/><br />
'''NooP''' – imprime na cli do asterisk o termo.<br/><br />
<br />
Para verificar as aplicações no asterisk, basta digitar n cli do mesmo o seguinte comando:<br />
<br />
# ubuntu-server*cli> core show applications<br />
<br />
Caso queira uma explicação detalhada de uma aplicação, utilize o comando:<br />
<br />
# ubuntu-server*cli> core show application nome_da_aplicacao<br />
<br />
Onde o termo nome_da_aplicacao corresponde a aplicação a qual queremos os detalhes.<br />
<br />
<br />
Formato das extensões<br />
<br />
8000 – numérica<br/><br />
Alexander – alfanumérica<br/><br />
4321/1234 – Numérica com callerID<br/><br />
_4XXX – Usando máscaras<br/><br />
s – padrões pré definidos<br/><br />
<br />
Máscaras<br />
<br />
_ - início de uma máscaras<br/><br />
. - aceita n caracteres subsequentes<br/><br />
[13-9] – qualquer dígito dentro dos colchetes (1, de 3 até 9), mas apenas um deles<br/><br />
X – qualquer dígito entre 0 e 9<br/><br />
Z – qualquer dígito entre 1 e 9<br/><br />
N – qualquer dígito entre 2 e 9<br/><br />
<br />
Prioridades<br />
<br />
Prioridades são passos numerados na execução de cada extensão. Cada prioridade chama uma aplicação especifica. Se os números das prioridades não forem sequenciais o Asterisk aborta a execução. A partir da versão 1.2 do Asterisk, tornou-se comum o uso da prioridade “n”, no lugar da associação manual de números, assim como a possibilidade da utilização de labels e aliases.<br />
<br />
<br />
'''Exercícios'''<br />
<br />
<br />
# Deve-se criar extensões para ramais com 4 dígitos, permitindo que iniciem com 2 ou 3 e tenham sua numeração entre 2000 e 2499, e também entre 3000 e 3499;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando em 6 ou 7 e que tenham sua numeração entre 6500 e 6599, e também entre 7500 e 7599;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando com 9 e que tenham numeração entre 9600 a 9700;<br/><br />
# Criar extensões para celulares com 9 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para celulares com 9 dígitos, sem operadora;<br/><br />
# Criar extensões para telefones fixos com 8 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para telefones fixos com 8 dígitos, sem operadora.<br/><br />
<br />
<br />
'''Observações:'''<br />
<br />
* Os celulares iniciam com o dígito 9 e telefones fixos com 2 ou 3.<br />
<br />
* Em cada extensão usar uma aplicação para escrever na CLI do Asterisk qual a ligação está sendo efetuada, o número e o nome dado ao ramal. Ex: Esta ligação está sendo efetuada de celular sem operadora de longa distância.<br />
<br />
<br />
<br />
Leituras que podem ser úteis:<br />
<br />
[http://stato.blog.br/wordpress/asterisk-parte-3-variaveis-macros-e-mascaras/ Variáveis, Macros e Máscaras]<br />
<br />
[https://www.vivaolinux.com.br/etc/extensions.conf-caue.garcia/ Extensions.conf]<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=27/02/2019: Plano de discagem e máscaras - continuação=<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=06/03/2019: Liberação de portas, Aplicações e instalação de áudio em português=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
===Liberação de portas===<br />
<br />
Preparando o servidor para liberação de portas para autenticação dos ramais e efetuar chamadas, caso necessário<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica. Para isso iremos criar um script de firewall no diretório /etc/init.d/ com o nome de firewall.<br />
Neste arquivo colocaremos o seguinte conteúdo:<br />
<br />
#!/bin/sh<br />
### BEGIN INIT INFO<br />
# Provides: firewall<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall at boot time<br />
# Description: Enable service provided by firewall.<br />
### END INIT INFO<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
===Aplicações===<br />
<br />
As aplicações são partes fundamentais do Asterisk, elas tratam o canal de voz, tocando sons, aceitando dígitos ou encerrando uma chamada. As aplicações são chamadas com opções que afetam a sua forma de funcionamento.<br />
<br />
Agora testaremos este ramal, iremos criar uma aplicação onde discaremos *65 no ramal registrado e o asterisk nos dirá qual é o ramal que está em uso.<br />
<br />
Para isso, vamos editar o arquivo responsável pelos planos de discagem, o extensions.conf. Este arquivo está localizado em /etc/asterisk.<br />
<br />
Criaremos um contexto chamado app:<br />
<br />
<br />
'''[app]'''<br/><br />
'''exten =>*65,1,Goto(function-speakextnum,s,1)'''<br />
<br />
<br />
Ao discarmos *65, este contexto encaminhará, através da função Goto (enviar para), para outro contexto, chamado function-speakextnum:<br />
<br />
<br />
'''[function-speakextnum]'''<br/><br />
'''exten => s,1,Set(Description="Identifica ramal")'''<br/><br />
'''exten => s,2,Answer()'''<br/><br />
'''exten => s,3,Wait(2)'''<br/><br />
'''exten => s,4,Playback(telephone-number&is)'''<br/><br />
'''exten => s,5,SayDigits(${CALLERID(num)})'''<br/><br />
'''exten => s,6,Wait(2)'''<br/><br />
'''exten => s,7,Hangup()'''<br/><br />
<br />
<br />
Basicamente, este contexto terá uma descrição, utilizará os sons previamente criados no asterisk para nos dizer qual o ramal em uso e após 2 segundos desligar.<br />
<br />
Agora necessitamos incluir a aplicação no contexto definido no arquivo sip.conf. Devemos recordar que este contexto se chama default:<br />
<br />
<br />
'''[default]'''<br/><br />
'''include => app'''<br />
<br />
<br />
Pudemos identificar que a linguagem utilizada é o inglês. O que iremos fazer é instalar o idioma português.<br />
<br />
Para isso, devemos efetuar o download do arquivo de áudio em português, neste link:<br />
<br />
Baixe os arquivos de som:<br />
<br />
# wget -O core.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-core-pt-BR-sln16.zip<br />
# wget -O extra.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-extra-pt-BR-sln16.zip<br />
<br />
<br />
Arquivo Convert deve conter os comandos abaixo:<br />
#!/bin/bash<br />
for a in $(find . -name '*.sln16'); do<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\<br />
done<br />
<br />
===Avaliação===<br />
<br />
<br />
Deve ser entregue o relatório parcial, via Sigaa, com todo o conteúdo visto até o momento. Serão avaliados os seguintes itens:<br />
<br />
# Conteúdo;<br />
# Organização;<br />
# Metodologia (formatação do conteúdo de acordo com o que foi passado em aula).<br />
<br />
O relatório deve ser entregue até as 23:59 de 10/03/2019, em formato '''PDF''' (não serão considerados outros formatos).<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI4-2019-1&diff=155053PJI4-2019-12019-03-06T22:37:07Z<p>Ederson.luiz: /* Liberação de portas */</p>
<hr />
<div>= Projeto Integrador IV= <br />
<font size="3"><br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 2a feira/19:00, 4a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 4a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji4-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
#Implantar um PABX IP integrado com serviços de telefonia fixa e móvel convencionais. <br />
#Prover a infraestrutura de rede necessária para o adequado funcionamento deste PABX IP. <br />
#Integrar os serviços de telefonia com outros serviços de rede.<br />
<br />
== Links interessantes ==<br />
<br />
* [https://hakin9.org/voip-hacking-techniques/ VoIP Hacking Techniques]<br />
* [https://www.vivaolinux.com.br/artigo/Asterisk-nao-e-um-Sip-Proxy Asterisk não é um SIP proxy]<br />
* [https://www.rnp.br/servicos/servicos-avancados/fonernp FoneRNP]<br />
* [https://www.digium.com/products/business-phone-systems/on-premise/virtual-pbx SwitchVox: PBX virtual]<br />
* [http://convergecom.com.br/teletime/21/03/2006/embratel-e-net-lancam-servico-de-telefonia-fixa-local/ Net Fone da Embratel é VoIP, mas não usa SIP]<br />
** [https://en.wikipedia.org/wiki/PacketCable ... e sim PacketCable]<br />
* [http://thevoipreport.com/article/cold-hard-voip-stats/ Estatísticas sobre VoIP no mundo]<br />
* [https://www.cisco.com/c/en/us/support/docs/voice/digital-cas/5717-e1-r2-sig.html Sinalização R2 (E1)]<br />
=== Provedores VoIP no Brasil ===<br />
* [https://www.falemaisvoip.com.br/o-que-e-voip/ FaleMaisVoIP]<br />
* [http://www.directcall.com.br/ DirectCall]<br />
* [http://www.teleco.com.br/opvoip.asp outros ...]<br />
<br />
== Resumo de comandos da CLI para o Asterisk ==<br />
<br />
# O Asterisk pode ser carregado de duas formas:<br />
#* '''foreground''': utilizado para depurar problemas na inicialização do Asterisk, quando ele não puder ser inicializado.<br />
#* '''background''': modo padrão de inicialização<br><br><br />
# Conectar à CLI do Asterisk carregado <syntaxhighlight lang=text><br />
asterisk -r<br />
rasterisk <br />
</syntaxhighlight><br />
# Comandos na CLI<br />
## Saindo da CLI sem interromper o processo <syntaxhighlight lang=text><br />
exit<br />
</syntaxhighlight><br />
## Carrega canais SIP previamente registrados <syntaxhighlight lang=text><br />
sip reload<br />
</syntaxhighlight><br />
## Mostra canais SIP registrados <syntaxhighlight lang=text><br />
sip show peers<br />
</syntaxhighlight><br />
## Carrega plano de discagem <syntaxhighlight lang=text><br />
dialplan reload<br />
</syntaxhighlight><br />
## Mostra a extensão criada no plano de discagem <syntaxhighlight lang=text><br />
dialplan show default<br />
</syntaxhighlight><br />
## Finalizando processo no Asterisk <syntaxhighlight lang=bash><br />
sudo core stop now<br />
</syntaxhighlight><br />
## Ver aplicações disponíveis no Asterisk <syntaxhighlight lang=text><br />
core show applications<br />
</syntaxhighlight><br />
# Iniciando Asterisk em modo Background <syntaxhighlight lang=bash><br />
sudo service asterisk start<br />
</syntaxhighlight><br />
# Carregar o Asterisk em modo ForeGround <syntaxhighlight lang=bash><br />
sudo asterisk -gc<br />
</syntaxhighlight><br />
</font><br />
<br />
=11/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1MNqwAklC8WL0-geeBuC_4kCTjGqDxcyi/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador IV===<br />
<br />
O foco do Projeto Integrador IV está na oferta de serviços ao usuário final e na convergência de serviços de telecomunicações, incluindo a integração dos serviços de telefonia fixa, móvel e VoIP. Além disso, também tem como objetivo a integração destes serviços de telecomunicações com outros serviços de rede como servidores Web, Email, Telefonia IP, administração de sistemas e usuários, compartilhamento de recursos, DNS, etc. <br />
<br />
<br />
Na figura abaixo é apresentado um esboço do cenário que foi desenvolvido durante o Projeto Integrador III. A proposta inicial é integrar a este cenário serviços de telefonia IP e convencional. Além disso, outros serviços podem ser integrados a ambos, como e-mail, DNS, acesso à câmeras IP, etc. <br />
<br />
[[imagem:Diagrama-PJI3.png|600px]]<br />
<br />
<br />
Uma vez integrados os serviços de rede e de telefonia e tendo em mente que a qualidade de serviço é um ponto sensível à aplicações de telefonia IP, espera-se desenvolver métodos de medição de rede para assegurar seu correto funcionamento.<br />
<br />
== PBX IP ==<br />
<br />
<br />
Um PBX IP funciona como uma central telefônica, porém intermediando chamadas VoIP. Com isso, as chamadas são feitas de um telefone IP em direção ao PBX IP, que a encaminha ao telefone IP de destino de acordo com suas regras de discagem. A figura abaixo ilustra como funciona uma chamada VoIP típica através de um PBX IP.<br />
<br />
[[imagem:Voip-call.png|500px]]<br />
<br />
<br />
Nas nossas aulas faremos uso de um PBX IP [http://www.asterisk.org/ Asterisk], que é um software desenvolvido pela [http://www.digium.com/ Digium]. O Asterisk roda em computadores do tipo PC que possuem sistema operacional baseado em Linux. Sua licença é livre, o que significa que não há custo de licenciamento para utilizá-lo.<br />
* [http://www.asterisk.org/get-started Uma visão geral sobre Asterisk]<br />
<br />
== PBX IP Asterisk ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/rmu/slides/aula-25.pdf Transparências]<br />
* [http://www.asterisk.org Site oficial do Asterisk]<br />
* [http://www.asteriskguru.com/ Asterisk Guru]<br />
* [http://www.voip-info.org/wiki Dicas sobre Asterisk]<br />
* [http://www.asteriskdocs.org/ Livro online gratuito sobre Asterisk]<br />
* [http://www.packetizer.com/ipmc/sip/papers/understanding_sip_voip/ Introdução a VoIP e SIP]<br />
* Livro [http://www.shopvoip.com.br/index.php?route=product/product&product_id=1263 ''Asterisk: Guia de Configuração - 5a geração''], de Flávio Gonçalves.<br />
<br />
<br />
'''Asterisk:''' uma solução completa de PABX baseado em software, permitindo ligar o mundo IP ao mundo da rede pública de telefonia comutada.<br />
<br />
'''Características Básicas:''' faz tudo que um PABX pequeno e simples faz e pouco mais<br />
* Transferência, música de espera, siga-me, etc.<br />
* Conferência, correio de voz, URA, fila de chamadas, monitoramento de chamadas, integração com o Jabber (Google talk)<br />
<br />
<br />
[[imagem:Asterisk-ex1.png|400px]]<br />
<br>''Exemplo de cenário de uso do Asterisk''<br />
<br />
<br />
<!-- [[imagem:Asterisk-arch.png|500px]]<br />
<br>''Arquitetura modular do Asterisk'' ---><br />
<br />
<br />
O Asterisk é um software complexo e com muitos recursos. Porém sua função mais elementar, que é intermediar chamadas, pode ser entendida com base em dois elementos importantes desse tipo de PBX. Esses elementos são o '''plano de discagem''' e '''configurações de canais'''. Na terminologia do Asterisk, um canal pode ser entendido como um ramal ou tronco. Para ter o Asterisk funcionando como uma central simplificada, é suficiente configurar esses dois elementos.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 4'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI4 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador IV'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professores: Ederson Luiz de Souza Santos e Mayara de Sousa'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2018'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=13/02/2019: Conceitos gerais, preparação do servidor e instalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
<b>Telefonia IP ou VoIP: O que é?</b><br />
----<br />
A Comunicação de Voz em Redes IP, chamada de VoIP, consiste no uso das redes de dados que utilizam o conjunto de protocolos das redes IP (TCP/UDP/IP) para a transmissão de sinais de Voz em tempo real na forma de pacotes de dados.<br />
<br />
A sua evolução natural levou ao aparecimento da Telefonia IP, que consiste no fornecimento de serviços de telefonia utilizando a rede IP para o estabelecimento de chamadas e comunicação de Voz.<br />
<br />
Nessas redes são implementados protocolos adicionais de sinalização de chamadas e transporte de Voz que permitem a comunicação com qualidade próxima àquela fornecida pelas redes convencionais dos sistemas públicos de telefonia comutada ou de telefonia móvel.<br/><br/><br />
<br />
<b>Digitalização de Sinais de Voz</b><br />
----<br />
Nos sistemas tradicionais o sinal de Voz utiliza uma banda de 4 kHz, e é digitalizado com uma taxa de amostragem de 8 kHz para ser recuperado adequadamente (Princípio de Nyquist). Como cada amostra é representada por um byte (8 bits, com até 256 valores distintos), cada canal de Voz necessita de uma banda de 64 kbit/s (8.000 amostras x 8 bits).<br />
<br />
Esta forma de digitalização do sinal de Voz atende a recomendação ITU-T G.711 - Pulse code modulation (PCM) of voice frequencies.<br />
<br />
Nos sistema de transmissão de Voz sobre IP, onde a demanda por banda é crítica, torna-se necessário utilizar também algoritmos de compressão do sinal de Voz. Esses algoritmos têm papel relevante pela economia de banda que proporcionam.<br />
<br />
O seu uso tem sido possível graças ao desenvolvimento dos processadores de sinais digitais (DSP’s), cuja capacidade de processamento tem crescido vertiginosamente.<br />
<br />
Estas necessidades incentivaram o desenvolvimento de tecnologias mais complexas para a digitalização e compressão de Voz, e que foram registradas através de recomendações do ITU-T. Estas recomendações são apresentadas na tabela abaixo, com algumas características relevantes.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs.jpg]]</div><br/><br/><br />
<br />
<b>Asterisk</b><br />
----<br />
O Asterisk é a implementação de uma central telefônica PBX (Private Branch eXchange) em software, criado por Mark Spencer em 1999, e distribuído pela Digium livremente seguindo a licençaGPL (GNU General Public License – GPL), ou através de código proprietário.<br />
<br />
O nome Asterisk vem do símbolo ‘*’, muito comum no mundo da telefonia.<br />
<br />
O Asterisk foi originalmente desenvolvido para Linux, mas atualmente podeser instalado e executado em uma grande variedade de sistemas operacionais, incluindo NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris e até mesmo Microsoft Windows, onde é conhecido por Asterisk Win32.<br/><br/><br />
<br />
<b>Características do Asterisk</b><br />
----<br />
O Asterisk é um software, baseado na licença GPL (GNU General Public License), que executa todas as funções de uma central telefônica convencional através das principais tecnologias de comunicação existentes no mercado, como por exemplo: linhas telefônicas analógicas, links de telefonia digital via placas de comunicação TDM (Time-Division Multplexing, ou Multiplexaçã ,o por divisão detempo), VoIP (Voice over IP, ou Voz sobre IP) através dos protocolos SIP, H.323, IAX2, MGCP, Skinny,GoogleTalk, Skype, entre outros.<br />
<br />
Através do Asterisk é possível estabelecer uma chamada entre qualquer um desses protocolos. O Asterisk é o que chamamos de B2B User Agent, ou melhor, Back-to-Back User Agent, ele estabelece uma chamada telefônica, separando cada “perna” da chamada entre origem e destino, e monitora todo o tráfego de áudio entre esses pontos. Por isso, caso esses pontos estejam utilizando CODECs diferentes, o Asterisk consegue transcodificar o áudio sem qualquer problema. Pode-se dizer que o Asterisk possui todas as funcionalidades das chamadas centrais telefônicas convencionais, como URAs, correio de voz, conferência, distribuição automática de chamadas, entre outras, e caso seja necessário, é possível acrescentar novas funcionalidades ao sistema através do próprio plano de discagem do Asterisk, módulos customizados escritos em C, ou ainda através de scripts escritos em Asterisk Gateway Interface (AGI). *Fonte: Construindo um PBX IP na pratica (Alexandre Keller)<br/><br/><br />
<br />
<b>Codecs</b><br />
----<br />
Um dos componentes necessários para transmissão de voz numa rede de dados é o Áudio CODEC (Codificador-Decodificador). Este componente é o responsável por transformar a voz humana (um sinal analógico) em uma seqüência de bits (um sinal digital) para transmissão numa rede de dados, fazendo amostragens periódicas no sinal de voz. Em equipamentos do tipo gateways VoIP, esses CODECs são implementados através de um componente chamado DSP (Digital Signal Processor).<br />
A introdução dos microprocessadores no final dos anos 70 e início dos anos 80 tornou possível usar técnicas de processamento digital de sinais (Digital Signal Processing) em um range muito maior de aplicações.<br />
Durante os anos 80 a importância crescente do processamento digital de sinais levou vários fabricantes importantes (como Texas Instruments, Analog Devices e Motorola) a desenvolverem os chips DSP, ou seja, microprocessadores especializados com arquiteturas projetadas especificamente para os tipos de operações requeridas ao processamento digital de sinais.<br />
Como um microprocessador de uso geral, um DSP é um dispositivo programável, com seu próprio conjunto de instruções nativas. O uso desses chips associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO-CODEC1].<br />
Cada CODEC provê certa qualidade de voz. A medida de qualidade da voz transmitida é uma resposta subjetiva de um ouvinte. Uma medida comum usada para determinar a qualidade do som produzido pelos CODECs específicos é o MOS (Mean Opinion Score). Com o uso do MOS, um amplo range de ouvintes julgam a qualidade de uma amostra de voz (correspondendo a um CODEC particular) numa escala de 1 a 5. A partir desses resultados, é calculada a média dos scores para atribuir o MOS para aquela amostra [CISCO-CODEC2].<br />
Na tabela 1 são apresentados alguns scores MOS para os CODECs mais usados. Na Tabela 2 são descritos os scores MOS.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs2.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:codecs3.jpg]]</div><br/><br />
<br />
<br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 1500 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* sudo apt-get update<br />
* sudo apt-get install build-essential module-assistant dkms<br />
* sudo m-a prepare<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
<br />
===<b>Instalação do Asterisk</b>===<br />
----<br />
Neste semestre iremos trabalhar com o Asterisk versão 13.22.0, o LibPRI 1.6.0, que é uma biblioteca Libpri será instalada para que tenhamos suporte aos canais PRI( ISDN, E1, T1 ), e o DAHDI, que é um pacote (Digium Asterisk Hardware Device Interface) nos permite carregar os drivers e configurar diversos tipos de placas de telefonia (para conectar telefones analógicos, linhas telefônicas, linhas digitais e outros).<br />
Antes de qualquer coisa, devemos atualizar o sistema via console de comando:<br />
<br />
#apt-get update<br />
#apt-get upgrade<br />
<br />
Também devemos instalar algumas dependências:<br />
<br />
# apt-get install -y make wget libssl-dev ncurses-dev libnewt-dev libxml2-dev linux-headers-generic g++ libsqlite3-dev uuid-dev libjansson-dev<br />
# apt-get install -y mysql-server libmysqld-dev<br />
<br />
Para baixar os arquivos do Asterisk, DAHDI e LibPRI, seguem os links abaixo (os comandos para a instalação completa do Asterisk, Libpri, Dahdi e banco de dados serão repassados em aula):<br />
<br />
[http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.22.0.tar.gz Asterisk 13.22.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz LibPRI 1.6.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz DAHDI]<br/><br />
<br />
Campos para o banco de dados:<br />
<br />
[https://docs.google.com/document/d/135vf4dUJhMmG0fVqzFXEYPQ095iBzpBU0O7fZz04hZs/edit?usp=sharing Arquivo banco de dados]<br />
<br />
<br/><br/><br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=18/02/2019: Instalação do Sistema Operacional Ubuntu 16.04.5 e reinstalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
...<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=20/02/2019: Comandos e configurações do Asterisk. Criação de ramais=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<b>Comandos Asterisk</b><br />
<br />
Para iniciarmos a utilização do Asterisk, devemos conhecer alguns comandos que serão utilizados no decorrer da disciplina.<br />
<br />
<br />
<b>Tipo: SIP</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do SIP<br />
<br />
sip set debug on<br/><br />
sip set debug off<br/><br />
<br />
'''sip reload''': Reload No arquivo: sip.conf<br/><br />
'''sip show channels:''' Visualizar canais ativos do Tipo SIP<br/><br />
'''sip show channel''': Detalhar 1 determinado canal ativo SIP<br/><br />
'''sip show inuse''': Listar todos os canais/peer existentes no Asterisk<br/><br />
'''sip show peers''': Visualizar os pares que registraram ou não no Asterisk usando SIP<br/><br />
'''sip show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando SIP)<br/><br />
'''sip show users''': Visualizar Dispositivos SIP, Plano de Discagem e Senha<br/><br />
'''sip show channelstats''': Visualizar estatísticas de buffer e jitter na rede e nas chamadas SIP ativas<br/><br />
<br />
<br />
<b>Tipo: IAX2</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do IAX2:<br/><br />
<br />
iax2 set debug on<br/><br />
iax2 set debug off<br/><br />
<br />
'''iax2 show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
'''iax2 show netstats''': Visualizar estatisticas de buffer e jitter na rede e nas chamadas IAX ativas<br/><br />
'''iax2 show peers''': Visualizar os pares que registraram ou não no Asterisk usando IAX<br/><br />
'''iax2 show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando IAX)<br/><br />
'''iax2 show stats''': Visualizar estatisticas do IAX<br/><br />
'''iax2 show users''': Visualizar Dispositivos IAX, Plano de Discagem e Senha<br/><br />
'''iax show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
<br />
<br />
<b>Tipo: Gerenciamento do Asterisk</b><br/><br />
<br />
<br />
'''restart now''': Restart Asterisk imediatamente<br/><br />
'''restart when convenient''': Aguarda inatividade no Asterisk para restartar o Asterisk em seguida<br/><br />
'''reload''': Reload nas configurações<br/><br />
'''stop now:''' Shut down no Asterisk imediatamente<br/><br />
'''dialplan reload''': Reload nos arquivos de configurações do plano de discagem extensions.conf<br/><br />
'''modules show''': Lista os módulos carregados no sistema<br/><br />
'''core show uptime''': Visualizar o tempo do Asterisk no Ar<br/><br />
'''core show version''': Visualizar informações sobre a versão do Asterisk<br/><br />
<br />
<br />
<b>Tipo: Comandos Gerais</b><br/><br />
<br />
<br />
'''dialplan show''': visualizar informações sobre um contexto<br/><br />
'''core show queues''': visualizar as filas criadas no Asterisk<br/><br />
'''soft hangup''': derrubar uma chamada ativa no Asterisk<br/><br />
'''core show applications''': visualizar informação sobre as aplicações disponíveis<br/><br />
'''core show application''': “Aplicação”: detalhar informação sobre determinada aplicação<br/><br />
<br />
<br />
<br />
<b>Preparar o servidor para liberar portas</b><br />
<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica.<br />
<br />
Script para liberação de portas <syntaxhighlight lang=bash><br />
#!/bin/sh<br />
<br />
### BEGIN INIT INFO<br />
# Provides: firewall.sh<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall.sh at boot time<br />
# Description: Enable service provided by firewall.sh.<br />
### END INIT INFO<br />
<br />
PATH="/bin:/sbin:/usr/bin:/usr/sbin"<br />
<br />
set -e<br />
<br />
echo "Starting firewall..."<br />
<br />
IPT="/sbin/iptables"<br />
<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
</syntaxhighlight><br />
<br />
<br />
<b>Iniciando a configuração dos ramais</b><br />
<br />
<br />
O asterisk possui um diretório onde ficam os arquivos de configuração, ele está localizado em /etc/asterisk.<br />
Para definirmos nossos ramais sip, o arquivo de configuração responsável é o sip.conf.<br />
<br />
<br />
Abaixo segue um exemplo de configuração do arquivo <b>sip.conf</b>:<br />
<br />
<br />
[general]<br/><br />
bindport=5060<br/><br />
bindaddr=0.0.0.0<br/><br />
context=default<br/><br />
disallow=all<br/><br />
allow=ulaw<br/><br />
allow=alaw<br/><br />
allow=gsm<br/><br />
maxexpirey=120<br/><br />
defaultexpirey=80<br/><br />
<br />
<br />
[1000]<br/><br />
type=friend<br/><br />
secret=123<br/><br />
host=dynamic<br/><br />
qualify=yes<br/><br />
<br />
<br />
Onde:<br />
<br />
<br />
'''bindaddr''': Endereço IP onde o Asterisk irá esperar pelas conexões SIP. O comportamento padrão é esperar em todas as interfaces e endereços secundários.<br />
<br />
'''Context''': Configura o contexto padrão onde todos os clientes serão colocados, a menos que seja sobrescrito na definição da entidade.<br />
<br />
'''Allow''': Permite que um determinado codec seja usado.<br />
<br />
'''Disallow''': Proíbe um determinado codec.<br />
<br />
'''Bindport''': Porta que o Asterisk deve esperar por conexões de entrada SIP. O padrão é 5060.<br />
<br />
'''maxexpirey''': Tempo máximo para registro em segundos.<br />
<br />
'''Defaultexpirey''': Tempo padrão para registro em segundos.<br />
<br />
<br />
<br />
'''[name]''': Quando um dispositivo SIP conecta-se ao Asterisk, ele utiliza a parte username do SIP URI para encontrar o peer/user.<br />
<br />
'''Type''': Configura a classe de conexão, as opções são peer, user e friend.<br />
<br />
'''Peer''': Entidade para a qual o Asterisk envia chamadas.<br />
<br />
'''User''': Entidade que faz chamadas através do Asterisk.<br />
<br />
'''Friend''': Os dois ao mesmo tempo.<br />
<br />
'''Host''': Configura o endereço IP ou o nome do host. Pode-se usar também a opção ‘dynamic’ onde se espera que o host faça o registro, é a opção mais comum.<br />
<br />
'''Secret''': Senha usada para autenticar o peer ou user fazendo uma chamada.<br />
<br />
'''Qualify''': caso esteja yes, o asterisk enviará um comando regularmente para verificar se o dispositivo ainda está online.<br />
<br />
<br />
<br />
<b>Plano de discagem</b><br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
<br />
Para criar um plano de discagem, deve-se editar o arquivo responsável, o extensions.conf. Este arquivo está localizado em /etc/asterisk. Uma parte importante neste arquivo é o contexto <b>general</b>:<br />
<br />
[general]<br/><br />
static=yes<br/><br />
writeprotect=no<br/><br />
autofallthrough=yes<br/><br />
clearglobalvars=no<br/><br />
priorityjumping=no<br/><br />
<br />
<br />
<br />
'''static e writeprotect''' – permite salvar o plano de discagem a partir da linha de comando.<br/><br />
'''Autofallthrough''' – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br/><br />
'''Clearglobalvars''' – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br/><br />
'''Priorityjumping''' – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br/><br />
<br />
Também devemos criar um contexto que já foi pré definido no ramal criado. No nosso caso se chamará <b>default</b>:<br />
<br />
<br />
[default]<br/><br />
exten = 1000,1,Dial(SIP/1000,30)<br/><br />
exten = 1000,2,Hangup()<br/><br />
<br />
<br />
Neste caso usamos duas aplicações, <b>Dial</b> e <b>Hangup</b>, responsáveis por discar e encerrar uma chamada, respectivamente.<br />
<br />
As aplicações mais comuns no Asterisk são:<br />
<br />
<br />
'''Answer''' – Atende uma chamada<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mas salva a posição de retorno<br/><br />
'''NooP''' – imprime na cli do asterisk o termo<br/><br />
<br />
<br />
<b>Exercício</b><br />
<br />
<br />
Crie 6 ramais (1000, 1001, 1002, 1003, 1004, 1005).<br />
<br />
Crie também um plano de discagem que permita a ligação entre todos os ramais.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=25/02/2019: Plano de discagem e máscaras=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
===Plano de discagem===<br />
<br />
O plano de discagem define como o Asterisk irá gerenciar as chamadas. Ele consiste de uma lista de instruções ou passos que o Asterisk deveria seguir. Essas instruções são disparadas a partir dos dígitos recebidos de um canal ou aplicação.<br />
O extensions.conf pode ser separado em quatro partes:<br />
<br />
* Contextos;<br />
* Extensões;<br />
* Prioridades;<br />
* Aplicações.<br />
<br />
<br />
====Contextos====<br />
<br />
Os contextos definem o escopo e permitem separar diferentes partes do plano de discagem, recebem o seu nome dentro de chaves ([]).<br />
No início do arquivo extensions.conf existe um contexto chamado [globals] onde as variáveis globais são definidas e podem ser usadas por todo o plano de discagem. E o contexto [general] que é utilizado para definir alguns parâmetros gerais.<br />
Os contextos estão ligados diretamente aos canais. Quando uma ligação entra no Asterisk por um canal ela é processada dentro do contexto deste canal.<br />
Ex:<br />
<br />
[gerentes]<br/><br />
exten=>9000,1,Playback(gerente)<br />
<br />
[visitantes]<br/><br />
exten=>9000,1,Playback(visitante)<br />
<br />
<br />
====Extensões====<br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
Exemplo:<br />
<br />
exten => 9001,1,Dial(SIP/9001,20) ; Extensão 9001, prioridade 1, disca para o ramal 9001 pelo protocolo SIP, tempo de resposta em segundos.<br/><br />
Exten => 9001,2,Hangup() ; Extensão 9001, prioridade 2, efetua o desligamento.<br />
<br />
Dentro de uma extensão, podemos ter as chamadas variáveis de canal, como abaixo:<br />
<br />
exten =>2001,2,DIAL(SIP/${RAMAL})<br />
<br />
Neste exemplo acima, criamos a variável “RAMAL” em tempo de execução, ou seja, na criação do Canal, ou da chamada.<br />
As variáveis de canais são as mais utilizadas normalmente, para trazer informação dos canais normalmente, como nome do canal , nome do contexto, extensão, etc. Vejamos abaixo algumas das variáveis mais usadas:<br />
<br />
${CALLERID} Identificador da chamada (nome ou número)<br/><br />
${CALLERIDNAME} O nome do id. Da chamada<br/><br />
${CALLERIDNUM} O número do id. Da chamada.<br/><br />
${CHANNEL} Nome do Canal atual ou corrente.<br/><br />
${CONTEXT} Nome do Contexto atual ou corrente.<br/><br />
${DATATIME} Data e hora no formato o YYYY-MM-DD_HH:MM:SS.<br/><br />
${DIALPEERNUMBER} Número de que foi chamada.<br/><br />
${DIALSTATUS} Status da Chamada.<br/><br />
${EXTEN} Extensão da chamada atual ou corrente.<br/><br />
${HANGUPCAUSE} Causa do término da chamada<br/><br />
${LANGUAGE} A Linguagem Atual.<br/><br />
${PRIORITY} Prioridade Atual<br/><br />
<br />
<br />
exemplo:<br />
<br />
exten => _20XX,1,Dial(SIP/${EXTEN})<br />
<br />
<br />
Neste exemplo podemos ver o uso de máscara e da variável do Asterisk EXTEN. Esse é justamente o exemplo que havia falado acima, para evitar o a criação de uma infinidades de canais. Quando um ramal começando com 20 e mais dois números for solicitado, irá chamar a aplicação DIAL para discar para o ramal ( SIP/${EXTEN}), onde esta variável trará o próprio numero discado. Assim precisamos apenas de uma entrada para todos os ramais do tipo 20XX.<br />
<br />
<br />
====Aplicações básicas do Asterisk====<br />
<br />
'''Answer''' – Atende uma chamada.<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução.<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados.<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mais salva a posição de retorno.<br/><br />
'''NooP''' – imprime na cli do asterisk o termo.<br/><br />
<br />
Para verificar as aplicações no asterisk, basta digitar n cli do mesmo o seguinte comando:<br />
<br />
# ubuntu-server*cli> core show applications<br />
<br />
Caso queira uma explicação detalhada de uma aplicação, utilize o comando:<br />
<br />
# ubuntu-server*cli> core show application nome_da_aplicacao<br />
<br />
Onde o termo nome_da_aplicacao corresponde a aplicação a qual queremos os detalhes.<br />
<br />
<br />
Formato das extensões<br />
<br />
8000 – numérica<br/><br />
Alexander – alfanumérica<br/><br />
4321/1234 – Numérica com callerID<br/><br />
_4XXX – Usando máscaras<br/><br />
s – padrões pré definidos<br/><br />
<br />
Máscaras<br />
<br />
_ - início de uma máscaras<br/><br />
. - aceita n caracteres subsequentes<br/><br />
[13-9] – qualquer dígito dentro dos colchetes (1, de 3 até 9), mas apenas um deles<br/><br />
X – qualquer dígito entre 0 e 9<br/><br />
Z – qualquer dígito entre 1 e 9<br/><br />
N – qualquer dígito entre 2 e 9<br/><br />
<br />
Prioridades<br />
<br />
Prioridades são passos numerados na execução de cada extensão. Cada prioridade chama uma aplicação especifica. Se os números das prioridades não forem sequenciais o Asterisk aborta a execução. A partir da versão 1.2 do Asterisk, tornou-se comum o uso da prioridade “n”, no lugar da associação manual de números, assim como a possibilidade da utilização de labels e aliases.<br />
<br />
<br />
'''Exercícios'''<br />
<br />
<br />
# Deve-se criar extensões para ramais com 4 dígitos, permitindo que iniciem com 2 ou 3 e tenham sua numeração entre 2000 e 2499, e também entre 3000 e 3499;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando em 6 ou 7 e que tenham sua numeração entre 6500 e 6599, e também entre 7500 e 7599;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando com 9 e que tenham numeração entre 9600 a 9700;<br/><br />
# Criar extensões para celulares com 9 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para celulares com 9 dígitos, sem operadora;<br/><br />
# Criar extensões para telefones fixos com 8 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para telefones fixos com 8 dígitos, sem operadora.<br/><br />
<br />
<br />
'''Observações:'''<br />
<br />
* Os celulares iniciam com o dígito 9 e telefones fixos com 2 ou 3.<br />
<br />
* Em cada extensão usar uma aplicação para escrever na CLI do Asterisk qual a ligação está sendo efetuada, o número e o nome dado ao ramal. Ex: Esta ligação está sendo efetuada de celular sem operadora de longa distância.<br />
<br />
<br />
<br />
Leituras que podem ser úteis:<br />
<br />
[http://stato.blog.br/wordpress/asterisk-parte-3-variaveis-macros-e-mascaras/ Variáveis, Macros e Máscaras]<br />
<br />
[https://www.vivaolinux.com.br/etc/extensions.conf-caue.garcia/ Extensions.conf]<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=27/02/2019: Plano de discagem e máscaras - continuação=<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=06/03/2019: Liberação de portas, Aplicações e instalação de áudio em português=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
===Liberação de portas===<br />
<br />
Preparando o servidor para liberação de portas para autenticação dos ramais e efetuar chamadas, caso necessário<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica. Para isso iremos criar um script de firewall no diretório /etc/init.d/ com o nome de firewall.<br />
Neste arquivo colocaremos o seguinte conteúdo:<br />
<br />
#!/bin/sh<br />
### BEGIN INIT INFO<br />
# Provides: firewall.sh<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall at boot time<br />
# Description: Enable service provided by firewall.<br />
### END INIT INFO<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
===Aplicações===<br />
<br />
As aplicações são partes fundamentais do Asterisk, elas tratam o canal de voz, tocando sons, aceitando dígitos ou encerrando uma chamada. As aplicações são chamadas com opções que afetam a sua forma de funcionamento.<br />
<br />
Agora testaremos este ramal, iremos criar uma aplicação onde discaremos *65 no ramal registrado e o asterisk nos dirá qual é o ramal que está em uso.<br />
<br />
Para isso, vamos editar o arquivo responsável pelos planos de discagem, o extensions.conf. Este arquivo está localizado em /etc/asterisk.<br />
<br />
Criaremos um contexto chamado app:<br />
<br />
<br />
'''[app]'''<br/><br />
'''exten =>*65,1,Goto(function-speakextnum,s,1)'''<br />
<br />
<br />
Ao discarmos *65, este contexto encaminhará, através da função Goto (enviar para), para outro contexto, chamado function-speakextnum:<br />
<br />
<br />
'''[function-speakextnum]'''<br/><br />
'''exten => s,1,Set(Description="Identifica ramal")'''<br/><br />
'''exten => s,2,Answer()'''<br/><br />
'''exten => s,3,Wait(2)'''<br/><br />
'''exten => s,4,Playback(telephone-number&is)'''<br/><br />
'''exten => s,5,SayDigits(${CALLERID(num)})'''<br/><br />
'''exten => s,6,Wait(2)'''<br/><br />
'''exten => s,7,Hangup()'''<br/><br />
<br />
<br />
Basicamente, este contexto terá uma descrição, utilizará os sons previamente criados no asterisk para nos dizer qual o ramal em uso e após 2 segundos desligar.<br />
<br />
Agora necessitamos incluir a aplicação no contexto definido no arquivo sip.conf. Devemos recordar que este contexto se chama default:<br />
<br />
<br />
'''[default]'''<br/><br />
'''include => app'''<br />
<br />
<br />
Pudemos identificar que a linguagem utilizada é o inglês. O que iremos fazer é instalar o idioma português.<br />
<br />
Para isso, devemos efetuar o download do arquivo de áudio em português, neste link:<br />
<br />
Baixe os arquivos de som:<br />
<br />
# wget -O core.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-core-pt-BR-sln16.zip<br />
# wget -O extra.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-extra-pt-BR-sln16.zip<br />
<br />
<br />
Arquivo Convert deve conter os comandos abaixo:<br />
#!/bin/bash<br />
for a in $(find . -name '*.sln16'); do<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\<br />
done<br />
<br />
===Avaliação===<br />
<br />
<br />
Deve ser entregue o relatório parcial, via Sigaa, com todo o conteúdo visto até o momento. Serão avaliados os seguintes itens:<br />
<br />
# Conteúdo;<br />
# Organização;<br />
# Metodologia (formatação do conteúdo de acordo com o que foi passado em aula).<br />
<br />
O relatório deve ser entregue até as 23:59 de 10/03/2019, em formato '''PDF''' (não serão considerados outros formatos).<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI4-2019-1&diff=155050PJI4-2019-12019-03-06T22:10:27Z<p>Ederson.luiz: /* 06/03/2019: Aplicações e instalação de áudio em português */</p>
<hr />
<div>= Projeto Integrador IV= <br />
<font size="3"><br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 2a feira/19:00, 4a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 4a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji4-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
#Implantar um PABX IP integrado com serviços de telefonia fixa e móvel convencionais. <br />
#Prover a infraestrutura de rede necessária para o adequado funcionamento deste PABX IP. <br />
#Integrar os serviços de telefonia com outros serviços de rede.<br />
<br />
== Links interessantes ==<br />
<br />
* [https://hakin9.org/voip-hacking-techniques/ VoIP Hacking Techniques]<br />
* [https://www.vivaolinux.com.br/artigo/Asterisk-nao-e-um-Sip-Proxy Asterisk não é um SIP proxy]<br />
* [https://www.rnp.br/servicos/servicos-avancados/fonernp FoneRNP]<br />
* [https://www.digium.com/products/business-phone-systems/on-premise/virtual-pbx SwitchVox: PBX virtual]<br />
* [http://convergecom.com.br/teletime/21/03/2006/embratel-e-net-lancam-servico-de-telefonia-fixa-local/ Net Fone da Embratel é VoIP, mas não usa SIP]<br />
** [https://en.wikipedia.org/wiki/PacketCable ... e sim PacketCable]<br />
* [http://thevoipreport.com/article/cold-hard-voip-stats/ Estatísticas sobre VoIP no mundo]<br />
* [https://www.cisco.com/c/en/us/support/docs/voice/digital-cas/5717-e1-r2-sig.html Sinalização R2 (E1)]<br />
=== Provedores VoIP no Brasil ===<br />
* [https://www.falemaisvoip.com.br/o-que-e-voip/ FaleMaisVoIP]<br />
* [http://www.directcall.com.br/ DirectCall]<br />
* [http://www.teleco.com.br/opvoip.asp outros ...]<br />
<br />
== Resumo de comandos da CLI para o Asterisk ==<br />
<br />
# O Asterisk pode ser carregado de duas formas:<br />
#* '''foreground''': utilizado para depurar problemas na inicialização do Asterisk, quando ele não puder ser inicializado.<br />
#* '''background''': modo padrão de inicialização<br><br><br />
# Conectar à CLI do Asterisk carregado <syntaxhighlight lang=text><br />
asterisk -r<br />
rasterisk <br />
</syntaxhighlight><br />
# Comandos na CLI<br />
## Saindo da CLI sem interromper o processo <syntaxhighlight lang=text><br />
exit<br />
</syntaxhighlight><br />
## Carrega canais SIP previamente registrados <syntaxhighlight lang=text><br />
sip reload<br />
</syntaxhighlight><br />
## Mostra canais SIP registrados <syntaxhighlight lang=text><br />
sip show peers<br />
</syntaxhighlight><br />
## Carrega plano de discagem <syntaxhighlight lang=text><br />
dialplan reload<br />
</syntaxhighlight><br />
## Mostra a extensão criada no plano de discagem <syntaxhighlight lang=text><br />
dialplan show default<br />
</syntaxhighlight><br />
## Finalizando processo no Asterisk <syntaxhighlight lang=bash><br />
sudo core stop now<br />
</syntaxhighlight><br />
## Ver aplicações disponíveis no Asterisk <syntaxhighlight lang=text><br />
core show applications<br />
</syntaxhighlight><br />
# Iniciando Asterisk em modo Background <syntaxhighlight lang=bash><br />
sudo service asterisk start<br />
</syntaxhighlight><br />
# Carregar o Asterisk em modo ForeGround <syntaxhighlight lang=bash><br />
sudo asterisk -gc<br />
</syntaxhighlight><br />
</font><br />
<br />
=11/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1MNqwAklC8WL0-geeBuC_4kCTjGqDxcyi/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador IV===<br />
<br />
O foco do Projeto Integrador IV está na oferta de serviços ao usuário final e na convergência de serviços de telecomunicações, incluindo a integração dos serviços de telefonia fixa, móvel e VoIP. Além disso, também tem como objetivo a integração destes serviços de telecomunicações com outros serviços de rede como servidores Web, Email, Telefonia IP, administração de sistemas e usuários, compartilhamento de recursos, DNS, etc. <br />
<br />
<br />
Na figura abaixo é apresentado um esboço do cenário que foi desenvolvido durante o Projeto Integrador III. A proposta inicial é integrar a este cenário serviços de telefonia IP e convencional. Além disso, outros serviços podem ser integrados a ambos, como e-mail, DNS, acesso à câmeras IP, etc. <br />
<br />
[[imagem:Diagrama-PJI3.png|600px]]<br />
<br />
<br />
Uma vez integrados os serviços de rede e de telefonia e tendo em mente que a qualidade de serviço é um ponto sensível à aplicações de telefonia IP, espera-se desenvolver métodos de medição de rede para assegurar seu correto funcionamento.<br />
<br />
== PBX IP ==<br />
<br />
<br />
Um PBX IP funciona como uma central telefônica, porém intermediando chamadas VoIP. Com isso, as chamadas são feitas de um telefone IP em direção ao PBX IP, que a encaminha ao telefone IP de destino de acordo com suas regras de discagem. A figura abaixo ilustra como funciona uma chamada VoIP típica através de um PBX IP.<br />
<br />
[[imagem:Voip-call.png|500px]]<br />
<br />
<br />
Nas nossas aulas faremos uso de um PBX IP [http://www.asterisk.org/ Asterisk], que é um software desenvolvido pela [http://www.digium.com/ Digium]. O Asterisk roda em computadores do tipo PC que possuem sistema operacional baseado em Linux. Sua licença é livre, o que significa que não há custo de licenciamento para utilizá-lo.<br />
* [http://www.asterisk.org/get-started Uma visão geral sobre Asterisk]<br />
<br />
== PBX IP Asterisk ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/rmu/slides/aula-25.pdf Transparências]<br />
* [http://www.asterisk.org Site oficial do Asterisk]<br />
* [http://www.asteriskguru.com/ Asterisk Guru]<br />
* [http://www.voip-info.org/wiki Dicas sobre Asterisk]<br />
* [http://www.asteriskdocs.org/ Livro online gratuito sobre Asterisk]<br />
* [http://www.packetizer.com/ipmc/sip/papers/understanding_sip_voip/ Introdução a VoIP e SIP]<br />
* Livro [http://www.shopvoip.com.br/index.php?route=product/product&product_id=1263 ''Asterisk: Guia de Configuração - 5a geração''], de Flávio Gonçalves.<br />
<br />
<br />
'''Asterisk:''' uma solução completa de PABX baseado em software, permitindo ligar o mundo IP ao mundo da rede pública de telefonia comutada.<br />
<br />
'''Características Básicas:''' faz tudo que um PABX pequeno e simples faz e pouco mais<br />
* Transferência, música de espera, siga-me, etc.<br />
* Conferência, correio de voz, URA, fila de chamadas, monitoramento de chamadas, integração com o Jabber (Google talk)<br />
<br />
<br />
[[imagem:Asterisk-ex1.png|400px]]<br />
<br>''Exemplo de cenário de uso do Asterisk''<br />
<br />
<br />
<!-- [[imagem:Asterisk-arch.png|500px]]<br />
<br>''Arquitetura modular do Asterisk'' ---><br />
<br />
<br />
O Asterisk é um software complexo e com muitos recursos. Porém sua função mais elementar, que é intermediar chamadas, pode ser entendida com base em dois elementos importantes desse tipo de PBX. Esses elementos são o '''plano de discagem''' e '''configurações de canais'''. Na terminologia do Asterisk, um canal pode ser entendido como um ramal ou tronco. Para ter o Asterisk funcionando como uma central simplificada, é suficiente configurar esses dois elementos.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 4'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI4 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador IV'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professores: Ederson Luiz de Souza Santos e Mayara de Sousa'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2018'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=13/02/2019: Conceitos gerais, preparação do servidor e instalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
<b>Telefonia IP ou VoIP: O que é?</b><br />
----<br />
A Comunicação de Voz em Redes IP, chamada de VoIP, consiste no uso das redes de dados que utilizam o conjunto de protocolos das redes IP (TCP/UDP/IP) para a transmissão de sinais de Voz em tempo real na forma de pacotes de dados.<br />
<br />
A sua evolução natural levou ao aparecimento da Telefonia IP, que consiste no fornecimento de serviços de telefonia utilizando a rede IP para o estabelecimento de chamadas e comunicação de Voz.<br />
<br />
Nessas redes são implementados protocolos adicionais de sinalização de chamadas e transporte de Voz que permitem a comunicação com qualidade próxima àquela fornecida pelas redes convencionais dos sistemas públicos de telefonia comutada ou de telefonia móvel.<br/><br/><br />
<br />
<b>Digitalização de Sinais de Voz</b><br />
----<br />
Nos sistemas tradicionais o sinal de Voz utiliza uma banda de 4 kHz, e é digitalizado com uma taxa de amostragem de 8 kHz para ser recuperado adequadamente (Princípio de Nyquist). Como cada amostra é representada por um byte (8 bits, com até 256 valores distintos), cada canal de Voz necessita de uma banda de 64 kbit/s (8.000 amostras x 8 bits).<br />
<br />
Esta forma de digitalização do sinal de Voz atende a recomendação ITU-T G.711 - Pulse code modulation (PCM) of voice frequencies.<br />
<br />
Nos sistema de transmissão de Voz sobre IP, onde a demanda por banda é crítica, torna-se necessário utilizar também algoritmos de compressão do sinal de Voz. Esses algoritmos têm papel relevante pela economia de banda que proporcionam.<br />
<br />
O seu uso tem sido possível graças ao desenvolvimento dos processadores de sinais digitais (DSP’s), cuja capacidade de processamento tem crescido vertiginosamente.<br />
<br />
Estas necessidades incentivaram o desenvolvimento de tecnologias mais complexas para a digitalização e compressão de Voz, e que foram registradas através de recomendações do ITU-T. Estas recomendações são apresentadas na tabela abaixo, com algumas características relevantes.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs.jpg]]</div><br/><br/><br />
<br />
<b>Asterisk</b><br />
----<br />
O Asterisk é a implementação de uma central telefônica PBX (Private Branch eXchange) em software, criado por Mark Spencer em 1999, e distribuído pela Digium livremente seguindo a licençaGPL (GNU General Public License – GPL), ou através de código proprietário.<br />
<br />
O nome Asterisk vem do símbolo ‘*’, muito comum no mundo da telefonia.<br />
<br />
O Asterisk foi originalmente desenvolvido para Linux, mas atualmente podeser instalado e executado em uma grande variedade de sistemas operacionais, incluindo NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris e até mesmo Microsoft Windows, onde é conhecido por Asterisk Win32.<br/><br/><br />
<br />
<b>Características do Asterisk</b><br />
----<br />
O Asterisk é um software, baseado na licença GPL (GNU General Public License), que executa todas as funções de uma central telefônica convencional através das principais tecnologias de comunicação existentes no mercado, como por exemplo: linhas telefônicas analógicas, links de telefonia digital via placas de comunicação TDM (Time-Division Multplexing, ou Multiplexaçã ,o por divisão detempo), VoIP (Voice over IP, ou Voz sobre IP) através dos protocolos SIP, H.323, IAX2, MGCP, Skinny,GoogleTalk, Skype, entre outros.<br />
<br />
Através do Asterisk é possível estabelecer uma chamada entre qualquer um desses protocolos. O Asterisk é o que chamamos de B2B User Agent, ou melhor, Back-to-Back User Agent, ele estabelece uma chamada telefônica, separando cada “perna” da chamada entre origem e destino, e monitora todo o tráfego de áudio entre esses pontos. Por isso, caso esses pontos estejam utilizando CODECs diferentes, o Asterisk consegue transcodificar o áudio sem qualquer problema. Pode-se dizer que o Asterisk possui todas as funcionalidades das chamadas centrais telefônicas convencionais, como URAs, correio de voz, conferência, distribuição automática de chamadas, entre outras, e caso seja necessário, é possível acrescentar novas funcionalidades ao sistema através do próprio plano de discagem do Asterisk, módulos customizados escritos em C, ou ainda através de scripts escritos em Asterisk Gateway Interface (AGI). *Fonte: Construindo um PBX IP na pratica (Alexandre Keller)<br/><br/><br />
<br />
<b>Codecs</b><br />
----<br />
Um dos componentes necessários para transmissão de voz numa rede de dados é o Áudio CODEC (Codificador-Decodificador). Este componente é o responsável por transformar a voz humana (um sinal analógico) em uma seqüência de bits (um sinal digital) para transmissão numa rede de dados, fazendo amostragens periódicas no sinal de voz. Em equipamentos do tipo gateways VoIP, esses CODECs são implementados através de um componente chamado DSP (Digital Signal Processor).<br />
A introdução dos microprocessadores no final dos anos 70 e início dos anos 80 tornou possível usar técnicas de processamento digital de sinais (Digital Signal Processing) em um range muito maior de aplicações.<br />
Durante os anos 80 a importância crescente do processamento digital de sinais levou vários fabricantes importantes (como Texas Instruments, Analog Devices e Motorola) a desenvolverem os chips DSP, ou seja, microprocessadores especializados com arquiteturas projetadas especificamente para os tipos de operações requeridas ao processamento digital de sinais.<br />
Como um microprocessador de uso geral, um DSP é um dispositivo programável, com seu próprio conjunto de instruções nativas. O uso desses chips associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO-CODEC1].<br />
Cada CODEC provê certa qualidade de voz. A medida de qualidade da voz transmitida é uma resposta subjetiva de um ouvinte. Uma medida comum usada para determinar a qualidade do som produzido pelos CODECs específicos é o MOS (Mean Opinion Score). Com o uso do MOS, um amplo range de ouvintes julgam a qualidade de uma amostra de voz (correspondendo a um CODEC particular) numa escala de 1 a 5. A partir desses resultados, é calculada a média dos scores para atribuir o MOS para aquela amostra [CISCO-CODEC2].<br />
Na tabela 1 são apresentados alguns scores MOS para os CODECs mais usados. Na Tabela 2 são descritos os scores MOS.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs2.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:codecs3.jpg]]</div><br/><br />
<br />
<br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 1500 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* sudo apt-get update<br />
* sudo apt-get install build-essential module-assistant dkms<br />
* sudo m-a prepare<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
<br />
===<b>Instalação do Asterisk</b>===<br />
----<br />
Neste semestre iremos trabalhar com o Asterisk versão 13.22.0, o LibPRI 1.6.0, que é uma biblioteca Libpri será instalada para que tenhamos suporte aos canais PRI( ISDN, E1, T1 ), e o DAHDI, que é um pacote (Digium Asterisk Hardware Device Interface) nos permite carregar os drivers e configurar diversos tipos de placas de telefonia (para conectar telefones analógicos, linhas telefônicas, linhas digitais e outros).<br />
Antes de qualquer coisa, devemos atualizar o sistema via console de comando:<br />
<br />
#apt-get update<br />
#apt-get upgrade<br />
<br />
Também devemos instalar algumas dependências:<br />
<br />
# apt-get install -y make wget libssl-dev ncurses-dev libnewt-dev libxml2-dev linux-headers-generic g++ libsqlite3-dev uuid-dev libjansson-dev<br />
# apt-get install -y mysql-server libmysqld-dev<br />
<br />
Para baixar os arquivos do Asterisk, DAHDI e LibPRI, seguem os links abaixo (os comandos para a instalação completa do Asterisk, Libpri, Dahdi e banco de dados serão repassados em aula):<br />
<br />
[http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.22.0.tar.gz Asterisk 13.22.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz LibPRI 1.6.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz DAHDI]<br/><br />
<br />
Campos para o banco de dados:<br />
<br />
[https://docs.google.com/document/d/135vf4dUJhMmG0fVqzFXEYPQ095iBzpBU0O7fZz04hZs/edit?usp=sharing Arquivo banco de dados]<br />
<br />
<br/><br/><br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=18/02/2019: Instalação do Sistema Operacional Ubuntu 16.04.5 e reinstalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
...<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=20/02/2019: Comandos e configurações do Asterisk. Criação de ramais=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<b>Comandos Asterisk</b><br />
<br />
Para iniciarmos a utilização do Asterisk, devemos conhecer alguns comandos que serão utilizados no decorrer da disciplina.<br />
<br />
<br />
<b>Tipo: SIP</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do SIP<br />
<br />
sip set debug on<br/><br />
sip set debug off<br/><br />
<br />
'''sip reload''': Reload No arquivo: sip.conf<br/><br />
'''sip show channels:''' Visualizar canais ativos do Tipo SIP<br/><br />
'''sip show channel''': Detalhar 1 determinado canal ativo SIP<br/><br />
'''sip show inuse''': Listar todos os canais/peer existentes no Asterisk<br/><br />
'''sip show peers''': Visualizar os pares que registraram ou não no Asterisk usando SIP<br/><br />
'''sip show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando SIP)<br/><br />
'''sip show users''': Visualizar Dispositivos SIP, Plano de Discagem e Senha<br/><br />
'''sip show channelstats''': Visualizar estatísticas de buffer e jitter na rede e nas chamadas SIP ativas<br/><br />
<br />
<br />
<b>Tipo: IAX2</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do IAX2:<br/><br />
<br />
iax2 set debug on<br/><br />
iax2 set debug off<br/><br />
<br />
'''iax2 show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
'''iax2 show netstats''': Visualizar estatisticas de buffer e jitter na rede e nas chamadas IAX ativas<br/><br />
'''iax2 show peers''': Visualizar os pares que registraram ou não no Asterisk usando IAX<br/><br />
'''iax2 show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando IAX)<br/><br />
'''iax2 show stats''': Visualizar estatisticas do IAX<br/><br />
'''iax2 show users''': Visualizar Dispositivos IAX, Plano de Discagem e Senha<br/><br />
'''iax show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
<br />
<br />
<b>Tipo: Gerenciamento do Asterisk</b><br/><br />
<br />
<br />
'''restart now''': Restart Asterisk imediatamente<br/><br />
'''restart when convenient''': Aguarda inatividade no Asterisk para restartar o Asterisk em seguida<br/><br />
'''reload''': Reload nas configurações<br/><br />
'''stop now:''' Shut down no Asterisk imediatamente<br/><br />
'''dialplan reload''': Reload nos arquivos de configurações do plano de discagem extensions.conf<br/><br />
'''modules show''': Lista os módulos carregados no sistema<br/><br />
'''core show uptime''': Visualizar o tempo do Asterisk no Ar<br/><br />
'''core show version''': Visualizar informações sobre a versão do Asterisk<br/><br />
<br />
<br />
<b>Tipo: Comandos Gerais</b><br/><br />
<br />
<br />
'''dialplan show''': visualizar informações sobre um contexto<br/><br />
'''core show queues''': visualizar as filas criadas no Asterisk<br/><br />
'''soft hangup''': derrubar uma chamada ativa no Asterisk<br/><br />
'''core show applications''': visualizar informação sobre as aplicações disponíveis<br/><br />
'''core show application''': “Aplicação”: detalhar informação sobre determinada aplicação<br/><br />
<br />
<br />
<br />
<b>Preparar o servidor para liberar portas</b><br />
<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica.<br />
<br />
Script para liberação de portas <syntaxhighlight lang=bash><br />
#!/bin/sh<br />
<br />
### BEGIN INIT INFO<br />
# Provides: firewall.sh<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall.sh at boot time<br />
# Description: Enable service provided by firewall.sh.<br />
### END INIT INFO<br />
<br />
PATH="/bin:/sbin:/usr/bin:/usr/sbin"<br />
<br />
set -e<br />
<br />
echo "Starting firewall..."<br />
<br />
IPT="/sbin/iptables"<br />
<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
</syntaxhighlight><br />
<br />
<br />
<b>Iniciando a configuração dos ramais</b><br />
<br />
<br />
O asterisk possui um diretório onde ficam os arquivos de configuração, ele está localizado em /etc/asterisk.<br />
Para definirmos nossos ramais sip, o arquivo de configuração responsável é o sip.conf.<br />
<br />
<br />
Abaixo segue um exemplo de configuração do arquivo <b>sip.conf</b>:<br />
<br />
<br />
[general]<br/><br />
bindport=5060<br/><br />
bindaddr=0.0.0.0<br/><br />
context=default<br/><br />
disallow=all<br/><br />
allow=ulaw<br/><br />
allow=alaw<br/><br />
allow=gsm<br/><br />
maxexpirey=120<br/><br />
defaultexpirey=80<br/><br />
<br />
<br />
[1000]<br/><br />
type=friend<br/><br />
secret=123<br/><br />
host=dynamic<br/><br />
qualify=yes<br/><br />
<br />
<br />
Onde:<br />
<br />
<br />
'''bindaddr''': Endereço IP onde o Asterisk irá esperar pelas conexões SIP. O comportamento padrão é esperar em todas as interfaces e endereços secundários.<br />
<br />
'''Context''': Configura o contexto padrão onde todos os clientes serão colocados, a menos que seja sobrescrito na definição da entidade.<br />
<br />
'''Allow''': Permite que um determinado codec seja usado.<br />
<br />
'''Disallow''': Proíbe um determinado codec.<br />
<br />
'''Bindport''': Porta que o Asterisk deve esperar por conexões de entrada SIP. O padrão é 5060.<br />
<br />
'''maxexpirey''': Tempo máximo para registro em segundos.<br />
<br />
'''Defaultexpirey''': Tempo padrão para registro em segundos.<br />
<br />
<br />
<br />
'''[name]''': Quando um dispositivo SIP conecta-se ao Asterisk, ele utiliza a parte username do SIP URI para encontrar o peer/user.<br />
<br />
'''Type''': Configura a classe de conexão, as opções são peer, user e friend.<br />
<br />
'''Peer''': Entidade para a qual o Asterisk envia chamadas.<br />
<br />
'''User''': Entidade que faz chamadas através do Asterisk.<br />
<br />
'''Friend''': Os dois ao mesmo tempo.<br />
<br />
'''Host''': Configura o endereço IP ou o nome do host. Pode-se usar também a opção ‘dynamic’ onde se espera que o host faça o registro, é a opção mais comum.<br />
<br />
'''Secret''': Senha usada para autenticar o peer ou user fazendo uma chamada.<br />
<br />
'''Qualify''': caso esteja yes, o asterisk enviará um comando regularmente para verificar se o dispositivo ainda está online.<br />
<br />
<br />
<br />
<b>Plano de discagem</b><br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
<br />
Para criar um plano de discagem, deve-se editar o arquivo responsável, o extensions.conf. Este arquivo está localizado em /etc/asterisk. Uma parte importante neste arquivo é o contexto <b>general</b>:<br />
<br />
[general]<br/><br />
static=yes<br/><br />
writeprotect=no<br/><br />
autofallthrough=yes<br/><br />
clearglobalvars=no<br/><br />
priorityjumping=no<br/><br />
<br />
<br />
<br />
'''static e writeprotect''' – permite salvar o plano de discagem a partir da linha de comando.<br/><br />
'''Autofallthrough''' – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br/><br />
'''Clearglobalvars''' – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br/><br />
'''Priorityjumping''' – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br/><br />
<br />
Também devemos criar um contexto que já foi pré definido no ramal criado. No nosso caso se chamará <b>default</b>:<br />
<br />
<br />
[default]<br/><br />
exten = 1000,1,Dial(SIP/1000,30)<br/><br />
exten = 1000,2,Hangup()<br/><br />
<br />
<br />
Neste caso usamos duas aplicações, <b>Dial</b> e <b>Hangup</b>, responsáveis por discar e encerrar uma chamada, respectivamente.<br />
<br />
As aplicações mais comuns no Asterisk são:<br />
<br />
<br />
'''Answer''' – Atende uma chamada<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mas salva a posição de retorno<br/><br />
'''NooP''' – imprime na cli do asterisk o termo<br/><br />
<br />
<br />
<b>Exercício</b><br />
<br />
<br />
Crie 6 ramais (1000, 1001, 1002, 1003, 1004, 1005).<br />
<br />
Crie também um plano de discagem que permita a ligação entre todos os ramais.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=25/02/2019: Plano de discagem e máscaras=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
===Plano de discagem===<br />
<br />
O plano de discagem define como o Asterisk irá gerenciar as chamadas. Ele consiste de uma lista de instruções ou passos que o Asterisk deveria seguir. Essas instruções são disparadas a partir dos dígitos recebidos de um canal ou aplicação.<br />
O extensions.conf pode ser separado em quatro partes:<br />
<br />
* Contextos;<br />
* Extensões;<br />
* Prioridades;<br />
* Aplicações.<br />
<br />
<br />
====Contextos====<br />
<br />
Os contextos definem o escopo e permitem separar diferentes partes do plano de discagem, recebem o seu nome dentro de chaves ([]).<br />
No início do arquivo extensions.conf existe um contexto chamado [globals] onde as variáveis globais são definidas e podem ser usadas por todo o plano de discagem. E o contexto [general] que é utilizado para definir alguns parâmetros gerais.<br />
Os contextos estão ligados diretamente aos canais. Quando uma ligação entra no Asterisk por um canal ela é processada dentro do contexto deste canal.<br />
Ex:<br />
<br />
[gerentes]<br/><br />
exten=>9000,1,Playback(gerente)<br />
<br />
[visitantes]<br/><br />
exten=>9000,1,Playback(visitante)<br />
<br />
<br />
====Extensões====<br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
Exemplo:<br />
<br />
exten => 9001,1,Dial(SIP/9001,20) ; Extensão 9001, prioridade 1, disca para o ramal 9001 pelo protocolo SIP, tempo de resposta em segundos.<br/><br />
Exten => 9001,2,Hangup() ; Extensão 9001, prioridade 2, efetua o desligamento.<br />
<br />
Dentro de uma extensão, podemos ter as chamadas variáveis de canal, como abaixo:<br />
<br />
exten =>2001,2,DIAL(SIP/${RAMAL})<br />
<br />
Neste exemplo acima, criamos a variável “RAMAL” em tempo de execução, ou seja, na criação do Canal, ou da chamada.<br />
As variáveis de canais são as mais utilizadas normalmente, para trazer informação dos canais normalmente, como nome do canal , nome do contexto, extensão, etc. Vejamos abaixo algumas das variáveis mais usadas:<br />
<br />
${CALLERID} Identificador da chamada (nome ou número)<br/><br />
${CALLERIDNAME} O nome do id. Da chamada<br/><br />
${CALLERIDNUM} O número do id. Da chamada.<br/><br />
${CHANNEL} Nome do Canal atual ou corrente.<br/><br />
${CONTEXT} Nome do Contexto atual ou corrente.<br/><br />
${DATATIME} Data e hora no formato o YYYY-MM-DD_HH:MM:SS.<br/><br />
${DIALPEERNUMBER} Número de que foi chamada.<br/><br />
${DIALSTATUS} Status da Chamada.<br/><br />
${EXTEN} Extensão da chamada atual ou corrente.<br/><br />
${HANGUPCAUSE} Causa do término da chamada<br/><br />
${LANGUAGE} A Linguagem Atual.<br/><br />
${PRIORITY} Prioridade Atual<br/><br />
<br />
<br />
exemplo:<br />
<br />
exten => _20XX,1,Dial(SIP/${EXTEN})<br />
<br />
<br />
Neste exemplo podemos ver o uso de máscara e da variável do Asterisk EXTEN. Esse é justamente o exemplo que havia falado acima, para evitar o a criação de uma infinidades de canais. Quando um ramal começando com 20 e mais dois números for solicitado, irá chamar a aplicação DIAL para discar para o ramal ( SIP/${EXTEN}), onde esta variável trará o próprio numero discado. Assim precisamos apenas de uma entrada para todos os ramais do tipo 20XX.<br />
<br />
<br />
====Aplicações básicas do Asterisk====<br />
<br />
'''Answer''' – Atende uma chamada.<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução.<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados.<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mais salva a posição de retorno.<br/><br />
'''NooP''' – imprime na cli do asterisk o termo.<br/><br />
<br />
Para verificar as aplicações no asterisk, basta digitar n cli do mesmo o seguinte comando:<br />
<br />
# ubuntu-server*cli> core show applications<br />
<br />
Caso queira uma explicação detalhada de uma aplicação, utilize o comando:<br />
<br />
# ubuntu-server*cli> core show application nome_da_aplicacao<br />
<br />
Onde o termo nome_da_aplicacao corresponde a aplicação a qual queremos os detalhes.<br />
<br />
<br />
Formato das extensões<br />
<br />
8000 – numérica<br/><br />
Alexander – alfanumérica<br/><br />
4321/1234 – Numérica com callerID<br/><br />
_4XXX – Usando máscaras<br/><br />
s – padrões pré definidos<br/><br />
<br />
Máscaras<br />
<br />
_ - início de uma máscaras<br/><br />
. - aceita n caracteres subsequentes<br/><br />
[13-9] – qualquer dígito dentro dos colchetes (1, de 3 até 9), mas apenas um deles<br/><br />
X – qualquer dígito entre 0 e 9<br/><br />
Z – qualquer dígito entre 1 e 9<br/><br />
N – qualquer dígito entre 2 e 9<br/><br />
<br />
Prioridades<br />
<br />
Prioridades são passos numerados na execução de cada extensão. Cada prioridade chama uma aplicação especifica. Se os números das prioridades não forem sequenciais o Asterisk aborta a execução. A partir da versão 1.2 do Asterisk, tornou-se comum o uso da prioridade “n”, no lugar da associação manual de números, assim como a possibilidade da utilização de labels e aliases.<br />
<br />
<br />
'''Exercícios'''<br />
<br />
<br />
# Deve-se criar extensões para ramais com 4 dígitos, permitindo que iniciem com 2 ou 3 e tenham sua numeração entre 2000 e 2499, e também entre 3000 e 3499;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando em 6 ou 7 e que tenham sua numeração entre 6500 e 6599, e também entre 7500 e 7599;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando com 9 e que tenham numeração entre 9600 a 9700;<br/><br />
# Criar extensões para celulares com 9 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para celulares com 9 dígitos, sem operadora;<br/><br />
# Criar extensões para telefones fixos com 8 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para telefones fixos com 8 dígitos, sem operadora.<br/><br />
<br />
<br />
'''Observações:'''<br />
<br />
* Os celulares iniciam com o dígito 9 e telefones fixos com 2 ou 3.<br />
<br />
* Em cada extensão usar uma aplicação para escrever na CLI do Asterisk qual a ligação está sendo efetuada, o número e o nome dado ao ramal. Ex: Esta ligação está sendo efetuada de celular sem operadora de longa distância.<br />
<br />
<br />
<br />
Leituras que podem ser úteis:<br />
<br />
[http://stato.blog.br/wordpress/asterisk-parte-3-variaveis-macros-e-mascaras/ Variáveis, Macros e Máscaras]<br />
<br />
[https://www.vivaolinux.com.br/etc/extensions.conf-caue.garcia/ Extensions.conf]<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=27/02/2019: Plano de discagem e máscaras - continuação=<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=06/03/2019: Liberação de portas, Aplicações e instalação de áudio em português=<br />
<br />
{{Collapse top | Aula 7}}<br />
<font size="3"><br />
<br />
===Liberação de portas===<br />
<br />
Preparando o servidor para liberação de portas para autenticação dos ramais e efetuar chamadas, caso necessário<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica. Para isso iremos criar um script de firewall no diretório /etc/init.d/ com o nome de firewall.<br />
Neste arquivo colocaremos o seguinte conteúdo:<br />
<br />
#!/bin/bash<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
<br />
<br />
===Aplicações===<br />
<br />
As aplicações são partes fundamentais do Asterisk, elas tratam o canal de voz, tocando sons, aceitando dígitos ou encerrando uma chamada. As aplicações são chamadas com opções que afetam a sua forma de funcionamento.<br />
<br />
Agora testaremos este ramal, iremos criar uma aplicação onde discaremos *65 no ramal registrado e o asterisk nos dirá qual é o ramal que está em uso.<br />
<br />
Para isso, vamos editar o arquivo responsável pelos planos de discagem, o extensions.conf. Este arquivo está localizado em /etc/asterisk.<br />
<br />
Criaremos um contexto chamado app:<br />
<br />
<br />
'''[app]'''<br/><br />
'''exten =>*65,1,Goto(function-speakextnum,s,1)'''<br />
<br />
<br />
Ao discarmos *65, este contexto encaminhará, através da função Goto (enviar para), para outro contexto, chamado function-speakextnum:<br />
<br />
<br />
'''[function-speakextnum]'''<br/><br />
'''exten => s,1,Set(Description="Identifica ramal")'''<br/><br />
'''exten => s,2,Answer()'''<br/><br />
'''exten => s,3,Wait(2)'''<br/><br />
'''exten => s,4,Playback(telephone-number&is)'''<br/><br />
'''exten => s,5,SayDigits(${CALLERID(num)})'''<br/><br />
'''exten => s,6,Wait(2)'''<br/><br />
'''exten => s,7,Hangup()'''<br/><br />
<br />
<br />
Basicamente, este contexto terá uma descrição, utilizará os sons previamente criados no asterisk para nos dizer qual o ramal em uso e após 2 segundos desligar.<br />
<br />
Agora necessitamos incluir a aplicação no contexto definido no arquivo sip.conf. Devemos recordar que este contexto se chama default:<br />
<br />
<br />
'''[default]'''<br/><br />
'''include => app'''<br />
<br />
<br />
Pudemos identificar que a linguagem utilizada é o inglês. O que iremos fazer é instalar o idioma português.<br />
<br />
Para isso, devemos efetuar o download do arquivo de áudio em português, neste link:<br />
<br />
Baixe os arquivos de som:<br />
<br />
# wget -O core.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-core-pt-BR-sln16.zip<br />
# wget -O extra.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-extra-pt-BR-sln16.zip<br />
<br />
<br />
Arquivo Convert deve conter os comandos abaixo:<br />
#!/bin/bash<br />
for a in $(find . -name '*.sln16'); do<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\<br />
done<br />
<br />
===Avaliação===<br />
<br />
<br />
Deve ser entregue o relatório parcial, via Sigaa, com todo o conteúdo visto até o momento. Serão avaliados os seguintes itens:<br />
<br />
# Conteúdo;<br />
# Organização;<br />
# Metodologia (formatação do conteúdo de acordo com o que foi passado em aula).<br />
<br />
O relatório deve ser entregue até as 23:59 de 10/03/2019, em formato '''PDF''' (não serão considerados outros formatos).<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI4-2019-1&diff=154848PJI4-2019-12019-02-27T20:02:36Z<p>Ederson.luiz: /* 27/02/2019: Aplicações e instalação de áudio em português */</p>
<hr />
<div>= Projeto Integrador IV= <br />
<font size="3"><br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 2a feira/19:00, 4a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 4a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji4-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
#Implantar um PABX IP integrado com serviços de telefonia fixa e móvel convencionais. <br />
#Prover a infraestrutura de rede necessária para o adequado funcionamento deste PABX IP. <br />
#Integrar os serviços de telefonia com outros serviços de rede.<br />
<br />
== Links interessantes ==<br />
<br />
* [https://hakin9.org/voip-hacking-techniques/ VoIP Hacking Techniques]<br />
* [https://www.vivaolinux.com.br/artigo/Asterisk-nao-e-um-Sip-Proxy Asterisk não é um SIP proxy]<br />
* [https://www.rnp.br/servicos/servicos-avancados/fonernp FoneRNP]<br />
* [https://www.digium.com/products/business-phone-systems/on-premise/virtual-pbx SwitchVox: PBX virtual]<br />
* [http://convergecom.com.br/teletime/21/03/2006/embratel-e-net-lancam-servico-de-telefonia-fixa-local/ Net Fone da Embratel é VoIP, mas não usa SIP]<br />
** [https://en.wikipedia.org/wiki/PacketCable ... e sim PacketCable]<br />
* [http://thevoipreport.com/article/cold-hard-voip-stats/ Estatísticas sobre VoIP no mundo]<br />
* [https://www.cisco.com/c/en/us/support/docs/voice/digital-cas/5717-e1-r2-sig.html Sinalização R2 (E1)]<br />
=== Provedores VoIP no Brasil ===<br />
* [https://www.falemaisvoip.com.br/o-que-e-voip/ FaleMaisVoIP]<br />
* [http://www.directcall.com.br/ DirectCall]<br />
* [http://www.teleco.com.br/opvoip.asp outros ...]<br />
<br />
== Resumo de comandos da CLI para o Asterisk ==<br />
<br />
# O Asterisk pode ser carregado de duas formas:<br />
#* '''foreground''': utilizado para depurar problemas na inicialização do Asterisk, quando ele não puder ser inicializado.<br />
#* '''background''': modo padrão de inicialização<br><br><br />
# Conectar à CLI do Asterisk carregado <syntaxhighlight lang=text><br />
asterisk -r<br />
rasterisk <br />
</syntaxhighlight><br />
# Comandos na CLI<br />
## Saindo da CLI sem interromper o processo <syntaxhighlight lang=text><br />
exit<br />
</syntaxhighlight><br />
## Carrega canais SIP previamente registrados <syntaxhighlight lang=text><br />
sip reload<br />
</syntaxhighlight><br />
## Mostra canais SIP registrados <syntaxhighlight lang=text><br />
sip show peers<br />
</syntaxhighlight><br />
## Carrega plano de discagem <syntaxhighlight lang=text><br />
dialplan reload<br />
</syntaxhighlight><br />
## Mostra a extensão criada no plano de discagem <syntaxhighlight lang=text><br />
dialplan show default<br />
</syntaxhighlight><br />
## Finalizando processo no Asterisk <syntaxhighlight lang=bash><br />
sudo core stop now<br />
</syntaxhighlight><br />
## Ver aplicações disponíveis no Asterisk <syntaxhighlight lang=text><br />
core show applications<br />
</syntaxhighlight><br />
# Iniciando Asterisk em modo Background <syntaxhighlight lang=bash><br />
sudo service asterisk start<br />
</syntaxhighlight><br />
# Carregar o Asterisk em modo ForeGround <syntaxhighlight lang=bash><br />
sudo asterisk -gc<br />
</syntaxhighlight><br />
</font><br />
<br />
=11/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1MNqwAklC8WL0-geeBuC_4kCTjGqDxcyi/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador IV===<br />
<br />
O foco do Projeto Integrador IV está na oferta de serviços ao usuário final e na convergência de serviços de telecomunicações, incluindo a integração dos serviços de telefonia fixa, móvel e VoIP. Além disso, também tem como objetivo a integração destes serviços de telecomunicações com outros serviços de rede como servidores Web, Email, Telefonia IP, administração de sistemas e usuários, compartilhamento de recursos, DNS, etc. <br />
<br />
<br />
Na figura abaixo é apresentado um esboço do cenário que foi desenvolvido durante o Projeto Integrador III. A proposta inicial é integrar a este cenário serviços de telefonia IP e convencional. Além disso, outros serviços podem ser integrados a ambos, como e-mail, DNS, acesso à câmeras IP, etc. <br />
<br />
[[imagem:Diagrama-PJI3.png|600px]]<br />
<br />
<br />
Uma vez integrados os serviços de rede e de telefonia e tendo em mente que a qualidade de serviço é um ponto sensível à aplicações de telefonia IP, espera-se desenvolver métodos de medição de rede para assegurar seu correto funcionamento.<br />
<br />
== PBX IP ==<br />
<br />
<br />
Um PBX IP funciona como uma central telefônica, porém intermediando chamadas VoIP. Com isso, as chamadas são feitas de um telefone IP em direção ao PBX IP, que a encaminha ao telefone IP de destino de acordo com suas regras de discagem. A figura abaixo ilustra como funciona uma chamada VoIP típica através de um PBX IP.<br />
<br />
[[imagem:Voip-call.png|500px]]<br />
<br />
<br />
Nas nossas aulas faremos uso de um PBX IP [http://www.asterisk.org/ Asterisk], que é um software desenvolvido pela [http://www.digium.com/ Digium]. O Asterisk roda em computadores do tipo PC que possuem sistema operacional baseado em Linux. Sua licença é livre, o que significa que não há custo de licenciamento para utilizá-lo.<br />
* [http://www.asterisk.org/get-started Uma visão geral sobre Asterisk]<br />
<br />
== PBX IP Asterisk ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/rmu/slides/aula-25.pdf Transparências]<br />
* [http://www.asterisk.org Site oficial do Asterisk]<br />
* [http://www.asteriskguru.com/ Asterisk Guru]<br />
* [http://www.voip-info.org/wiki Dicas sobre Asterisk]<br />
* [http://www.asteriskdocs.org/ Livro online gratuito sobre Asterisk]<br />
* [http://www.packetizer.com/ipmc/sip/papers/understanding_sip_voip/ Introdução a VoIP e SIP]<br />
* Livro [http://www.shopvoip.com.br/index.php?route=product/product&product_id=1263 ''Asterisk: Guia de Configuração - 5a geração''], de Flávio Gonçalves.<br />
<br />
<br />
'''Asterisk:''' uma solução completa de PABX baseado em software, permitindo ligar o mundo IP ao mundo da rede pública de telefonia comutada.<br />
<br />
'''Características Básicas:''' faz tudo que um PABX pequeno e simples faz e pouco mais<br />
* Transferência, música de espera, siga-me, etc.<br />
* Conferência, correio de voz, URA, fila de chamadas, monitoramento de chamadas, integração com o Jabber (Google talk)<br />
<br />
<br />
[[imagem:Asterisk-ex1.png|400px]]<br />
<br>''Exemplo de cenário de uso do Asterisk''<br />
<br />
<br />
<!-- [[imagem:Asterisk-arch.png|500px]]<br />
<br>''Arquitetura modular do Asterisk'' ---><br />
<br />
<br />
O Asterisk é um software complexo e com muitos recursos. Porém sua função mais elementar, que é intermediar chamadas, pode ser entendida com base em dois elementos importantes desse tipo de PBX. Esses elementos são o '''plano de discagem''' e '''configurações de canais'''. Na terminologia do Asterisk, um canal pode ser entendido como um ramal ou tronco. Para ter o Asterisk funcionando como uma central simplificada, é suficiente configurar esses dois elementos.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 4'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI4 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador IV'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professores: Ederson Luiz de Souza Santos e Mayara de Sousa'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2018'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=13/02/2019: Conceitos gerais, preparação do servidor e instalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
<b>Telefonia IP ou VoIP: O que é?</b><br />
----<br />
A Comunicação de Voz em Redes IP, chamada de VoIP, consiste no uso das redes de dados que utilizam o conjunto de protocolos das redes IP (TCP/UDP/IP) para a transmissão de sinais de Voz em tempo real na forma de pacotes de dados.<br />
<br />
A sua evolução natural levou ao aparecimento da Telefonia IP, que consiste no fornecimento de serviços de telefonia utilizando a rede IP para o estabelecimento de chamadas e comunicação de Voz.<br />
<br />
Nessas redes são implementados protocolos adicionais de sinalização de chamadas e transporte de Voz que permitem a comunicação com qualidade próxima àquela fornecida pelas redes convencionais dos sistemas públicos de telefonia comutada ou de telefonia móvel.<br/><br/><br />
<br />
<b>Digitalização de Sinais de Voz</b><br />
----<br />
Nos sistemas tradicionais o sinal de Voz utiliza uma banda de 4 kHz, e é digitalizado com uma taxa de amostragem de 8 kHz para ser recuperado adequadamente (Princípio de Nyquist). Como cada amostra é representada por um byte (8 bits, com até 256 valores distintos), cada canal de Voz necessita de uma banda de 64 kbit/s (8.000 amostras x 8 bits).<br />
<br />
Esta forma de digitalização do sinal de Voz atende a recomendação ITU-T G.711 - Pulse code modulation (PCM) of voice frequencies.<br />
<br />
Nos sistema de transmissão de Voz sobre IP, onde a demanda por banda é crítica, torna-se necessário utilizar também algoritmos de compressão do sinal de Voz. Esses algoritmos têm papel relevante pela economia de banda que proporcionam.<br />
<br />
O seu uso tem sido possível graças ao desenvolvimento dos processadores de sinais digitais (DSP’s), cuja capacidade de processamento tem crescido vertiginosamente.<br />
<br />
Estas necessidades incentivaram o desenvolvimento de tecnologias mais complexas para a digitalização e compressão de Voz, e que foram registradas através de recomendações do ITU-T. Estas recomendações são apresentadas na tabela abaixo, com algumas características relevantes.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs.jpg]]</div><br/><br/><br />
<br />
<b>Asterisk</b><br />
----<br />
O Asterisk é a implementação de uma central telefônica PBX (Private Branch eXchange) em software, criado por Mark Spencer em 1999, e distribuído pela Digium livremente seguindo a licençaGPL (GNU General Public License – GPL), ou através de código proprietário.<br />
<br />
O nome Asterisk vem do símbolo ‘*’, muito comum no mundo da telefonia.<br />
<br />
O Asterisk foi originalmente desenvolvido para Linux, mas atualmente podeser instalado e executado em uma grande variedade de sistemas operacionais, incluindo NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris e até mesmo Microsoft Windows, onde é conhecido por Asterisk Win32.<br/><br/><br />
<br />
<b>Características do Asterisk</b><br />
----<br />
O Asterisk é um software, baseado na licença GPL (GNU General Public License), que executa todas as funções de uma central telefônica convencional através das principais tecnologias de comunicação existentes no mercado, como por exemplo: linhas telefônicas analógicas, links de telefonia digital via placas de comunicação TDM (Time-Division Multplexing, ou Multiplexaçã ,o por divisão detempo), VoIP (Voice over IP, ou Voz sobre IP) através dos protocolos SIP, H.323, IAX2, MGCP, Skinny,GoogleTalk, Skype, entre outros.<br />
<br />
Através do Asterisk é possível estabelecer uma chamada entre qualquer um desses protocolos. O Asterisk é o que chamamos de B2B User Agent, ou melhor, Back-to-Back User Agent, ele estabelece uma chamada telefônica, separando cada “perna” da chamada entre origem e destino, e monitora todo o tráfego de áudio entre esses pontos. Por isso, caso esses pontos estejam utilizando CODECs diferentes, o Asterisk consegue transcodificar o áudio sem qualquer problema. Pode-se dizer que o Asterisk possui todas as funcionalidades das chamadas centrais telefônicas convencionais, como URAs, correio de voz, conferência, distribuição automática de chamadas, entre outras, e caso seja necessário, é possível acrescentar novas funcionalidades ao sistema através do próprio plano de discagem do Asterisk, módulos customizados escritos em C, ou ainda através de scripts escritos em Asterisk Gateway Interface (AGI). *Fonte: Construindo um PBX IP na pratica (Alexandre Keller)<br/><br/><br />
<br />
<b>Codecs</b><br />
----<br />
Um dos componentes necessários para transmissão de voz numa rede de dados é o Áudio CODEC (Codificador-Decodificador). Este componente é o responsável por transformar a voz humana (um sinal analógico) em uma seqüência de bits (um sinal digital) para transmissão numa rede de dados, fazendo amostragens periódicas no sinal de voz. Em equipamentos do tipo gateways VoIP, esses CODECs são implementados através de um componente chamado DSP (Digital Signal Processor).<br />
A introdução dos microprocessadores no final dos anos 70 e início dos anos 80 tornou possível usar técnicas de processamento digital de sinais (Digital Signal Processing) em um range muito maior de aplicações.<br />
Durante os anos 80 a importância crescente do processamento digital de sinais levou vários fabricantes importantes (como Texas Instruments, Analog Devices e Motorola) a desenvolverem os chips DSP, ou seja, microprocessadores especializados com arquiteturas projetadas especificamente para os tipos de operações requeridas ao processamento digital de sinais.<br />
Como um microprocessador de uso geral, um DSP é um dispositivo programável, com seu próprio conjunto de instruções nativas. O uso desses chips associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO-CODEC1].<br />
Cada CODEC provê certa qualidade de voz. A medida de qualidade da voz transmitida é uma resposta subjetiva de um ouvinte. Uma medida comum usada para determinar a qualidade do som produzido pelos CODECs específicos é o MOS (Mean Opinion Score). Com o uso do MOS, um amplo range de ouvintes julgam a qualidade de uma amostra de voz (correspondendo a um CODEC particular) numa escala de 1 a 5. A partir desses resultados, é calculada a média dos scores para atribuir o MOS para aquela amostra [CISCO-CODEC2].<br />
Na tabela 1 são apresentados alguns scores MOS para os CODECs mais usados. Na Tabela 2 são descritos os scores MOS.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs2.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:codecs3.jpg]]</div><br/><br />
<br />
<br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 1500 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* sudo apt-get update<br />
* sudo apt-get install build-essential module-assistant dkms<br />
* sudo m-a prepare<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
<br />
===<b>Instalação do Asterisk</b>===<br />
----<br />
Neste semestre iremos trabalhar com o Asterisk versão 13.22.0, o LibPRI 1.6.0, que é uma biblioteca Libpri será instalada para que tenhamos suporte aos canais PRI( ISDN, E1, T1 ), e o DAHDI, que é um pacote (Digium Asterisk Hardware Device Interface) nos permite carregar os drivers e configurar diversos tipos de placas de telefonia (para conectar telefones analógicos, linhas telefônicas, linhas digitais e outros).<br />
Antes de qualquer coisa, devemos atualizar o sistema via console de comando:<br />
<br />
#apt-get update<br />
#apt-get upgrade<br />
<br />
Também devemos instalar algumas dependências:<br />
<br />
# apt-get install -y make wget libssl-dev ncurses-dev libnewt-dev libxml2-dev linux-headers-generic g++ libsqlite3-dev uuid-dev libjansson-dev<br />
# apt-get install -y mysql-server libmysqld-dev<br />
<br />
Para baixar os arquivos do Asterisk, DAHDI e LibPRI, seguem os links abaixo (os comandos para a instalação completa do Asterisk, Libpri, Dahdi e banco de dados serão repassados em aula):<br />
<br />
[http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.22.0.tar.gz Asterisk 13.22.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz LibPRI 1.6.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz DAHDI]<br/><br />
<br />
Campos para o banco de dados:<br />
<br />
[https://docs.google.com/document/d/135vf4dUJhMmG0fVqzFXEYPQ095iBzpBU0O7fZz04hZs/edit?usp=sharing Arquivo banco de dados]<br />
<br />
<br/><br/><br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=18/02/2019: Instalação do Sistema Operacional Ubuntu 16.04.5 e reinstalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
...<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=20/02/2019: Comandos e configurações do Asterisk. Criação de ramais=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<b>Comandos Asterisk</b><br />
<br />
Para iniciarmos a utilização do Asterisk, devemos conhecer alguns comandos que serão utilizados no decorrer da disciplina.<br />
<br />
<br />
<b>Tipo: SIP</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do SIP<br />
<br />
sip set debug on<br/><br />
sip set debug off<br/><br />
<br />
'''sip reload''': Reload No arquivo: sip.conf<br/><br />
'''sip show channels:''' Visualizar canais ativos do Tipo SIP<br/><br />
'''sip show channel''': Detalhar 1 determinado canal ativo SIP<br/><br />
'''sip show inuse''': Listar todos os canais/peer existentes no Asterisk<br/><br />
'''sip show peers''': Visualizar os pares que registraram ou não no Asterisk usando SIP<br/><br />
'''sip show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando SIP)<br/><br />
'''sip show users''': Visualizar Dispositivos SIP, Plano de Discagem e Senha<br/><br />
'''sip show channelstats''': Visualizar estatísticas de buffer e jitter na rede e nas chamadas SIP ativas<br/><br />
<br />
<br />
<b>Tipo: IAX2</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do IAX2:<br/><br />
<br />
iax2 set debug on<br/><br />
iax2 set debug off<br/><br />
<br />
'''iax2 show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
'''iax2 show netstats''': Visualizar estatisticas de buffer e jitter na rede e nas chamadas IAX ativas<br/><br />
'''iax2 show peers''': Visualizar os pares que registraram ou não no Asterisk usando IAX<br/><br />
'''iax2 show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando IAX)<br/><br />
'''iax2 show stats''': Visualizar estatisticas do IAX<br/><br />
'''iax2 show users''': Visualizar Dispositivos IAX, Plano de Discagem e Senha<br/><br />
'''iax show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
<br />
<br />
<b>Tipo: Gerenciamento do Asterisk</b><br/><br />
<br />
<br />
'''restart now''': Restart Asterisk imediatamente<br/><br />
'''restart when convenient''': Aguarda inatividade no Asterisk para restartar o Asterisk em seguida<br/><br />
'''reload''': Reload nas configurações<br/><br />
'''stop now:''' Shut down no Asterisk imediatamente<br/><br />
'''dialplan reload''': Reload nos arquivos de configurações do plano de discagem extensions.conf<br/><br />
'''modules show''': Lista os módulos carregados no sistema<br/><br />
'''core show uptime''': Visualizar o tempo do Asterisk no Ar<br/><br />
'''core show version''': Visualizar informações sobre a versão do Asterisk<br/><br />
<br />
<br />
<b>Tipo: Comandos Gerais</b><br/><br />
<br />
<br />
'''dialplan show''': visualizar informações sobre um contexto<br/><br />
'''core show queues''': visualizar as filas criadas no Asterisk<br/><br />
'''soft hangup''': derrubar uma chamada ativa no Asterisk<br/><br />
'''core show applications''': visualizar informação sobre as aplicações disponíveis<br/><br />
'''core show application''': “Aplicação”: detalhar informação sobre determinada aplicação<br/><br />
<br />
<br />
<br />
<b>Preparar o servidor para liberar portas</b><br />
<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica.<br />
<br />
Script para liberação de portas <syntaxhighlight lang=bash><br />
#!/bin/sh<br />
<br />
### BEGIN INIT INFO<br />
# Provides: firewall.sh<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall.sh at boot time<br />
# Description: Enable service provided by firewall.sh.<br />
### END INIT INFO<br />
<br />
PATH="/bin:/sbin:/usr/bin:/usr/sbin"<br />
<br />
set -e<br />
<br />
echo "Starting firewall..."<br />
<br />
IPT="/sbin/iptables"<br />
<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
</syntaxhighlight><br />
<br />
<br />
<b>Iniciando a configuração dos ramais</b><br />
<br />
<br />
O asterisk possui um diretório onde ficam os arquivos de configuração, ele está localizado em /etc/asterisk.<br />
Para definirmos nossos ramais sip, o arquivo de configuração responsável é o sip.conf.<br />
<br />
<br />
Abaixo segue um exemplo de configuração do arquivo <b>sip.conf</b>:<br />
<br />
<br />
[general]<br/><br />
bindport=5060<br/><br />
bindaddr=0.0.0.0<br/><br />
context=default<br/><br />
disallow=all<br/><br />
allow=ulaw<br/><br />
allow=alaw<br/><br />
allow=gsm<br/><br />
maxexpirey=120<br/><br />
defaultexpirey=80<br/><br />
<br />
<br />
[1000]<br/><br />
type=friend<br/><br />
secret=123<br/><br />
host=dynamic<br/><br />
qualify=yes<br/><br />
<br />
<br />
Onde:<br />
<br />
<br />
'''bindaddr''': Endereço IP onde o Asterisk irá esperar pelas conexões SIP. O comportamento padrão é esperar em todas as interfaces e endereços secundários.<br />
<br />
'''Context''': Configura o contexto padrão onde todos os clientes serão colocados, a menos que seja sobrescrito na definição da entidade.<br />
<br />
'''Allow''': Permite que um determinado codec seja usado.<br />
<br />
'''Disallow''': Proíbe um determinado codec.<br />
<br />
'''Bindport''': Porta que o Asterisk deve esperar por conexões de entrada SIP. O padrão é 5060.<br />
<br />
'''maxexpirey''': Tempo máximo para registro em segundos.<br />
<br />
'''Defaultexpirey''': Tempo padrão para registro em segundos.<br />
<br />
<br />
<br />
'''[name]''': Quando um dispositivo SIP conecta-se ao Asterisk, ele utiliza a parte username do SIP URI para encontrar o peer/user.<br />
<br />
'''Type''': Configura a classe de conexão, as opções são peer, user e friend.<br />
<br />
'''Peer''': Entidade para a qual o Asterisk envia chamadas.<br />
<br />
'''User''': Entidade que faz chamadas através do Asterisk.<br />
<br />
'''Friend''': Os dois ao mesmo tempo.<br />
<br />
'''Host''': Configura o endereço IP ou o nome do host. Pode-se usar também a opção ‘dynamic’ onde se espera que o host faça o registro, é a opção mais comum.<br />
<br />
'''Secret''': Senha usada para autenticar o peer ou user fazendo uma chamada.<br />
<br />
'''Qualify''': caso esteja yes, o asterisk enviará um comando regularmente para verificar se o dispositivo ainda está online.<br />
<br />
<br />
<br />
<b>Plano de discagem</b><br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
<br />
Para criar um plano de discagem, deve-se editar o arquivo responsável, o extensions.conf. Este arquivo está localizado em /etc/asterisk. Uma parte importante neste arquivo é o contexto <b>general</b>:<br />
<br />
[general]<br/><br />
static=yes<br/><br />
writeprotect=no<br/><br />
autofallthrough=yes<br/><br />
clearglobalvars=no<br/><br />
priorityjumping=no<br/><br />
<br />
<br />
<br />
'''static e writeprotect''' – permite salvar o plano de discagem a partir da linha de comando.<br/><br />
'''Autofallthrough''' – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br/><br />
'''Clearglobalvars''' – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br/><br />
'''Priorityjumping''' – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br/><br />
<br />
Também devemos criar um contexto que já foi pré definido no ramal criado. No nosso caso se chamará <b>default</b>:<br />
<br />
<br />
[default]<br/><br />
exten = 1000,1,Dial(SIP/1000,30)<br/><br />
exten = 1000,2,Hangup()<br/><br />
<br />
<br />
Neste caso usamos duas aplicações, <b>Dial</b> e <b>Hangup</b>, responsáveis por discar e encerrar uma chamada, respectivamente.<br />
<br />
As aplicações mais comuns no Asterisk são:<br />
<br />
<br />
'''Answer''' – Atende uma chamada<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mas salva a posição de retorno<br/><br />
'''NooP''' – imprime na cli do asterisk o termo<br/><br />
<br />
<br />
<b>Exercício</b><br />
<br />
<br />
Crie 6 ramais (1000, 1001, 1002, 1003, 1004, 1005).<br />
<br />
Crie também um plano de discagem que permita a ligação entre todos os ramais.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=25/02/2019: Plano de discagem e máscaras=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
===Plano de discagem===<br />
<br />
O plano de discagem define como o Asterisk irá gerenciar as chamadas. Ele consiste de uma lista de instruções ou passos que o Asterisk deveria seguir. Essas instruções são disparadas a partir dos dígitos recebidos de um canal ou aplicação.<br />
O extensions.conf pode ser separado em quatro partes:<br />
<br />
* Contextos;<br />
* Extensões;<br />
* Prioridades;<br />
* Aplicações.<br />
<br />
<br />
====Contextos====<br />
<br />
Os contextos definem o escopo e permitem separar diferentes partes do plano de discagem, recebem o seu nome dentro de chaves ([]).<br />
No início do arquivo extensions.conf existe um contexto chamado [globals] onde as variáveis globais são definidas e podem ser usadas por todo o plano de discagem. E o contexto [general] que é utilizado para definir alguns parâmetros gerais.<br />
Os contextos estão ligados diretamente aos canais. Quando uma ligação entra no Asterisk por um canal ela é processada dentro do contexto deste canal.<br />
Ex:<br />
<br />
[gerentes]<br/><br />
exten=>9000,1,Playback(gerente)<br />
<br />
[visitantes]<br/><br />
exten=>9000,1,Playback(visitante)<br />
<br />
<br />
====Extensões====<br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
Exemplo:<br />
<br />
exten => 9001,1,Dial(SIP/9001,20) ; Extensão 9001, prioridade 1, disca para o ramal 9001 pelo protocolo SIP, tempo de resposta em segundos.<br/><br />
Exten => 9001,2,Hangup() ; Extensão 9001, prioridade 2, efetua o desligamento.<br />
<br />
Dentro de uma extensão, podemos ter as chamadas variáveis de canal, como abaixo:<br />
<br />
exten =>2001,2,DIAL(SIP/${RAMAL})<br />
<br />
Neste exemplo acima, criamos a variável “RAMAL” em tempo de execução, ou seja, na criação do Canal, ou da chamada.<br />
As variáveis de canais são as mais utilizadas normalmente, para trazer informação dos canais normalmente, como nome do canal , nome do contexto, extensão, etc. Vejamos abaixo algumas das variáveis mais usadas:<br />
<br />
${CALLERID} Identificador da chamada (nome ou número)<br/><br />
${CALLERIDNAME} O nome do id. Da chamada<br/><br />
${CALLERIDNUM} O número do id. Da chamada.<br/><br />
${CHANNEL} Nome do Canal atual ou corrente.<br/><br />
${CONTEXT} Nome do Contexto atual ou corrente.<br/><br />
${DATATIME} Data e hora no formato o YYYY-MM-DD_HH:MM:SS.<br/><br />
${DIALPEERNUMBER} Número de que foi chamada.<br/><br />
${DIALSTATUS} Status da Chamada.<br/><br />
${EXTEN} Extensão da chamada atual ou corrente.<br/><br />
${HANGUPCAUSE} Causa do término da chamada<br/><br />
${LANGUAGE} A Linguagem Atual.<br/><br />
${PRIORITY} Prioridade Atual<br/><br />
<br />
<br />
exemplo:<br />
<br />
exten => _20XX,1,Dial(SIP/${EXTEN})<br />
<br />
<br />
Neste exemplo podemos ver o uso de máscara e da variável do Asterisk EXTEN. Esse é justamente o exemplo que havia falado acima, para evitar o a criação de uma infinidades de canais. Quando um ramal começando com 20 e mais dois números for solicitado, irá chamar a aplicação DIAL para discar para o ramal ( SIP/${EXTEN}), onde esta variável trará o próprio numero discado. Assim precisamos apenas de uma entrada para todos os ramais do tipo 20XX.<br />
<br />
<br />
====Aplicações básicas do Asterisk====<br />
<br />
'''Answer''' – Atende uma chamada.<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução.<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados.<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mais salva a posição de retorno.<br/><br />
'''NooP''' – imprime na cli do asterisk o termo.<br/><br />
<br />
Para verificar as aplicações no asterisk, basta digitar n cli do mesmo o seguinte comando:<br />
<br />
# ubuntu-server*cli> core show applications<br />
<br />
Caso queira uma explicação detalhada de uma aplicação, utilize o comando:<br />
<br />
# ubuntu-server*cli> core show application nome_da_aplicacao<br />
<br />
Onde o termo nome_da_aplicacao corresponde a aplicação a qual queremos os detalhes.<br />
<br />
<br />
Formato das extensões<br />
<br />
8000 – numérica<br/><br />
Alexander – alfanumérica<br/><br />
4321/1234 – Numérica com callerID<br/><br />
_4XXX – Usando máscaras<br/><br />
s – padrões pré definidos<br/><br />
<br />
Máscaras<br />
<br />
_ - início de uma máscaras<br/><br />
. - aceita n caracteres subsequentes<br/><br />
[13-9] – qualquer dígito dentro dos colchetes (1, de 3 até 9), mas apenas um deles<br/><br />
X – qualquer dígito entre 0 e 9<br/><br />
Z – qualquer dígito entre 1 e 9<br/><br />
N – qualquer dígito entre 2 e 9<br/><br />
<br />
Prioridades<br />
<br />
Prioridades são passos numerados na execução de cada extensão. Cada prioridade chama uma aplicação especifica. Se os números das prioridades não forem sequenciais o Asterisk aborta a execução. A partir da versão 1.2 do Asterisk, tornou-se comum o uso da prioridade “n”, no lugar da associação manual de números, assim como a possibilidade da utilização de labels e aliases.<br />
<br />
<br />
'''Exercícios'''<br />
<br />
<br />
# Deve-se criar extensões para ramais com 4 dígitos, permitindo que iniciem com 2 ou 3 e tenham sua numeração entre 2000 e 2499, e também entre 3000 e 3499;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando em 6 ou 7 e que tenham sua numeração entre 6500 e 6599, e também entre 7500 e 7599;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando com 9 e que tenham numeração entre 9600 a 9700;<br/><br />
# Criar extensões para celulares com 9 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para celulares com 9 dígitos, sem operadora;<br/><br />
# Criar extensões para telefones fixos com 8 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para telefones fixos com 8 dígitos, sem operadora.<br/><br />
<br />
<br />
'''Observações:'''<br />
<br />
* Os celulares iniciam com o dígito 9 e telefones fixos com 2 ou 3.<br />
<br />
* Em cada extensão usar uma aplicação para escrever na CLI do Asterisk qual a ligação está sendo efetuada, o número e o nome dado ao ramal. Ex: Esta ligação está sendo efetuada de celular sem operadora de longa distância.<br />
<br />
<br />
<br />
Leituras que podem ser úteis:<br />
<br />
[http://stato.blog.br/wordpress/asterisk-parte-3-variaveis-macros-e-mascaras/ Variáveis, Macros e Máscaras]<br />
<br />
[https://www.vivaolinux.com.br/etc/extensions.conf-caue.garcia/ Extensions.conf]<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=27/02/2019: Aplicações e instalação de áudio em português=<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Aplicações===<br />
<br />
As aplicações são partes fundamentais do Asterisk, elas tratam o canal de voz, tocando sons, aceitando dígitos ou encerrando uma chamada. As aplicações são chamadas com opções que afetam a sua forma de funcionamento.<br />
<br />
Agora testaremos este ramal, iremos criar uma aplicação onde discaremos *65 no ramal registrado e o asterisk nos dirá qual é o ramal que está em uso.<br />
<br />
Para isso, vamos editar o arquivo responsável pelos planos de discagem, o extensions.conf. Este arquivo está localizado em /etc/asterisk.<br />
<br />
Ao abrir o arquivo, temos que definir um contexto general, onde iremos indicar alguns parâmetros básicos:<br />
<br />
<br />
'''[general]'''<br/><br />
'''static=yes'''<br/><br />
'''writeprotect=no'''<br/><br />
'''autofallthrough=yes'''<br/><br />
'''clearglobalvars=no'''<br/><br />
'''priorityjumping=no'''<br/>'''<br />
<br />
<br />
static e writeprotect – permite salvar o plano de discagem a partir da linha de comando.<br />
<br />
Autofallthrough – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br />
<br />
Clearglobalvars – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br />
<br />
Priorityjumping – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br />
Agora criaremos um contexto chamado app:<br />
<br />
<br />
'''[app]'''<br/><br />
'''exten =>*65,1,Goto(function-speakextnum,s,1)'''<br />
<br />
<br />
Ao discarmos *65, este contexto encaminhará, através da função Goto (enviar para), para outro contexto, chamado function-speakextnum:<br />
<br />
<br />
'''[function-speakextnum]'''<br/><br />
'''exten => s,1,Set(Description=”Identifica ramal”)'''<br/><br />
'''exten => s,2,Answer'''<br/><br />
'''exten => s,3,Wait(1)'''<br/><br />
'''exten => s,4,Playback(number&is)'''<br/><br />
'''exten => s,5,SayDigits(${CALLERID(num)})'''<br/><br />
'''exten => s,6,Wait(2)'''<br/><br />
'''exten => s,7,Hangup'''<br/><br />
<br />
<br />
Basicamente, este contexto terá uma descrição, utilizará os sons previamente criados no asterisk para nos dizer qual o ramal em uso e após 2 segundos desligar.<br />
<br />
Agora necessitamos incluir a aplicação no contexto definido no arquivo sip.conf. Devemos recordar que este contexto se chama default:<br />
<br />
<br />
'''[default]'''<br/><br />
'''include => app'''<br />
<br />
<br />
Pudemos identificar que a linguagem utilizada é o inglês. O que iremos fazer é instalar o idioma português.<br />
<br />
Para isso, devemos efetuar o download do arquivo de áudio em português, neste link:<br />
<br />
Baixe os arquivos de som:<br />
<br />
# wget -O core.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-core-pt-BR-sln16.zip<br />
# wget -O extra.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-extra-pt-BR-sln16.zip<br />
<br />
<br />
Arquivo Convert deve conter os comandos abaixo:<br />
#!/bin/bash<br />
for a in $(find . -name '*.sln16'); do<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\<br />
done<br />
<br />
<br />
===Avaliação===<br />
<br />
<br />
Deve ser entregue o relatório parcial, via Sigaa, com todo o conteúdo visto até o momento. Serão avaliados os seguintes itens:<br />
<br />
# Conteúdo;<br />
# Organização;<br />
# Metodologia (formatação do conteúdo de acordo com o que foi passado em aula).<br />
<br />
O relatório deve ser entregue até as 23:59 de 03/03/2019, em formato '''PDF''' (não serão considerados outros formatos).<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI4-2019-1&diff=154847PJI4-2019-12019-02-27T19:53:50Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador IV= <br />
<font size="3"><br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 2a feira/19:00, 4a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 4a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji4-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
#Implantar um PABX IP integrado com serviços de telefonia fixa e móvel convencionais. <br />
#Prover a infraestrutura de rede necessária para o adequado funcionamento deste PABX IP. <br />
#Integrar os serviços de telefonia com outros serviços de rede.<br />
<br />
== Links interessantes ==<br />
<br />
* [https://hakin9.org/voip-hacking-techniques/ VoIP Hacking Techniques]<br />
* [https://www.vivaolinux.com.br/artigo/Asterisk-nao-e-um-Sip-Proxy Asterisk não é um SIP proxy]<br />
* [https://www.rnp.br/servicos/servicos-avancados/fonernp FoneRNP]<br />
* [https://www.digium.com/products/business-phone-systems/on-premise/virtual-pbx SwitchVox: PBX virtual]<br />
* [http://convergecom.com.br/teletime/21/03/2006/embratel-e-net-lancam-servico-de-telefonia-fixa-local/ Net Fone da Embratel é VoIP, mas não usa SIP]<br />
** [https://en.wikipedia.org/wiki/PacketCable ... e sim PacketCable]<br />
* [http://thevoipreport.com/article/cold-hard-voip-stats/ Estatísticas sobre VoIP no mundo]<br />
* [https://www.cisco.com/c/en/us/support/docs/voice/digital-cas/5717-e1-r2-sig.html Sinalização R2 (E1)]<br />
=== Provedores VoIP no Brasil ===<br />
* [https://www.falemaisvoip.com.br/o-que-e-voip/ FaleMaisVoIP]<br />
* [http://www.directcall.com.br/ DirectCall]<br />
* [http://www.teleco.com.br/opvoip.asp outros ...]<br />
<br />
== Resumo de comandos da CLI para o Asterisk ==<br />
<br />
# O Asterisk pode ser carregado de duas formas:<br />
#* '''foreground''': utilizado para depurar problemas na inicialização do Asterisk, quando ele não puder ser inicializado.<br />
#* '''background''': modo padrão de inicialização<br><br><br />
# Conectar à CLI do Asterisk carregado <syntaxhighlight lang=text><br />
asterisk -r<br />
rasterisk <br />
</syntaxhighlight><br />
# Comandos na CLI<br />
## Saindo da CLI sem interromper o processo <syntaxhighlight lang=text><br />
exit<br />
</syntaxhighlight><br />
## Carrega canais SIP previamente registrados <syntaxhighlight lang=text><br />
sip reload<br />
</syntaxhighlight><br />
## Mostra canais SIP registrados <syntaxhighlight lang=text><br />
sip show peers<br />
</syntaxhighlight><br />
## Carrega plano de discagem <syntaxhighlight lang=text><br />
dialplan reload<br />
</syntaxhighlight><br />
## Mostra a extensão criada no plano de discagem <syntaxhighlight lang=text><br />
dialplan show default<br />
</syntaxhighlight><br />
## Finalizando processo no Asterisk <syntaxhighlight lang=bash><br />
sudo core stop now<br />
</syntaxhighlight><br />
## Ver aplicações disponíveis no Asterisk <syntaxhighlight lang=text><br />
core show applications<br />
</syntaxhighlight><br />
# Iniciando Asterisk em modo Background <syntaxhighlight lang=bash><br />
sudo service asterisk start<br />
</syntaxhighlight><br />
# Carregar o Asterisk em modo ForeGround <syntaxhighlight lang=bash><br />
sudo asterisk -gc<br />
</syntaxhighlight><br />
</font><br />
<br />
=11/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1MNqwAklC8WL0-geeBuC_4kCTjGqDxcyi/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador IV===<br />
<br />
O foco do Projeto Integrador IV está na oferta de serviços ao usuário final e na convergência de serviços de telecomunicações, incluindo a integração dos serviços de telefonia fixa, móvel e VoIP. Além disso, também tem como objetivo a integração destes serviços de telecomunicações com outros serviços de rede como servidores Web, Email, Telefonia IP, administração de sistemas e usuários, compartilhamento de recursos, DNS, etc. <br />
<br />
<br />
Na figura abaixo é apresentado um esboço do cenário que foi desenvolvido durante o Projeto Integrador III. A proposta inicial é integrar a este cenário serviços de telefonia IP e convencional. Além disso, outros serviços podem ser integrados a ambos, como e-mail, DNS, acesso à câmeras IP, etc. <br />
<br />
[[imagem:Diagrama-PJI3.png|600px]]<br />
<br />
<br />
Uma vez integrados os serviços de rede e de telefonia e tendo em mente que a qualidade de serviço é um ponto sensível à aplicações de telefonia IP, espera-se desenvolver métodos de medição de rede para assegurar seu correto funcionamento.<br />
<br />
== PBX IP ==<br />
<br />
<br />
Um PBX IP funciona como uma central telefônica, porém intermediando chamadas VoIP. Com isso, as chamadas são feitas de um telefone IP em direção ao PBX IP, que a encaminha ao telefone IP de destino de acordo com suas regras de discagem. A figura abaixo ilustra como funciona uma chamada VoIP típica através de um PBX IP.<br />
<br />
[[imagem:Voip-call.png|500px]]<br />
<br />
<br />
Nas nossas aulas faremos uso de um PBX IP [http://www.asterisk.org/ Asterisk], que é um software desenvolvido pela [http://www.digium.com/ Digium]. O Asterisk roda em computadores do tipo PC que possuem sistema operacional baseado em Linux. Sua licença é livre, o que significa que não há custo de licenciamento para utilizá-lo.<br />
* [http://www.asterisk.org/get-started Uma visão geral sobre Asterisk]<br />
<br />
== PBX IP Asterisk ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/rmu/slides/aula-25.pdf Transparências]<br />
* [http://www.asterisk.org Site oficial do Asterisk]<br />
* [http://www.asteriskguru.com/ Asterisk Guru]<br />
* [http://www.voip-info.org/wiki Dicas sobre Asterisk]<br />
* [http://www.asteriskdocs.org/ Livro online gratuito sobre Asterisk]<br />
* [http://www.packetizer.com/ipmc/sip/papers/understanding_sip_voip/ Introdução a VoIP e SIP]<br />
* Livro [http://www.shopvoip.com.br/index.php?route=product/product&product_id=1263 ''Asterisk: Guia de Configuração - 5a geração''], de Flávio Gonçalves.<br />
<br />
<br />
'''Asterisk:''' uma solução completa de PABX baseado em software, permitindo ligar o mundo IP ao mundo da rede pública de telefonia comutada.<br />
<br />
'''Características Básicas:''' faz tudo que um PABX pequeno e simples faz e pouco mais<br />
* Transferência, música de espera, siga-me, etc.<br />
* Conferência, correio de voz, URA, fila de chamadas, monitoramento de chamadas, integração com o Jabber (Google talk)<br />
<br />
<br />
[[imagem:Asterisk-ex1.png|400px]]<br />
<br>''Exemplo de cenário de uso do Asterisk''<br />
<br />
<br />
<!-- [[imagem:Asterisk-arch.png|500px]]<br />
<br>''Arquitetura modular do Asterisk'' ---><br />
<br />
<br />
O Asterisk é um software complexo e com muitos recursos. Porém sua função mais elementar, que é intermediar chamadas, pode ser entendida com base em dois elementos importantes desse tipo de PBX. Esses elementos são o '''plano de discagem''' e '''configurações de canais'''. Na terminologia do Asterisk, um canal pode ser entendido como um ramal ou tronco. Para ter o Asterisk funcionando como uma central simplificada, é suficiente configurar esses dois elementos.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 4'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI4 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador IV'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professores: Ederson Luiz de Souza Santos e Mayara de Sousa'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2018'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=13/02/2019: Conceitos gerais, preparação do servidor e instalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
<b>Telefonia IP ou VoIP: O que é?</b><br />
----<br />
A Comunicação de Voz em Redes IP, chamada de VoIP, consiste no uso das redes de dados que utilizam o conjunto de protocolos das redes IP (TCP/UDP/IP) para a transmissão de sinais de Voz em tempo real na forma de pacotes de dados.<br />
<br />
A sua evolução natural levou ao aparecimento da Telefonia IP, que consiste no fornecimento de serviços de telefonia utilizando a rede IP para o estabelecimento de chamadas e comunicação de Voz.<br />
<br />
Nessas redes são implementados protocolos adicionais de sinalização de chamadas e transporte de Voz que permitem a comunicação com qualidade próxima àquela fornecida pelas redes convencionais dos sistemas públicos de telefonia comutada ou de telefonia móvel.<br/><br/><br />
<br />
<b>Digitalização de Sinais de Voz</b><br />
----<br />
Nos sistemas tradicionais o sinal de Voz utiliza uma banda de 4 kHz, e é digitalizado com uma taxa de amostragem de 8 kHz para ser recuperado adequadamente (Princípio de Nyquist). Como cada amostra é representada por um byte (8 bits, com até 256 valores distintos), cada canal de Voz necessita de uma banda de 64 kbit/s (8.000 amostras x 8 bits).<br />
<br />
Esta forma de digitalização do sinal de Voz atende a recomendação ITU-T G.711 - Pulse code modulation (PCM) of voice frequencies.<br />
<br />
Nos sistema de transmissão de Voz sobre IP, onde a demanda por banda é crítica, torna-se necessário utilizar também algoritmos de compressão do sinal de Voz. Esses algoritmos têm papel relevante pela economia de banda que proporcionam.<br />
<br />
O seu uso tem sido possível graças ao desenvolvimento dos processadores de sinais digitais (DSP’s), cuja capacidade de processamento tem crescido vertiginosamente.<br />
<br />
Estas necessidades incentivaram o desenvolvimento de tecnologias mais complexas para a digitalização e compressão de Voz, e que foram registradas através de recomendações do ITU-T. Estas recomendações são apresentadas na tabela abaixo, com algumas características relevantes.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs.jpg]]</div><br/><br/><br />
<br />
<b>Asterisk</b><br />
----<br />
O Asterisk é a implementação de uma central telefônica PBX (Private Branch eXchange) em software, criado por Mark Spencer em 1999, e distribuído pela Digium livremente seguindo a licençaGPL (GNU General Public License – GPL), ou através de código proprietário.<br />
<br />
O nome Asterisk vem do símbolo ‘*’, muito comum no mundo da telefonia.<br />
<br />
O Asterisk foi originalmente desenvolvido para Linux, mas atualmente podeser instalado e executado em uma grande variedade de sistemas operacionais, incluindo NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris e até mesmo Microsoft Windows, onde é conhecido por Asterisk Win32.<br/><br/><br />
<br />
<b>Características do Asterisk</b><br />
----<br />
O Asterisk é um software, baseado na licença GPL (GNU General Public License), que executa todas as funções de uma central telefônica convencional através das principais tecnologias de comunicação existentes no mercado, como por exemplo: linhas telefônicas analógicas, links de telefonia digital via placas de comunicação TDM (Time-Division Multplexing, ou Multiplexaçã ,o por divisão detempo), VoIP (Voice over IP, ou Voz sobre IP) através dos protocolos SIP, H.323, IAX2, MGCP, Skinny,GoogleTalk, Skype, entre outros.<br />
<br />
Através do Asterisk é possível estabelecer uma chamada entre qualquer um desses protocolos. O Asterisk é o que chamamos de B2B User Agent, ou melhor, Back-to-Back User Agent, ele estabelece uma chamada telefônica, separando cada “perna” da chamada entre origem e destino, e monitora todo o tráfego de áudio entre esses pontos. Por isso, caso esses pontos estejam utilizando CODECs diferentes, o Asterisk consegue transcodificar o áudio sem qualquer problema. Pode-se dizer que o Asterisk possui todas as funcionalidades das chamadas centrais telefônicas convencionais, como URAs, correio de voz, conferência, distribuição automática de chamadas, entre outras, e caso seja necessário, é possível acrescentar novas funcionalidades ao sistema através do próprio plano de discagem do Asterisk, módulos customizados escritos em C, ou ainda através de scripts escritos em Asterisk Gateway Interface (AGI). *Fonte: Construindo um PBX IP na pratica (Alexandre Keller)<br/><br/><br />
<br />
<b>Codecs</b><br />
----<br />
Um dos componentes necessários para transmissão de voz numa rede de dados é o Áudio CODEC (Codificador-Decodificador). Este componente é o responsável por transformar a voz humana (um sinal analógico) em uma seqüência de bits (um sinal digital) para transmissão numa rede de dados, fazendo amostragens periódicas no sinal de voz. Em equipamentos do tipo gateways VoIP, esses CODECs são implementados através de um componente chamado DSP (Digital Signal Processor).<br />
A introdução dos microprocessadores no final dos anos 70 e início dos anos 80 tornou possível usar técnicas de processamento digital de sinais (Digital Signal Processing) em um range muito maior de aplicações.<br />
Durante os anos 80 a importância crescente do processamento digital de sinais levou vários fabricantes importantes (como Texas Instruments, Analog Devices e Motorola) a desenvolverem os chips DSP, ou seja, microprocessadores especializados com arquiteturas projetadas especificamente para os tipos de operações requeridas ao processamento digital de sinais.<br />
Como um microprocessador de uso geral, um DSP é um dispositivo programável, com seu próprio conjunto de instruções nativas. O uso desses chips associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO-CODEC1].<br />
Cada CODEC provê certa qualidade de voz. A medida de qualidade da voz transmitida é uma resposta subjetiva de um ouvinte. Uma medida comum usada para determinar a qualidade do som produzido pelos CODECs específicos é o MOS (Mean Opinion Score). Com o uso do MOS, um amplo range de ouvintes julgam a qualidade de uma amostra de voz (correspondendo a um CODEC particular) numa escala de 1 a 5. A partir desses resultados, é calculada a média dos scores para atribuir o MOS para aquela amostra [CISCO-CODEC2].<br />
Na tabela 1 são apresentados alguns scores MOS para os CODECs mais usados. Na Tabela 2 são descritos os scores MOS.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs2.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:codecs3.jpg]]</div><br/><br />
<br />
<br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 1500 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* sudo apt-get update<br />
* sudo apt-get install build-essential module-assistant dkms<br />
* sudo m-a prepare<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
<br />
===<b>Instalação do Asterisk</b>===<br />
----<br />
Neste semestre iremos trabalhar com o Asterisk versão 13.22.0, o LibPRI 1.6.0, que é uma biblioteca Libpri será instalada para que tenhamos suporte aos canais PRI( ISDN, E1, T1 ), e o DAHDI, que é um pacote (Digium Asterisk Hardware Device Interface) nos permite carregar os drivers e configurar diversos tipos de placas de telefonia (para conectar telefones analógicos, linhas telefônicas, linhas digitais e outros).<br />
Antes de qualquer coisa, devemos atualizar o sistema via console de comando:<br />
<br />
#apt-get update<br />
#apt-get upgrade<br />
<br />
Também devemos instalar algumas dependências:<br />
<br />
# apt-get install -y make wget libssl-dev ncurses-dev libnewt-dev libxml2-dev linux-headers-generic g++ libsqlite3-dev uuid-dev libjansson-dev<br />
# apt-get install -y mysql-server libmysqld-dev<br />
<br />
Para baixar os arquivos do Asterisk, DAHDI e LibPRI, seguem os links abaixo (os comandos para a instalação completa do Asterisk, Libpri, Dahdi e banco de dados serão repassados em aula):<br />
<br />
[http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.22.0.tar.gz Asterisk 13.22.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz LibPRI 1.6.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz DAHDI]<br/><br />
<br />
Campos para o banco de dados:<br />
<br />
[https://docs.google.com/document/d/135vf4dUJhMmG0fVqzFXEYPQ095iBzpBU0O7fZz04hZs/edit?usp=sharing Arquivo banco de dados]<br />
<br />
<br/><br/><br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=18/02/2019: Instalação do Sistema Operacional Ubuntu 16.04.5 e reinstalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
...<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=20/02/2019: Comandos e configurações do Asterisk. Criação de ramais=<br />
<br />
{{Collapse top | Aula 4}}<br />
<font size="3"><br />
<b>Comandos Asterisk</b><br />
<br />
Para iniciarmos a utilização do Asterisk, devemos conhecer alguns comandos que serão utilizados no decorrer da disciplina.<br />
<br />
<br />
<b>Tipo: SIP</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do SIP<br />
<br />
sip set debug on<br/><br />
sip set debug off<br/><br />
<br />
'''sip reload''': Reload No arquivo: sip.conf<br/><br />
'''sip show channels:''' Visualizar canais ativos do Tipo SIP<br/><br />
'''sip show channel''': Detalhar 1 determinado canal ativo SIP<br/><br />
'''sip show inuse''': Listar todos os canais/peer existentes no Asterisk<br/><br />
'''sip show peers''': Visualizar os pares que registraram ou não no Asterisk usando SIP<br/><br />
'''sip show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando SIP)<br/><br />
'''sip show users''': Visualizar Dispositivos SIP, Plano de Discagem e Senha<br/><br />
'''sip show channelstats''': Visualizar estatísticas de buffer e jitter na rede e nas chamadas SIP ativas<br/><br />
<br />
<br />
<b>Tipo: IAX2</b><br />
<br />
<br />
Habilitar/Desabilitar Debug do IAX2:<br/><br />
<br />
iax2 set debug on<br/><br />
iax2 set debug off<br/><br />
<br />
'''iax2 show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
'''iax2 show netstats''': Visualizar estatisticas de buffer e jitter na rede e nas chamadas IAX ativas<br/><br />
'''iax2 show peers''': Visualizar os pares que registraram ou não no Asterisk usando IAX<br/><br />
'''iax2 show registry''': Visualizar status do Registro SIP. (Quando o asterisk registra um cliente utilizando IAX)<br/><br />
'''iax2 show stats''': Visualizar estatisticas do IAX<br/><br />
'''iax2 show users''': Visualizar Dispositivos IAX, Plano de Discagem e Senha<br/><br />
'''iax show channels''': Visualizar canais ativos do Tipo IAX<br/><br />
<br />
<br />
<b>Tipo: Gerenciamento do Asterisk</b><br/><br />
<br />
<br />
'''restart now''': Restart Asterisk imediatamente<br/><br />
'''restart when convenient''': Aguarda inatividade no Asterisk para restartar o Asterisk em seguida<br/><br />
'''reload''': Reload nas configurações<br/><br />
'''stop now:''' Shut down no Asterisk imediatamente<br/><br />
'''dialplan reload''': Reload nos arquivos de configurações do plano de discagem extensions.conf<br/><br />
'''modules show''': Lista os módulos carregados no sistema<br/><br />
'''core show uptime''': Visualizar o tempo do Asterisk no Ar<br/><br />
'''core show version''': Visualizar informações sobre a versão do Asterisk<br/><br />
<br />
<br />
<b>Tipo: Comandos Gerais</b><br/><br />
<br />
<br />
'''dialplan show''': visualizar informações sobre um contexto<br/><br />
'''core show queues''': visualizar as filas criadas no Asterisk<br/><br />
'''soft hangup''': derrubar uma chamada ativa no Asterisk<br/><br />
'''core show applications''': visualizar informação sobre as aplicações disponíveis<br/><br />
'''core show application''': “Aplicação”: detalhar informação sobre determinada aplicação<br/><br />
<br />
<br />
<br />
<b>Preparar o servidor para liberar portas</b><br />
<br />
<br />
Devemos efetuar a liberação das portas 5060 e o range de 10000 a 20000 no Iptables do linux. As portas utilizadas no asterisk são definidas no arquivo rtp.conf, localizado no diretório /etc/asterisk/, onde a porta 5060 é padrão para registro do asterisk e o range 10000 a 20000 é padrão para a troca de informações. Somente efetue a alteração das portas em necessidade específica.<br />
<br />
Script para liberação de portas <syntaxhighlight lang=bash><br />
#!/bin/sh<br />
<br />
### BEGIN INIT INFO<br />
# Provides: firewall.sh<br />
# Required-Start: $local_fs $remote_fs $network $syslog<br />
# Required-Stop: $local_fs $remote_fs $network $syslog<br />
# Default-Start: 2 3 4 5<br />
# Default-Stop: 0 1 6<br />
# Short-Description: Start firewall.sh at boot time<br />
# Description: Enable service provided by firewall.sh.<br />
### END INIT INFO<br />
<br />
PATH="/bin:/sbin:/usr/bin:/usr/sbin"<br />
<br />
set -e<br />
<br />
echo "Starting firewall..."<br />
<br />
IPT="/sbin/iptables"<br />
<br />
iptables -I INPUT -p udp -m udp --dport 10000:20000 -j ACCEPT<br />
iptables -I INPUT -p udp -m udp --dport 5060 -j ACCEPT<br />
<br />
</syntaxhighlight><br />
<br />
<br />
<b>Iniciando a configuração dos ramais</b><br />
<br />
<br />
O asterisk possui um diretório onde ficam os arquivos de configuração, ele está localizado em /etc/asterisk.<br />
Para definirmos nossos ramais sip, o arquivo de configuração responsável é o sip.conf.<br />
<br />
<br />
Abaixo segue um exemplo de configuração do arquivo <b>sip.conf</b>:<br />
<br />
<br />
[general]<br/><br />
bindport=5060<br/><br />
bindaddr=0.0.0.0<br/><br />
context=default<br/><br />
disallow=all<br/><br />
allow=ulaw<br/><br />
allow=alaw<br/><br />
allow=gsm<br/><br />
maxexpirey=120<br/><br />
defaultexpirey=80<br/><br />
<br />
<br />
[1000]<br/><br />
type=friend<br/><br />
secret=123<br/><br />
host=dynamic<br/><br />
qualify=yes<br/><br />
<br />
<br />
Onde:<br />
<br />
<br />
'''bindaddr''': Endereço IP onde o Asterisk irá esperar pelas conexões SIP. O comportamento padrão é esperar em todas as interfaces e endereços secundários.<br />
<br />
'''Context''': Configura o contexto padrão onde todos os clientes serão colocados, a menos que seja sobrescrito na definição da entidade.<br />
<br />
'''Allow''': Permite que um determinado codec seja usado.<br />
<br />
'''Disallow''': Proíbe um determinado codec.<br />
<br />
'''Bindport''': Porta que o Asterisk deve esperar por conexões de entrada SIP. O padrão é 5060.<br />
<br />
'''maxexpirey''': Tempo máximo para registro em segundos.<br />
<br />
'''Defaultexpirey''': Tempo padrão para registro em segundos.<br />
<br />
<br />
<br />
'''[name]''': Quando um dispositivo SIP conecta-se ao Asterisk, ele utiliza a parte username do SIP URI para encontrar o peer/user.<br />
<br />
'''Type''': Configura a classe de conexão, as opções são peer, user e friend.<br />
<br />
'''Peer''': Entidade para a qual o Asterisk envia chamadas.<br />
<br />
'''User''': Entidade que faz chamadas através do Asterisk.<br />
<br />
'''Friend''': Os dois ao mesmo tempo.<br />
<br />
'''Host''': Configura o endereço IP ou o nome do host. Pode-se usar também a opção ‘dynamic’ onde se espera que o host faça o registro, é a opção mais comum.<br />
<br />
'''Secret''': Senha usada para autenticar o peer ou user fazendo uma chamada.<br />
<br />
'''Qualify''': caso esteja yes, o asterisk enviará um comando regularmente para verificar se o dispositivo ainda está online.<br />
<br />
<br />
<br />
<b>Plano de discagem</b><br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
<br />
Para criar um plano de discagem, deve-se editar o arquivo responsável, o extensions.conf. Este arquivo está localizado em /etc/asterisk. Uma parte importante neste arquivo é o contexto <b>general</b>:<br />
<br />
[general]<br/><br />
static=yes<br/><br />
writeprotect=no<br/><br />
autofallthrough=yes<br/><br />
clearglobalvars=no<br/><br />
priorityjumping=no<br/><br />
<br />
<br />
<br />
'''static e writeprotect''' – permite salvar o plano de discagem a partir da linha de comando.<br/><br />
'''Autofallthrough''' – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br/><br />
'''Clearglobalvars''' – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br/><br />
'''Priorityjumping''' – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br/><br />
<br />
Também devemos criar um contexto que já foi pré definido no ramal criado. No nosso caso se chamará <b>default</b>:<br />
<br />
<br />
[default]<br/><br />
exten = 1000,1,Dial(SIP/1000,30)<br/><br />
exten = 1000,2,Hangup()<br/><br />
<br />
<br />
Neste caso usamos duas aplicações, <b>Dial</b> e <b>Hangup</b>, responsáveis por discar e encerrar uma chamada, respectivamente.<br />
<br />
As aplicações mais comuns no Asterisk são:<br />
<br />
<br />
'''Answer''' – Atende uma chamada<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mas salva a posição de retorno<br/><br />
'''NooP''' – imprime na cli do asterisk o termo<br/><br />
<br />
<br />
<b>Exercício</b><br />
<br />
<br />
Crie 6 ramais (1000, 1001, 1002, 1003, 1004, 1005).<br />
<br />
Crie também um plano de discagem que permita a ligação entre todos os ramais.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=25/02/2019: Plano de discagem e máscaras=<br />
<br />
{{Collapse top | Aula 5}}<br />
<font size="3"><br />
<br />
===Plano de discagem===<br />
<br />
O plano de discagem define como o Asterisk irá gerenciar as chamadas. Ele consiste de uma lista de instruções ou passos que o Asterisk deveria seguir. Essas instruções são disparadas a partir dos dígitos recebidos de um canal ou aplicação.<br />
O extensions.conf pode ser separado em quatro partes:<br />
<br />
* Contextos;<br />
* Extensões;<br />
* Prioridades;<br />
* Aplicações.<br />
<br />
<br />
====Contextos====<br />
<br />
Os contextos definem o escopo e permitem separar diferentes partes do plano de discagem, recebem o seu nome dentro de chaves ([]).<br />
No início do arquivo extensions.conf existe um contexto chamado [globals] onde as variáveis globais são definidas e podem ser usadas por todo o plano de discagem. E o contexto [general] que é utilizado para definir alguns parâmetros gerais.<br />
Os contextos estão ligados diretamente aos canais. Quando uma ligação entra no Asterisk por um canal ela é processada dentro do contexto deste canal.<br />
Ex:<br />
<br />
[gerentes]<br/><br />
exten=>9000,1,Playback(gerente)<br />
<br />
[visitantes]<br/><br />
exten=>9000,1,Playback(visitante)<br />
<br />
<br />
====Extensões====<br />
<br />
O plano de discagem é um conjunto de instruções. A extensão executa uma ação quando uma chamada é efetuada.<br />
Sintaxe de um comando extension:<br />
<br />
exten=> number (name), {priority|label{+|-}offset}[(alias)],application<br />
<br />
Exemplo:<br />
<br />
exten => 9001,1,Dial(SIP/9001,20) ; Extensão 9001, prioridade 1, disca para o ramal 9001 pelo protocolo SIP, tempo de resposta em segundos.<br/><br />
Exten => 9001,2,Hangup() ; Extensão 9001, prioridade 2, efetua o desligamento.<br />
<br />
Dentro de uma extensão, podemos ter as chamadas variáveis de canal, como abaixo:<br />
<br />
exten =>2001,2,DIAL(SIP/${RAMAL})<br />
<br />
Neste exemplo acima, criamos a variável “RAMAL” em tempo de execução, ou seja, na criação do Canal, ou da chamada.<br />
As variáveis de canais são as mais utilizadas normalmente, para trazer informação dos canais normalmente, como nome do canal , nome do contexto, extensão, etc. Vejamos abaixo algumas das variáveis mais usadas:<br />
<br />
${CALLERID} Identificador da chamada (nome ou número)<br/><br />
${CALLERIDNAME} O nome do id. Da chamada<br/><br />
${CALLERIDNUM} O número do id. Da chamada.<br/><br />
${CHANNEL} Nome do Canal atual ou corrente.<br/><br />
${CONTEXT} Nome do Contexto atual ou corrente.<br/><br />
${DATATIME} Data e hora no formato o YYYY-MM-DD_HH:MM:SS.<br/><br />
${DIALPEERNUMBER} Número de que foi chamada.<br/><br />
${DIALSTATUS} Status da Chamada.<br/><br />
${EXTEN} Extensão da chamada atual ou corrente.<br/><br />
${HANGUPCAUSE} Causa do término da chamada<br/><br />
${LANGUAGE} A Linguagem Atual.<br/><br />
${PRIORITY} Prioridade Atual<br/><br />
<br />
<br />
exemplo:<br />
<br />
exten => _20XX,1,Dial(SIP/${EXTEN})<br />
<br />
<br />
Neste exemplo podemos ver o uso de máscara e da variável do Asterisk EXTEN. Esse é justamente o exemplo que havia falado acima, para evitar o a criação de uma infinidades de canais. Quando um ramal começando com 20 e mais dois números for solicitado, irá chamar a aplicação DIAL para discar para o ramal ( SIP/${EXTEN}), onde esta variável trará o próprio numero discado. Assim precisamos apenas de uma entrada para todos os ramais do tipo 20XX.<br />
<br />
<br />
====Aplicações básicas do Asterisk====<br />
<br />
'''Answer''' – Atende uma chamada.<br/><br />
'''PlayBack(arquivo)''' – Reproduz arquivo de som especificado. Os arquivos de som ficam em /var/lib/asterisk/sounds<br/><br />
'''BackGround(arquivo)''' – Mesma coisa, mais permite a interação com o usuário durante a execução.<br/><br />
'''HangUp''' – Encerra uma chamada<br/><br />
'''Dial''' – Disca ou conecta dois canais de comunicação<br/><br />
'''Goto(contexto,extensão,prioridade)''' – Muda a ordem para o contexto, extensão e prioridade especificados.<br/><br />
'''Gosub(contexto,extensão,prioridade)''' – Mesma coisa, mais salva a posição de retorno.<br/><br />
'''NooP''' – imprime na cli do asterisk o termo.<br/><br />
<br />
Para verificar as aplicações no asterisk, basta digitar n cli do mesmo o seguinte comando:<br />
<br />
# ubuntu-server*cli> core show applications<br />
<br />
Caso queira uma explicação detalhada de uma aplicação, utilize o comando:<br />
<br />
# ubuntu-server*cli> core show application nome_da_aplicacao<br />
<br />
Onde o termo nome_da_aplicacao corresponde a aplicação a qual queremos os detalhes.<br />
<br />
<br />
Formato das extensões<br />
<br />
8000 – numérica<br/><br />
Alexander – alfanumérica<br/><br />
4321/1234 – Numérica com callerID<br/><br />
_4XXX – Usando máscaras<br/><br />
s – padrões pré definidos<br/><br />
<br />
Máscaras<br />
<br />
_ - início de uma máscaras<br/><br />
. - aceita n caracteres subsequentes<br/><br />
[13-9] – qualquer dígito dentro dos colchetes (1, de 3 até 9), mas apenas um deles<br/><br />
X – qualquer dígito entre 0 e 9<br/><br />
Z – qualquer dígito entre 1 e 9<br/><br />
N – qualquer dígito entre 2 e 9<br/><br />
<br />
Prioridades<br />
<br />
Prioridades são passos numerados na execução de cada extensão. Cada prioridade chama uma aplicação especifica. Se os números das prioridades não forem sequenciais o Asterisk aborta a execução. A partir da versão 1.2 do Asterisk, tornou-se comum o uso da prioridade “n”, no lugar da associação manual de números, assim como a possibilidade da utilização de labels e aliases.<br />
<br />
<br />
'''Exercícios'''<br />
<br />
<br />
# Deve-se criar extensões para ramais com 4 dígitos, permitindo que iniciem com 2 ou 3 e tenham sua numeração entre 2000 e 2499, e também entre 3000 e 3499;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando em 6 ou 7 e que tenham sua numeração entre 6500 e 6599, e também entre 7500 e 7599;<br/><br />
# Criar extensões para ramais com 4 dígitos iniciando com 9 e que tenham numeração entre 9600 a 9700;<br/><br />
# Criar extensões para celulares com 9 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para celulares com 9 dígitos, sem operadora;<br/><br />
# Criar extensões para telefones fixos com 8 dígitos mais operadora de longa distância juntamente com o zero (mais 3 dígitos). Deve-se assegurar-se que a operadora de longa distância a ser utilizada é 071 (fictício);<br/><br />
# Criar a mesma extensão para telefones fixos com 8 dígitos, sem operadora.<br/><br />
<br />
<br />
'''Observações:'''<br />
<br />
* Os celulares iniciam com o dígito 9 e telefones fixos com 2 ou 3.<br />
<br />
* Em cada extensão usar uma aplicação para escrever na CLI do Asterisk qual a ligação está sendo efetuada, o número e o nome dado ao ramal. Ex: Esta ligação está sendo efetuada de celular sem operadora de longa distância.<br />
<br />
<br />
<br />
Leituras que podem ser úteis:<br />
<br />
[http://stato.blog.br/wordpress/asterisk-parte-3-variaveis-macros-e-mascaras/ Variáveis, Macros e Máscaras]<br />
<br />
[https://www.vivaolinux.com.br/etc/extensions.conf-caue.garcia/ Extensions.conf]<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=27/02/2019: Aplicações e instalação de áudio em português=<br />
<br />
{{Collapse top | Aula 6}}<br />
<font size="3"><br />
<br />
===Aplicações===<br />
<br />
As aplicações são partes fundamentais do Asterisk, elas tratam o canal de voz, tocando sons, aceitando dígitos ou encerrando uma chamada. As aplicações são chamadas com opções que afetam a sua forma de funcionamento.<br />
<br />
Agora testaremos este ramal, iremos criar uma aplicação onde discaremos *65 no ramal registrado e o asterisk nos dirá qual é o ramal que está em uso.<br />
<br />
Para isso, vamos editar o arquivo responsável pelos planos de discagem, o extensions.conf. Este arquivo está localizado em /etc/asterisk.<br />
<br />
Ao abrir o arquivo, temos que definir um contexto general, onde iremos indicar alguns parâmetros básicos:<br />
<br />
<br />
'''[general]'''<br/><br />
'''static=yes'''<br/><br />
'''writeprotect=no'''<br/><br />
'''autofallthrough=yes'''<br/><br />
'''clearglobalvars=no'''<br/><br />
'''priorityjumping=no'''<br/>'''<br />
<br />
<br />
static e writeprotect – permite salvar o plano de discagem a partir da linha de comando.<br />
<br />
Autofallthrough – quando um ramal não tiver mais nenhuma opção no seu plano de discagem o Asterisk encerra a chamada com BUSY, CONGESTION ou HANGUP das outras configurações do servidor.<br />
<br />
Clearglobalvars – determina se as variáveis globais serão limpas e recarregadas a cada vez que ocorrer uma recarga do Asterisk feita com o comando de console.<br />
<br />
Priorityjumping – determina se as aplicações que suportam saltar prioridades baseado no resultado da operação o farão de forma normal.<br />
Agora criaremos um contexto chamado app:<br />
<br />
<br />
'''[app]'''<br/><br />
'''exten =>*65,1,Goto(function-speakextnum,s,1)'''<br />
<br />
<br />
Ao discarmos *65, este contexto encaminhará, através da função Goto (enviar para), para outro contexto, chamado function-speakextnum:<br />
<br />
<br />
'''[function-speakextnum]'''<br/><br />
'''exten => s,1,Set(Description=”Identifica ramal”)'''<br/><br />
'''exten => s,2,Answer'''<br/><br />
'''exten => s,3,Wait(1)'''<br/><br />
'''exten => s,4,Playback(number&is)'''<br/><br />
'''exten => s,5,SayDigits(${CALLERID(num)})'''<br/><br />
'''exten => s,6,Wait(2)'''<br/><br />
'''exten => s,7,Hangup'''<br/><br />
<br />
<br />
Basicamente, este contexto terá uma descrição, utilizará os sons previamente criados no asterisk para nos dizer qual o ramal em uso e após 2 segundos desligar.<br />
<br />
Agora necessitamos incluir a aplicação no contexto definido no arquivo sip.conf. Devemos recordar que este contexto se chama default:<br />
<br />
<br />
'''[default]'''<br/><br />
'''include => app'''<br />
<br />
<br />
Pudemos identificar que a linguagem utilizada é o inglês. O que iremos fazer é instalar o idioma português.<br />
<br />
Para isso, devemos efetuar o download do arquivo de áudio em português, neste link:<br />
<br />
Baixe os arquivos de som:<br />
<br />
# wget -O core.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-core-pt-BR-sln16.zip<br />
# wget -O extra.zip https://www.asterisksounds.org/pt-br/download/asterisk-sounds-extra-pt-BR-sln16.zip<br />
<br />
<br />
Arquivo Convert deve conter os comandos abaixo:<br />
#!/bin/bash<br />
for a in $(find . -name '*.sln16'); do<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t gsm -r 8k `echo $a|sed "s/.sln16/.gsm/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e a-law `echo $a|sed "s/.sln16/.alaw/"`;\<br />
sox -t raw -e signed-integer -b 16 -c 1 -r 16k $a -t raw -r 8k -e mu-law `echo $a|sed "s/.sln16/.ulaw/"`;\<br />
done<br />
<br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Aloca%C3%A7%C3%A3o_das_m%C3%A1quinas_virtuais_dos_laborat%C3%B3rios&diff=154483Alocação das máquinas virtuais dos laboratórios2019-02-19T21:35:18Z<p>Ederson.luiz: /* Programação */</p>
<hr />
<div>Está página foi criada para organizar o uso das VMs nos laboratórios do Câmpus São José do IFSC.<br />
<br />
É simples:<br />
No começo do semestre o professor edita essa página colocando seu nome e disciplina ao lado da maquina que irá usar no laboratório onde suas aulas estão alocadas. <br />
<br />
Importante: No primeiro dia de aula no laboratório combine com os alunos uma senha e peça para eles trocarem (ou o próprio professor pode trocar): <br />
<code>passwd aluno</syntaxhighlight><br />
<br />
OBS 1: Está ocorrendo um erro com a interface de rede nas máquinas virtuais, por algum motivo não está subindo a eth0 e sim a virbr0. Para consertar isso basta digitar os seguintes comandos:<br />
virsh net-destroy default<br />
virsh net-undefine default<br />
service libvirt-bin restart<br />
Fonte: http://www.cyberciti.biz/faq/linux-kvm-disable-virbr0-nat-interface/<br />
<br />
OBS 2: Na máquina do professor, a interface padrão de configuração da rede das máquinas virtuais é a eth0. Porém a interface da rede interna é a eth1. No redes 1 a configuração está correta.<br />
<br />
==Redes de Computadores==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
==Sistemas Digitais==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
==Programação==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| PJI2 Tele Subsequente<br />
| Ederson<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| PJI4 Tele Subsequente<br />
| Ederson/Mayara<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
==CAD 1==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre <br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
==CAD 2==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
==CAD 3==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=154459PJI2-2019-12019-02-19T17:16:16Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=14/02/2019: Sistema operacional e introdução ao Linux=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
===O que é GNU/Linux===<br />
<br />
<br />
Linux é o núcleo do sistema operacional, programa responsável pelo funcionamento do computador, que faz a comunicação entre hardware (impressora, monitor, mouse, teclado) e software (aplicativos em geral). O conjunto do kernel e demais programas responsáveis por interagir com este é o que denominamos sistema operacional. O kernel é o coração do sistema. <br />
<br />
Os principais programas responsáveis por interagir com o kernel foram criados pela fundação GNU. Por este motivo é mais correto nos referenciarmos ao sistema operacional como GNU/Linux ao invés de apenas Linux. <br />
<br />
Uma distribuição nada mais é que o conjunto de kernel, programas de sistema e aplicativos reunidos num único CD-ROM (ou qualquer outro tipo de mídia). Hoje em dia temos milhares de aplicativos para a plataforma GNU/Linux, onde cada empresa responsável por uma distro escolhe os aplicativos que nela deverão ser inclusos.<br />
<br />
[https://pt.wikipedia.org/wiki/Licen%C3%A7a_livre Software livre]<br />
<br />
[https://pt.wikipedia.org/wiki/C%C3%B3digo_aberto Open Source]<br />
<br />
===Como o kernel trabalha===<br />
<br />
<br />
Assim que o computador é ligado, o kernel é acionado e começa a detectar todo o hardware que ele possui e o que precisa para funcionar. Após o carregamento, o núcleo assume outras funções: gerenciar os processos, os arquivos, a memória e os dispositivos periféricos, fazendo com que ele seja o “organizador” de tudo o que acontece na máquina.<br />
<br />
Após realizar todas essas etapas, o sistema operacional está pronto para funcionar. Ele carrega as funções responsáveis por checar o que deve ser inicializado em nível de software e processos, como, por exemplo, o conteúdo do arquivo /etc/init. Geralmente, o que é carregado é a tela de login do usuário.<br />
<br />
Com o usuário logado e o sistema operacional trabalhando, o kernel passa a executar suas funções, como a de controlar o uso da memória pelos programas ou a de atender a chamada de uma interrupção de hardware.<br />
<br />
É possível baixar o código-fonte e o próprio kernel do Linux a partir do [https://www.kernel.org/ site oficial]. Nesse endereço não só é possível ter a última versão como também mais antigas. Além disso, lá o usuário pode obter informações, reportar bugs e participar de listas de discussão.<br />
<br />
<div style="text-align: center;">[[Arquivo:kernel2.jpg]]</div><br/><br />
<br />
===Distribuições Linux===<br />
<br />
<br />
O Linux possui vários sabores e estes são denominados distribuições. Uma distribuição nada mais é que um kernel acrescido de programas escolhidos a dedo pela equipe que a desenvolve. Cada distribuição possui suas particularidades, tais como forma de se instalar um pacote (ou software), interface de instalação do sistema operacional em si, interface gráfica, suporte a hardware. Então resta ao usuário definir que distribuição atende melhor suas necessidades.<br />
<br />
[https://pt.wikipedia.org/wiki/Lista_de_distribui%C3%A7%C3%B5es_de_Linux Lista de distribuições Linux]<br />
<br />
<div style="text-align: center;">[[Arquivo:distlinux.jpg]]</div><br/><br />
<br />
===Interface gráfica===<br />
<br />
<br />
Uma das coisas que os usuários mais estranham quando migram para o Linux é a existência de diversas interfaces gráficas, coisa que não é comum no Windows nem no Mac OS X, a não ser quando o fabricante decide fazer alguma alteração.<br />
Diferente do que acontece nesses outros sistema operacionais, no Linux é possível mudar a interface gráfica do sistema.<br />
Mudando a interface gráfica do sistema, a distribuição Linux continua sendo a mesma mas toda a aparência é alterada.<br />
Quem não conhece a diferença entre sistema operacional e interface gráfica pode pensar que se trata de outra distribuição ou até mesmo de outro sistema operacional.<br />
As interfaces gráficas mais conhecidas são Unity, Gnome, KDE, XFCE, LXDE, Cinnamon e Mate.<br/><br/><br />
<br />
<div style="text-align: center;">Unity</div><br/><br />
<div style="text-align: center;">[[Arquivo:unity.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">KDE</div><br/><br />
<div style="text-align: center;">[[Arquivo:kde.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Cinnamon</div><br/><br />
<div style="text-align: center;">[[Arquivo:cinnamon.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">Mate</div><br/><br />
<div style="text-align: center;">[[Arquivo:mate.jpg]]</div><br/><br />
<br />
===Estrutura de diretórios no Linux===<br />
<br />
<br />
O primeiro choque para quem está vindo do Windows é a estrutura de diretórios do Linux, que não lembra em nada o que temos no Windows. Basicamente, no Windows temos os arquivos do sistema concentrados nas pastas Windows e Arquivos de programas e você pode criar e organizar suas pastas da forma que quiser.<br />
No Linux é basicamente o contrário. O diretório raiz está tomado pelas pastas do sistema e espera-se que você armazene seus arquivos pessoais dentro da sua pasta no diretório /home.<br />
<br />
Mas, as diferenças não param por aí. Para onde vão os programas que são instalados se não existe uma pasta central como a arquivos de programas? E para onde vão os arquivos de configuração se o Linux não possui nada semelhante ao registro do Windows?<br />
<br />
A primeira coisa com que você precisa se habituar é que no Linux os discos e partições não aparecem necessariamente como unidades diferentes, como o C:, D:, E: do Windows. Tudo faz parte de um único diretório, chamado diretório raiz.<br />
<br />
Dentro deste diretório temos não apenas todas as partições de disco, mas também o CD-ROM, drive de disquete e outros dispositivos.<br />
<br />
[https://canaltech.com.br/linux/entendendo-a-estrutura-de-diretorios-do-linux/ Entendendo a estrutura de diretórios]<br />
<br />
<br />
<div style="text-align: center;">Estrutura de diretórios</div><br/><br />
<div style="text-align: center;">[[Arquivo:dirlinux.jpg]]</div><br/><br />
<br />
===O que é o Sistema Operacional===<br />
<br />
O sistema operacional funciona com a iniciação de processos que este irá precisar para funcionar corretamente. Esses processos poderão ser arquivos que necessitam de ser frequentemente atualizados, ou arquivos que processam dados úteis para o sistema. Poderemos ter acesso a vários processos do sistema operacional a partir do gerenciador de tarefas, onde se encontram todos os processos que estão em funcionamento desde a inicialização do sistema operacional até a sua utilização atual. <br />
<br />
O sistema operacional é uma coleção de programas que:<br />
<br />
* Inicializa o hardware do computador<br />
* Fornece rotinas básicas para controle de dispositivos<br />
* Fornece gerência, escalonamento e interação de tarefas<br />
* Mantém a integridade de sistema<br />
<br />
<br />
===Qual é o papel de um Sistema Operacional===<br />
<br />
<br />
As funções do sistema operacional são inúmeras:<br />
<br />
* Gestão do processador: o sistema operacional se encarrega de gerenciar o subsídio do processador entre os diversos programas, graças a um algoritmo de escalonamento. O tipo de programador é totalmente dependente do sistema operacional em função do objetivo visado. <br />
<br />
* Gestão da memória RAM: o sistema operacional se encarrega de gerenciar o espaço de memória atribuído a cada aplicativo e, se for o caso, a cada usuário. No caso de insuficiência de memória física, o sistema operacional pode criar uma área de memória no disco rígido, chamada de memória virtual. Ela faz funcionar aplicativos que necessitam de mais memória do que a memória RAM tem disponível no sistema. Por outro lado, esta memória é muito mais lenta. <br />
<br />
* Gestão das entradas/saídas: o sistema operacional unifica e controla o acesso dos programas aos recursos materiais através dos drivers (também chamados de gerenciadores de periféricos ou gerenciadores de entrada/saída). <br />
<br />
* Gestão da execução dos aplicativos: o sistema operacional é responsável pela boa execução dos aplicativos, atribuindo-lhes os recursos necessários ao seu funcionamento. Desta maneira, ele também permite eliminar um aplicativo que não responda corretamente. <br />
<br />
* Gestão dos direitos: o sistema operacional é responsável pela segurança ligada à execução dos programas, garantindo que os recursos sejam utilizados apenas pelos programas e usuários que possuam direitos para tanto. <br />
<br />
* Gestão dos arquivos: o sistema operacional gerencia a leitura e a redação no sistema de arquivos e os direitos de acesso aos arquivos pelos usuários e aplicativos. <br />
<br />
* Gestão das informações: o sistema operacional fornece diversos indicadores para diagnosticar o bom funcionamento da máquina.<br />
<br />
<br />
<br />
===Quais são os componentes do sistema operacional===<br />
<br />
<br />
O sistema operacional é composto por um conjunto de softwares que permitem administrar as interações com o hardware. Neste conjunto de softwares distinguem-se os seguintes elementos: o núcleo (kernel), que representa as funções fundamentais do sistema operacional tais como gestão da memória, processos, arquivos, entradas/saídas e das funcionalidades de comunicação; o Intérprete de comandos (shell), ou seja, a camada externa, por oposição ao núcleo, que permite a comunicação com o sistema operacional por meio de uma linguagem de comandos para o usuário pilotar os periféricos ignorando muitas das características do hardware como, por exemplo, a gestão dos endereços físicos; e o sistema de arquivos (file system), que permite registrar os arquivos em arborescência. <br />
<br />
<br />
===Como funcionam os sistemas multitarefas===<br />
<br />
<br />
Um sistema operacional é multitarefas quando várias tarefas (também chamadas de processos) podem ser executadas simultaneamente. <br />
<br />
Os aplicativos são compostos por uma sequência de instruções chamados processos rápidos (threads). Estes threads serão alternadamente ativos, no modo de espera, suspensos ou destruídos, de acordo com a prioridade que lhes é associada ou executados sequencialmente. <br />
<br />
Um sistema é preemptivo quando possui um programador que reparte, de acordo com critérios de prioridade, o tempo da máquina nos diversos processos que fazem os pedidos. <br />
<br />
O sistema é de tempo compartilhado quando uma cota de tempo é atribuída a cada processo pelo programador. Este é o caso principalmente dos sistemas multiusuários, que permitem que vários deles utilizem simultaneamente um mesmo computador e vários aplicativos, diferentes ou similares. <br />
<br />
Por fim, o sistema é considerado transacional quando o sistema atribui a cada usuário uma fração de tempo. <br />
<br />
<br />
===Área de trabalho ou Desktop===<br />
<br />
É a área de exibição quando você liga o computador e faz o logon no sistema operacional. Quando você abre programas ou pastas, eles são exibidos sobre a área de trabalho, Nela também é possível colocar itens, como arquivos e pastas, e organizá-los como quiser. Ela é composta de:<br />
<br />
* Menu iniciar<br />
* Barra de tarefas<br />
* Área de notificação<br />
* Ícones, pastas e atalhos<br />
* Papel de parede ou plano de fundo.<br />
<br />
<div style="text-align: center;">[[Arquivo:desktopwindows.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Windows</div><br/><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:Desktopubuntumate.jpg]]</div><br />
<div style="text-align: center;">Área de trabalho Ubuntu</div><br/><br/><br />
<br />
<br />
===Explorador de arquivos Caja===<br />
<br />
O explorador de arquivos exibe a pasta pessoal do usuário, que seria o mesmo que a pasta Meus Documentos do Windows. Porém há uma diferença do Windows, dentro desta pasta é o único local que o usuário pode criar novas pastas ou arquivos.<br />
<br />
<div style="text-align: center;">[[Arquivo:cajalinux.jpg]]</div><br/><br />
<br />
===Instalando e desinstalando programas===<br />
<br />
O Linux está repleto de softwares, mas o que devemos saber é que ele possui u ma Central de programas que permite instalar diversos outros softwares, para diversas áreas.<br />
<br />
Houve uma época em que a instalação de pacotes precisava ser feita exclusivamente por comandos no console, o que consumia tempo e exigia um certo trabalho. Era necessário, por exemplo, lidar manualmente com todas as dependências necessárias para a instalação de um software, obedecendo, inclusive, a ordem de instalação desses pacotes. Mas, felizmente, isso ficou no passado.<br />
<br />
Hoje existe maneiras bem mais práticas e simples de se instalar e remover programas do Ubuntu. A principal delas é por meio da Central de Programas, que pode ser executada pelo Launcher localizado no lado esquerdo da tela.<br />
<br />
Para usar a Central sem problemas é necessário ter uma conexão ativa com a Internet. Afinal, todos os programas estão armazenados em espaços virtuais remotos conhecidos como repositórios.<br />
<br />
<div style="text-align: center;">[[Arquivo:centraldeprogramas.jpg]]</div><br/><br />
<br />
<br />
Para instalar uma aplicação, você pode começar navegando pelas categorias posicionadas na lateral esquerda da Central de Programas do Ubuntu. Ao encontrar o programa desejado, clique sobre ele e, em seguida, no botão "Instalar". Por medidas de segurança, é necessário informar a senha do seu usuário para que o software seja instalado com sucesso.<br />
<br />
Para remover um programa instalado anteriormente, voltaremos à Central de Programas. Lá, clique no botão "Instalados" para listar todo os softwares presentes no sistema. Depois disso, o procedimento é bastante similar ao de instalação. Basta navegar pelas categorias, selecionar o programa desejado e, em seguida, clicar no botão "Remover". A senha do usuário também será solicitada para que a ação seja efetivamente realizada.<br />
<br />
<br />
===Usando a Central de Programas do Ubuntu===<br />
<br />
Existem inúmeras maneiras de instalar um software em um sistema operacional. No Ubuntu Mate, a maneira mais rápida e fácil de encontrar e instalar novos aplicativos é através da Central de programas do Ubuntu.<br />
<br />
Para acessar, você deve ir em '''Sistema''', '''Administração''' e '''Central de Programas do Ubuntu'''.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu.jpg|700px]]</div><br />
<br />
A Central de programas do Ubuntu pode ser usado para instalar aplicativos disponíveis nos repositórios oficiais do Ubuntu. A janela da Central de programas do Ubuntu se divide em seções:<br />
<br />
* Uma lista de categorias, à esquerda;<br />
* Um banner na parte superior;<br />
* Um painel "Novidades" logo abaixo do banner superior;<br />
* Em seguida, um painel "Recomendado para você ";<br />
* E finalmente, um painel de "Mais bem avaliados" na parte inferior.<br />
<br />
Ao clicar em uma categoria você será levado a uma lista de aplicações relacionadas. Por exemplo, a categoria de Internet contém aplicativos como o navegador Firefox.<br />
<br />
Cada áreas em destaque como "Novidades" e "Mais bem avaliados", apresenta ícones de aplicação diferentes. Basta clicar em um ícone para obter mais informações sobre a aplicação ou para instalá-lo. Para ver todos os softwares contidos na área, clique no botão "Mais" no canto superior direito de cada painel.<br />
<br />
As três seções no topo da Cetral de programas do Ubuntu representam uma visão atual do seu catálogo de Softwares. Clique no botão "Todos aplicativos" para ver todo os aplicativos instalados, clique no botão "Instalados" para ver uma lista de aplicativos já instalados no seu computador e clique em "Histórico" para ver as instalações e exclusões anteriores organizados por data.<br />
<br />
===Pesquisando aplicativos===<br />
<br />
A Central de programas do Ubuntu exibe diferentes fontes na seção "Todos os aplicativos". Clicando na seta ao lado de "Todos os aplicativos" irá mostrar uma lista de seções individuais, selecionando "Fornecido pelo Ubuntu" irá mostrar os aplicativos livres oficiais. "Para Compra" mostrará os aplicativos disponíveis para compra, e "Parceiros da Canonical" mostrará os aplicativos de parceiros da Canonical, como a Adobe.<br />
<br />
Se você estiver procurando por um aplicativo, você já deve saber seu nome específico (por exemplo, o VLC Media Player), ou você pode apenas ter uma categoria geral em mente (por exemplo, a categoria som som e vídeo inclui uma série de aplicações diferentes, tais como conversores de vídeo, editores de áudio e players de música).<br />
<br />
Para ajudar você a encontrar o aplicativo certo, você pode navegar pelo catálogo da Central de programas do Ubuntu clicando na categoria do software que você procura. Ao selecionar uma categoria, será mostrado uma lista de aplicativos, algumas categorias têm subcategorias, por exemplo, a categoria de jogos tem subcategorias para simulação e jogos de cartas. Para mover através de categorias, use o botões "Voltar" e "Avançar" no topo da janela.<br />
<br />
Como você vê uma categoria de software, você verá uma caixa de pesquisa no canto superior direito da janela. Esta caixa de pesquisa pode ser utilizada para especificar nomes ou pesquisas de palavras-chave dentro desta categoria.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu2.jpg|700px]]</div><br />
<br />
<br />
Depois de ter encontrado um aplicativo que você gostaria de experimentar, a instalação exigirá apenas um clique.<br />
<br />
Para instalar um aplicativo:<br />
<br />
# Clique no botão "Instalar" à direita do pacote selecionado, se você gostaria de ler mais sobre o pacote de software antes de instalá-lo, em primeiro lugar clique no botão "Mais Informações", logo abaixo do software selecionado. Isso vai lhe dar uma breve descrição do aplicativo, bem como uma imagem e links da web, quando disponível. Pacotes adicionais relacionados serão listados abaixo na descrição do aplicativo. Você pode clique em "Instalar" a partir desta tela também.<br />
# Após clicar em "Instalar", digite sua senha na janela de autenticação, esta é a mesma senha que você usa para fazer login na sua conta. Você é obrigado a digitar sua senha sempre que instalar ou remover software, a fim de evitar que alguém sem acesso de administrador faça alterações não autorizadas ao seu computador. Se você receber uma mensagem de falha de autenticação depois de digitar sua senha, verifique se você digitou corretamente e tente novamente.<br />
# Aguarde até que o Ubuntu termine a instalação, durante a instalação (ou remoção) de programas, você verá um ícone animado de rotação à direita do botão Histórico na parte superior da tela. Este ícone animado é rotulado de "Progresso". A qualquer momento, clicando no botão de "Progresso" na parte superior irá levá-lo a um resumo de todas as operações que estão sendo processadas no momento. Você também pode clicar no "X" para cancelar quaisquer operações listadas.<br />
<br />
<br />
Uma vez que a Central de programas do Ubuntu terminou de instalar um aplicativo, ele está pronto para ser utilizado. Você pode iniciar o aplicativo recém instalado, indo para o Painel Inicial e digitar o nome do aplicativo na barra de pesquisa.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu3.jpg|700px]]</div><br />
<br />
<br />
===Remover aplicativos===<br />
<br />
Remover aplicativos é muito semelhante à instalação de aplicativos. Primeiro, encontre o aplicativo instalado na Central de programas do Ubuntu, você pode clicar no Botão "Instalados" para ver todos os aplicativos instalados listados por categorias. Vá até o aplicativo que você deseja remover, se você clicar na seta ao lado ao botão "Instalados", você vai encontrar uma lista de fornecedores de aplicativos, que pode ajudá-lo a refinar a sua pesquisa. Você também pode digitar palavras-chave na busca campo para encontrar rapidamente aplicativos instalados, ou você pode pesquisar por data na Guia "Histórico".<br />
<br />
Para remover um aplicativo:<br />
<br />
# Clique no botão "Remover" na direira do aplicativo selecionado.<br />
# Digite sua senha na janela de autenticação, semelhante à instalação de aplicativos a remoção de aplicativos requer sua senha para ajudar a proteger o seu computador contra alterações não autorizadas. O pacote será então colocado em fila para a remoção e aparecerá na seção progresso até que ele termine de remover.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu4.jpg|700px]]</div><br />
<br />
<br />
===Histórico de aplicativos===<br />
<br />
<br />
A central de programas do Ubuntu mantém o controle dos aplicativos já instalados na seção Histórico. Isso é útil se você quiser reinstalar um aplicativo previamente removido e não se lembra o nome do aplicativo. Há quatro botões na seção: "Todas as alterações", "Instalações", "Atualizações" e "Remoções". Se você clicar na seta ao lado de um dia, uma lista de pacotes individuais serão exibidos, juntamente com o que foi feito com eles e a hora.<br />
<br />
<br />
<div style="text-align: center;">[[Arquivo:centralubuntu5.jpg|700px]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
1 - Explique o que é:<br />
<br />
* Kernel;<br />
* Sistema Operacional;<br />
* Interface gráfica;<br />
<br />
2 - Qual a diferença entre os sistemas de arquivos do Windows e Linux?<br />
<br />
3 - Mude a proteção de tela para Cosmos com tempo de espera de 10 minutos.<br />
<br />
4 - Através da Central de programas do Ubuntu Mate, instale os seguintes programas:<br />
<br />
* Tux paint;<br />
* Gnucash;<br />
* SuperTux Kart.<br />
<br />
5 - Crie um diretório dentro da pasta pessoal do aluno com o nome <b>exercicios</b>.<br />
<br />
6 - Para todos os exercícios anteriores, deve-se usar o Manual técnico via Google Documentos, criando na aula anterior para descrever os procedimentos, juntamente com a captura da tela no momento da execução da tarefa. Ao finalizar, efetue o download do arquivo em formato '''pdf''', no diretório <b>exercicio</b> criado anteriormente. <br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=19/02/2019: Uso do SO: Manipulação do arquivos e diretórios=<br />
<br />
{{Collapse top | Aula 3}}<br />
<font size="3"><br />
<br />
== Manipulação de arquivos e diretórios ==<br />
<br />
<br />
Uma tarefa usual em um sistema operacional é localizar arquivos. Essa procura pode ser baseada no nome ou parte do nome de arquivo, na data de criação ou última modificação, no nome do usuário ou grupo dono, ou outros atributos do arquivo. Pode ser inclusive baseada numa combinação dessas informações. Por exemplo, pode ser necessário procurar todos os arquivos de música ou video, ou então todos os programas (arquivos executáveis) que pertençam ao superusuário (usuário ''root''). Existem programas capazes de fazer tais buscas tanto no ambiente gráfico quanto no modo texto. <br />
<br />
As buscas a serem realizadas são:<br />
# Arquivos de música<br />
# Arquivos de música ou video<br />
# Arquivos de texto ou planilha do Openoffice que não tenham sido modificados a 7 dias ou mais<br />
# Arquivos executáveis (programas)<br />
# Arquivos executáveis pertencentes ao usuário ''root''<br />
<br />
Para iniciar, vamos usar programas gráficos para fazer buscas.<br />
<br />
=== Usando o ambiente gráfico ===<br />
<br />
O primeiro programa gráfico a ser usado é o ''caja'' (ou ''nautilus'' em outras versões do Ubuntu que não o Mate), o gerenciador de arquivos disponível no Ubuntu Linux. Para usá-lo para fazer buscas selecione a opção de pesquisa:<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa1.png|600px]]</div><br />
<br />
<br />
No ''caja'' aparecerá uma caixa de texto onde se deve digitar o nome ou parte do nome dos arquivos a serem procurados.<br />
<br />
<br />
<div style="text-align: center;">[[imagem:Pesquisa2.png|600px]]</div><br />
<br />
<br />
Tente fazer as buscas usando esse programa. Há alguma que não pode ser feita ?<br />
<br />
=== Usando a linha de comando (modo texto) ===<br />
<br />
O ''caja'' funciona como um gerenciador de arquivos e diretórios, possibilitando investigar que arquivos existem em cada diretório, entre outras coisas. Com ele é simples listar o conteúdo de um ou mais diretórios, bastando navegar por sua interface. Mas na linha de comando não há essa facilidade. Nela devem-se usar alguns programas para obter um resultado parecido. Para começar a usar a linha de comando, devem-se conhecer e saber usar programas para navegar por diretórios, listar diretórios, procurar arquivos e diretórios e copiar arquivos.<br />
<br />
====Árvore de diretórios====<br />
<br />
Antes de iniciarmos o estudo de comandos dos Linux é necessário entendermos como funciona a sua organização de arquivos e diretórios. Isso é importante para conseguirmos especificar adequadamente o caminho de arquivos e diretórios que desejamos manipular quando formos utilizar os mais diversos comandos.<br />
<br />
<div style="text-align: center;">[[imagem:ArvoreDiretorios2.png|1000px]]</div><br />
<br />
Na figura acima é mostrado um exemplo de como são organizados arquivos e diretórios no Linux. Como é possível notar arquivos e diretórios são organizados de forma hierárquica, formando o que se chama de Árvore de Diretórios. <br />
<br />
No Linux há um diretório de nível superior chamado '''root''' que é identificado como apenas uma barra ('''/'''). Abaixo deste diretório principal estão organizados hierarquicamente todos os demais diretórios e arquivos existentes. Os diretórios que estão contidos em '''/''' são chamados de sub-diretórios. No exemplo mostrado na Figura acima podemos perceber que em '''/''' está o sub-diretório '''home''', dentro de '''home''' está o sub-diretórios '''user1''' e dentro de '''user1''' estão os sub-diretórios '''doc''' e '''videos'''. <br />
<br />
<br />
O caminho de um arquivo ou diretório é a localização deste a partir do topo da estrutura de diretórios ('''/''') ou a partir do diretório atual em que o usuário se encontra. Quando apontamos o caminho a partir do topo estamos nos referindo ao '''caminho absoluto''' de arquivos e diretórios. Quando apontamos o caminho de um arquivo ou diretório a partir do diretório corrente em que o usuário se encontra, estamos usando o conceito de '''caminho relativo'''.<br />
<br />
Por exemplo, o caminho absoluto do diretório '''doc''' que aparece na figura é '''/home/user1/doc'''. Já se o diretório atual do usuário for '''/home''', o caminho relativo do diretório '''doc''' é '''user1/doc'''.<br />
<br />
==== Diretório atual ====<br />
<br />
Na linha de comando existe o conceito de diretório atual ou corrente. Quando se acessa esse tipo de interface, existe um diretório em que operações sobre arquivos são realizadas. Para descobrir o diretório atual usa-se o programa [http://manpages.ubuntu.com/manpages/trusty/man1/pwd.1.html pwd], como mostrado a seguir:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
==== Listagem de diretório ====<br />
<br />
No exemplo anterior, o diretório atual é ''/home/aluno''. Qualquer operação sobre arquivos ou diretórios será feita tendo como base esse diretório. A operação mais simples é a listagem de diretório, que se faz com o programa [http://manpages.ubuntu.com/manpages/trusty/man1/ls.1.html ls]. Aproveitando o exemplo acima, a listagem do diretório atual teria este resultado:<br />
<br />
<syntaxhighlight lang=bash><br />
msobral@turing:~$ ls<br />
001.jpg iperf-2.0.5.tar.gz prova4-2011-1.odt<br />
002.jpg juliano.tgz prova4-2011-1-rec.odt<br />
003.jpg klaus prr.log<br />
004.jpg livros public_html<br />
005.jpg Makefile.in quartus.cap<br />
006.jpg nhrp.tar radiusd_test.py<br />
007.jpg nohup.out rco2<br />
008.jpg passwd.web rmu<br />
msobral@turing:~$<br />
</syntaxhighlight><br />
<br />
Como já visto em uma seção anterior, o programa '''ls''' pode apresentar mais informações sobre arquivos e subdiretórios se for executado com a opção ''-l'' (listagem longa). Experimente executar o '''ls''' com esta opação. Para conhecer outras opções e obter mais detalhes, leia a página de manual do comando:<br />
<br />
<syntaxhighlight lang=bash><br />
man ls<br />
</syntaxhighlight><br />
<br />
... ou acesse [http://manpages.ubuntu.com/manpages/xenial/man1/ls.1.html isto].<br />
<br />
==== Mudança de diretório ====<br />
<br />
A listagem apresentada revela vários arquivos e subdiretórios existentes no diretório atual. Sabendo que ''public_html'' é um subdiretório, pode-se desejar mudar o diretório atual de forma a entrar nesse subdiretório. Isso pode ser facilmente realizado com o programa [http://manpages.ubuntu.com/manpages/vivid/en/man1/cd.1posix.html cd]:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~$ cd public_html<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
<br />
===== Diretório atual e diretório acima =====<br />
<br />
O diretório imediatamente acima é referido com '''..''' (dois pontos). Esse é um atalho que possibilita subir um nível de diretório sem conhecer o nome do diretório imediatamente superior. Assim, para voltar ao diretório imediatamente anterior ao diretório atual pode-se fazer isto:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ cd ..<br />
aluno@turing:~$ pwd<br />
/home/aluno<br />
</syntaxhighlight><br />
<br />
<br />
O diretório atual possui também um atalho chamado '''.''' (um ponto). Assim, se for executado este comando ...<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
aluno@turing:~/public_html$ cd .<br />
aluno@turing:~/public_html$ pwd<br />
/home/aluno/public_html<br />
</syntaxhighlight><br />
<br />
... nada acontecerá (o diretório atual não será modificado).<br />
<br />
==== Criação e remoção de diretório ====<br />
<br />
Um diretório pode ser criado com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mkdir.1.html mkdir]. O uso desse comando pede apenas um argumento, que é o nome ou caminho do diretório a ser criado:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ mkdir teste<br />
aluno@M2:~$ cd teste<br />
aluno@M2:~$ pwd<br />
/home/aluno/teste<br />
</syntaxhighlight><br />
<br />
Para remover um diretório usa-se o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rmdir.1.html rmdir]. Esse diretório deve estar vazio para o comando consiga removê-lo:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ pwd<br />
/home/aluno<br />
aluno@M2:~$ rmdir teste<br />
aluno@M2:~$ cd teste<br />
cd: teste: Arquivo ou diretório não encontrado<br />
aluno@M2:~$ rmdir Downloads<br />
rmdir: falhou em remover “Downloads”: Diretório não vazio<br />
</syntaxhighlight><br />
<br />
==== Cópia de arquivos ====<br />
<br />
A cópia de arquivos na linha de comando envolve usar o programa [http://manpages.ubuntu.com/manpages/trusty/man1/cp.1.html cp]. Com ele podem-se copiar um ou mais arquivos para um diretório de destino. Por exemplo, para copiar o arquivo ''001.jpg'' para dentro do diretório ''public_html'' pode-se fazer o seguinte:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg public_html<br />
</syntaxhighlight><br />
<br />
O diretório de destino é sempre o último argumento passado ao programa ''cp''. A cópia de múltiplos arquivos pode ser feita listando-os todos antes do diretório de destino:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 001.jpg 002.jpg 003.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
... ou usando-se o caractere especial ''*'' (chamado de ''curinga'' ou ''wildcard'' no original em inglês):<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.jpg public_html<br />
</syntaxhighlight><br />
<br />
<br />
No exemplo acima, todos os arquivos cujos nomes terminem com ''.jpg'' serão copiados para dentro de ''public_html''. Outra variação no uso do ''curinga'' é:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp 00*.jpg public_html<br />
</syntaxhighlight><br />
<br />
... em que todos os arquivos cujos nomes iniciem com ''00'' e terminem com ''.jpg'' serão copiados.<br />
<br />
==== Renomeação de arquivos ====<br />
<br />
Arquivos podem ser renomeados com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/mv.1.html mv]. Ele pode ser usado de forma muito parecida com o comando ''cp''. A diferença está na remoção do arquivo original, como se ele sumisse de seu diretório de origem e aparecesse no diretório de destino. <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 Musicas<br />
aluno@M2:~$ ls Musicas<br />
mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
<br />
Se os diretórios de origem e destino forem iguais, mas os nomes do arquivo de origem e destino forem diferentes, então o arquivo na verdade é renomeado.<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv mulher_de_40.mp3 musica_romantica.mp3<br />
aluno@M2:~$ ls musica_romantica.mp3<br />
musica_romantica.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Remoção de arquivos ====<br />
<br />
Arquivos podem ser removidos com o comando [http://manpages.ubuntu.com/manpages/trusty/man1/rm.1.html rm]. Cuidado ao utilizá-lo ! Uma vez removido, um arquivo não pode ser recuperado ! <br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ rm mulher_de_40.mp3<br />
aluno@M2:~$ ls mulher_de_40.mp3<br />
não é possível acessar mulher_de_40.mp3: Arquivo ou diretório não encontrado<br />
</syntaxhighlight><br />
<br />
==== Curingas (''wildcards'') ====<br />
<br />
Curingas são caracteres especiais usados para selecionar vários arquivos ou diretórios de uma só vez. Os curingas podem ser usados em qualquer comando para especificar nomes de arquivos e diretórios. Dois curingas bastante usados são:<br />
* '''*''' : casa com uma sequência composta por 0 ou mais caracteres quaisquer.<br />
* '''?''' : casa com um único caractere qualquer<br />
<br />
Curingas são muito úteis para operações sobre arquivos e diretórios. Por exemplo, para copiar todos os arquivos de música MP3 pode-se usar o curinga ''*''' da seguinte forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ cp *.mp3 Musica<br />
</syntaxhighlight><br />
<br />
<br />
Para mover os arquivos cuja extensão seja ''mp4'' ou ''mpg'', podem-se usar os curingas ''*'' e ''?'' desta forma:<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@M2:~$ mv *.mp? Videos<br />
</syntaxhighlight><br />
<br />
==== Procura por arquivos ====<br />
<br />
A procura de arquivos e diretórios pode ser realizada na linha de comando com o programa '''find'''. Por exemplo, para localizar todos os arquivos ou diretórios chamados ''default'', e que estejam abaixo de ''/etc'':<br />
<br />
<syntaxhighlight lang=bash><br />
aluno@D1:~$ find /etc -name default<br />
/etc/default<br />
/etc/calendar/default<br />
/etc/X11/xinit/xinput.d/default<br />
aluno@D1:~$<br />
</syntaxhighlight><br />
<br />
<br />
Uso do '''find''' :<br />
<br />
<syntaxhighlight lang=bash><br />
find diretório [opções]<br />
</syntaxhighlight><br />
<br />
<br />
... sendo ''diretório'' o diretório abaixo de que se deseja fazer a busca. As opções servem para selecionar arquivos e diretórios durante a busca, e também para executar ações para cada um deles que for encontrado. Algumas opções mais comuns:<br />
<br />
* '''-name nome:''' seleciona arquivos ou diretórios cujos nomes sejam '''''nome'''' . Essa opção aceita ''wildcards'' (* e ?)<br />
* '''-type tipo:''' seleciona apenas o '''''tipo'''' indicado, que pode ser:<br />
** '''d:''' diretório<br />
** '''f:''' arquivo <br />
** '''l:''' ''link'' simbólico (ou atalho)<br />
* '''-perm modo:''' seleciona apenas arquivos ou diretórios que possuam as permissões indicadas em ''modo''<br />
* '''-size tamanho:''' seleciona apenas arquivos com tamanho de acordo com o especificado (em bytes)<br />
* '''-mtime n:''' seleciona apenas arquivos ou diretórios modificados a '''''n * 24''''' horas atrás<br />
* '''-atime n:''' seleciona apenas arquivos ou diretórios acessados a '''''n * 24''''' horas atrás<br />
* '''-user usuario:''' seleciona apenas arquivos ou diretórios pertencentes a '''''usuario'''''<br />
* '''-exec comando \;:''' executa '''comando''' para cada arquivo ou diretório encontrado. Ex:<br />
** ''find /tmp -type f -mtime +7 -exec rm -f {} \;'' : remove todos os arquivos dentro de /tmp que estejam há 7 dias sem serem modificados. A sequência '''''{}''''' é substituída pelo nome do arquivo encontrado.<br />
<br />
... e muitas outras (consulte o [http://manpages.ubuntu.com/manpages/karmic/en/man1/find.1.html manual do find]).<br />
<br />
== Exercícios ==<br />
<br />
# Partindo do subdiretório /home/aluno/Área de Trabalho, e usando somente caminhos (''pathnames'') relativos, indique a sequência de comandos necessária para visitar sucessivamente os seguintes subdiretórios:<br />
#* /home/aluno<br />
#* /home<br />
#* /etc/default<br />
#* /usr/share/doc<br />
#* /usr/share/doc/python/faq<br />
#* /usr/lib/ubuntu-mate<br />
#* /usr/local/etc<br />
#* /usr/local/man<br />
#*/usr/local/lib/python2.7<br />
#*/usr/local/lib/python2.7/site-packages<br />
#*/usr/local/lib/python2.7/dist-packages<br />
#* /home/aluno<br />
#* /home/aluno/Downloads<br />
#Partindo do subdiretório ''/home/aluno'', informe a sequência de subdiretórios (indique-os com seus caminhos absolutos) visitados se forem seguidos os seguintes caminhos relativos:<br />
#* Imagens<br />
#* ../Documentos<br />
#* ../..<br />
#* ../boot<br />
#* grub<br />
#* ../../usr/lib<br />
#* ../share<br />
#* ../local<br />
#* lib/python2.7<br />
#* ../..<br />
#* ../../etc<br />
#* ../lib/modules<br />
#* ../../home<br />
#* aluno/Downloads/..<br />
# Organize [https://drive.google.com/file/d/1uEzUhljvzxL5oaUTCNhj7SpaeJuXvae4/view?usp=sharing estes arquivos], de forma que sejam colocados nos subdiretórios ''Imagens'', ''Videos'' e ''Documentos'', de acordo com seus tipos. Os arquivos devem ser movidos para esses diretórios.<br />
# Remova o arquivo compactado transferido no exercício anterior.<br />
# Renomeie os arquivos de imagens organizados no exercício 3. Dê um nome para cada imagem de acordo com seu conteúdo.<br />
# No diretório ''/usr/share/sounds/ubuntu/stereo'' existem vários arquivos de áudio. Crie um diretório dentro de seu diretório pessoal e copie-os para esse novo diretório. Em seguida, reproduza-os para escutá-los.<br />
# Encontre o arquivo ''lsusb'', que se encontra em algum subdiretório dentro de ''/usr''<br />
# Encontre os subdiretórios ''lib'', que estão dentro de ''/usr''<br />
# Localize todos os arquivos executáveis (i.e., os programas) que existem abaixo de ''/lib''<br />
# Localize todos os arquivos pertencentes ao usuário ''aluno'' e que estejam dentro de ''/tmp''<br />
<br />
<!--<br />
=== Resolução ===<br />
<br />
{{collapse top|Exercício 1}}<br />
''Obs:'' o primeiro comando serve para mudar para o diretório pessoal (''/home/aluno''). Dali em diante os comandos usam somente caminhos relativos.<br />
<br />
{| border=1<br />
!Caminho absoluto<br />
!Comando com caminho relativo<br />
|-<br />
| /home/aluno || cd <br />
|-<br />
| /home||cd ..<br />
|-<br />
| /etc/default|| cd ../etc/default<br />
|-<br />
| /usr/share/doc|| cd ../../usr/share/doc<br />
|-<br />
| /usr/share/doc/python/faq|| cd python/faq<br />
|-<br />
| /usr/lib/ubuntu-mate|| cd ../../../lib/ubuntu-mate<br />
|-<br />
| /usr/local/etc|| cd ../../local/etc<br />
|-<br />
| /usr/local/man|| cd ../man<br />
|-<br />
|/usr/local/lib/python2.7|| cd ../lib/python2.7<br />
|-<br />
|/usr/local/lib/python2.7/site-packages|| cd site-packages<br />
|-<br />
|/usr/local/lib/python2.7/dist-packages|| cd ../dist-packages<br />
|-<br />
| /home/aluno|| cd ../../../../../home/aluno<br />
|-<br />
| /home/aluno/Downloads|| cd Downloads<br />
|}<br />
{{collapse bottom}}<br />
<br />
{{collapse top|Exercício 2}}<br />
''Obs:'' o diretório inicial para os comandos é ''/home/aluno''<br />
<br />
{| border=1<br />
!Comando com caminho relativo<br />
!Caminho absoluto resultante<br />
|-<br />
|cd Imagens || /home/aluno/Imagens<br />
|-<br />
|cd ../Documentos||/home/aluno/Documentos<br />
|-<br />
|cd ../.. || /home<br />
|-<br />
|cd ../boot || /boot<br />
|-<br />
|cd grub || /boot/grub<br />
|-<br />
|cd ../../usr/lib || /usr/lib<br />
|-<br />
|cd ../share || /usr/share<br />
|-<br />
|cd ../local || /usr/local<br />
|-<br />
|cd lib/python2.7 || /usr/local/lib/python2.7<br />
|-<br />
|cd ../.. || /usr/local<br />
|-<br />
|cd ../../etc || /etc<br />
|-<br />
|cd ../lib/modules || /lib/modules<br />
|-<br />
|cd ../../home || /home<br />
|-<br />
|cd aluno/Downloads/.. || /home/aluno/Downloads<br />
|}<br />
{{collapse bottom}}<br />
--><br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2019-1&diff=154332INF-2019-12019-02-15T22:39:52Z<p>Ederson.luiz: /* Informática Básica I */</p>
<hr />
<div>=Informática Básica I= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 6a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2019-1<br />
<br />
==Ementa==<br />
<br />
Componentes de um computador, hardware e software. Dispositivos de entrada e saída, periféricos e dispositivos de armazenamento. Sistema operacional e aplicativos. Informação, documentos e arquivos.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Conhecer os seus principais componentes de hardware e software do computador, bem como o impacto desse na sociedade da informação;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Identificar os componentes de hardware: dispositivos básicos, de entrada e saída e outros;<br />
* Conhecer o sistema operacional e suas funções: arquivos, usuários, programas, etc;<br />
* Manipular arquivos e diretórios;<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional.<br />
<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.infowester.com/guiahdinic.php/ Guia de hardware para iniciantes]<br />
* [https://www.gcfaprendelivre.org/tecnologia/curso/informatica_basica/comecando_a_usar_um_computador/1.do O que são os computadores?]<br />
* [https://www.oficinadanet.com.br/artigo/851/o_que_e_um_sistema_operacional O que é um Sistema Operacional?]<br />
<br />
=15/02/2018: Apresentação da disciplina=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina, Introdução ao computador===<br />
<br />
Introdução ao componente curricular e noções do computador.<br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1ywcoDEq9XkO6VgN2Z8eNJ-j4CmY7KhF0/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://drive.google.com/file/d/1f_j_x2jnQh7t4bstdLTmy1Ch8viFBDbP/view?usp=sharing Hardware]<br />
</font><br />
{{Collapse bottom | Aula 1}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI4-2019-1&diff=154139PJI4-2019-12019-02-13T20:28:47Z<p>Ederson.luiz: </p>
<hr />
<div>= Projeto Integrador IV= <br />
<font size="3"><br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 2a feira/19:00, 4a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 4a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji4-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
#Implantar um PABX IP integrado com serviços de telefonia fixa e móvel convencionais. <br />
#Prover a infraestrutura de rede necessária para o adequado funcionamento deste PABX IP. <br />
#Integrar os serviços de telefonia com outros serviços de rede.<br />
<br />
== Links interessantes ==<br />
<br />
* [https://hakin9.org/voip-hacking-techniques/ VoIP Hacking Techniques]<br />
* [https://www.vivaolinux.com.br/artigo/Asterisk-nao-e-um-Sip-Proxy Asterisk não é um SIP proxy]<br />
* [https://www.rnp.br/servicos/servicos-avancados/fonernp FoneRNP]<br />
* [https://www.digium.com/products/business-phone-systems/on-premise/virtual-pbx SwitchVox: PBX virtual]<br />
* [http://convergecom.com.br/teletime/21/03/2006/embratel-e-net-lancam-servico-de-telefonia-fixa-local/ Net Fone da Embratel é VoIP, mas não usa SIP]<br />
** [https://en.wikipedia.org/wiki/PacketCable ... e sim PacketCable]<br />
* [http://thevoipreport.com/article/cold-hard-voip-stats/ Estatísticas sobre VoIP no mundo]<br />
* [https://www.cisco.com/c/en/us/support/docs/voice/digital-cas/5717-e1-r2-sig.html Sinalização R2 (E1)]<br />
=== Provedores VoIP no Brasil ===<br />
* [https://www.falemaisvoip.com.br/o-que-e-voip/ FaleMaisVoIP]<br />
* [http://www.directcall.com.br/ DirectCall]<br />
* [http://www.teleco.com.br/opvoip.asp outros ...]<br />
<br />
== Resumo de comandos da CLI para o Asterisk ==<br />
<br />
# O Asterisk pode ser carregado de duas formas:<br />
#* '''foreground''': utilizado para depurar problemas na inicialização do Asterisk, quando ele não puder ser inicializado.<br />
#* '''background''': modo padrão de inicialização<br><br><br />
# Conectar à CLI do Asterisk carregado <syntaxhighlight lang=text><br />
asterisk -r<br />
rasterisk <br />
</syntaxhighlight><br />
# Comandos na CLI<br />
## Saindo da CLI sem interromper o processo <syntaxhighlight lang=text><br />
exit<br />
</syntaxhighlight><br />
## Carrega canais SIP previamente registrados <syntaxhighlight lang=text><br />
sip reload<br />
</syntaxhighlight><br />
## Mostra canais SIP registrados <syntaxhighlight lang=text><br />
sip show peers<br />
</syntaxhighlight><br />
## Carrega plano de discagem <syntaxhighlight lang=text><br />
dialplan reload<br />
</syntaxhighlight><br />
## Mostra a extensão criada no plano de discagem <syntaxhighlight lang=text><br />
dialplan show default<br />
</syntaxhighlight><br />
## Finalizando processo no Asterisk <syntaxhighlight lang=bash><br />
sudo core stop now<br />
</syntaxhighlight><br />
## Ver aplicações disponíveis no Asterisk <syntaxhighlight lang=text><br />
core show applications<br />
</syntaxhighlight><br />
# Iniciando Asterisk em modo Background <syntaxhighlight lang=bash><br />
sudo service asterisk start<br />
</syntaxhighlight><br />
# Carregar o Asterisk em modo ForeGround <syntaxhighlight lang=bash><br />
sudo asterisk -gc<br />
</syntaxhighlight><br />
</font><br />
<br />
=11/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
<br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1MNqwAklC8WL0-geeBuC_4kCTjGqDxcyi/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador IV===<br />
<br />
O foco do Projeto Integrador IV está na oferta de serviços ao usuário final e na convergência de serviços de telecomunicações, incluindo a integração dos serviços de telefonia fixa, móvel e VoIP. Além disso, também tem como objetivo a integração destes serviços de telecomunicações com outros serviços de rede como servidores Web, Email, Telefonia IP, administração de sistemas e usuários, compartilhamento de recursos, DNS, etc. <br />
<br />
<br />
Na figura abaixo é apresentado um esboço do cenário que foi desenvolvido durante o Projeto Integrador III. A proposta inicial é integrar a este cenário serviços de telefonia IP e convencional. Além disso, outros serviços podem ser integrados a ambos, como e-mail, DNS, acesso à câmeras IP, etc. <br />
<br />
[[imagem:Diagrama-PJI3.png|600px]]<br />
<br />
<br />
Uma vez integrados os serviços de rede e de telefonia e tendo em mente que a qualidade de serviço é um ponto sensível à aplicações de telefonia IP, espera-se desenvolver métodos de medição de rede para assegurar seu correto funcionamento.<br />
<br />
== PBX IP ==<br />
<br />
<br />
Um PBX IP funciona como uma central telefônica, porém intermediando chamadas VoIP. Com isso, as chamadas são feitas de um telefone IP em direção ao PBX IP, que a encaminha ao telefone IP de destino de acordo com suas regras de discagem. A figura abaixo ilustra como funciona uma chamada VoIP típica através de um PBX IP.<br />
<br />
[[imagem:Voip-call.png|500px]]<br />
<br />
<br />
Nas nossas aulas faremos uso de um PBX IP [http://www.asterisk.org/ Asterisk], que é um software desenvolvido pela [http://www.digium.com/ Digium]. O Asterisk roda em computadores do tipo PC que possuem sistema operacional baseado em Linux. Sua licença é livre, o que significa que não há custo de licenciamento para utilizá-lo.<br />
* [http://www.asterisk.org/get-started Uma visão geral sobre Asterisk]<br />
<br />
== PBX IP Asterisk ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/rmu/slides/aula-25.pdf Transparências]<br />
* [http://www.asterisk.org Site oficial do Asterisk]<br />
* [http://www.asteriskguru.com/ Asterisk Guru]<br />
* [http://www.voip-info.org/wiki Dicas sobre Asterisk]<br />
* [http://www.asteriskdocs.org/ Livro online gratuito sobre Asterisk]<br />
* [http://www.packetizer.com/ipmc/sip/papers/understanding_sip_voip/ Introdução a VoIP e SIP]<br />
* Livro [http://www.shopvoip.com.br/index.php?route=product/product&product_id=1263 ''Asterisk: Guia de Configuração - 5a geração''], de Flávio Gonçalves.<br />
<br />
<br />
'''Asterisk:''' uma solução completa de PABX baseado em software, permitindo ligar o mundo IP ao mundo da rede pública de telefonia comutada.<br />
<br />
'''Características Básicas:''' faz tudo que um PABX pequeno e simples faz e pouco mais<br />
* Transferência, música de espera, siga-me, etc.<br />
* Conferência, correio de voz, URA, fila de chamadas, monitoramento de chamadas, integração com o Jabber (Google talk)<br />
<br />
<br />
[[imagem:Asterisk-ex1.png|400px]]<br />
<br>''Exemplo de cenário de uso do Asterisk''<br />
<br />
<br />
<!-- [[imagem:Asterisk-arch.png|500px]]<br />
<br>''Arquitetura modular do Asterisk'' ---><br />
<br />
<br />
O Asterisk é um software complexo e com muitos recursos. Porém sua função mais elementar, que é intermediar chamadas, pode ser entendida com base em dois elementos importantes desse tipo de PBX. Esses elementos são o '''plano de discagem''' e '''configurações de canais'''. Na terminologia do Asterisk, um canal pode ser entendido como um ramal ou tronco. Para ter o Asterisk funcionando como uma central simplificada, é suficiente configurar esses dois elementos.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 4'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI4 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador IV'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professores: Ederson Luiz de Souza Santos e Mayara de Sousa'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2018'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=13/02/2019: Conceitos gerais, preparação do servidor e instalação do Asterisk e banco de dados=<br />
<br />
{{Collapse top | Aula 2}}<br />
<font size="3"><br />
<b>Telefonia IP ou VoIP: O que é?</b><br />
----<br />
A Comunicação de Voz em Redes IP, chamada de VoIP, consiste no uso das redes de dados que utilizam o conjunto de protocolos das redes IP (TCP/UDP/IP) para a transmissão de sinais de Voz em tempo real na forma de pacotes de dados.<br />
<br />
A sua evolução natural levou ao aparecimento da Telefonia IP, que consiste no fornecimento de serviços de telefonia utilizando a rede IP para o estabelecimento de chamadas e comunicação de Voz.<br />
<br />
Nessas redes são implementados protocolos adicionais de sinalização de chamadas e transporte de Voz que permitem a comunicação com qualidade próxima àquela fornecida pelas redes convencionais dos sistemas públicos de telefonia comutada ou de telefonia móvel.<br/><br/><br />
<br />
<b>Digitalização de Sinais de Voz</b><br />
----<br />
Nos sistemas tradicionais o sinal de Voz utiliza uma banda de 4 kHz, e é digitalizado com uma taxa de amostragem de 8 kHz para ser recuperado adequadamente (Princípio de Nyquist). Como cada amostra é representada por um byte (8 bits, com até 256 valores distintos), cada canal de Voz necessita de uma banda de 64 kbit/s (8.000 amostras x 8 bits).<br />
<br />
Esta forma de digitalização do sinal de Voz atende a recomendação ITU-T G.711 - Pulse code modulation (PCM) of voice frequencies.<br />
<br />
Nos sistema de transmissão de Voz sobre IP, onde a demanda por banda é crítica, torna-se necessário utilizar também algoritmos de compressão do sinal de Voz. Esses algoritmos têm papel relevante pela economia de banda que proporcionam.<br />
<br />
O seu uso tem sido possível graças ao desenvolvimento dos processadores de sinais digitais (DSP’s), cuja capacidade de processamento tem crescido vertiginosamente.<br />
<br />
Estas necessidades incentivaram o desenvolvimento de tecnologias mais complexas para a digitalização e compressão de Voz, e que foram registradas através de recomendações do ITU-T. Estas recomendações são apresentadas na tabela abaixo, com algumas características relevantes.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs.jpg]]</div><br/><br/><br />
<br />
<b>Asterisk</b><br />
----<br />
O Asterisk é a implementação de uma central telefônica PBX (Private Branch eXchange) em software, criado por Mark Spencer em 1999, e distribuído pela Digium livremente seguindo a licençaGPL (GNU General Public License – GPL), ou através de código proprietário.<br />
<br />
O nome Asterisk vem do símbolo ‘*’, muito comum no mundo da telefonia.<br />
<br />
O Asterisk foi originalmente desenvolvido para Linux, mas atualmente podeser instalado e executado em uma grande variedade de sistemas operacionais, incluindo NetBSD, OpenBSD, FreeBSD, Mac OS X, Solaris e até mesmo Microsoft Windows, onde é conhecido por Asterisk Win32.<br/><br/><br />
<br />
<b>Características do Asterisk</b><br />
----<br />
O Asterisk é um software, baseado na licença GPL (GNU General Public License), que executa todas as funções de uma central telefônica convencional através das principais tecnologias de comunicação existentes no mercado, como por exemplo: linhas telefônicas analógicas, links de telefonia digital via placas de comunicação TDM (Time-Division Multplexing, ou Multiplexaçã ,o por divisão detempo), VoIP (Voice over IP, ou Voz sobre IP) através dos protocolos SIP, H.323, IAX2, MGCP, Skinny,GoogleTalk, Skype, entre outros.<br />
<br />
Através do Asterisk é possível estabelecer uma chamada entre qualquer um desses protocolos. O Asterisk é o que chamamos de B2B User Agent, ou melhor, Back-to-Back User Agent, ele estabelece uma chamada telefônica, separando cada “perna” da chamada entre origem e destino, e monitora todo o tráfego de áudio entre esses pontos. Por isso, caso esses pontos estejam utilizando CODECs diferentes, o Asterisk consegue transcodificar o áudio sem qualquer problema. Pode-se dizer que o Asterisk possui todas as funcionalidades das chamadas centrais telefônicas convencionais, como URAs, correio de voz, conferência, distribuição automática de chamadas, entre outras, e caso seja necessário, é possível acrescentar novas funcionalidades ao sistema através do próprio plano de discagem do Asterisk, módulos customizados escritos em C, ou ainda através de scripts escritos em Asterisk Gateway Interface (AGI). *Fonte: Construindo um PBX IP na pratica (Alexandre Keller)<br/><br/><br />
<br />
<b>Codecs</b><br />
----<br />
Um dos componentes necessários para transmissão de voz numa rede de dados é o Áudio CODEC (Codificador-Decodificador). Este componente é o responsável por transformar a voz humana (um sinal analógico) em uma seqüência de bits (um sinal digital) para transmissão numa rede de dados, fazendo amostragens periódicas no sinal de voz. Em equipamentos do tipo gateways VoIP, esses CODECs são implementados através de um componente chamado DSP (Digital Signal Processor).<br />
A introdução dos microprocessadores no final dos anos 70 e início dos anos 80 tornou possível usar técnicas de processamento digital de sinais (Digital Signal Processing) em um range muito maior de aplicações.<br />
Durante os anos 80 a importância crescente do processamento digital de sinais levou vários fabricantes importantes (como Texas Instruments, Analog Devices e Motorola) a desenvolverem os chips DSP, ou seja, microprocessadores especializados com arquiteturas projetadas especificamente para os tipos de operações requeridas ao processamento digital de sinais.<br />
Como um microprocessador de uso geral, um DSP é um dispositivo programável, com seu próprio conjunto de instruções nativas. O uso desses chips associados a algoritmos de compressão permitiu a implementação de diversas tecnologias de CODEC’s. Exemplos de chips DSP são o DSP542 e DSP549 fabricados pela Texas Instruments e usados pela CISCO Systems em seus gateways VoIP [CISCO-CODEC1].<br />
Cada CODEC provê certa qualidade de voz. A medida de qualidade da voz transmitida é uma resposta subjetiva de um ouvinte. Uma medida comum usada para determinar a qualidade do som produzido pelos CODECs específicos é o MOS (Mean Opinion Score). Com o uso do MOS, um amplo range de ouvintes julgam a qualidade de uma amostra de voz (correspondendo a um CODEC particular) numa escala de 1 a 5. A partir desses resultados, é calculada a média dos scores para atribuir o MOS para aquela amostra [CISCO-CODEC2].<br />
Na tabela 1 são apresentados alguns scores MOS para os CODECs mais usados. Na Tabela 2 são descritos os scores MOS.<br />
<br />
<div style="text-align: center;">[[Arquivo:codecs2.jpg]]</div><br/><br />
<br />
<div style="text-align: center;">[[Arquivo:codecs3.jpg]]</div><br/><br />
<br />
<br />
===Instalando Sistema Operacional===<br />
<br />
<br />
Sistemas operacionais baseados em Linux já foram complicados de usar, ao menos quando comparados ao Windows, mas avanços recentes têm deixado a plataforma mais amigável.<br />
No Linux, você vai encontrar alguns programas com os quais está acostumado, como Firefox, Chrome e outros. A maioria, entretanto, não está disponível porque o Linux possui uma comunidade de desenvolvedores que cria, gratuitamente, programas equivalentes para o OS. <br />
Não há Photoshop, por exemplo, mas há o GIMP. Não há Microsoft Office, mas há o LibreOffice. Não há Lightroom, mas há o Darktable. Alguns dos programas não são tão bons quanto os disponíveis para Windows, mas por outro lado alguns são até melhores. Cabe a você experimentar.<br />
Você não vai precisar digitar nenhum comando complexo ou adquirir conhecimento avançado prévio para fazer isso, mas o processo é longo e varia um pouquinho de computador para computador. É possível que você mexa com certas coisas que nunca viu. Este processo (e o sistema Ubuntu) é utilizado por milhões de pessoas no mundo.<br />
<br />
Iremos utilizar um software de virtualização chamado Virtualbox. o Virtualbox é fornecido pela Oracle, de forma gratuita. Caso você queira instalar o Virtualbox no seu computador, pode baixar deste [https://www.virtualbox.org/wiki/Downloads site]. Lembre-se de baixar a versão adequada para o seu sistema operacional, juntamente com o Extension Pack (software adicional para suporte a diversos dispositivos do seu computador).<br />
<br />
Para a criação da máquina virtual, deixaremos com a seguinte configuração:<br />
<br />
* 1500 MB de Ram;<br />
* 30 GB de espaço em disco;<br />
* 2 processadores;<br />
* 32 MB de memória de vídeo;<br />
* Habilitar aceleração 3D;<br />
* Placa de rede em modo bridge.<br />
<br />
<div style="text-align: center;">[[Arquivo:virtualbox.jpg]]</div><br/><br />
<br />
A versão do sistema operacional que utilizaremos é o Ubuntu Mate 14.<br />
<br />
Ao iniciar a instalação, a primeira etapa é a escolha do idioma e se queremos somente experimentar o Ubuntu ou instalar.<br />
<br />
a próxima etapa nos dá algumas orientações e também permite escolhermos se queremos baixar atualizações e instalar programas de terceiros.<br />
<br />
Logo após, teremos que escolher entre a opção de apagar o disco inteiro de forma automatizada pelo instalador ou marcar a opção avançada. Neste momento iremos utilizar a opção de apagar o disco inteiro, pois estaremos entrando nos detalhes de particionamento, sistema de arquivos e tipos de partição em outra aula.<br />
<br />
Também escolhemos o local onde estamos.<br />
<br />
Devemos definir o layout do teclado.<br />
<br />
E por fim, escolhemos o nome, nome do computador, nome de usuário e senha.<br />
<br />
Agora é só aguardar...<br />
<br />
<div style="text-align: center;">[[Arquivo:ubuntumateinstanlado.jpg]]</div><br/><br />
<br />
Terminada a instalação do sistema operacional, devemos instalar alguns pacotes necessários para que a nossa máquina virtual possa ser utilizada em modo de tela cheia. Para tanto iremos utilizar o terminal do mate e digitar os comandos a seguir:<br />
<br />
* sudo apt-get update<br />
* sudo apt-get install build-essential module-assistant dkms<br />
* sudo m-a prepare<br />
<br />
Após esta instalação, podemos clicar em <b>Dispositivos</b>, e ir na opção <b>Inserir imagem de CD dos adicionais para convidado</b> e executar a aplicação que irá abrir.<br />
<br />
<br />
===<b>Instalação do Asterisk</b>===<br />
----<br />
Neste semestre iremos trabalhar com o Asterisk versão 13.22.0, o LibPRI 1.6.0, que é uma biblioteca Libpri será instalada para que tenhamos suporte aos canais PRI( ISDN, E1, T1 ), e o DAHDI, que é um pacote (Digium Asterisk Hardware Device Interface) nos permite carregar os drivers e configurar diversos tipos de placas de telefonia (para conectar telefones analógicos, linhas telefônicas, linhas digitais e outros).<br />
Antes de qualquer coisa, devemos atualizar o sistema via console de comando:<br />
<br />
#apt-get update<br />
#apt-get upgrade<br />
<br />
Também devemos instalar algumas dependências:<br />
<br />
# apt-get install -y make wget libssl-dev ncurses-dev libnewt-dev libxml2-dev linux-headers-generic g++ libsqlite3-dev uuid-dev libjansson-dev<br />
# apt-get install -y mysql-server libmysqld-dev<br />
<br />
Para baixar os arquivos do Asterisk, DAHDI e LibPRI, seguem os links abaixo (os comandos para a instalação completa do Asterisk, Libpri, Dahdi e banco de dados serão repassados em aula):<br />
<br />
[http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-13.22.0.tar.gz Asterisk 13.22.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz LibPRI 1.6.0]<br/><br />
[http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz DAHDI]<br/><br />
<br />
Campos para o banco de dados:<br />
<br />
[https://docs.google.com/document/d/135vf4dUJhMmG0fVqzFXEYPQ095iBzpBU0O7fZz04hZs/edit?usp=sharing Arquivo banco de dados]<br />
<br />
<br/><br/><br />
</font><br />
{{Collapse bottom | Aula 2}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=154070PJI2-2019-12019-02-12T19:57:43Z<p>Ederson.luiz: /* 12/02/2019: Apresentação da disciplina */</p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
<br />
<br />
===Configurando a conta Google===<br />
<br />
Para a criação do relatório, que será utilizado no decorrer do semestre e deve ser entregue ao término da primeira etapa da disciplina, iremos utilizar ferramentas online. Para tanto, faremos uso de uma conta do Google e das ferramentas Google Drive e Google Documents.<br />
<br />
Caso não tenha uma conta Google, deve criar a mesma. Pode usar este [https://accounts.google.com/signup/v2/webcreateaccount?hl=pt-BR&flowName=GlifWebSignIn&flowEntry=SignUp&nogm=true link].<br />
<br />
Depois de criada a conta, acesse o Google Drive:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive.jpg|900px]]</div><br />
<br />
Vamos garantir que sua conta fique com o idioma em português. Para isso, clique no botão '''Configurações''' e vá na opção '''Configurações''':<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf.jpg|900px]]</div><br />
<br />
Vá em Idioma e Alterar configurações de idioma.<br />
<br />
Clique no lápis ao lado do Idioma, mesmo que esteja em Português, escolha novamente o idioma e clique em selecionar. Caso apareça uma mensagem abaixo avisando que nem todas as ferramentas estão no idioma escolhido, clique para atualizar em todas.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledriveconf2.jpg|900px]]</div><br />
<br />
Dentro do Google Drive, crie uma pasta com o nome '''PJI 2'''.<br />
<br />
Entre na pasta, clique com o botão direito e escolha a opção '''Documentos Google'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive2.jpg|900px]]</div><br />
<br />
No topo da página que irá se abrir, coloque o nome do documento. Deverá se chamar '''Relatório PJI2 - Nome completo do aluno'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive3.jpg|900px]]</div><br />
<br />
Procure no Google um logo do IFSC, para ser colocada no cabeçalho do documento.<br />
<br />
Clique duas vezes no cabeçalho, marque a opção '''Cabeçalho/Rodapé diferente na primeira página''' e cole a imagem escolhida logo em seguida.<br />
<br />
Clique fora do cabeçalho, troque a fonte para '''Arial, tamanho 24, negrito, centralizado e espaçamento entre linhas de 1,5'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Projeto Integrador II'''.<br />
<br />
Aperte 3 vezes o enter e digite '''Curso Técnico Subsequente de Telecomunicações'''.<br />
<br />
Aperte uma vez o enter e altere a fonte para '''Arial, tamanho 12'''.<br />
<br />
Aperte 4 vezes o enter e digite '''Professor: Ederson Luiz de Souza Santos'''<br />
<br />
Aperte o enter e digite '''Aluno: Nome completo'''<br />
<br />
Aperte o enter é chegar a última linha da página e digite '''São José, 2019'''<br />
<br />
A página deve ficar como na imagem:<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive4.jpg|900px]]</div><br />
<br />
<br />
Agora iremos criar uma quebra de página. Ela serve para não desconfigurar as páginas seguintes caso mudemos algum espaçamento nas páginas anteriores. Para isso aperte as teclas '''Ctrl + enter'''.<br />
<br />
Esta página ficará disponível para o sumário, que será gerado automaticamente.<br />
<br />
Aperte Novamente '''Ctrl + enter'''.<br />
<br />
Altere a fonte para '''Arial, tamanho 12, negrito e alinhado a esquerda'''.<br />
<br />
Digite '''INTRODUÇÃO''', com todas as letras maiúsculas. Este será nosso título 1. Neste ponto, iremos utilizar uma função chamada de '''Estilos'''. Clique na caixa Estilos, vá em Título 1, clique na seta ao lado dela e clique na opção Atualizar título para corresponder. Esta opção irá definir o Título 1 com as configurações de texto que acabamos de definir. Os próximos títulos que estiverem no mesmo nivel hierárquico utilizaremos esta função.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive5.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter.<br />
<br />
Digite algum texto, só para ter como referência. Altere a fonte para Arial, tamanho 12, sem negrito, alinhamento justificado e recuo da primeira linha em 1,25 cm.<br />
<br />
Selecione o texto e vá em Estilos, texto normal, clique na seta ao lado e escolha a opção Atualizar texto normal para corresponder. Irá definir como o texto deverá ficar.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive6.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''DESENVOLVIMENTO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Aperte duas vezes o enter e digite algum texto para referência. Aplique o estilo Texto Normal.<br />
<br />
Aperte duas vezes o enter e digite SUBTÍTULO 1 em maiúsculo. A fonte deve ser '''Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado'''.<br />
<br />
Selecione o SUBTÍTULO 1 e vá em '''Estilos, Título 2 e Atualizar título 2 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive7.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1. A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1 e vá em '''Estilos, Título 3 e Atualizar título 3 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive8.jpg|900px]]</div><br />
<br />
Aperte duas vezes o enter e digite algum texto de referência. Aplique o estilo Texto normal.<br />
<br />
Aperte duas vezes o enter e digite Subtítulo 1.1.1 A fonte deve ser Arial, tamanho 12, sem negrito, sem recuo de primeira linha e alinhamento justificado.<br />
<br />
Selecione o Subtítulo 1.1.1 e vá em '''Estilos, Título 4 e Atualizar título 4 para corresponder'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive9.jpg|900px]]</div><br />
<br />
Aperte '''Ctrl + enter'''.<br />
<br />
Digite '''CONCLUSÃO''' e posteriormente aplique o estilo '''Título 1'''. Veja que ficou igual a '''INTRODUÇÃO'''.<br />
<br />
Clique duas vezes no cabeçalho, vá em '''Inserir, Cabeçalho e número da página, Número da página''' e clique no segundo botão da primeira fileira. Alinhe o número da página a direita e aperte uma vez o enter para o número descer um pouco.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive10.jpg|900px]]</div><br />
<br />
Agora retorne a segunda página, onde iria ficar o nosso sumário. Deixe o cursor na primeira linha. Clique em '''Inserir, Sumário, Com número de página'''.<br />
<br />
<div style="text-align: center;">[[Arquivo:googledrive11.jpg|900px]]</div><br />
<br />
Pronto!!! Agora você possui um modelo de como o Relatório deverá ficar, com as configurações ajustadas.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=154069PJI2-2019-12019-02-12T19:52:55Z<p>Ederson.luiz: /* Projeto Integrador II */</p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) <br />
<br>'''Encontros:''' 3a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2019-1<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
</font><br />
{{Collapse bottom | Aula 1}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=PJI2-2019-1&diff=154068PJI2-2019-12019-02-12T19:52:14Z<p>Ederson.luiz: Criou página com '= Projeto Integrador II = '''Professores:''' Ederson Luiz de Souza Santos ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de S...'</p>
<hr />
<div>= Projeto Integrador II = <br />
<br />
'''Professores:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br]) e [[Mayara de Sousa]] ([mailto:mayara.sousa@ifsc.edu.br mayara.sousa@ifsc.edu.br])<br />
<br>'''Encontros:''' 4a feira/19:00, 5a feira/19:00<br />
<br>'''Atendimento paralelo:''' 2a, 3a, 5a e 6a feira 17:30 h<br />
<br>'''Coordenadoria pedagógica (Graciane):''' graciane@ifsc.edu.br (3381-2890, 3381-2842)<br />
<br />
Endereço encurtado: http://bit.ly/pji2-2018-2<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/0/03/PPC2017-2-111.pdf PPC Curso Técnico Subsequente de Telecomunicações]<br />
<br />
<br />
<br />
== Objetivo Geral ==<br />
<br />
Implantar rede de dados e telefônica de pequeno porte, típica de um pequeno escritório.<br />
<br />
== Ementa ==<br />
<br />
Introdução e histórico das telecomunicações e da Internet. Uso de serviços e aplicações oferecidos pelas redes de telecomunicações. Conceitos sobre redes de computadores: comutação de pacotes versus comutação de circuitos, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico: telefonia fixa e móvel, centrais de comutação, telefonia IP e convergência. Integração de serviços de voz convencionais e VoIP.<br />
<br />
== Bibliografia ==<br />
<br />
* FOROUZAN, Behrouz A.; FEGAN, Sophia Chung. '''Comunicação de dados e redes de computadores'''. Tradução de Ariovaldo Griesi. 4. ed. São Paulo: McGraw-Hill, 2008. 1134 p., il. ISBN 9788586804885.<br />
* KUROSE, J. e ROSS, K. Redes de Computadores e a Internet: Uma abordagem top-down. Tradução da 3a edição, Addison Wesley, 2006. <br />
* COLCHER, Sérgio. VOIP: voz sobre IP. Rio de Janeiro: Elsevier, 2005.<br />
<br />
== Material de apoio ==<br />
<br />
* ''Linux''<br />
** [http://ubuntuguide.org/wiki/ Ubuntu Guide]<br />
** [http://wiki.ubuntu-br.org/Terminal Uso do Terminal]<br />
** [http://wiki.ubuntu-br.org/ComandosBasicos Comandos básicos na linha de comando]<br />
** [https://linux.ime.usp.br/~lucasmmg/livecd/documentacao/documentos/terminal/Terminal_basico.html Terminal básico]<br />
** [http://www.ibm.com/developerworks/br/linux/library/l-lpic1-v3-103-1/ Aprenda Linux, 101: A linha de comando do Linux (artigo da IBM ... um pouco mais avançado)]<br />
** [[Comandos_de_Sistemas_Operacionais_variantes_do_UNIX]]<br />
* ''Redes''<br />
** [[Configura%C3%A7%C3%A3o_b%C3%A1sica_de_rede_no_Linux| Configuração básica de rede no Linux]]<br />
** [http://www.cisco.com/cisco/web/support/BR/104/1045/1045524_3.html Um bom guia sobre Endereçamento IP feito pela Cisco]<br />
* ''Outros''<br />
** [http://www.gliffy.com/ Gliffy: um software online para fazer diagramas]<br />
<br />
== Alguns textos interessantes ==<br />
* [http://www.techtudo.com.br/artigos/noticia/2012/06/historia-dos-telefones-celulares.html A história dos telefones celulares]<br />
* [http://www.telebrasil.org.br/ Telebrasil (Associação Brasileira de Telecomunicações)]<br />
* [http://www.businessreviewbrasil.com.br/tecnologia/1290/Telecom-no-Brasil:-um-panorama Telecom no Brasil: um panorama]<br />
* [http://www.teleco.com.br/estatis.asp Estatísticas sobre telecomunicações no Brasil]<br />
* [http://www.teleco.com.br/operadoras/grupos.asp Principais grupos de telecomunicações no Brasil]<br />
* [http://www.bndes.gov.br/SiteBNDES/export/sites/default/bndes_pt/Galerias/Arquivos/conhecimento/revista/rev1110.pdf Telecomunicações: O Novo Cenário (BNDES)]<br />
* [http://www.ipea.gov.br/portal/index.php?option=com_content&view=article&id=1378 Desafios e Oportunidades do Setor de Telecomunicações no Brasil (IPEA)]<br />
* [http://www.tecmundo.com.br/netflix/54634-netflix-abocanha-34-trafego-internet-america-norte.htm Netflix abocanha 34% de todo o tráfego da internet na América do Norte]<br />
* [http://www.statista.com/statistics/267183/forecast-for-the-worldwide-voip-traffic/ Tráfego total VoIP na Internet]<br />
* [http://www.avellareduarte.com.br/projeto/conceituacao/conceituacao1/conceituacao14_internetBrasil2014.htm Internet no Brasil 2014 (dados e fontes)]<br />
* [http://www.tecmundo.com.br/internet/51663-internet-como-estao-as-velocidades-nos-principais-paises-infografico-.htm Internet: como estão as velocidades nos principais países ]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/res/palestra-redes.pdf Apresentação sobre redes de computadores]<br />
* [http://kelsocartography.com/blog/?p=2618 O Mundo Submarino da Internet]<br />
* [http://www.rnp.br/servicos/conectividade/rede-ipe Rede Ipê: a Rede Nacional de Pesquisa (RNP)]<br />
* [https://wiki.openwrt.org/toh/raspberry_pi_foundation/raspberry_pi Openwrt no RaspberryPi]<br />
<br />
== Oportunidades para Técnicos em Telecomunicações ==<br />
<br />
* [http://www.catho.com.br/vagas/tecnico-em-telecomunicacoes/ Ofertas de vagas para técnico em Telecom]<br />
* [http://www.sine.com.br/vagas-empregos/tecnico-de-telecomunicacoes Ofertas de vagas para técnico em Telecom no SINE]<br />
* [http://www.catho.com.br/profissoes/tecnico-em-telecomunicacoes/ Salário médio do Técnico em Telecomunicações no Brasil]<br />
<br />
== Documentários sobre telecomunicações ==<br />
<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_HC.mp4 História das Telecomunicações]<br />
* [https://archive.org/details/Inventos.Telefones.Celulares Inventos: Telefones Celulares (video Discovery)]<br />
* Documentário ''É Logo Ali'': [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_1.mp4 parte 1] e [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/logo_ali_2.mp4 parte 2]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/videos/telecomunicacoes_petrobras.mp4 Video da Petrobras]<br />
<br />
== Curiosidades ==<br />
<br />
* [http://en.wikipedia.org/wiki/Telegraphy#Telex Telex]: um serviço já extinto (?!)<br />
* [http://www.submarinecablemap.com Submarine Cable Map]<br />
* [http://www.digitalattackmap.com/#anim=1&color=0&country=ALL&time=16008&view=map Mapa de Ataques]<br />
* [http://www.rnp.br/ceo/trafego/panorama.php Panorama do Tráfego - RNP]<br />
* [http://www.cebinet.com.br/pessoais/escada/frhumor01.htm Uma semana na vida do Administrador de Suporte do "Inferno" (humor)]<br />
* [http://tele.sj.ifsc.edu.br/~msobral/pji/Vaga_Tecnico_Redes_PoP-SC-RNP.pdf Vaga de Técnico em Redes na RNP: um exemplo de oferta de emprego]<br />
* [http://blog.habemus.website/2016/03/07/nao-esconder-o-codigo.html Empoderar, dar autonomia, não esconder o código]<br />
* [https://en.wikipedia.org/wiki/Carrier_Grade_Linux Carrier Grade Linux (CGL): Linux para Telecomunicações]<br />
** [http://www.linuxjournal.com/article/9128 ... e um estudo de caso sobre CGL]<br />
<br />
=12/02/2019: Apresentação da disciplina=<br />
<br />
{{Collapse top | Aula 1}}<br />
<font size="3"><br />
===Arquivo apresentação da disciplina===<br />
<br />
[https://drive.google.com/file/d/1HYOIk6S2y9FgJ2LHnYWeFBcBIpGgDr5p/view?usp=sharing Apresentação da disciplina 2019-1]<br />
<br />
===Projeto Integrador II===<br />
<br />
O componente Curricular Projeto Integrador II deve tratar conceitos sobre redes de computadores, redes locais e rede Internet. Instalação de computadores e integração a uma rede local e a Internet. Sistema operacional Linux. Introdução ao sistema telefônico. Integração de serviços de voz convencionais e VoIP.<br />
</font><br />
{{Collapse bottom | Aula 1}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Curso_T%C3%A9cnico_em_Telecomunica%C3%A7%C3%B5es_-_Projeto_Integrador_II_(PJI2)&diff=154067Curso Técnico em Telecomunicações - Projeto Integrador II (PJI2)2019-02-12T19:50:56Z<p>Ederson.luiz: /* Material de Aula */</p>
<hr />
<div>==Documentação==<br />
<br />
*[[PJI2-TecTel|Carga horária, Ementas, Bibliografia]]<br />
<br />
*[[PJI2-TecTel (Plano de Ensino) | Plano de Ensino]]<br />
<br />
==Objetivos e Cronograma de Atividades Geral ==<br />
<br />
{{collapse top| bg=lightpurple | expandir=true | Cronograma de Atividades 2017-1}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |23/3 | 4 | Apresentação da disciplina | Laboratório de Redes}}<br />
{{Cl|2 |28/3 | 3 | Conceitos básicos e início do projeto 1 | Laboratório de Redes}}<br />
{{Cl|3 |30/3 | 4 | Projeto 1: escolhendo e instalando o centro de midia; sistema operacional; introdução ao Linux | Laboratório de Redes}}<br />
{{Cl|4 |4/4 | 3 | Projeto 1: incluindo fontes de midia locais; arquivos e diretórios | Laboratório de Redes}}<br />
{{Cl|5 |6/4 | 4 | Projeto 1: transmitiindo a midia através da rede; comunicação de dados | Laboratório de Redes}}<br />
{{Cl|6 |11/4 | 3 | Projeto 1: transmitiindo a midia através da rede; comunicação de dados | Laboratório de Redes}}<br />
{{Cl|7 |13/4 | 4 | Projeto 1: continuação | Laboratório de Redes}}<br />
{{Cl|8 |18/4 | 3 | Projeto 1: continuação | Laboratório de Redes}}<br />
{{Cl|9 |20/4 | 4 | Projeto 1: apresentação pelas equipes; história das telecomunicações | Laboratório de Redes}}<br />
{{Cl|10 |25/4 | 3 | Projeto 2: implantando uma pequena rede local | Laboratório de Redes}}<br />
{{Cl|11 |27/4 | 4 | Projeto 2: instalação do sistema operacional em um computador | Laboratório de Redes}}<br />
{{Cl|12 |2/5 | 3 | Projeto 2: uso do sistema operacional; entendendo como o sistema operacional inicia (boot) | Laboratório de Redes}}<br />
{{Cl|13 |4/5 | 4 | Projeto 2: uso do sistema operacional; linha de comando: arquivos e diretórios | Laboratório de Redes}}<br />
{{Cl|14 |9/5 | 3 | Projeto 2: uso do sistema operacional; linha de comando: arquivos e diretórios; permissões | Laboratório de Redes}}<br />
{{Cl|15 |11/5 | 4 | Projeto 2: protegendo recursos no sistema operacional: usuários e grupos; linha de comando: compactadores | Laboratório de Redes}}<br />
{{Cl|16 |16/5 | 3 | Projeto 2: uso do sistema operacional; linha de comando: processos, entrada e saída padrão | Laboratório de Redes}}<br />
{{Cl|17 |18/5 | 4 | Projeto 2: uso do sistema operacional; linha de comando: entrada e saída padrão; instalação de software | Laboratório de Redes}}<br />
{{Cl|18 |23/5 | 3 | Projeto 2: configuração do sistema operacional para usar a rede; interfaces de rede e endereços IP | Laboratório de Redes}}<br />
{{Cl|19 |25/5 | 3 | Projeto 2: configuração do sistema operacional para usar a rede; rota default e rotas estáticas | Laboratório de Redes}}<br />
{{Cl|20 |30/5 | 3 | Projeto 2: revisão dos requisitos para adicionar um computador à rede | Laboratório de Redes}}<br />
{{Cl|21 |1/6 | 3 | Projeto 2: configuração automática de rede (dhcp); continuação do projeto | Laboratório de Redes}}<br />
{{Cl|22 |6/6 | 3 | Projeto 2: implantação da rede local: switches e ponto de acesso Wifi | Laboratório de Redes}}<br />
{{Cl|23 |8/6 | 3 | Projeto 2: implantação da rede local: switches e ponto de acesso Wifi | Laboratório de Redes}}<br />
{{Cl|24 |13/6 | 3 | Projeto 2: implantação do acesso a Internet: enlace ADSL | Laboratório de Redes}}<br />
{{Cl|25 |15/6 | 3 | Projeto 2: revisão sobre a implantação da rede do projeto; discussão sobre erros comuns de instalação | Laboratório de Redes}}<br />
{{Cl|26 |20/6 | 3 | Projeto 2: acesso externo ao computador da rede local com SSH e outros serviços | Laboratório de Redes}}<br />
{{Cl|27 |22/6 | 3 | Projeto 2: definição das características finais do projeto pelas equipes | Laboratório de Redes}}<br />
{{Cl|28 |27/6 | 3 | Projeto 2: conclusão e apresentação pelas equipes | Laboratório de Redes}}<br />
{{Cl|29 |29/6 | 3 | Projeto 3: apresentação; sistemas de telefonia; implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|30 |4/7 | 3 | Projeto 3: apresentação; sistemas de telefonia; implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|31 |6/7 | 3 | Projeto 3: implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|32 |11/7 | 3 | Projeto 3: implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|33 |13/7 | 3 | Projeto 3: implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|34 |18/7 | 3 | Projeto 3: loop local e o enlace ADSL | Laboratório de Redes}}<br />
{{Cl|35 |20/7 | 3 | Projeto 3: rede telefônica convencional e telefonia IP; VoIP | Laboratório de Redes}}<br />
{{Cl|36 |25/7 | 3 | Projeto 3: conclusão e apresentação pelas equipes | Laboratório de Redes}}<br />
{{Cl|37 |27/7 | 3 | Avaliações finais | Laboratório de Redes}}<br />
{{cronograma-botton |120}}<br />
{{collapse bottom}}<br />
<br />
=== Cronogramas da antiga disciplina de Projetos II (atual Projetos I) ===<br />
<br />
{{collapse top| bg=lightgreen | expandir=true | Objetivos e Cronograma de Atividades Geral}}<br />
<br />
<!-- <br />
PROFESSOR: COPIAR TODO ESSE BLOCO PARA CRIAR NOVOS CRONOGRAMAS. O COMENTÁRIO ABAIXO DEVE SER RETIRADO PARA A CRIAÇÃO DE NOVAS LINHAS NA TABELA<br />
--><br />
<br />
<!--<br />
{{Cronograma-top}}<br />
{{Cl|1 |12/04 | 4 | Apresentação da Disciplina | Aula expositiva}}<br />
{{cronograma-botton-int |36}}<br />
--><br />
<br />
Objetivos:<br />
* Conhecer as normas para instalação do cabeamento estruturado;<br />
* Conhecer os elementos do cabeamento estruturado.<br />
* Instalar um cabeamento estruturado;<br />
* Conhecer o padrão da infraestrutura das redes de distribuição telefônica;<br />
* Conhecer os elementos da rede de distribuição de telefonia.<br />
* Instalar redes de distribuição de telefonia.<br />
* Conhecer a infraestrutura de redes HFC<br />
* Conhecer elementos da rede HFC.<br />
* Conhecer o funcionamento básica de um enlace de radiotransmissão (antena X comprimento de onda; antena X ganho; atenuação, direcionamento de antes no espaço livre)<br />
* Instalar um radio enlace<br />
* Conhecer a norma brasileira para instalações elétricas.<br />
* Conhecer a função e os tipos de nobreak<br />
* Instalar a infraestrutura de energia elétrica de uma rede local.<br />
<br />
Atividades:<br />
* Instalação de cabeamento estruturado;<br />
* Uso da instalação do cabeamento estruturado para rede de computadores, telefonia, sensores e TV;<br />
* Instalação de rede externa de telefonia;<br />
* Uso da rede instalada para operação de uma rede telefônica e acesso xDSL;<br />
* Realizar conexões e emendas em cabos coaxias e fibras ópticas;<br />
* Dimensionamento de um circuito de alimentação elétrica para um cabeamento estruturado.<br />
* Instalação da infraestrutura de energia elétrica de uma rede local.<br />
<br />
Atividades em 2 dias por semana / 20 semanas por semestre;<br />
<br />
{| border="1" cellpadding="2"<br />
!Semana<br />
!Aula 1<br />
!Aula 2<br />
|-<br />
|1 <br />
|| Apresentação do Projeto Integrador <br> Diferenciação de redes local e de acesso <br> Introdução ao cabeamento estruturado.<br />
|| Elementos do cabeamento estruturado (conhecer a função e manusear blocos, conectores, cabos ...). <br />
|-<br />
|2 <br />
|| Elementos do cabeamento estruturado <br> visão geral do cabeamento (distribuidores, backbones, cabeamento horizontal, área de trabalho <br> definição da estrutura a ser instalada. <br />
|| Instalação do cabeamento estruturado.<br />
|-<br />
|3 <br />
|| Instalação do cabeamento estruturado.<br />
|| Instalação do cabeamento estruturado.<br />
|-<br />
|4<br />
|| Verificação da instalação e da identificação (testes e relatório) <br> Instalação das redes locais (computadores, telefonia, sensores, TV).<br />
|| Instalação das redes locais: entender o funcionamento de switches ethernet (comutação de quadros de acordo com endereço MAC, aprendizado de endereços MAC, cuidados ao conectar switches - ex: evitar ''loops'')<br />
|-<br />
|5 <br />
|| Instalação das redes locais<br />
|| Visão geral da rede de distribuição de telefonia <br> Elementos do cabeamento estruturado (conhecer a função e manusear blocos, conectores, cabos ...)<br />
|-<br />
|6<br />
|| Instalar uma rede de distribuição telefônica.<br />
|| Instalar uma rede de distribuição telefônica.<br />
|-<br />
|7 <br />
|| Verificar a instalação da rede de distribuição telefônica <br> Operar uma central telefônica e uma rede Xdsl integrando com a rede de cabeamento estruturado.<br />
|| Operar uma central telefônica e uma rede Xdsl integrando com a rede de cabeamento estruturado.<br />
|-<br />
|8<br />
|| Visão geral da fibra óptica ,<br> cabos e conectores de fibra óptica <br> interligação de equipamentos com fibra óptica.<br />
|| Emendas com fibra e instrumentação óptica.<br />
|-<br />
|9 <br />
|| Instalar link com fibra óptica <br> verificar instalação <br> operar uma rede de telecomunicações no link de fibra<br />
|| Redes HFC e redes de distribuição de CATV <br> conhecer e manipular os elementos da rede HFC.<br />
|-<br />
|10 <br />
|| Instalar uma rede residencial de TV a cabo.<br />
|| Visão geral das redes PON (Palestra?)<br />
|-<br />
|11<br />
|| Visão geral da propagação de ondas e ocupação do espectro eletromagnético <br> Noções básicas e características fundamentais de antenas <br> Tipos de antenas e suas aplicações. <br />
|| Aspectos práticos em radiotransmissão: casamento de impedância, cabos e conectores empregados em altas frequências <br> Realização de conectorização e montagem de um sistema simples de radiotransmissão.<br />
|-<br />
|12 <br />
|| Noções de enlaces de rádio <br> Aspectos de propagação indoor x outdoor <br> Conexões ponto a ponto e multiponto <br> Balanço de potência em enlaces de rádio <br> Alinhamento de antenas <br> Polarização<br />
|| Instalação e teste de um enlace de rádio.<br />
|-<br />
|13<br />
|| Implantação de rede local sem-fio: pontos de acesso e integração com rede local cabeada<br />
|| Implantação de rede local sem-fio: sistemas de distribuição (cabeado e sem-fio)<br />
|-Eletrônica e instrumentação<br />
|14 <br />
|| Implantação de rede local sem-fio: caracterização de canal sem-fio e impedimentos para a comunicação, uso de antenas direcionais, escolha de canais para pontos de acesso<br />
|| Implantação de rede local sem-fio: posicionamento de pontos de acesso para otimizar cobertura e minimizar interferências<br />
|-<br />
|15 <br />
|| Instalação do circuito elétrico para uma estrutura de cabeamento estruturado<br />
|| Nobreak - função, tipos forma de especificação.<br />
|-<br />
|16 <br />
|| Especificação de Nobreak.<br />
|| <br />
|-<br />
|17<br />
|| Dimensionamento de circuitos elétricos.<br />
|| Dimensionamento de circuitos elétricos voltados para infraestrutura de redes locais.<br />
|-<br />
|18<br />
|| Projeto de circuito elétrico para uma estrutura de cabeamento estruturado.<br />
|| Projeto de circuito elétrico para uma estrutura de cabeamento estruturado.<br />
|-<br />
|19 <br />
|| <br />
|| <br />
|-<br />
|20 <br />
|| folga para feriados e erros no dimensionamento da carga horária<br />
|| folga para feriados e erros no dimensionamento da carga horária<br />
|} <br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2016-1 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |22/3 | 3 | Componentes de uma Infraestrutura de Telecom | }}<br />
{{Cl|2 |23/3 | 3 | Componentes de Cabeamento Estruturado | }}<br />
{{Cl|3 |29/3 | 3 | Componentes de Cabeamento Estruturado - Prática de inserção em Patch Panel e RJ-45 Fêmea | }}<br />
{{cronograma-botton |114}}<br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2015-2 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |5/2 | 3 | Componentes de uma Infraestrutura de Telecom | }}<br />
{{Cl|2 |10/2 | 3 | Componentes de Cabeamento Estruturado | }}<br />
{{Cl|3 |12/2 | 3 | Preparação para a primeira parte do projeto integrador – Práticas com componentes IDC | }}<br />
{{Cl|4 |19/2 | 3 | Parte 1 – Cabeamento Horizontal | }}<br />
{{Cl|5 |24/2 | 3 | Parte 1 – Cabeamento Horizontal – finalização e testes | }}<br />
{{Cl|6 |26/2 | 3 | Parte 1 - Identificação e acabamento da Instalação do Cabeamento Horizontal do Projeto | }}<br />
{{Cl|7 |3/3 | 3 | Parte 1 - Cabeamento Horizontal - Finalização Identificação e Apresentação da Entrada de Facilidades | }}<br />
{{Cl|8 |5/3 | 3 | Parte 1 - Interligação do Armário de Telecomunicações a Entrada de Facilidades | }}<br />
{{Cl|9 |10/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Teoria | }}<br />
{{Cl|10 |12/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Finalização da Teoria e exercícios | }}<br />
{{Cl|11 |17/3 | 3 | Parte 2 - Apresentação e início – práticas com blocos BLI | }}<br />
{{Cl|12 |24/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – uso de blocos cook | }}<br />
{{Cl|13 |26/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – Finalização | }}<br />
{{Cl|14 |31/3 | 3 | Revisão da documentação na wiki e Avaliação 1 – Avaliação escrita, teoria e prática da Parte 1 | }}<br />
{{Cl|15 |7/4 | 3 | Parte 2 – Instalação da central telefônica e DSLAM na operadora | }}<br />
{{Cl|16 |9/4 | 3 | Parte 2 – Finalização e testes da Instalação da Rede Telefônica | }}<br />
{{Cl|17 |14/4 | 3 | Parte 2 – Testes de serviços de telefonia e dados com DSLAM conectado à internet | }}<br />
{{Cl|18 |16/4 | 3 | Parte 3 - Apresentação - O serviço FTTH – práticas com fibras ópticas | }}<br />
{{Cl|19 |23/4 | 3 | Palestra: A ser definida sobre a rede externa e interna de operadoras | }}<br />
{{Cl|20 |28/4 | 3 | Parte 3 – Conectorização de fibras | }}<br />
{{Cl|21 |30/4 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|22 |5/5 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|23 |7/5 | 3 | Parte 3 – Finalização, retrabalhos e testes gerais - exercícios | }}<br />
{{Cl|24 |12/5 | 3 | Revisão da documentação na wiki e Avaliação 2 – Avaliação escrita, teoria e prática da Parte 2 e 3 | }}<br />
{{Cl|25 |14/5 | 3 | Parte 4 – Rede HFC | }}<br />
{{Cl|26 |19/5 | 3 | Parte 4 – Rede CATV | }}<br />
{{Cl|27 |21/5 | 3 | Parte 4 – CATV – projeto e medidas | }}<br />
{{Cl|28 |26/5 | 3 | Parte 4 – CFTV – Redes para vídeovigilância | }}<br />
{{Cl|29 |28/5 | 3 | Parte 4 – CFTV – Instalação com câmeras e DVRs | }}<br />
{{Cl|30 |2/6 | 3 | Parte 4 – Instalação e testes finais com câmeras e DVRs | }}<br />
{{Cl|31 |9/6 | 3 | Palestra sobre serviços de operadoras - Redes de serviços e backbone | }}<br />
{{Cl|32 |11/6 | 3 | Parte 5 – Projeto elétrico e fornecimento ininterrupto de energia | }}<br />
{{Cl|33 |16/6 | 3 | Parte 5 – Projeto elétrico e ventilação | }}<br />
{{Cl|34 |18/6 | 3 | Parte 5 - Exercícios projeto elétrico | }}<br />
{{Cl|35 |23/6 | 3 | Parte 5 – Finalização e revisão sobre Projeto Elétrico | }}<br />
{{Cl|36 |25/6 | 3 | Revisão da documentação na wiki e avaliação A3 – parte 4 e 5 | }}<br />
{{Cl|37 |30/6 | 3 | Desmontagem e revisão de conteúdos | }}<br />
{{Cl|38 |2/7 | 3 | Revisão da documentação na wiki , desmontagem e RECUPERAÇÃO FINAL | }}<br />
{{cronograma-botton |114}}<br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2015-1 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |5/2 | 3 | Componentes de uma Infraestrutura de Telecom | }}<br />
{{Cl|2 |10/2 | 3 | Componentes de Cabeamento Estruturado | }}<br />
{{Cl|3 |12/2 | 3 | Preparação para a primeira parte do projeto integrador – Práticas com componentes IDC | }}<br />
{{Cl|4 |19/2 | 3 | Parte 1 – Cabeamento Horizontal | }}<br />
{{Cl|5 |24/2 | 3 | Parte 1 – Cabeamento Horizontal – finalização e testes | }}<br />
{{Cl|6 |26/2 | 3 | Parte 1 - Identificação e acabamento da Instalação do Cabeamento Horizontal do Projeto | }}<br />
{{Cl|7 |3/3 | 3 | Parte 1 - Cabeamento Horizontal - Finalização Identificação e Apresentação da Entrada de Facilidades | }}<br />
{{Cl|8 |5/3 | 3 | Parte 1 - Interligação do Armário de Telecomunicações a Entrada de Facilidades | }}<br />
{{Cl|9 |10/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Teoria | }}<br />
{{Cl|10 |12/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Finalização da Teoria e exercícios | }}<br />
{{Cl|11 |17/3 | 3 | Parte 2 - Apresentação e início – práticas com blocos BLI | }}<br />
{{Cl|12 |24/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – uso de blocos cook | }}<br />
{{Cl|13 |26/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – Finalização | }}<br />
{{Cl|14 |31/3 | 3 | Revisão da documentação na wiki e Avaliação 1 – Avaliação escrita, teoria e prática da Parte 1 | }}<br />
{{Cl|15 |7/4 | 3 | Parte 2 – Instalação da central telefônica e DSLAM na operadora | }}<br />
{{Cl|16 |9/4 | 3 | Parte 2 – Finalização e testes da Instalação da Rede Telefônica | }}<br />
{{Cl|17 |14/4 | 3 | Parte 2 – Testes de serviços de telefonia e dados com DSLAM conectado à internet | }}<br />
{{Cl|18 |16/4 | 3 | Parte 3 - Apresentação - O serviço FTTH – práticas com fibras ópticas | }}<br />
{{Cl|19 |23/4 | 3 | Palestra: A ser definida sobre a rede externa e interna de operadoras | }}<br />
{{Cl|20 |28/4 | 3 | Parte 3 – Conectorização de fibras | }}<br />
{{Cl|21 |30/4 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|22 |5/5 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|23 |7/5 | 3 | Parte 3 – Finalização, retrabalhos e testes gerais - exercícios | }}<br />
{{Cl|24 |12/5 | 3 | Revisão da documentação na wiki e Avaliação 2 – Avaliação escrita, teoria e prática da Parte 2 e 3 | }}<br />
{{Cl|25 |14/5 | 3 | Parte 4 – Rede HFC | }}<br />
{{Cl|26 |19/5 | 3 | Parte 4 – Rede CATV | }}<br />
{{Cl|27 |21/5 | 3 | Parte 4 – CATV – projeto e medidas | }}<br />
{{Cl|28 |26/5 | 3 | Parte 4 – CFTV – Redes para vídeovigilância | }}<br />
{{Cl|29 |28/5 | 3 | Parte 4 – CFTV – Instalação com câmeras e DVRs | }}<br />
{{Cl|30 |2/6 | 3 | Parte 4 – Instalação e testes finais com câmeras e DVRs | }}<br />
{{Cl|31 |9/6 | 3 | Palestra sobre serviços de operadoras - Redes de serviços e backbone | }}<br />
{{Cl|32 |11/6 | 3 | Parte 5 – Projeto elétrico e fornecimento ininterrupto de energia | }}<br />
{{Cl|33 |16/6 | 3 | Parte 5 – Projeto elétrico e ventilação | }}<br />
{{Cl|34 |18/6 | 3 | Parte 5 - Exercícios projeto elétrico | }}<br />
{{Cl|35 |23/6 | 3 | Parte 5 – Finalização e revisão sobre Projeto Elétrico | }}<br />
{{Cl|36 |25/6 | 3 | Revisão da documentação na wiki e avaliação A3 – parte 4 e 5 | }}<br />
{{Cl|37 |30/6 | 3 | Desmontagem e revisão de conteúdos | }}<br />
{{Cl|38 |2/7 | 3 | Revisão da documentação na wiki , desmontagem e RECUPERAÇÃO FINAL | }}<br />
{{cronograma-botton |114}}<br />
<br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2014-2 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |31/7 | 3 | Apresentação da disciplina, noções sobre infraestrutura de telecom, distinção entre LANs, redes de acesso e Cabeamento; | Laboratório de Meios}}<br />
{{Cl|2 |5/8 | 3 | Conceitos sore banda passante de meios de transmissão, elementos passivos de CE e manuseio; | Laboratório de Meios}}<br />
{{Cl|3 |7/8 | 3 | Visão geral de CE, definição de um projeto completo para a disciplina e do cabeamento horizontal (etapa 1), práticas com blocos BLI e IDC; | Laboratório de Meios}}<br />
{{Cl|4 |12/8 | 3 | Prática com blocos IDC, bargoa e patch panels e respectivo acabamento; | Laboratório de Meios}}<br />
{{Cl|5 |14/8 | 3 | Etapa1: Instalação do MUTO ao Patch Panel na sala de equipamentos; | Laboratório de Meios}}<br />
{{Cl|6 |19/8 | 3 | Etapa1: Continuação da instalação do MUTO ao Patch Panel; noções sore identificação da norma EIA/TIA-606; | Laboratório de Meios}}<br />
{{Cl|7 |21/8 | 3 | Etapa1: Testes, identificação e início da documentação; | Laboratório de Meios}}<br />
{{Cl|8 |26/8 | 3 | Etapa1: Retrabalhos, finalização identificação e documentação; | Laboratório de Meios}}<br />
{{Cl|9 |28/8 | 3 | Noções sobre equipamentos ativos de rede: Switches e a tecnologia ethernet, segmentação física e usando VLANs; | Laboratório de Meios}}<br />
{{Cl|10 |2/9 | 3 | Etapa1: Instalação do Patch panel da sala de equipamentos à entrada de facilidades; | Laboratório de Meios}}<br />
{{Cl|11 |4/9 | 3 | Visão geral da rede de distribuição telefônica, apresentação da Etapa 2: integração a rede telefônica; | Laboratório de Meios}}<br />
{{Cl|12 |9/9 | 3 | Etapa 2: Instalação da rede telefônica simulada com PABX da operadora à entrada de facidlidades | Laboratório de Meios}}<br />
{{Cl|13 |11/9 | 3 | Etapa 2: Continuação da Instalação da rede telefônica e testes; | Laboratório de Meios}}<br />
{{Cl|14 |16/9 | 3 | Etapa 2: Integração de um serviço privativo de comunicação de dados usando modens xDSL; | Laboratório de Meios}}<br />
{{Cl|15 |18/9 | 3 | Avaliação 1 (até redes telefônicas); Etapa 2: Integração de um serviço ADSL; | Laboratório de Meios}}<br />
{{Cl|16 |23/9 | 3 | Etapa 2: Integração de um serviço ADSL finalização e testes; | Laboratório de Meios}}<br />
{{Cl|17 |25/9 | 3 | Visão geral sobre a fira óptica: componentes, conectorização e fusão; Práticas com emendas de fibra óptica; | Laboratório de Meios}}<br />
{{Cl|18 |30/9 | 3 | Etapa 3: Instalação de um serviço FTTH; | Laboratório de Meios}}<br />
{{Cl|19 |2/10 | 3 | Etapa 3: Finalização da instalação de um serviço FTTH; testes; | Laboratório de Meios}}<br />
{{Cl|20 |7/10 | 3 | Etapa 3: noções de redes HFC e redes de distribuição CATV, conhecer e manipular componentes; | Laboratório de Meios}}<br />
{{Cl|21 |9/10 | 3 | Etapa 3: Instalar um serviço de TV à cabo; | Laboratório de Meios}}<br />
{{Cl|22 |14/10 | 3 | Etapa 3: Palestra sore PON ou serviço de CATV sobre o CE; | Laboratório de Meios}}<br />
{{Cl|23 |16/10 | 3 | Visão geral de propagação de ondas, ocupação do espectro e antenas; | Laboratório de Meios}}<br />
{{Cl|24 |21/10 | 3 | Características de componentes para radiotransmissão; práticas e conectorização; | Laboratório de Meios}}<br />
{{Cl|25 |23/10 | 3 | Avaliação 2 (até CATV); | Laboratório de Meios}}<br />
{{Cl|26 |30/10 | 3 | Etapa 4: Noções de enlace de rádio e instalação de um enlace respeitando aspectos de balanço de potência, alinhamento e polarização; | Laboratório de Meios}}<br />
{{Cl|27 |4/11 | 3 | Etapa 4: Continuação da instalação de enlace de rádio outdoor; | Laboratório de Meios}}<br />
{{Cl|28 |6/11 | 3 | Etapa 4: Implantação de uma rede sem fio com AP e integração ao CE; | Laboratório de Meios}}<br />
{{Cl|29 |11/11 | 3 | Etapa 4: Continuação da implantação da rede wifi; | Laboratório de Meios}}<br />
{{Cl|30 |13/11 | 3 | Etapa 4: Sistema de distribuição WDS e cabeado; site Survey; | Laboratório de Meios}}<br />
{{Cl|31 |18/11 | 3 | Etapa 4: Uso de antenas direcionais, coberturas otimizadas; | Laboratório de Meios}}<br />
{{Cl|32 |20/11 | 3 | Etapa 5: Dimensionamento de circuitos elétricos para LANs e CE; | Laboratório de Meios}}<br />
{{Cl|33 |25/11 | 3 | Etapa 5: Dimensionamento de circuitos elétricos para LANs e CE; | Laboratório de Meios}}<br />
{{Cl|34 |27/11 | 3 | Etapa 5: Dimensionamento de Nobreak; tipos; | Laboratório de Meios}}<br />
{{Cl|35 |2/12 | 3 | Etapa 5: Projeto de circuito elétrico para a estrutura de CE completo; | Laboratório de Meios}}<br />
{{Cl|36 |4/12 | 3 | Avaliação 3 (até projeto Elétrico); | Laboratório de Meios}}<br />
{{Cl|37 |9/12 | 3 | Recuperação de práticas e conteúdos; desmonte da infraestrutura e reintegração ao estoque; | Laboratório de Meios}}<br />
{{Cl|38 |11/12 | 3 | Recuperação das avaliações; | Laboratório de Meios}}<br />
{{cronograma-botton |114}}<br />
<br />
{{collapse bottom}}<br />
<br />
==Material de Aula==<br />
{{Professor|'''2019-1'''| [[PJI2-2019-1|'''DIÁRIO DE AULAS''']] - ([https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos])}}<br />
{{Professor|'''2018-2'''| [[PJI2-2018-2|'''DIÁRIO DE AULAS''']] - ([https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos] / [[Mayara de Sousa]])}}<br />
{{Professor|'''2018-1'''| [[PJI2-2018-1|'''DIÁRIO DE AULAS''']] - ([https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos] / [[Mayara de Sousa]])}}<br />
{{Professor|'''2017-2'''| [[PJI2-2017-2|'''DIÁRIO DE AULAS''']] - ([[Marcelo Maia Sobral]] / [https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos])}}<br />
{{Professor|'''2017-1'''| [[PJI2-2017-1|'''DIÁRIO DE AULAS''']] - ([[Marcelo Maia Sobral]] / [[Simara Sonaglio]])}}<br />
<br />
=== Material de aula da antiga disciplina de Projetos II (atual Projetos I) ===<br />
{{Professor|'''2016-2'''| [[Curso Técnico em Telecomunicações - Projeto Integrador I|'''DIÁRIO DE AULAS''']] - ([[Cleber Jorge Amaral]] e [[Juliano de Souza]])}}<br />
{{Professor|'''2016-1'''| [[PJI1102 2016-1|'''DIÁRIO DE AULAS''']] - ([[Juliano de Souza]])}}<br />
{{Professor|'''2015-2'''| [[PJI1102 2015-2|'''DIÁRIO DE AULAS''']] - ([[Jorge Henrique B. Casagrande]])}}<br />
{{Professor|'''2015-1'''| [[PJI1102 2015-1|'''DIÁRIO DE AULAS''']] - ([[Jorge Henrique B. Casagrande]] e [[Francisco de Assis]])}}<br />
{{Professor|'''2014-2'''| [[PJI1102 2014-2|'''DIÁRIO DE AULAS''']] - ([[Jorge Henrique B. Casagrande]] e [[Francisco de Assis]])}}<br />
{{VOLTAR |Curso Técnico em Telecomunicações - Páginas das Disciplinas}}<br />
{{TECTELECO}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Curso_T%C3%A9cnico_em_Telecomunica%C3%A7%C3%B5es_-_Projeto_Integrador_II_(PJI2)&diff=154066Curso Técnico em Telecomunicações - Projeto Integrador II (PJI2)2019-02-12T19:50:39Z<p>Ederson.luiz: /* Material de Aula */</p>
<hr />
<div>==Documentação==<br />
<br />
*[[PJI2-TecTel|Carga horária, Ementas, Bibliografia]]<br />
<br />
*[[PJI2-TecTel (Plano de Ensino) | Plano de Ensino]]<br />
<br />
==Objetivos e Cronograma de Atividades Geral ==<br />
<br />
{{collapse top| bg=lightpurple | expandir=true | Cronograma de Atividades 2017-1}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |23/3 | 4 | Apresentação da disciplina | Laboratório de Redes}}<br />
{{Cl|2 |28/3 | 3 | Conceitos básicos e início do projeto 1 | Laboratório de Redes}}<br />
{{Cl|3 |30/3 | 4 | Projeto 1: escolhendo e instalando o centro de midia; sistema operacional; introdução ao Linux | Laboratório de Redes}}<br />
{{Cl|4 |4/4 | 3 | Projeto 1: incluindo fontes de midia locais; arquivos e diretórios | Laboratório de Redes}}<br />
{{Cl|5 |6/4 | 4 | Projeto 1: transmitiindo a midia através da rede; comunicação de dados | Laboratório de Redes}}<br />
{{Cl|6 |11/4 | 3 | Projeto 1: transmitiindo a midia através da rede; comunicação de dados | Laboratório de Redes}}<br />
{{Cl|7 |13/4 | 4 | Projeto 1: continuação | Laboratório de Redes}}<br />
{{Cl|8 |18/4 | 3 | Projeto 1: continuação | Laboratório de Redes}}<br />
{{Cl|9 |20/4 | 4 | Projeto 1: apresentação pelas equipes; história das telecomunicações | Laboratório de Redes}}<br />
{{Cl|10 |25/4 | 3 | Projeto 2: implantando uma pequena rede local | Laboratório de Redes}}<br />
{{Cl|11 |27/4 | 4 | Projeto 2: instalação do sistema operacional em um computador | Laboratório de Redes}}<br />
{{Cl|12 |2/5 | 3 | Projeto 2: uso do sistema operacional; entendendo como o sistema operacional inicia (boot) | Laboratório de Redes}}<br />
{{Cl|13 |4/5 | 4 | Projeto 2: uso do sistema operacional; linha de comando: arquivos e diretórios | Laboratório de Redes}}<br />
{{Cl|14 |9/5 | 3 | Projeto 2: uso do sistema operacional; linha de comando: arquivos e diretórios; permissões | Laboratório de Redes}}<br />
{{Cl|15 |11/5 | 4 | Projeto 2: protegendo recursos no sistema operacional: usuários e grupos; linha de comando: compactadores | Laboratório de Redes}}<br />
{{Cl|16 |16/5 | 3 | Projeto 2: uso do sistema operacional; linha de comando: processos, entrada e saída padrão | Laboratório de Redes}}<br />
{{Cl|17 |18/5 | 4 | Projeto 2: uso do sistema operacional; linha de comando: entrada e saída padrão; instalação de software | Laboratório de Redes}}<br />
{{Cl|18 |23/5 | 3 | Projeto 2: configuração do sistema operacional para usar a rede; interfaces de rede e endereços IP | Laboratório de Redes}}<br />
{{Cl|19 |25/5 | 3 | Projeto 2: configuração do sistema operacional para usar a rede; rota default e rotas estáticas | Laboratório de Redes}}<br />
{{Cl|20 |30/5 | 3 | Projeto 2: revisão dos requisitos para adicionar um computador à rede | Laboratório de Redes}}<br />
{{Cl|21 |1/6 | 3 | Projeto 2: configuração automática de rede (dhcp); continuação do projeto | Laboratório de Redes}}<br />
{{Cl|22 |6/6 | 3 | Projeto 2: implantação da rede local: switches e ponto de acesso Wifi | Laboratório de Redes}}<br />
{{Cl|23 |8/6 | 3 | Projeto 2: implantação da rede local: switches e ponto de acesso Wifi | Laboratório de Redes}}<br />
{{Cl|24 |13/6 | 3 | Projeto 2: implantação do acesso a Internet: enlace ADSL | Laboratório de Redes}}<br />
{{Cl|25 |15/6 | 3 | Projeto 2: revisão sobre a implantação da rede do projeto; discussão sobre erros comuns de instalação | Laboratório de Redes}}<br />
{{Cl|26 |20/6 | 3 | Projeto 2: acesso externo ao computador da rede local com SSH e outros serviços | Laboratório de Redes}}<br />
{{Cl|27 |22/6 | 3 | Projeto 2: definição das características finais do projeto pelas equipes | Laboratório de Redes}}<br />
{{Cl|28 |27/6 | 3 | Projeto 2: conclusão e apresentação pelas equipes | Laboratório de Redes}}<br />
{{Cl|29 |29/6 | 3 | Projeto 3: apresentação; sistemas de telefonia; implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|30 |4/7 | 3 | Projeto 3: apresentação; sistemas de telefonia; implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|31 |6/7 | 3 | Projeto 3: implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|32 |11/7 | 3 | Projeto 3: implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|33 |13/7 | 3 | Projeto 3: implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|34 |18/7 | 3 | Projeto 3: loop local e o enlace ADSL | Laboratório de Redes}}<br />
{{Cl|35 |20/7 | 3 | Projeto 3: rede telefônica convencional e telefonia IP; VoIP | Laboratório de Redes}}<br />
{{Cl|36 |25/7 | 3 | Projeto 3: conclusão e apresentação pelas equipes | Laboratório de Redes}}<br />
{{Cl|37 |27/7 | 3 | Avaliações finais | Laboratório de Redes}}<br />
{{cronograma-botton |120}}<br />
{{collapse bottom}}<br />
<br />
=== Cronogramas da antiga disciplina de Projetos II (atual Projetos I) ===<br />
<br />
{{collapse top| bg=lightgreen | expandir=true | Objetivos e Cronograma de Atividades Geral}}<br />
<br />
<!-- <br />
PROFESSOR: COPIAR TODO ESSE BLOCO PARA CRIAR NOVOS CRONOGRAMAS. O COMENTÁRIO ABAIXO DEVE SER RETIRADO PARA A CRIAÇÃO DE NOVAS LINHAS NA TABELA<br />
--><br />
<br />
<!--<br />
{{Cronograma-top}}<br />
{{Cl|1 |12/04 | 4 | Apresentação da Disciplina | Aula expositiva}}<br />
{{cronograma-botton-int |36}}<br />
--><br />
<br />
Objetivos:<br />
* Conhecer as normas para instalação do cabeamento estruturado;<br />
* Conhecer os elementos do cabeamento estruturado.<br />
* Instalar um cabeamento estruturado;<br />
* Conhecer o padrão da infraestrutura das redes de distribuição telefônica;<br />
* Conhecer os elementos da rede de distribuição de telefonia.<br />
* Instalar redes de distribuição de telefonia.<br />
* Conhecer a infraestrutura de redes HFC<br />
* Conhecer elementos da rede HFC.<br />
* Conhecer o funcionamento básica de um enlace de radiotransmissão (antena X comprimento de onda; antena X ganho; atenuação, direcionamento de antes no espaço livre)<br />
* Instalar um radio enlace<br />
* Conhecer a norma brasileira para instalações elétricas.<br />
* Conhecer a função e os tipos de nobreak<br />
* Instalar a infraestrutura de energia elétrica de uma rede local.<br />
<br />
Atividades:<br />
* Instalação de cabeamento estruturado;<br />
* Uso da instalação do cabeamento estruturado para rede de computadores, telefonia, sensores e TV;<br />
* Instalação de rede externa de telefonia;<br />
* Uso da rede instalada para operação de uma rede telefônica e acesso xDSL;<br />
* Realizar conexões e emendas em cabos coaxias e fibras ópticas;<br />
* Dimensionamento de um circuito de alimentação elétrica para um cabeamento estruturado.<br />
* Instalação da infraestrutura de energia elétrica de uma rede local.<br />
<br />
Atividades em 2 dias por semana / 20 semanas por semestre;<br />
<br />
{| border="1" cellpadding="2"<br />
!Semana<br />
!Aula 1<br />
!Aula 2<br />
|-<br />
|1 <br />
|| Apresentação do Projeto Integrador <br> Diferenciação de redes local e de acesso <br> Introdução ao cabeamento estruturado.<br />
|| Elementos do cabeamento estruturado (conhecer a função e manusear blocos, conectores, cabos ...). <br />
|-<br />
|2 <br />
|| Elementos do cabeamento estruturado <br> visão geral do cabeamento (distribuidores, backbones, cabeamento horizontal, área de trabalho <br> definição da estrutura a ser instalada. <br />
|| Instalação do cabeamento estruturado.<br />
|-<br />
|3 <br />
|| Instalação do cabeamento estruturado.<br />
|| Instalação do cabeamento estruturado.<br />
|-<br />
|4<br />
|| Verificação da instalação e da identificação (testes e relatório) <br> Instalação das redes locais (computadores, telefonia, sensores, TV).<br />
|| Instalação das redes locais: entender o funcionamento de switches ethernet (comutação de quadros de acordo com endereço MAC, aprendizado de endereços MAC, cuidados ao conectar switches - ex: evitar ''loops'')<br />
|-<br />
|5 <br />
|| Instalação das redes locais<br />
|| Visão geral da rede de distribuição de telefonia <br> Elementos do cabeamento estruturado (conhecer a função e manusear blocos, conectores, cabos ...)<br />
|-<br />
|6<br />
|| Instalar uma rede de distribuição telefônica.<br />
|| Instalar uma rede de distribuição telefônica.<br />
|-<br />
|7 <br />
|| Verificar a instalação da rede de distribuição telefônica <br> Operar uma central telefônica e uma rede Xdsl integrando com a rede de cabeamento estruturado.<br />
|| Operar uma central telefônica e uma rede Xdsl integrando com a rede de cabeamento estruturado.<br />
|-<br />
|8<br />
|| Visão geral da fibra óptica ,<br> cabos e conectores de fibra óptica <br> interligação de equipamentos com fibra óptica.<br />
|| Emendas com fibra e instrumentação óptica.<br />
|-<br />
|9 <br />
|| Instalar link com fibra óptica <br> verificar instalação <br> operar uma rede de telecomunicações no link de fibra<br />
|| Redes HFC e redes de distribuição de CATV <br> conhecer e manipular os elementos da rede HFC.<br />
|-<br />
|10 <br />
|| Instalar uma rede residencial de TV a cabo.<br />
|| Visão geral das redes PON (Palestra?)<br />
|-<br />
|11<br />
|| Visão geral da propagação de ondas e ocupação do espectro eletromagnético <br> Noções básicas e características fundamentais de antenas <br> Tipos de antenas e suas aplicações. <br />
|| Aspectos práticos em radiotransmissão: casamento de impedância, cabos e conectores empregados em altas frequências <br> Realização de conectorização e montagem de um sistema simples de radiotransmissão.<br />
|-<br />
|12 <br />
|| Noções de enlaces de rádio <br> Aspectos de propagação indoor x outdoor <br> Conexões ponto a ponto e multiponto <br> Balanço de potência em enlaces de rádio <br> Alinhamento de antenas <br> Polarização<br />
|| Instalação e teste de um enlace de rádio.<br />
|-<br />
|13<br />
|| Implantação de rede local sem-fio: pontos de acesso e integração com rede local cabeada<br />
|| Implantação de rede local sem-fio: sistemas de distribuição (cabeado e sem-fio)<br />
|-Eletrônica e instrumentação<br />
|14 <br />
|| Implantação de rede local sem-fio: caracterização de canal sem-fio e impedimentos para a comunicação, uso de antenas direcionais, escolha de canais para pontos de acesso<br />
|| Implantação de rede local sem-fio: posicionamento de pontos de acesso para otimizar cobertura e minimizar interferências<br />
|-<br />
|15 <br />
|| Instalação do circuito elétrico para uma estrutura de cabeamento estruturado<br />
|| Nobreak - função, tipos forma de especificação.<br />
|-<br />
|16 <br />
|| Especificação de Nobreak.<br />
|| <br />
|-<br />
|17<br />
|| Dimensionamento de circuitos elétricos.<br />
|| Dimensionamento de circuitos elétricos voltados para infraestrutura de redes locais.<br />
|-<br />
|18<br />
|| Projeto de circuito elétrico para uma estrutura de cabeamento estruturado.<br />
|| Projeto de circuito elétrico para uma estrutura de cabeamento estruturado.<br />
|-<br />
|19 <br />
|| <br />
|| <br />
|-<br />
|20 <br />
|| folga para feriados e erros no dimensionamento da carga horária<br />
|| folga para feriados e erros no dimensionamento da carga horária<br />
|} <br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2016-1 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |22/3 | 3 | Componentes de uma Infraestrutura de Telecom | }}<br />
{{Cl|2 |23/3 | 3 | Componentes de Cabeamento Estruturado | }}<br />
{{Cl|3 |29/3 | 3 | Componentes de Cabeamento Estruturado - Prática de inserção em Patch Panel e RJ-45 Fêmea | }}<br />
{{cronograma-botton |114}}<br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2015-2 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |5/2 | 3 | Componentes de uma Infraestrutura de Telecom | }}<br />
{{Cl|2 |10/2 | 3 | Componentes de Cabeamento Estruturado | }}<br />
{{Cl|3 |12/2 | 3 | Preparação para a primeira parte do projeto integrador – Práticas com componentes IDC | }}<br />
{{Cl|4 |19/2 | 3 | Parte 1 – Cabeamento Horizontal | }}<br />
{{Cl|5 |24/2 | 3 | Parte 1 – Cabeamento Horizontal – finalização e testes | }}<br />
{{Cl|6 |26/2 | 3 | Parte 1 - Identificação e acabamento da Instalação do Cabeamento Horizontal do Projeto | }}<br />
{{Cl|7 |3/3 | 3 | Parte 1 - Cabeamento Horizontal - Finalização Identificação e Apresentação da Entrada de Facilidades | }}<br />
{{Cl|8 |5/3 | 3 | Parte 1 - Interligação do Armário de Telecomunicações a Entrada de Facilidades | }}<br />
{{Cl|9 |10/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Teoria | }}<br />
{{Cl|10 |12/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Finalização da Teoria e exercícios | }}<br />
{{Cl|11 |17/3 | 3 | Parte 2 - Apresentação e início – práticas com blocos BLI | }}<br />
{{Cl|12 |24/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – uso de blocos cook | }}<br />
{{Cl|13 |26/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – Finalização | }}<br />
{{Cl|14 |31/3 | 3 | Revisão da documentação na wiki e Avaliação 1 – Avaliação escrita, teoria e prática da Parte 1 | }}<br />
{{Cl|15 |7/4 | 3 | Parte 2 – Instalação da central telefônica e DSLAM na operadora | }}<br />
{{Cl|16 |9/4 | 3 | Parte 2 – Finalização e testes da Instalação da Rede Telefônica | }}<br />
{{Cl|17 |14/4 | 3 | Parte 2 – Testes de serviços de telefonia e dados com DSLAM conectado à internet | }}<br />
{{Cl|18 |16/4 | 3 | Parte 3 - Apresentação - O serviço FTTH – práticas com fibras ópticas | }}<br />
{{Cl|19 |23/4 | 3 | Palestra: A ser definida sobre a rede externa e interna de operadoras | }}<br />
{{Cl|20 |28/4 | 3 | Parte 3 – Conectorização de fibras | }}<br />
{{Cl|21 |30/4 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|22 |5/5 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|23 |7/5 | 3 | Parte 3 – Finalização, retrabalhos e testes gerais - exercícios | }}<br />
{{Cl|24 |12/5 | 3 | Revisão da documentação na wiki e Avaliação 2 – Avaliação escrita, teoria e prática da Parte 2 e 3 | }}<br />
{{Cl|25 |14/5 | 3 | Parte 4 – Rede HFC | }}<br />
{{Cl|26 |19/5 | 3 | Parte 4 – Rede CATV | }}<br />
{{Cl|27 |21/5 | 3 | Parte 4 – CATV – projeto e medidas | }}<br />
{{Cl|28 |26/5 | 3 | Parte 4 – CFTV – Redes para vídeovigilância | }}<br />
{{Cl|29 |28/5 | 3 | Parte 4 – CFTV – Instalação com câmeras e DVRs | }}<br />
{{Cl|30 |2/6 | 3 | Parte 4 – Instalação e testes finais com câmeras e DVRs | }}<br />
{{Cl|31 |9/6 | 3 | Palestra sobre serviços de operadoras - Redes de serviços e backbone | }}<br />
{{Cl|32 |11/6 | 3 | Parte 5 – Projeto elétrico e fornecimento ininterrupto de energia | }}<br />
{{Cl|33 |16/6 | 3 | Parte 5 – Projeto elétrico e ventilação | }}<br />
{{Cl|34 |18/6 | 3 | Parte 5 - Exercícios projeto elétrico | }}<br />
{{Cl|35 |23/6 | 3 | Parte 5 – Finalização e revisão sobre Projeto Elétrico | }}<br />
{{Cl|36 |25/6 | 3 | Revisão da documentação na wiki e avaliação A3 – parte 4 e 5 | }}<br />
{{Cl|37 |30/6 | 3 | Desmontagem e revisão de conteúdos | }}<br />
{{Cl|38 |2/7 | 3 | Revisão da documentação na wiki , desmontagem e RECUPERAÇÃO FINAL | }}<br />
{{cronograma-botton |114}}<br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2015-1 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |5/2 | 3 | Componentes de uma Infraestrutura de Telecom | }}<br />
{{Cl|2 |10/2 | 3 | Componentes de Cabeamento Estruturado | }}<br />
{{Cl|3 |12/2 | 3 | Preparação para a primeira parte do projeto integrador – Práticas com componentes IDC | }}<br />
{{Cl|4 |19/2 | 3 | Parte 1 – Cabeamento Horizontal | }}<br />
{{Cl|5 |24/2 | 3 | Parte 1 – Cabeamento Horizontal – finalização e testes | }}<br />
{{Cl|6 |26/2 | 3 | Parte 1 - Identificação e acabamento da Instalação do Cabeamento Horizontal do Projeto | }}<br />
{{Cl|7 |3/3 | 3 | Parte 1 - Cabeamento Horizontal - Finalização Identificação e Apresentação da Entrada de Facilidades | }}<br />
{{Cl|8 |5/3 | 3 | Parte 1 - Interligação do Armário de Telecomunicações a Entrada de Facilidades | }}<br />
{{Cl|9 |10/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Teoria | }}<br />
{{Cl|10 |12/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Finalização da Teoria e exercícios | }}<br />
{{Cl|11 |17/3 | 3 | Parte 2 - Apresentação e início – práticas com blocos BLI | }}<br />
{{Cl|12 |24/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – uso de blocos cook | }}<br />
{{Cl|13 |26/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – Finalização | }}<br />
{{Cl|14 |31/3 | 3 | Revisão da documentação na wiki e Avaliação 1 – Avaliação escrita, teoria e prática da Parte 1 | }}<br />
{{Cl|15 |7/4 | 3 | Parte 2 – Instalação da central telefônica e DSLAM na operadora | }}<br />
{{Cl|16 |9/4 | 3 | Parte 2 – Finalização e testes da Instalação da Rede Telefônica | }}<br />
{{Cl|17 |14/4 | 3 | Parte 2 – Testes de serviços de telefonia e dados com DSLAM conectado à internet | }}<br />
{{Cl|18 |16/4 | 3 | Parte 3 - Apresentação - O serviço FTTH – práticas com fibras ópticas | }}<br />
{{Cl|19 |23/4 | 3 | Palestra: A ser definida sobre a rede externa e interna de operadoras | }}<br />
{{Cl|20 |28/4 | 3 | Parte 3 – Conectorização de fibras | }}<br />
{{Cl|21 |30/4 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|22 |5/5 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|23 |7/5 | 3 | Parte 3 – Finalização, retrabalhos e testes gerais - exercícios | }}<br />
{{Cl|24 |12/5 | 3 | Revisão da documentação na wiki e Avaliação 2 – Avaliação escrita, teoria e prática da Parte 2 e 3 | }}<br />
{{Cl|25 |14/5 | 3 | Parte 4 – Rede HFC | }}<br />
{{Cl|26 |19/5 | 3 | Parte 4 – Rede CATV | }}<br />
{{Cl|27 |21/5 | 3 | Parte 4 – CATV – projeto e medidas | }}<br />
{{Cl|28 |26/5 | 3 | Parte 4 – CFTV – Redes para vídeovigilância | }}<br />
{{Cl|29 |28/5 | 3 | Parte 4 – CFTV – Instalação com câmeras e DVRs | }}<br />
{{Cl|30 |2/6 | 3 | Parte 4 – Instalação e testes finais com câmeras e DVRs | }}<br />
{{Cl|31 |9/6 | 3 | Palestra sobre serviços de operadoras - Redes de serviços e backbone | }}<br />
{{Cl|32 |11/6 | 3 | Parte 5 – Projeto elétrico e fornecimento ininterrupto de energia | }}<br />
{{Cl|33 |16/6 | 3 | Parte 5 – Projeto elétrico e ventilação | }}<br />
{{Cl|34 |18/6 | 3 | Parte 5 - Exercícios projeto elétrico | }}<br />
{{Cl|35 |23/6 | 3 | Parte 5 – Finalização e revisão sobre Projeto Elétrico | }}<br />
{{Cl|36 |25/6 | 3 | Revisão da documentação na wiki e avaliação A3 – parte 4 e 5 | }}<br />
{{Cl|37 |30/6 | 3 | Desmontagem e revisão de conteúdos | }}<br />
{{Cl|38 |2/7 | 3 | Revisão da documentação na wiki , desmontagem e RECUPERAÇÃO FINAL | }}<br />
{{cronograma-botton |114}}<br />
<br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2014-2 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |31/7 | 3 | Apresentação da disciplina, noções sobre infraestrutura de telecom, distinção entre LANs, redes de acesso e Cabeamento; | Laboratório de Meios}}<br />
{{Cl|2 |5/8 | 3 | Conceitos sore banda passante de meios de transmissão, elementos passivos de CE e manuseio; | Laboratório de Meios}}<br />
{{Cl|3 |7/8 | 3 | Visão geral de CE, definição de um projeto completo para a disciplina e do cabeamento horizontal (etapa 1), práticas com blocos BLI e IDC; | Laboratório de Meios}}<br />
{{Cl|4 |12/8 | 3 | Prática com blocos IDC, bargoa e patch panels e respectivo acabamento; | Laboratório de Meios}}<br />
{{Cl|5 |14/8 | 3 | Etapa1: Instalação do MUTO ao Patch Panel na sala de equipamentos; | Laboratório de Meios}}<br />
{{Cl|6 |19/8 | 3 | Etapa1: Continuação da instalação do MUTO ao Patch Panel; noções sore identificação da norma EIA/TIA-606; | Laboratório de Meios}}<br />
{{Cl|7 |21/8 | 3 | Etapa1: Testes, identificação e início da documentação; | Laboratório de Meios}}<br />
{{Cl|8 |26/8 | 3 | Etapa1: Retrabalhos, finalização identificação e documentação; | Laboratório de Meios}}<br />
{{Cl|9 |28/8 | 3 | Noções sobre equipamentos ativos de rede: Switches e a tecnologia ethernet, segmentação física e usando VLANs; | Laboratório de Meios}}<br />
{{Cl|10 |2/9 | 3 | Etapa1: Instalação do Patch panel da sala de equipamentos à entrada de facilidades; | Laboratório de Meios}}<br />
{{Cl|11 |4/9 | 3 | Visão geral da rede de distribuição telefônica, apresentação da Etapa 2: integração a rede telefônica; | Laboratório de Meios}}<br />
{{Cl|12 |9/9 | 3 | Etapa 2: Instalação da rede telefônica simulada com PABX da operadora à entrada de facidlidades | Laboratório de Meios}}<br />
{{Cl|13 |11/9 | 3 | Etapa 2: Continuação da Instalação da rede telefônica e testes; | Laboratório de Meios}}<br />
{{Cl|14 |16/9 | 3 | Etapa 2: Integração de um serviço privativo de comunicação de dados usando modens xDSL; | Laboratório de Meios}}<br />
{{Cl|15 |18/9 | 3 | Avaliação 1 (até redes telefônicas); Etapa 2: Integração de um serviço ADSL; | Laboratório de Meios}}<br />
{{Cl|16 |23/9 | 3 | Etapa 2: Integração de um serviço ADSL finalização e testes; | Laboratório de Meios}}<br />
{{Cl|17 |25/9 | 3 | Visão geral sobre a fira óptica: componentes, conectorização e fusão; Práticas com emendas de fibra óptica; | Laboratório de Meios}}<br />
{{Cl|18 |30/9 | 3 | Etapa 3: Instalação de um serviço FTTH; | Laboratório de Meios}}<br />
{{Cl|19 |2/10 | 3 | Etapa 3: Finalização da instalação de um serviço FTTH; testes; | Laboratório de Meios}}<br />
{{Cl|20 |7/10 | 3 | Etapa 3: noções de redes HFC e redes de distribuição CATV, conhecer e manipular componentes; | Laboratório de Meios}}<br />
{{Cl|21 |9/10 | 3 | Etapa 3: Instalar um serviço de TV à cabo; | Laboratório de Meios}}<br />
{{Cl|22 |14/10 | 3 | Etapa 3: Palestra sore PON ou serviço de CATV sobre o CE; | Laboratório de Meios}}<br />
{{Cl|23 |16/10 | 3 | Visão geral de propagação de ondas, ocupação do espectro e antenas; | Laboratório de Meios}}<br />
{{Cl|24 |21/10 | 3 | Características de componentes para radiotransmissão; práticas e conectorização; | Laboratório de Meios}}<br />
{{Cl|25 |23/10 | 3 | Avaliação 2 (até CATV); | Laboratório de Meios}}<br />
{{Cl|26 |30/10 | 3 | Etapa 4: Noções de enlace de rádio e instalação de um enlace respeitando aspectos de balanço de potência, alinhamento e polarização; | Laboratório de Meios}}<br />
{{Cl|27 |4/11 | 3 | Etapa 4: Continuação da instalação de enlace de rádio outdoor; | Laboratório de Meios}}<br />
{{Cl|28 |6/11 | 3 | Etapa 4: Implantação de uma rede sem fio com AP e integração ao CE; | Laboratório de Meios}}<br />
{{Cl|29 |11/11 | 3 | Etapa 4: Continuação da implantação da rede wifi; | Laboratório de Meios}}<br />
{{Cl|30 |13/11 | 3 | Etapa 4: Sistema de distribuição WDS e cabeado; site Survey; | Laboratório de Meios}}<br />
{{Cl|31 |18/11 | 3 | Etapa 4: Uso de antenas direcionais, coberturas otimizadas; | Laboratório de Meios}}<br />
{{Cl|32 |20/11 | 3 | Etapa 5: Dimensionamento de circuitos elétricos para LANs e CE; | Laboratório de Meios}}<br />
{{Cl|33 |25/11 | 3 | Etapa 5: Dimensionamento de circuitos elétricos para LANs e CE; | Laboratório de Meios}}<br />
{{Cl|34 |27/11 | 3 | Etapa 5: Dimensionamento de Nobreak; tipos; | Laboratório de Meios}}<br />
{{Cl|35 |2/12 | 3 | Etapa 5: Projeto de circuito elétrico para a estrutura de CE completo; | Laboratório de Meios}}<br />
{{Cl|36 |4/12 | 3 | Avaliação 3 (até projeto Elétrico); | Laboratório de Meios}}<br />
{{Cl|37 |9/12 | 3 | Recuperação de práticas e conteúdos; desmonte da infraestrutura e reintegração ao estoque; | Laboratório de Meios}}<br />
{{Cl|38 |11/12 | 3 | Recuperação das avaliações; | Laboratório de Meios}}<br />
{{cronograma-botton |114}}<br />
<br />
{{collapse bottom}}<br />
<br />
==Material de Aula==<br />
{{Professor|'''2019-1'''| [[PJI2-2019-1|'''DIÁRIO DE AULAS''']] - ([https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos]}}<br />
{{Professor|'''2018-2'''| [[PJI2-2018-2|'''DIÁRIO DE AULAS''']] - ([https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos] / [[Mayara de Sousa]])}}<br />
{{Professor|'''2018-1'''| [[PJI2-2018-1|'''DIÁRIO DE AULAS''']] - ([https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos] / [[Mayara de Sousa]])}}<br />
{{Professor|'''2017-2'''| [[PJI2-2017-2|'''DIÁRIO DE AULAS''']] - ([[Marcelo Maia Sobral]] / [https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos])}}<br />
{{Professor|'''2017-1'''| [[PJI2-2017-1|'''DIÁRIO DE AULAS''']] - ([[Marcelo Maia Sobral]] / [[Simara Sonaglio]])}}<br />
<br />
=== Material de aula da antiga disciplina de Projetos II (atual Projetos I) ===<br />
{{Professor|'''2016-2'''| [[Curso Técnico em Telecomunicações - Projeto Integrador I|'''DIÁRIO DE AULAS''']] - ([[Cleber Jorge Amaral]] e [[Juliano de Souza]])}}<br />
{{Professor|'''2016-1'''| [[PJI1102 2016-1|'''DIÁRIO DE AULAS''']] - ([[Juliano de Souza]])}}<br />
{{Professor|'''2015-2'''| [[PJI1102 2015-2|'''DIÁRIO DE AULAS''']] - ([[Jorge Henrique B. Casagrande]])}}<br />
{{Professor|'''2015-1'''| [[PJI1102 2015-1|'''DIÁRIO DE AULAS''']] - ([[Jorge Henrique B. Casagrande]] e [[Francisco de Assis]])}}<br />
{{Professor|'''2014-2'''| [[PJI1102 2014-2|'''DIÁRIO DE AULAS''']] - ([[Jorge Henrique B. Casagrande]] e [[Francisco de Assis]])}}<br />
{{VOLTAR |Curso Técnico em Telecomunicações - Páginas das Disciplinas}}<br />
{{TECTELECO}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Curso_T%C3%A9cnico_em_Telecomunica%C3%A7%C3%B5es_-_Projeto_Integrador_II_(PJI2)&diff=154065Curso Técnico em Telecomunicações - Projeto Integrador II (PJI2)2019-02-12T19:50:16Z<p>Ederson.luiz: /* Material de Aula */</p>
<hr />
<div>==Documentação==<br />
<br />
*[[PJI2-TecTel|Carga horária, Ementas, Bibliografia]]<br />
<br />
*[[PJI2-TecTel (Plano de Ensino) | Plano de Ensino]]<br />
<br />
==Objetivos e Cronograma de Atividades Geral ==<br />
<br />
{{collapse top| bg=lightpurple | expandir=true | Cronograma de Atividades 2017-1}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |23/3 | 4 | Apresentação da disciplina | Laboratório de Redes}}<br />
{{Cl|2 |28/3 | 3 | Conceitos básicos e início do projeto 1 | Laboratório de Redes}}<br />
{{Cl|3 |30/3 | 4 | Projeto 1: escolhendo e instalando o centro de midia; sistema operacional; introdução ao Linux | Laboratório de Redes}}<br />
{{Cl|4 |4/4 | 3 | Projeto 1: incluindo fontes de midia locais; arquivos e diretórios | Laboratório de Redes}}<br />
{{Cl|5 |6/4 | 4 | Projeto 1: transmitiindo a midia através da rede; comunicação de dados | Laboratório de Redes}}<br />
{{Cl|6 |11/4 | 3 | Projeto 1: transmitiindo a midia através da rede; comunicação de dados | Laboratório de Redes}}<br />
{{Cl|7 |13/4 | 4 | Projeto 1: continuação | Laboratório de Redes}}<br />
{{Cl|8 |18/4 | 3 | Projeto 1: continuação | Laboratório de Redes}}<br />
{{Cl|9 |20/4 | 4 | Projeto 1: apresentação pelas equipes; história das telecomunicações | Laboratório de Redes}}<br />
{{Cl|10 |25/4 | 3 | Projeto 2: implantando uma pequena rede local | Laboratório de Redes}}<br />
{{Cl|11 |27/4 | 4 | Projeto 2: instalação do sistema operacional em um computador | Laboratório de Redes}}<br />
{{Cl|12 |2/5 | 3 | Projeto 2: uso do sistema operacional; entendendo como o sistema operacional inicia (boot) | Laboratório de Redes}}<br />
{{Cl|13 |4/5 | 4 | Projeto 2: uso do sistema operacional; linha de comando: arquivos e diretórios | Laboratório de Redes}}<br />
{{Cl|14 |9/5 | 3 | Projeto 2: uso do sistema operacional; linha de comando: arquivos e diretórios; permissões | Laboratório de Redes}}<br />
{{Cl|15 |11/5 | 4 | Projeto 2: protegendo recursos no sistema operacional: usuários e grupos; linha de comando: compactadores | Laboratório de Redes}}<br />
{{Cl|16 |16/5 | 3 | Projeto 2: uso do sistema operacional; linha de comando: processos, entrada e saída padrão | Laboratório de Redes}}<br />
{{Cl|17 |18/5 | 4 | Projeto 2: uso do sistema operacional; linha de comando: entrada e saída padrão; instalação de software | Laboratório de Redes}}<br />
{{Cl|18 |23/5 | 3 | Projeto 2: configuração do sistema operacional para usar a rede; interfaces de rede e endereços IP | Laboratório de Redes}}<br />
{{Cl|19 |25/5 | 3 | Projeto 2: configuração do sistema operacional para usar a rede; rota default e rotas estáticas | Laboratório de Redes}}<br />
{{Cl|20 |30/5 | 3 | Projeto 2: revisão dos requisitos para adicionar um computador à rede | Laboratório de Redes}}<br />
{{Cl|21 |1/6 | 3 | Projeto 2: configuração automática de rede (dhcp); continuação do projeto | Laboratório de Redes}}<br />
{{Cl|22 |6/6 | 3 | Projeto 2: implantação da rede local: switches e ponto de acesso Wifi | Laboratório de Redes}}<br />
{{Cl|23 |8/6 | 3 | Projeto 2: implantação da rede local: switches e ponto de acesso Wifi | Laboratório de Redes}}<br />
{{Cl|24 |13/6 | 3 | Projeto 2: implantação do acesso a Internet: enlace ADSL | Laboratório de Redes}}<br />
{{Cl|25 |15/6 | 3 | Projeto 2: revisão sobre a implantação da rede do projeto; discussão sobre erros comuns de instalação | Laboratório de Redes}}<br />
{{Cl|26 |20/6 | 3 | Projeto 2: acesso externo ao computador da rede local com SSH e outros serviços | Laboratório de Redes}}<br />
{{Cl|27 |22/6 | 3 | Projeto 2: definição das características finais do projeto pelas equipes | Laboratório de Redes}}<br />
{{Cl|28 |27/6 | 3 | Projeto 2: conclusão e apresentação pelas equipes | Laboratório de Redes}}<br />
{{Cl|29 |29/6 | 3 | Projeto 3: apresentação; sistemas de telefonia; implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|30 |4/7 | 3 | Projeto 3: apresentação; sistemas de telefonia; implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|31 |6/7 | 3 | Projeto 3: implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|32 |11/7 | 3 | Projeto 3: implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|33 |13/7 | 3 | Projeto 3: implantação de sua própria central telefônica | Laboratório de Redes}}<br />
{{Cl|34 |18/7 | 3 | Projeto 3: loop local e o enlace ADSL | Laboratório de Redes}}<br />
{{Cl|35 |20/7 | 3 | Projeto 3: rede telefônica convencional e telefonia IP; VoIP | Laboratório de Redes}}<br />
{{Cl|36 |25/7 | 3 | Projeto 3: conclusão e apresentação pelas equipes | Laboratório de Redes}}<br />
{{Cl|37 |27/7 | 3 | Avaliações finais | Laboratório de Redes}}<br />
{{cronograma-botton |120}}<br />
{{collapse bottom}}<br />
<br />
=== Cronogramas da antiga disciplina de Projetos II (atual Projetos I) ===<br />
<br />
{{collapse top| bg=lightgreen | expandir=true | Objetivos e Cronograma de Atividades Geral}}<br />
<br />
<!-- <br />
PROFESSOR: COPIAR TODO ESSE BLOCO PARA CRIAR NOVOS CRONOGRAMAS. O COMENTÁRIO ABAIXO DEVE SER RETIRADO PARA A CRIAÇÃO DE NOVAS LINHAS NA TABELA<br />
--><br />
<br />
<!--<br />
{{Cronograma-top}}<br />
{{Cl|1 |12/04 | 4 | Apresentação da Disciplina | Aula expositiva}}<br />
{{cronograma-botton-int |36}}<br />
--><br />
<br />
Objetivos:<br />
* Conhecer as normas para instalação do cabeamento estruturado;<br />
* Conhecer os elementos do cabeamento estruturado.<br />
* Instalar um cabeamento estruturado;<br />
* Conhecer o padrão da infraestrutura das redes de distribuição telefônica;<br />
* Conhecer os elementos da rede de distribuição de telefonia.<br />
* Instalar redes de distribuição de telefonia.<br />
* Conhecer a infraestrutura de redes HFC<br />
* Conhecer elementos da rede HFC.<br />
* Conhecer o funcionamento básica de um enlace de radiotransmissão (antena X comprimento de onda; antena X ganho; atenuação, direcionamento de antes no espaço livre)<br />
* Instalar um radio enlace<br />
* Conhecer a norma brasileira para instalações elétricas.<br />
* Conhecer a função e os tipos de nobreak<br />
* Instalar a infraestrutura de energia elétrica de uma rede local.<br />
<br />
Atividades:<br />
* Instalação de cabeamento estruturado;<br />
* Uso da instalação do cabeamento estruturado para rede de computadores, telefonia, sensores e TV;<br />
* Instalação de rede externa de telefonia;<br />
* Uso da rede instalada para operação de uma rede telefônica e acesso xDSL;<br />
* Realizar conexões e emendas em cabos coaxias e fibras ópticas;<br />
* Dimensionamento de um circuito de alimentação elétrica para um cabeamento estruturado.<br />
* Instalação da infraestrutura de energia elétrica de uma rede local.<br />
<br />
Atividades em 2 dias por semana / 20 semanas por semestre;<br />
<br />
{| border="1" cellpadding="2"<br />
!Semana<br />
!Aula 1<br />
!Aula 2<br />
|-<br />
|1 <br />
|| Apresentação do Projeto Integrador <br> Diferenciação de redes local e de acesso <br> Introdução ao cabeamento estruturado.<br />
|| Elementos do cabeamento estruturado (conhecer a função e manusear blocos, conectores, cabos ...). <br />
|-<br />
|2 <br />
|| Elementos do cabeamento estruturado <br> visão geral do cabeamento (distribuidores, backbones, cabeamento horizontal, área de trabalho <br> definição da estrutura a ser instalada. <br />
|| Instalação do cabeamento estruturado.<br />
|-<br />
|3 <br />
|| Instalação do cabeamento estruturado.<br />
|| Instalação do cabeamento estruturado.<br />
|-<br />
|4<br />
|| Verificação da instalação e da identificação (testes e relatório) <br> Instalação das redes locais (computadores, telefonia, sensores, TV).<br />
|| Instalação das redes locais: entender o funcionamento de switches ethernet (comutação de quadros de acordo com endereço MAC, aprendizado de endereços MAC, cuidados ao conectar switches - ex: evitar ''loops'')<br />
|-<br />
|5 <br />
|| Instalação das redes locais<br />
|| Visão geral da rede de distribuição de telefonia <br> Elementos do cabeamento estruturado (conhecer a função e manusear blocos, conectores, cabos ...)<br />
|-<br />
|6<br />
|| Instalar uma rede de distribuição telefônica.<br />
|| Instalar uma rede de distribuição telefônica.<br />
|-<br />
|7 <br />
|| Verificar a instalação da rede de distribuição telefônica <br> Operar uma central telefônica e uma rede Xdsl integrando com a rede de cabeamento estruturado.<br />
|| Operar uma central telefônica e uma rede Xdsl integrando com a rede de cabeamento estruturado.<br />
|-<br />
|8<br />
|| Visão geral da fibra óptica ,<br> cabos e conectores de fibra óptica <br> interligação de equipamentos com fibra óptica.<br />
|| Emendas com fibra e instrumentação óptica.<br />
|-<br />
|9 <br />
|| Instalar link com fibra óptica <br> verificar instalação <br> operar uma rede de telecomunicações no link de fibra<br />
|| Redes HFC e redes de distribuição de CATV <br> conhecer e manipular os elementos da rede HFC.<br />
|-<br />
|10 <br />
|| Instalar uma rede residencial de TV a cabo.<br />
|| Visão geral das redes PON (Palestra?)<br />
|-<br />
|11<br />
|| Visão geral da propagação de ondas e ocupação do espectro eletromagnético <br> Noções básicas e características fundamentais de antenas <br> Tipos de antenas e suas aplicações. <br />
|| Aspectos práticos em radiotransmissão: casamento de impedância, cabos e conectores empregados em altas frequências <br> Realização de conectorização e montagem de um sistema simples de radiotransmissão.<br />
|-<br />
|12 <br />
|| Noções de enlaces de rádio <br> Aspectos de propagação indoor x outdoor <br> Conexões ponto a ponto e multiponto <br> Balanço de potência em enlaces de rádio <br> Alinhamento de antenas <br> Polarização<br />
|| Instalação e teste de um enlace de rádio.<br />
|-<br />
|13<br />
|| Implantação de rede local sem-fio: pontos de acesso e integração com rede local cabeada<br />
|| Implantação de rede local sem-fio: sistemas de distribuição (cabeado e sem-fio)<br />
|-Eletrônica e instrumentação<br />
|14 <br />
|| Implantação de rede local sem-fio: caracterização de canal sem-fio e impedimentos para a comunicação, uso de antenas direcionais, escolha de canais para pontos de acesso<br />
|| Implantação de rede local sem-fio: posicionamento de pontos de acesso para otimizar cobertura e minimizar interferências<br />
|-<br />
|15 <br />
|| Instalação do circuito elétrico para uma estrutura de cabeamento estruturado<br />
|| Nobreak - função, tipos forma de especificação.<br />
|-<br />
|16 <br />
|| Especificação de Nobreak.<br />
|| <br />
|-<br />
|17<br />
|| Dimensionamento de circuitos elétricos.<br />
|| Dimensionamento de circuitos elétricos voltados para infraestrutura de redes locais.<br />
|-<br />
|18<br />
|| Projeto de circuito elétrico para uma estrutura de cabeamento estruturado.<br />
|| Projeto de circuito elétrico para uma estrutura de cabeamento estruturado.<br />
|-<br />
|19 <br />
|| <br />
|| <br />
|-<br />
|20 <br />
|| folga para feriados e erros no dimensionamento da carga horária<br />
|| folga para feriados e erros no dimensionamento da carga horária<br />
|} <br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2016-1 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |22/3 | 3 | Componentes de uma Infraestrutura de Telecom | }}<br />
{{Cl|2 |23/3 | 3 | Componentes de Cabeamento Estruturado | }}<br />
{{Cl|3 |29/3 | 3 | Componentes de Cabeamento Estruturado - Prática de inserção em Patch Panel e RJ-45 Fêmea | }}<br />
{{cronograma-botton |114}}<br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2015-2 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |5/2 | 3 | Componentes de uma Infraestrutura de Telecom | }}<br />
{{Cl|2 |10/2 | 3 | Componentes de Cabeamento Estruturado | }}<br />
{{Cl|3 |12/2 | 3 | Preparação para a primeira parte do projeto integrador – Práticas com componentes IDC | }}<br />
{{Cl|4 |19/2 | 3 | Parte 1 – Cabeamento Horizontal | }}<br />
{{Cl|5 |24/2 | 3 | Parte 1 – Cabeamento Horizontal – finalização e testes | }}<br />
{{Cl|6 |26/2 | 3 | Parte 1 - Identificação e acabamento da Instalação do Cabeamento Horizontal do Projeto | }}<br />
{{Cl|7 |3/3 | 3 | Parte 1 - Cabeamento Horizontal - Finalização Identificação e Apresentação da Entrada de Facilidades | }}<br />
{{Cl|8 |5/3 | 3 | Parte 1 - Interligação do Armário de Telecomunicações a Entrada de Facilidades | }}<br />
{{Cl|9 |10/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Teoria | }}<br />
{{Cl|10 |12/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Finalização da Teoria e exercícios | }}<br />
{{Cl|11 |17/3 | 3 | Parte 2 - Apresentação e início – práticas com blocos BLI | }}<br />
{{Cl|12 |24/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – uso de blocos cook | }}<br />
{{Cl|13 |26/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – Finalização | }}<br />
{{Cl|14 |31/3 | 3 | Revisão da documentação na wiki e Avaliação 1 – Avaliação escrita, teoria e prática da Parte 1 | }}<br />
{{Cl|15 |7/4 | 3 | Parte 2 – Instalação da central telefônica e DSLAM na operadora | }}<br />
{{Cl|16 |9/4 | 3 | Parte 2 – Finalização e testes da Instalação da Rede Telefônica | }}<br />
{{Cl|17 |14/4 | 3 | Parte 2 – Testes de serviços de telefonia e dados com DSLAM conectado à internet | }}<br />
{{Cl|18 |16/4 | 3 | Parte 3 - Apresentação - O serviço FTTH – práticas com fibras ópticas | }}<br />
{{Cl|19 |23/4 | 3 | Palestra: A ser definida sobre a rede externa e interna de operadoras | }}<br />
{{Cl|20 |28/4 | 3 | Parte 3 – Conectorização de fibras | }}<br />
{{Cl|21 |30/4 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|22 |5/5 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|23 |7/5 | 3 | Parte 3 – Finalização, retrabalhos e testes gerais - exercícios | }}<br />
{{Cl|24 |12/5 | 3 | Revisão da documentação na wiki e Avaliação 2 – Avaliação escrita, teoria e prática da Parte 2 e 3 | }}<br />
{{Cl|25 |14/5 | 3 | Parte 4 – Rede HFC | }}<br />
{{Cl|26 |19/5 | 3 | Parte 4 – Rede CATV | }}<br />
{{Cl|27 |21/5 | 3 | Parte 4 – CATV – projeto e medidas | }}<br />
{{Cl|28 |26/5 | 3 | Parte 4 – CFTV – Redes para vídeovigilância | }}<br />
{{Cl|29 |28/5 | 3 | Parte 4 – CFTV – Instalação com câmeras e DVRs | }}<br />
{{Cl|30 |2/6 | 3 | Parte 4 – Instalação e testes finais com câmeras e DVRs | }}<br />
{{Cl|31 |9/6 | 3 | Palestra sobre serviços de operadoras - Redes de serviços e backbone | }}<br />
{{Cl|32 |11/6 | 3 | Parte 5 – Projeto elétrico e fornecimento ininterrupto de energia | }}<br />
{{Cl|33 |16/6 | 3 | Parte 5 – Projeto elétrico e ventilação | }}<br />
{{Cl|34 |18/6 | 3 | Parte 5 - Exercícios projeto elétrico | }}<br />
{{Cl|35 |23/6 | 3 | Parte 5 – Finalização e revisão sobre Projeto Elétrico | }}<br />
{{Cl|36 |25/6 | 3 | Revisão da documentação na wiki e avaliação A3 – parte 4 e 5 | }}<br />
{{Cl|37 |30/6 | 3 | Desmontagem e revisão de conteúdos | }}<br />
{{Cl|38 |2/7 | 3 | Revisão da documentação na wiki , desmontagem e RECUPERAÇÃO FINAL | }}<br />
{{cronograma-botton |114}}<br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2015-1 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |5/2 | 3 | Componentes de uma Infraestrutura de Telecom | }}<br />
{{Cl|2 |10/2 | 3 | Componentes de Cabeamento Estruturado | }}<br />
{{Cl|3 |12/2 | 3 | Preparação para a primeira parte do projeto integrador – Práticas com componentes IDC | }}<br />
{{Cl|4 |19/2 | 3 | Parte 1 – Cabeamento Horizontal | }}<br />
{{Cl|5 |24/2 | 3 | Parte 1 – Cabeamento Horizontal – finalização e testes | }}<br />
{{Cl|6 |26/2 | 3 | Parte 1 - Identificação e acabamento da Instalação do Cabeamento Horizontal do Projeto | }}<br />
{{Cl|7 |3/3 | 3 | Parte 1 - Cabeamento Horizontal - Finalização Identificação e Apresentação da Entrada de Facilidades | }}<br />
{{Cl|8 |5/3 | 3 | Parte 1 - Interligação do Armário de Telecomunicações a Entrada de Facilidades | }}<br />
{{Cl|9 |10/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Teoria | }}<br />
{{Cl|10 |12/3 | 3 | Parte 1 - Equipamentos Ativos de Rede: SWITCHES – Finalização da Teoria e exercícios | }}<br />
{{Cl|11 |17/3 | 3 | Parte 2 - Apresentação e início – práticas com blocos BLI | }}<br />
{{Cl|12 |24/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – uso de blocos cook | }}<br />
{{Cl|13 |26/3 | 3 | Parte 2 - Instalação da Rede Telefônica - Rede Externa – Finalização | }}<br />
{{Cl|14 |31/3 | 3 | Revisão da documentação na wiki e Avaliação 1 – Avaliação escrita, teoria e prática da Parte 1 | }}<br />
{{Cl|15 |7/4 | 3 | Parte 2 – Instalação da central telefônica e DSLAM na operadora | }}<br />
{{Cl|16 |9/4 | 3 | Parte 2 – Finalização e testes da Instalação da Rede Telefônica | }}<br />
{{Cl|17 |14/4 | 3 | Parte 2 – Testes de serviços de telefonia e dados com DSLAM conectado à internet | }}<br />
{{Cl|18 |16/4 | 3 | Parte 3 - Apresentação - O serviço FTTH – práticas com fibras ópticas | }}<br />
{{Cl|19 |23/4 | 3 | Palestra: A ser definida sobre a rede externa e interna de operadoras | }}<br />
{{Cl|20 |28/4 | 3 | Parte 3 – Conectorização de fibras | }}<br />
{{Cl|21 |30/4 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|22 |5/5 | 3 | Parte 3 – Instalação e passagem de cabos Opticos até o cliente | }}<br />
{{Cl|23 |7/5 | 3 | Parte 3 – Finalização, retrabalhos e testes gerais - exercícios | }}<br />
{{Cl|24 |12/5 | 3 | Revisão da documentação na wiki e Avaliação 2 – Avaliação escrita, teoria e prática da Parte 2 e 3 | }}<br />
{{Cl|25 |14/5 | 3 | Parte 4 – Rede HFC | }}<br />
{{Cl|26 |19/5 | 3 | Parte 4 – Rede CATV | }}<br />
{{Cl|27 |21/5 | 3 | Parte 4 – CATV – projeto e medidas | }}<br />
{{Cl|28 |26/5 | 3 | Parte 4 – CFTV – Redes para vídeovigilância | }}<br />
{{Cl|29 |28/5 | 3 | Parte 4 – CFTV – Instalação com câmeras e DVRs | }}<br />
{{Cl|30 |2/6 | 3 | Parte 4 – Instalação e testes finais com câmeras e DVRs | }}<br />
{{Cl|31 |9/6 | 3 | Palestra sobre serviços de operadoras - Redes de serviços e backbone | }}<br />
{{Cl|32 |11/6 | 3 | Parte 5 – Projeto elétrico e fornecimento ininterrupto de energia | }}<br />
{{Cl|33 |16/6 | 3 | Parte 5 – Projeto elétrico e ventilação | }}<br />
{{Cl|34 |18/6 | 3 | Parte 5 - Exercícios projeto elétrico | }}<br />
{{Cl|35 |23/6 | 3 | Parte 5 – Finalização e revisão sobre Projeto Elétrico | }}<br />
{{Cl|36 |25/6 | 3 | Revisão da documentação na wiki e avaliação A3 – parte 4 e 5 | }}<br />
{{Cl|37 |30/6 | 3 | Desmontagem e revisão de conteúdos | }}<br />
{{Cl|38 |2/7 | 3 | Revisão da documentação na wiki , desmontagem e RECUPERAÇÃO FINAL | }}<br />
{{cronograma-botton |114}}<br />
<br />
{{collapse bottom}}<br />
<br />
{{collapse top| bg=lightblue | expandir=true |Semestre 2014-2 - Cronograma de Atividades detalhado}}<br />
{{Cronograma-top}}<br />
{{Cl|1 |31/7 | 3 | Apresentação da disciplina, noções sobre infraestrutura de telecom, distinção entre LANs, redes de acesso e Cabeamento; | Laboratório de Meios}}<br />
{{Cl|2 |5/8 | 3 | Conceitos sore banda passante de meios de transmissão, elementos passivos de CE e manuseio; | Laboratório de Meios}}<br />
{{Cl|3 |7/8 | 3 | Visão geral de CE, definição de um projeto completo para a disciplina e do cabeamento horizontal (etapa 1), práticas com blocos BLI e IDC; | Laboratório de Meios}}<br />
{{Cl|4 |12/8 | 3 | Prática com blocos IDC, bargoa e patch panels e respectivo acabamento; | Laboratório de Meios}}<br />
{{Cl|5 |14/8 | 3 | Etapa1: Instalação do MUTO ao Patch Panel na sala de equipamentos; | Laboratório de Meios}}<br />
{{Cl|6 |19/8 | 3 | Etapa1: Continuação da instalação do MUTO ao Patch Panel; noções sore identificação da norma EIA/TIA-606; | Laboratório de Meios}}<br />
{{Cl|7 |21/8 | 3 | Etapa1: Testes, identificação e início da documentação; | Laboratório de Meios}}<br />
{{Cl|8 |26/8 | 3 | Etapa1: Retrabalhos, finalização identificação e documentação; | Laboratório de Meios}}<br />
{{Cl|9 |28/8 | 3 | Noções sobre equipamentos ativos de rede: Switches e a tecnologia ethernet, segmentação física e usando VLANs; | Laboratório de Meios}}<br />
{{Cl|10 |2/9 | 3 | Etapa1: Instalação do Patch panel da sala de equipamentos à entrada de facilidades; | Laboratório de Meios}}<br />
{{Cl|11 |4/9 | 3 | Visão geral da rede de distribuição telefônica, apresentação da Etapa 2: integração a rede telefônica; | Laboratório de Meios}}<br />
{{Cl|12 |9/9 | 3 | Etapa 2: Instalação da rede telefônica simulada com PABX da operadora à entrada de facidlidades | Laboratório de Meios}}<br />
{{Cl|13 |11/9 | 3 | Etapa 2: Continuação da Instalação da rede telefônica e testes; | Laboratório de Meios}}<br />
{{Cl|14 |16/9 | 3 | Etapa 2: Integração de um serviço privativo de comunicação de dados usando modens xDSL; | Laboratório de Meios}}<br />
{{Cl|15 |18/9 | 3 | Avaliação 1 (até redes telefônicas); Etapa 2: Integração de um serviço ADSL; | Laboratório de Meios}}<br />
{{Cl|16 |23/9 | 3 | Etapa 2: Integração de um serviço ADSL finalização e testes; | Laboratório de Meios}}<br />
{{Cl|17 |25/9 | 3 | Visão geral sobre a fira óptica: componentes, conectorização e fusão; Práticas com emendas de fibra óptica; | Laboratório de Meios}}<br />
{{Cl|18 |30/9 | 3 | Etapa 3: Instalação de um serviço FTTH; | Laboratório de Meios}}<br />
{{Cl|19 |2/10 | 3 | Etapa 3: Finalização da instalação de um serviço FTTH; testes; | Laboratório de Meios}}<br />
{{Cl|20 |7/10 | 3 | Etapa 3: noções de redes HFC e redes de distribuição CATV, conhecer e manipular componentes; | Laboratório de Meios}}<br />
{{Cl|21 |9/10 | 3 | Etapa 3: Instalar um serviço de TV à cabo; | Laboratório de Meios}}<br />
{{Cl|22 |14/10 | 3 | Etapa 3: Palestra sore PON ou serviço de CATV sobre o CE; | Laboratório de Meios}}<br />
{{Cl|23 |16/10 | 3 | Visão geral de propagação de ondas, ocupação do espectro e antenas; | Laboratório de Meios}}<br />
{{Cl|24 |21/10 | 3 | Características de componentes para radiotransmissão; práticas e conectorização; | Laboratório de Meios}}<br />
{{Cl|25 |23/10 | 3 | Avaliação 2 (até CATV); | Laboratório de Meios}}<br />
{{Cl|26 |30/10 | 3 | Etapa 4: Noções de enlace de rádio e instalação de um enlace respeitando aspectos de balanço de potência, alinhamento e polarização; | Laboratório de Meios}}<br />
{{Cl|27 |4/11 | 3 | Etapa 4: Continuação da instalação de enlace de rádio outdoor; | Laboratório de Meios}}<br />
{{Cl|28 |6/11 | 3 | Etapa 4: Implantação de uma rede sem fio com AP e integração ao CE; | Laboratório de Meios}}<br />
{{Cl|29 |11/11 | 3 | Etapa 4: Continuação da implantação da rede wifi; | Laboratório de Meios}}<br />
{{Cl|30 |13/11 | 3 | Etapa 4: Sistema de distribuição WDS e cabeado; site Survey; | Laboratório de Meios}}<br />
{{Cl|31 |18/11 | 3 | Etapa 4: Uso de antenas direcionais, coberturas otimizadas; | Laboratório de Meios}}<br />
{{Cl|32 |20/11 | 3 | Etapa 5: Dimensionamento de circuitos elétricos para LANs e CE; | Laboratório de Meios}}<br />
{{Cl|33 |25/11 | 3 | Etapa 5: Dimensionamento de circuitos elétricos para LANs e CE; | Laboratório de Meios}}<br />
{{Cl|34 |27/11 | 3 | Etapa 5: Dimensionamento de Nobreak; tipos; | Laboratório de Meios}}<br />
{{Cl|35 |2/12 | 3 | Etapa 5: Projeto de circuito elétrico para a estrutura de CE completo; | Laboratório de Meios}}<br />
{{Cl|36 |4/12 | 3 | Avaliação 3 (até projeto Elétrico); | Laboratório de Meios}}<br />
{{Cl|37 |9/12 | 3 | Recuperação de práticas e conteúdos; desmonte da infraestrutura e reintegração ao estoque; | Laboratório de Meios}}<br />
{{Cl|38 |11/12 | 3 | Recuperação das avaliações; | Laboratório de Meios}}<br />
{{cronograma-botton |114}}<br />
<br />
{{collapse bottom}}<br />
<br />
==Material de Aula==<br />
{{Professor|'''2019-1'''| [[PJI2-2019-1|'''DIÁRIO DE AULAS''']] - ([https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos]<br />
{{Professor|'''2018-2'''| [[PJI2-2018-2|'''DIÁRIO DE AULAS''']] - ([https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos] / [[Mayara de Sousa]])}}<br />
{{Professor|'''2018-1'''| [[PJI2-2018-1|'''DIÁRIO DE AULAS''']] - ([https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos] / [[Mayara de Sousa]])}}<br />
{{Professor|'''2017-2'''| [[PJI2-2017-2|'''DIÁRIO DE AULAS''']] - ([[Marcelo Maia Sobral]] / [https://wiki.sj.ifsc.edu.br/index.php/Usu%C3%A1rio:Ederson.luiz Ederson L. S. Santos])}}<br />
{{Professor|'''2017-1'''| [[PJI2-2017-1|'''DIÁRIO DE AULAS''']] - ([[Marcelo Maia Sobral]] / [[Simara Sonaglio]])}}<br />
<br />
=== Material de aula da antiga disciplina de Projetos II (atual Projetos I) ===<br />
{{Professor|'''2016-2'''| [[Curso Técnico em Telecomunicações - Projeto Integrador I|'''DIÁRIO DE AULAS''']] - ([[Cleber Jorge Amaral]] e [[Juliano de Souza]])}}<br />
{{Professor|'''2016-1'''| [[PJI1102 2016-1|'''DIÁRIO DE AULAS''']] - ([[Juliano de Souza]])}}<br />
{{Professor|'''2015-2'''| [[PJI1102 2015-2|'''DIÁRIO DE AULAS''']] - ([[Jorge Henrique B. Casagrande]])}}<br />
{{Professor|'''2015-1'''| [[PJI1102 2015-1|'''DIÁRIO DE AULAS''']] - ([[Jorge Henrique B. Casagrande]] e [[Francisco de Assis]])}}<br />
{{Professor|'''2014-2'''| [[PJI1102 2014-2|'''DIÁRIO DE AULAS''']] - ([[Jorge Henrique B. Casagrande]] e [[Francisco de Assis]])}}<br />
{{VOLTAR |Curso Técnico em Telecomunicações - Páginas das Disciplinas}}<br />
{{TECTELECO}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Aloca%C3%A7%C3%A3o_das_m%C3%A1quinas_virtuais_dos_laborat%C3%B3rios&diff=153987Alocação das máquinas virtuais dos laboratórios2019-02-11T22:48:40Z<p>Ederson.luiz: /* Programação */</p>
<hr />
<div>Está página foi criada para organizar o uso das VMs nos laboratórios do Câmpus São José do IFSC.<br />
<br />
É simples:<br />
No começo do semestre o professor edita essa página colocando seu nome e disciplina ao lado da maquina que irá usar no laboratório onde suas aulas estão alocadas. <br />
<br />
Importante: No primeiro dia de aula no laboratório combine com os alunos uma senha e peça para eles trocarem (ou o próprio professor pode trocar): <br />
<code>passwd aluno</syntaxhighlight><br />
<br />
OBS 1: Está ocorrendo um erro com a interface de rede nas máquinas virtuais, por algum motivo não está subindo a eth0 e sim a virbr0. Para consertar isso basta digitar os seguintes comandos:<br />
virsh net-destroy default<br />
virsh net-undefine default<br />
service libvirt-bin restart<br />
Fonte: http://www.cyberciti.biz/faq/linux-kvm-disable-virbr0-nat-interface/<br />
<br />
OBS 2: Na máquina do professor, a interface padrão de configuração da rede das máquinas virtuais é a eth0. Porém a interface da rede interna é a eth1. No redes 1 a configuração está correta.<br />
<br />
==Redes de Computadores==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
==Sistemas Digitais==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
==Programação==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| PJI4 Tele Subsequente<br />
| Ederson/Mayara<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
==CAD 1==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre <br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
<br />
==CAD 2==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br />
==CAD 3==<br />
{| style="border-collapse: collapse; border-width: 1px; border-style: solid; border-color: #000" align=left width="500"<br />
|- style="background-color:#B3B3B3" align=left<br />
! VM <br />
! Disciplina <br />
! Professor <br />
|-<br />
| 1-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Grafico<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Grafico<br />
| Livre<br />
| Livre<br />
|-<br />
| 1-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 2-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 3-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 4-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 5-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
| 6-Servidor<br />
| Livre<br />
| Livre<br />
|-<br />
| 7-Servidor<br />
| Livre<br />
| Livre<br />
|- style="background-color:#E3E3E3"<br />
|}<br />
<br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impresssstransicaoslides2.jpg&diff=152958Arquivo:Impresssstransicaoslides2.jpg2018-11-20T19:52:38Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2018-2&diff=152957INF-2018-22018-11-20T19:52:20Z<p>Ederson.luiz: /* 20/11/2018: Libreoffice Impress - Efeitos, aparência e demais configurações */</p>
<hr />
<div>=Informática Básica II= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 3a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2018-2<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/2/2b/PPC_PROEJA_-_ano_2015.pdf PPC Proeja Operador de Computador]<br />
<br />
<br />
==Ementa==<br />
<br />
Aplicativos de escritório, tais como editor de texto, planilha eletrônica e ferramenta de apresentação.<br />
<br />
Navegação na Internet, pesquisa e cuidados com a segurança da informação.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Elaborar documentos digitais;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional;<br />
* Redigir e formatar documentos utilizando o editor de textos;<br />
* Construir planilhas eletrônicas, aproveitando suas funções;<br />
* Montar apresentações dinâmicas e interativas;<br />
* Navegar na internet, pesquisar e utilizar aplicativos Web como webmail, ferramentas de escritório online e redes sociais;<br />
* Reconhecer URLs (endereços) e mecanismos de segurança para navegação segura.<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.hardware.com.br/livros/linux/dicas-para-openofficebroffice.html Dicas de Openoffice]<br />
* [https://www.tecmundo.com.br/office/3767-como-migrar-do-office-para-o-openoffice-sem-dores-de-cabeca.htm Como migrar do Office para o Openoffice sem dores de cabeça]<br />
<br />
=31/07/2018: Apresentação da disciplina, introdução ao Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina===<br />
<br />
Introdução ao componente curricular e Introdução ao Libreoffice.<br />
<br />
'''Arquivo apresentação da disciplina'''<br />
<br />
[https://drive.google.com/file/d/127DSInkISdvAkptI3D_iSCafRoRkTepw/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://pt-br.libreoffice.org/baixe-ja/libreoffice-novo/ Link para download do LibreOffice]<br />
<br />
<br />
O LibreOffice é uma ferramenta do tipo “office” totalmente gratuita e de código aberto.<br />
<br />
Mas quais os motivos para usarmos o Libreoffice?<br />
<br />
* O LibreOffice é um conjunto de softwares de uso profissional ou doméstico ideal para quem quer uma suíte de escritório para o dia a dia e não deseja softwares desatualizadas e independentes.<br />
* Toda a interface do LibreOffice é padronizada, assim como acontece com o Microsoft Office. Conjuntos e ícones e funcionalidades são semelhantes em toda a interface do usuário. As teclas de atalho são diferentes dos utilizados em outras soluções, porém são bem simples de memorizar.<br />
* O LibreOffice pode ser instalado e utilizado de uma forma [https://pt-br.libreoffice.org/baixe-ja/portable-versions/ portátil], sem necessidade de instalação no computador de uso.<br />
* O LibreOffice é compatível com todos os formatos gerados pelos aplicativos Microsoft, inclusive os documentos mais antigos, tais como DOC, XLS e PPT.<br />
* O LibreOffice é um software de código aberto e grátis. Pode ser instalados em diversos computadores e ser utilizado para qualquer finalidade.<br />
<br />
No decorrer do curso iremos trabalhar com os seguintes softwares:<br />
<br />
'''LibreOffice Writer:'''<br />
<br />
O Writer é o processador de texto do LibreOffice e é um software similar ao Microsoft Word. Com o Writer é possível criar desde textos simples, até textos com padrões complexos, com imagens, tabelas, anotações, estilos e numeração de páginas. Sua interface lembra o Word na versão 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Calc:'''<br />
<br />
O Calc é o editor de planilhas eletrônicas do LibreOffice e é um software similar ao Microsoft Excel. Com o Calc é possível criar planilhas e gráficos de todos os tipos, com imagens, formatação de texto e bordas. Sua interface lembra o Excel 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Impress:'''<br />
<br />
O Impress é o criador de apresentações do LibreOffice e é um software similar ao Microsoft Power Point. Com o Impress é possível criar apresentações de todos tipos, com diversos slides, imagens, formas, animações e transições. Sua interface lembra o Power Point 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
<br />
===LibreOffice Writer===<br />
<br />
<br />
Para a maioria das nossas atividades no software Writer, nós faremos uso de textos.<br />
<br />
Vamos conhecer um pouco de sua interface:<br />
<br />
<div style="text-align: center;">[[Arquivo:writerinterface.jpg|900px]]</div><br />
bit.ly/inf-2018-2<br />
As barras de ferramentas podem ser movidas, de acordo com a necessidade ou preferência:<br />
<br />
<div style="text-align: center;">[[Arquivo:moverbarra.jpg|900px]]</div><br />
<br />
<br />
As funções dos botões também podem ser acessadas via teclas de atalho:<br />
<br />
Teclas de função para o LibreOffice Writer<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho1.jpg]]</div><br />
<br />
<br />
Teclas de atalho para controlar documentos e janelas<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho2.jpg]]</div><br />
<br />
<br />
Teclas de atalho para editar ou formatar documentos<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho3.jpg]]</div><br />
<br />
<br />
A extensão padrão do arquivo é '''ODT'''. Se salvarmos um arquivo com o nome '''Exemplo''', o mesmo se chamará '''Exemplo.odt'''.<br />
<br />
Para selecionarmos o texto, podemos utilizar o mouse ou o teclado, através da tecla '''SHIFT''' + '''SETA DIRECIONAL'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=07/08/2018: Formatação e alinhamento=<br />
<font size="3"><br />
{{Collapse top | Aula 2}}<br />
<br />
===Barra de ferramentas Formatação===<br />
<br />
A barra de Formatação permite alterar as configurações relacionadas ao texto em si, como fonte, tamanho de fonte, estilos, negrito, sublinhado, etc.<br />
<br />
<div style="text-align: left;">[[Arquivo:barraformatacao.jpg]]</div><br />
<br />
Estilos e Formatação (F11): Exibe a janela Estilos e Formatação (abaixo) que exibe os estilos pré-definidos e também permite salvar configurações relativas ao tamanho e cor da fonte, espaçamento entre linhas do parágrafo. É possível alterar os estilos existentes ou mesmo criar novos.<br />
<br />
<div style="text-align: left;">[[Arquivo:estilowriter.jpg]]</div><br />
<br />
<br />
Nesta caixa de seleção escolhemos a fonte:<br />
<br />
<div style="text-align: left;">[[Arquivo:fontewriter.jpg]]</div><br />
<br />
<br />
Permite definir o tamanho da fonte, entre 2 e 999,9:<br />
<br />
<div style="text-align: left;">[[Arquivo:tamanhofontewriter.jpg]]</div><br />
<br />
<br />
Aplicam negrito, itálico e sublinhado respectivamente. Atalhos CTRL+B, CTRL+I e CTRL+U:<br />
<br />
<div style="text-align: left;">[[Arquivo:niswriter.jpg]]</div><br />
<br />
<br />
Aqui estão os possíveis alinhamentos para os parágrafos e são extremamente cobrados em concursos. <br />
<br />
<div style="text-align: left;">[[Arquivo:alinhamentowriter.jpg]]</div><br />
<br />
<br />
Alinhamento à esquerda. Atalho CTRL + L.<br />
<br />
Obs.: Quando o parágrafo está alinhado a esquerda fica desalinhado a direita.<br />
<br />
Alinhamento Centralizado. Atalho CTRL + E.<br />
<br />
Obs.: Quando o parágrafo está centralizado fica desalinhado a esquerda e a direita.<br />
<br />
Alinhamento à Direita. Atalho CTRL + R.<br />
<br />
Obs.: Quando o parágrafo está alinhado a direita fica desalinhado a esquerda.<br />
<br />
Alinhamento Justificado. Atalho CTRL + J.<br />
<br />
Obs.: Quando o parágrafo está justificado fica alinhado a direita e a esquerda.<br />
<br />
Dica: Para aplicar qualquer alinhamento a um parágrafo não é preciso selecionar o parágrafo, basta que o cursor esteja dentro do parágrafo.<br />
<br />
<br />
Cor da Fonte. Permite alterar a cor da fonte.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfontewriter.jpg]]</div><br />
<br />
<br />
Dica: Não é preciso selecionar a palavra que se deseja alterar a cor da fonte, basta que o cursor esteja posicionado dentro da palavra.<br />
<br />
<br />
Realçar. Permite realçar um texto com várias cores.<br />
<br />
<div style="text-align: left;">[[Arquivo:realcewriter.jpg]]</div><br />
<br />
<br />
Cor do Plano de Fundo. Permite alterar a cor do plano de fundo da posição onde o cursor está ou no trecho selecionado.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfundowriter.jpg]]</div><br />
<br />
<br />
'''Exercício'''<br />
<br />
<br />
<div style="text-align: center;">'''O Conceito de Mercado'''</div><br />
<br />
<br />
O conceito de <u>mercado</u> continua intimamente associado à idéia de <u>local</u> onde se efetuam transações entre produtores e consumidores. Consideramos essa noção restritiva, pelos seguintes aspectos:<br />
O mercado é hoje um espaço de realização de operações econômicas de compra e venda que vai para além dos seus contornos <u>físicos</u> e mesmo <u>temporais</u>.<br />
De fato, estão a surgir com grande freqüência <u>formas imateriais de mercado</u> (…).<br />
Essas formas de mercado lançam mão dos meios proporcionados pela sociedade de informação, possibilitando a realização de compras e vendas em casa, pela simples manutenção interativa de um ecrã de televisão ou, mais simplesmente, através de um telefonema para um número fornecido por aquele ecrã, com entrega imediata no domicilio ou pelo correio, como é uso da chamada televisão comercial.<br />
Existem operações de compra e venda que se contratam hoje e se realizam apenas daqui a alguns meses (como por exemplo, nos mercados de futuros, caso dos mercados de cereais nos Estados Unidos da América,...).<br />
Por outro lado existe uma diversidade de mercados, que vai desde os mercados de produtos finais ou de consumo final aos mercados de produtos intermédios e de fatores produtivos, bem como ao mercado de trabalho ou à bolsa ou <u>mercado de valores imobiliários</u>. Aos mercados nacionais sobrepõem-se os <u>mercados transnacionais</u>, de natureza informal, ou de diversos acordos de comércio livre, uniões aduaneiras ou comunidades econômicas.<br />
Tudo são razões para que se considere a noção de mercado como relativa e circunstancial, além de mutável no tempo.<br />
Uma coisa é certa: num mercado existem sempre intenções de compra (compra), intenções de venda (<u>oferta</u>), um preço e uma situação de equilíbrio mais ou menos estável fornecida por esse preço e pela quantidade correspondente.<br />
<br />
<br />
<div style="text-align: right;">Extraído de: Tinto, G., Introdução à Economia, 1995.</div><br />
<br />
<br />
# Grave o documento com o nome '''Exercicio1_Writer_Nome_Aluno'''.<br />
# Centralize o título “O Conceito de Mercado” no texto.<br />
# Formate o título como: '''negrito, tamanho 16''', tipo de letra '''Dejavu Sans'''.<br />
# Efetue o '''alinhamento justificado''' do texto.<br />
# Formate o texto com a fonte '''Nimbus Sans L''' e tamanho '''11'''<br />
# '''Alinhe à direita''' a fonte de onde foi extraído o texto (última linha) e coloque o texto em '''itálico'''<br />
# Marque a '''bold''' (negrito) os termos/expressões sublinhados acima<br />
# Anule os sublinhados e mantenha o negrito dos mesmos termos expressões<br />
# Coloque a '''negrito, itálico e sublinhada''' todas as ocorrências das palavras compra e compras.<br />
<br />
<br />
Envie este arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=14/08/2018: Colunas, capitular e hifenização=<br />
<font size="3"><br />
{{Collapse top | Aula 3}}<br />
<br />
===Criando colunas===<br />
<br />
<br />
O Writer permite criar colunas em seus documentos de texto. É possível inserir colunas em um estilo de página ou em um bloco individual de texto, sendo possível ainda formatar o layout da coluna de acordo com suas preferências:<br />
<br />
* Inserir colunas em um estilo de página;<br />
* Inserir colunas a um bloco de texto individual;<br />
* Formatar um layout de coluna;<br />
* Reverter para um layout de coluna simples.<br />
<br />
<br />
====Inserindo colunas em um estilo de página====<br />
<br />
<br />
Para inserir uma coluna em um estilo de página, clique em qualquer lugar da página e escolha Formatar > Colunas... no menu principal. Abre-se a janela Colunas:<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter.jpg]]</div><br />
<br />
<br />
====Inserindo colunas em um bloco de texto====<br />
<br />
<br />
Também é possível inserir colunas em um bloco de texto individual. Isso é útil caso não se queira modificar o estilo da página, ou se você quiser inserir colunas dentro de colunas. Observe que o Writer criará automaticamente uma seção a partir do bloco de texto selecionado. Uma seção é simplesmente um bloco de texto que tem uma formatação especial.<br />
<br />
Para inserir uma coluna em um bloco individual de texto, selecione o texto desejado, escolhendo em seguida Formatar > Colunas... a partir do menu principal. Abre-se a janela Colunas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter2.jpg]]</div><br />
<br />
Se você inserir colunas em um bloco de texto, é possível escolher como você deseja distribuir o texto pela coluna. È possível distribuir o texto de uma ou duas maneiras:<br />
<br />
* Uniformemente. Se você escolher distribuir o texto uniformemente, o Writer preencherá a primeira linha de cada coluna, seguindo para a segunda linha de cada coluna, e assim por diante.<br />
* Estilo Jornal. Se você escolher distribuir o texto em Estilo Jornal, o Writer preencherá as colunas uma por vez, começando pela primeira coluna.<br />
<br />
Para distribuir o texto uniformemente, marque a caixa de seleção Distribuir conteúdo uniformemente em todas todas as colunas na área Configurações. Desmarque esta caixa de seleção se você quiser distribuir o texto no estilo jornal.<br />
<br />
<br />
====Especificando o número de colunas====<br />
<br />
<br />
Se preferir criar um layout de coluna personalizado, você deverá especifcar o número de colunas desejado. Insira o número desejado na caixa Colunas da área Configurações.<br />
<br />
<br />
====Formatando a largura e o espaçamento da coluna====<br />
<br />
<br />
Para criar colunas com espaçamento uniforme com a mesma largura, marque a caixa de seleção AutoLargura na área Largura e espaçamento.<br />
<br />
Para personalizar a largura e o espaçamento das colunas, siga as seguintes etapas:<br />
<br />
* Na área de Largura e espaçamento, desmarque a caixa de seleção AutoLargura.<br />
* Na linha Largura, insira uma largura para cada coluna.<br />
* Na linha Espaçamento, insira o valor de espaçamento desejado entre cada par de coluna.<br />
<br />
Utilize as teclas direcionais na linha Coluna para rolar pelas colunas.<br />
<br />
<br />
====Formatando as linhas separadoras====<br />
<br />
<br />
Para exibir as linhas separadoras entre as colunas, siga as seguintes etapas:<br />
<br />
* A partir da lista suspensa Linha na área Linha separadora, selecione o tipo de linha desejado.<br />
* Por padrão, as linhas separadoras têm o mesmo tamanho das colunas. Caso deseje que as linhas separadoras sejam mais curtas do que a coluna, utilize a caixa Altura para inserir a altura das linhas separadoras como uma porcentagem do tamanho das colunas. Por exemplo, se você inserir 50%, as linhas separadoras terão metade do tamanho das colunas.<br />
* Se você inseriu uma altura menor do que 100%, use a lista suspensa Posição para selecionar um alinhamento vertical para as linhas do separador.<br />
<br />
<br />
====Revertendo o layout de uma coluna simples====<br />
<br />
<br />
Para reverter o layout de uma coluna simples em um estilo de página ou em um bloco de texto:<br />
<br />
* Clique em qualquer local no layout da coluna.<br />
* A partir do menu principal, escolha Formatar > Colunas... A janela Colunas aparece. <br />
* Na área Configurações, clique no layout de coluna simples localizado no lado esquerdo da caixa Colunas . Ou, volte a caixa Colunas para 1.<br />
* Clique em OK. A janela Colunas se fecha e o layout é revertido para uma coluna simples.<br />
<br />
<br />
===Capitulares===<br />
<br />
<br />
Basta somente você deixar o cursor no parágrafo que você deseja a primeira letra capitulada. Vá no meu Parágrafo e escolha a guia Capitulares. Na parte de Configurações, ative a caixa Exibir capitulares. Também pode escolher o número de caracteres, se vai utilizar a palavra inteira, quantidade de linhas a serem utilizadas, espaçamento até o texto e estilo do caractere. Após efetuar as configurações, clique em Ok.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:capitulareswriter.jpg]]</div><br />
<br />
<br />
===Hifenização===<br />
<br />
<br />
Insere hifens nas palavras grandes demais para caber no fim da linha. O LibreOffice procura no documento e sugere uma hifenização que possa ser aceita ou rejeitada. Se o texto estiver selecionado, a caixa de diálogo Hifenização atuará somente no texto selecionado. Se não houver texto selecionado, a caixa de diálogo Hifenização atuará em todo o documento.<br />
<br />
<br />
Agora, para colocar Hifenização, é bem simples, pressione Ctrl + A, para selecionar tudo ou selecione a parte do texto que deseja hifenizar e depois justifique o texto. Logo em seguida, clique em Ferramentas > Idioma > Hifenização. Depois, é só confirmar quais palavras que deseja hifenizar ou clicar em hifenizar tudo e pressione OK.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:hifenizacaowriter.jpg]]</div><br />
<br />
===Exercício===<br />
<br />
<br />
Copie o texto abaixo e posteriormente efetue os ajustes pedidos:<br />
<br />
<br />
----<br />
<br />
<br />
Das Vantagens de Ser Bobo<br />
<br />
<br />
O bobo, por não se ocupar com ambições, tem tempo para ver, ouvir e tocar o mundo. O bobo é capaz de ficar sentado quase sem se mexer por duas horas. Se perguntado por que não faz alguma coisa, responde: "Estou fazendo. Estou pensando." <br />
Ser bobo às vezes oferece um mundo de saída porque os espertos só se lembram de sair por meio da esperteza, e o bobo tem originalidade, espontaneamente lhe vem a idéia. <br />
O bobo tem oportunidade de ver coisas que os espertos não vêem. Os espertos estão sempre tão atentos às espertezas alheias que se descontraem diante dos bobos, e estes os vêem como simples pessoas humanas. O bobo ganha utilidade e sabedoria para viver. O bobo nunca parece ter tido vez. No entanto, muitas vezes, o bobo é um Dostoievski. <br />
Há desvantagem, obviamente. Uma boba, por exemplo, confiou na palavra de um desconhecido para a compra de um ar refrigerado de segunda mão: ele disse que o aparelho era novo, praticamente sem uso porque se mudara para a Gávea onde é fresco. Vai a boba e compra o aparelho sem vê-lo sequer. Resultado: não funciona. Chamado um técnico, a opinião deste era de que o aparelho estava tão estragado que o conserto seria caríssimo: mais valia comprar outro. Mas, em contrapartida, a vantagem de ser bobo é ter boa-fé, não desconfiar, e portanto estar tranqüilo. Enquanto o esperto não dorme à noite com medo de ser ludibriado. O esperto vence com úlcera no estômago. O bobo não percebe que venceu. <br />
Aviso: não confundir bobos com burros. Desvantagem: pode receber uma punhalada de quem menos espera. É uma das tristezas que o bobo não prevê. César terminou dizendo a célebre frase: "Até tu, Brutus?" <br />
Bobo não reclama. Em compensação, como exclama! <br />
Os bobos, com todas as suas palhaçadas, devem estar todos no céu. Se Cristo tivesse sido esperto não teria morrido na cruz. <br />
O bobo é sempre tão simpático que há espertos que se fazem passar por bobos. Ser bobo é uma criatividade e, como toda criação, é difícil. Por isso é que os espertos não conseguem passar por bobos. Os espertos ganham dos outros. Em compensação os bobos ganham a vida. Bem-aventurados os bobos porque sabem sem que ninguém desconfie. Aliás não se importam que saibam que eles sabem. <br />
Há lugares que facilitam mais as pessoas serem bobas (não confundir bobo com burro, com tolo, com fútil). Minas Gerais, por exemplo, facilita ser bobo. Ah, quantos perdem por não nascer em Minas! <br />
Bobo é Chagall, que põe vaca no espaço, voando por cima das casas. É quase impossível evitar excesso de amor que o bobo provoca. É que só o bobo é capaz de excesso de amor. E só o amor faz o bobo.<br />
<br />
<br />
Clarice Lispector<br />
<br />
<br />
----<br />
<br />
<br />
* Formate o título do texto com fonte '''Loma''', tamanho '''14''', alinhamento '''centralizado''', e '''negrito'''.<br />
* selecione o texto (sem selecionar o título e nem a fonte do texto) e aplique o alinhamento '''justificado''', fonte '''Dejavu Sans''', tamanho '''12'''.<br />
* Ainda com o texto selecionado, vá em '''Formatar > Colunas''', selecione 2 colunas, espaçamento de '''0,50 cm''', estilo '''linha contínua'''.<br />
* No texto selecionado aplique a hifenização em todas as palavras.<br />
* Insira a opção Capitulares, com tamanho de 3 linhas no início do texto.<br />
* Alinhe a última linha (fonte do texto) a '''direita''', '''itálico''', fonte '''Droid Sans''' e tamanho '''10'''.<br />
<br />
<br />
O texto deve ficar neste formato:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:texto2writer.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/08/2018: Aula suspensa=<br />
<font size="3"><br />
{{Collapse top | Aula 4}}<br />
<br />
Aula suspensa devido a paralização dos técnicos administrativos.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=28/08/2018: Formatações e funções úteis no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 5}}<br />
<br />
===Comando Localizar e Substituir===<br />
<br />
Para se localizar palavras em um texto qualquer, basta que você acesse o menu '''Editar, Localizar''' ou por meio do atalho '''Ctrl + F'''. Logo será aberto, no canto inferior esquerdo do aplicativo, um campo para digitação da palavra a ser procurada.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarwriter.jpg]]</div><br />
<br />
<br />
O recurso para “localizar e substituir” também é muito importante pois nos auxilia a corrigir erros espalhados pelo texto ou mesmo a mudança de uma palavra por outra de mesmo significado. Para usarmos o recurso de “localizar e substituir” basta acessarmos o menu '''Editar, Localizar e substituir''' ou diretamente pelo atalho '''Ctrl + H'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarsubstituirwriter.jpg]]</div><br />
<br />
<br />
===Marcadores e numeração===<br />
<br />
Esse comando é utilizado para inserir no texto, marcadores e/ou numeração, como o próprio título desde tópico diz.<br />
O comando para colocar marcadores ou mudar os marcadores já adicionados em um texto, pode ser acionado por meio do menu '''Formatar, Marcadores e numerações'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumerwriter.jpg]]</div><br />
<br />
<br />
Nas duas primeiras abas definimos o tipo de marcador que queremos usar em nosso texto. <br />
<br />
Passando para a terceira aba “Estrutura de tópicos” definiremos como ficará a estrutura de tópicos que estamos criando em nosso texto. Mais uma vez, teremos 8 opções para escolha.<br />
<br />
Podemos utilizar também, ao invés dos marcadores tradicionais, figuras no lugar dos números ou símbolos. Estes estão disponíveis na aba “Figuras”.<br />
<br />
Nas próximas abas temos a parte de configuração dos marcadores. A aba “Posição” nos proporciona a possibilidade de definirmos as distâncias, em relação a margem, de todos os dez níveis de marcadores que podem existir no nosso documento.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer2writer.jpg]]</div><br />
<br />
<br />
Já a aba “Opções” nos permite, também por nível, definir:<br />
<br />
* O tipo de “Numeração” (algarismos arábicos, romanos, gregos e etc.),<br />
* Definir o que virá “Antes” do marcador e “Depois” também (veja que no campo “Depois” existe um “.” e é exatamente este ponto que está sendo mostrado do lado direito do “1” mostrado no quatro ao lado do campo, nos diversos níveis),<br />
* Definir o “Estilo de caractere” que será usado,<br />
* “Mostrar subníveis” em cada marcador e<br />
* Colocar um determinado marcador para “Iniciar em”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer3writer.jpg]]</div><br />
<br />
<br />
===Ferramenta Pincel===<br />
<br />
<br />
Esse comando copia toda a formatação de um objeto ou texto e aplica ao objeto que será clicado ou marcado a seguir. O Pincel não se encontra em um item de menu específico, porém, possui um botão na barra de ferramentas padrão, conforme Figura a seguir.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:pincelwriter.jpg]]</div><br />
<br />
<br />
Como utilizar o Pincel:<br />
<br />
* Primeiro clique na palavra ou objeto que você deseja copiar os formatos nele aplicados (por exemplo tipo da fonte, tamanho e etc.);<br />
* Em seguida, clique na palavra a qual você deseja que possua os mesmos formatos da palavra anterior (a que você copiou os formatos).<br />
<br />
===Recuos e espaçamentos===<br />
<br />
Este recurso permite alterar a posição inicial, final e primeira linha do texto.<br />
<br />
Escolha a guia Formatar - Parágrafo - Recuos e espaçamento<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:recuoespacamentowriter.jpg]]</div><br />
<br />
<br />
A opção '''Antes do texto''' permite indicar onde o texto irá iniciar.<br />
<br />
A opção '''Depois do texto''' indica onde ele irá terminar.<br />
<br />
Já a opção '''Primeira linha''' indica onde a primeira linha do parágrafo irá iniciar.<br />
<br />
As opções '''Acima do parágrafo''' e '''Abaixo do parágrafo''' indicam o espaçamento entre as linhas antes e depois de um parágrafo, respectivamente.<br />
<br />
A opção '''Entre linhas''' define o espaço entre cada linha do texto.<br />
<br />
<br />
===Exercício===<br />
<br />
<br />
Digite o texto abaixo. <br />
Vá na opção f'''ormatar parágrafo, Recuos e espaçamentos''', deixe todas as opções de medidas com valor '''0 cm''' e '''espaçamento de linha simples'''.<br />
<br />
O título da receita deve estar em '''fonte Free Sans, tamanho 14, negrito e centralizado'''.<br />
<br />
O subtítulo '''Ingredientes''' deve estar com '''fonte Loma, tamanho 12, itálico e alinhamento a esquerda'''. <br />
<br />
Aplique a formatação do subtítulo '''Ingredientes''' no subtítulo '''Modo de preparo''' usando a ferramenta '''pincel'''.<br />
<br />
Use a ferramenta '''Localizar e substituir''' para trocar as palavras '''kg''' por '''quilos''' e '''2 dl''' por '''200 ml'''.<br />
<br />
Insira marcadores de círculos grandes nos ingredientes, com '''deslocamento de primeira linha em 1,25 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Insira numeração com pontos no modo de preparo, com ''' Antes do texto em 2 cm, deslocamento de primeira linha em - 0,75 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Envie o arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''<br />
<br />
<br />
<br />
'''Receita: Bacalhau a beira-alta'''<br />
<br />
<br />
''Ingredientes:'' <br />
<br />
<br />
6 postas de bacalhau;<br />
<br />
1 molho de couves galegas com os talos;<br />
<br />
1,5 kg de batatas;<br />
<br />
Pão de trigo duro;<br />
<br />
4 dentes de alho picados;<br />
<br />
2 dl de azeite.<br />
<br />
<br />
''Modo de preparo''<br />
<br />
<br />
Coza o bacalhau e, à parte, coza também as batatas e as couves.<br />
<br />
Corte o pão em fatias e coloque numa travessa funda. Por cima, deite a água de cozer o bacalhau em quantidade suficiente para ensopar o pão.<br />
<br />
Regue ainda com metade do azeite e polvilhe com metade dos alhos. Disponha o bacalhau, as batatas as couves por cima.<br />
<br />
Cubra com o restante azeite e os alhos picados. Sacuda a travessa e está pronto a servir. <br />
<br />
<br />
Como o texto deve ficar ao final do exercício:<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exercicio3writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=04/09/2018: Tabelas, Cabeçalho, Rodapé e Campos no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 6}}<br />
<br />
===Tabelas===<br />
<br />
Sabemos que uma tabela nada mais é do que um conjunto de dados disponibilizados em uma grade. Onde esta possui diversas linhas e colunas.<br />
<br />
Para criar uma tabela no Writer basta acessarmos o menu Tabela, Inserir, Tabela, pelo atalho Ctrl + F12 ou ainda pelo botão disponibilizado na barra de Ferramentas Padrão. Ao acessar uma das opções acima, será mostrada a tela de configuração da tabela.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabelawriter.jpg]]</div><br />
<br />
<br />
Na Figura acima podemos ver claramente que há a possibilidade de darmos um nome para a tabela por meio do campo “Nome” e de determinarmos quantas linhas e colunas nossa tabela terá, por meio dos campos “Colunas” e “Linhas”.<br />
<br />
Logo a seguir, abaixo do campo “Linhas” podemos ver um campo “Título”, onde se o marcarmos, nossa tabela terá N linhas com formatação de título (e. g. Negrito). A quantidade de linhas será definida no campo “As primeiras ... linhas”.<br />
<br />
O Campo “Borda” indica a existência ou não de uma linha separando cada célula que comporá a tabela criada.<br />
<br />
O botão “Autoformatar...” nos dá a possibilidade de darmos uma formatação para a tabela que será criada (e. g. Cores, fonte, bordas, alinhamento e etc).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela2writer.jpg]]</div><br />
<br />
<br />
Após a criação da tabela, podemos alterar suas propriedades ou parte dela, selecionando a parte que queremos alterar e indo até o menu Tabela, Propriedades da tabela. <br />
<br />
Nesta janela podemos alterar O nome, espaçamento, tamanho de coluna e linha, estilos de borda e cores de fundo.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela3writer.jpg]]</div><br />
<br />
<br />
===Cabeçalho===<br />
<br />
<br />
Para colocar um cabeçalho em um documento basta acessarmos o menu Inserir, Cabeçalho, Padrão. Então abrir-se-á uma área para digitação do texto do cabeçalho.<br />
<br />
Você poderá digitar o texto do cabeçalho em qualquer página do documento, que este será automaticamente replicado para as demais páginas existentes.<br />
<br />
Você poderá ainda, aplicar formatação ao cabeçalho, incluir borda e plano de fundo e também excluir o cabeçalho por meio da aba azul “Cabeçalho (Padrão)”. Para isto, basta clicar na setinha apontada para baixo existente na aba que as opções surgirão na forma de um menu pop-up.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:cabecalhowriter.jpg]]</div><br />
<br />
<br />
===Rodapé===<br />
<br />
<br />
ara inserir um rodapé, o procedimento é idêntico ao do cabeçalho, porém deve-se acessar o menu Inserir, Rodapé, Padrão]. Abrir-se-á uma área para digitação do texto do rodapé. Nesta área, pode-se colocar o que for necessário. No entanto, o mais comum de ser colocado nos rodapés de documentos são: número da página, data/hora da impressão, autor, quantidade total de páginas existentes no documento, dentre outros.<br />
<br />
Você poderá ainda, da mesma forma que no cabeçalho, aplicar formatação ao rodapé, incluir borda, plano de fundo e também o excluir. Tudo isto poderá ser realizado por meio da aba azul “Rodapé (Padrão)”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:rodapewriter.jpg]]</div><br />
<br />
<br />
===Campos===<br />
<br />
<br />
Este é mais um recurso muito útil existente no LibreOffice. Com ele você poderá fazer seu documento mostrar informações automaticamente e sem muito esforço, disponibilizado no menu Inserir, Campos.<br />
<br />
Os campos preexistentes no LibreOffice. são:<br />
<br />
* Data: coloca a data atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Hora: coloca a hora atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Número da página: exibe o número da página atual;<br />
* Total de páginas: exibe a quantidade de páginas existentes no documento;<br />
* Assunto: mostra o que foi registrado no campo “Assunto”, descrito nas “Propriedades” do documento;<br />
* Título: mostra o que foi registrado no campo “Título”, descrito nas “Propriedades” do documento;<br />
* Autor: mostra o primeiro e último nome listados em “Dados do Usuário” do LibreOffice no menu Ferramentas, Opções;<br />
* Outros: [Ctrl + F2] que dá a possibilidade de escolha de diversos campos, com diversas informações sobre o documento. Estes outros campos poderão ser escolhidos na tela “Campos” em suas diversas abas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:camposwriter.jpg]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
Crie uma tabela no documento em branco com os dados da imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabelawriter.jpg]]</div><br />
<br />
<br />
Formate a tabela com as seguintes configurações:<br />
<br />
<br />
* Linha de título mesclada, fonte Rekha, tamanho 14, cor vermelha, negrito e centralizado;<br />
* Linha de subtítulo com fonte Loma, tamanho 12, itálico e centralizado;<br />
* Demais linhas com fonte Garuda, tamanho 12 alinhamento justificado;<br />
* Insira cor de fundo de acordo com a imagem acima.<br />
<br />
No cabeçalho, insira o texto Proeja - Informática básica II em fonte Liberation Serif, tamanho 12 e negrito.<br />
<br />
No rodapé insira o número da página alinhado a direita.<br />
<br />
Ao final, o documento deve ter essa aparência:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabela2writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=11/09/2018: Corretor ortográfico, impressão e Figuras=<br />
<font size="3"><br />
{{Collapse top | Aula 7}}<br />
<br />
===Corretor ortográfico===<br />
<br />
Você pode verificar a ortografia de uma seleção de texto ou do documento por inteiro manualmente.<br />
<br />
A verificação ortográfica começa na posição atual do cursor ou no início da seleção de texto.<br />
<br />
Clique no documento ou selecione o texto que deseja verificar. Escolha Ferramentas - Ortografia e gramática.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretorwriter.jpg]]</div><br />
<br />
<br />
Sempre que é encontrado um erro de ortografia, surge a caixa de diálogo Verificação ortográfica e o LibreOffice oferece algumas sugestões de correção.<br />
Adote um dos seguintes procedimentos:<br />
<br />
Para aceitar a correção, clique na sugestão e, em seguida, em Corrigir.<br />
<br />
Edite a frase na caixa de texto superior e, em seguida, clique em Corrigir.<br />
<br />
Para adicionar a palavra desconhecida ao dicionário definido pelo usuário, clique em Adicionar ao dicionário.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretor2writer.jpg]]</div><br />
<br />
<br />
===Impressão===<br />
<br />
<br />
Para imprimir documentos no Libreoffice Writer, podemos clicar diretamente no botão imprimir ou ir no menu Arquivo, imprimir:<br />
<br />
Na janela que se abre, podemos escolher diversas configurações adicionais.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:imprimir2writer.jpg]]</div><br />
<br />
<br />
Na aba Geral, podemos escolher a impressora, quantidade de cópias, se serão agrupadas, quais páginas serão impressas (todas, somente uma ou uma parte).<br />
<br />
Na aba Libreoffice Writer podemos escolher se o plano de fundo será impresso, as figuras e objetos, texto oculto, cor do texto e páginas em branco.<br />
<br />
Em Layout escolhemos a quantidade de páginas por folha, a ordem e lados da página.<br />
<br />
E na aba Opções escolhemos se irá para uma impressora física ou um arquivo, agrupamento, bandejas definidas na impressora e tamanho definido na impressora.<br />
<br />
<br />
===Visualizar impressão===<br />
<br />
Antes de imprimir algum trabalho, convém observar como ficará o layout no papel, para evitar alguns acidentes, tais como quebras de páginas em locais indesejados, ajustes de parágrafos, entre outros. Para tanto, o auxílio da função Visualizar Impressão é fundamental.<br />
<br />
Acesse o menu Arquivo > Visualização de Página, no ícone na barra de ferramentas ou através do atalho Ctrl + Shift + O.<br />
<br />
Na tela aparecerá uma projeção exata de como ficará a impressão. Serão apresentadas algumas ferramentas, se quisermos analisar com mais detalhes:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:visualizarimpressaowriter.jpg]]</div><br />
<br />
<br />
'''Uma página<br/>'''<br />
Mostra uma página na janela de visualização.<br />
<br />
<br />
'''Duas páginas<br/>'''<br />
Mostra duas páginas na janela de visualização. As páginas ímpares aparecerão no lado direito e as páginas pares no lado esquerdo.<br />
<br />
<br />
'''Visualização de livro<br/>'''<br />
Selecione esta opção para ver a primeira página no lado direito da visualização. Se não a selecionar, a primeira página é mostrada no lado esquerdo da visualização.<br />
<br />
<br />
'''Várias páginas<br/>'''<br />
Define o número de páginas exibidas na tela. Clique na seta ao lado do ícone para abrir uma grade e selecionar o número de páginas a serem exibidas como linhas e colunas na visualização.<br />
<br />
<br />
'''Para o início do documento<br/>'''<br />
Vai para a primeira página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Página anterior<br/>'''<br />
Vai para a página anterior do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Próxima página<br/>'''<br />
Vai para a próxima página do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Para o fim do documento<br/>'''<br />
Vai para a última página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Menos zoom<br/>'''<br />
Diminui o zoom para ver mais do documento em um tamanho reduzido.<br />
<br />
<br />
'''Zoom de visualização<br/>'''<br />
Determina o nível de zoom da visualização de impressão.<br />
<br />
<br />
'''Mais zoom<br/>'''<br />
Aumenta o zoom para obter um close do documento.<br />
<br />
<br />
'''Imprimir<br/>'''<br />
Imprime o documento.<br />
<br />
<br />
'''Tela inteira<br/>'''<br />
Exibe ou oculta os menus e as barras de ferramentas no Writer ou no Calc. Para sair do modo de tela inteira, clique no botão Tela inteira ou pressione a tecla Esc.<br />
<br />
<br />
'''Fechar visualização<br/>'''<br />
Fecha a visualização e volta na edição do documento.<br />
<br />
<br />
===Figuras===<br />
<br />
<br />
A inserção de figura em um texto e sua manipulação é simples no Writer.<br />
<br />
Vamos passo a passo mostrar como se dá essa inserção. <br />
<br />
Primeiro abra o documento em que deseja inserir a figura e posicione o cursor no local desejado que ela apareça. Depois escolha Inserir - Figura. Localize o arquivo gráfico que você deseja inserir e, em seguida, clique em Abrir. <br />
<br />
Por padrão, a figura inserida é centralizada acima do parágrafo no qual você clicou. <br />
<br />
<br />
Veja que é criada uma barra de ferramenta flutuante chamada figura. Nela você modifica os aspectos de cor e padrão da figura e também inverte vertical ou horizontalmente a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figurawriter.jpg]]</div><br />
<br />
<br />
Quando é inserida uma figura a barra de ferramenta quadro é mostrada para configurar com mais facilidade a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura2writer.jpg]]</div><br />
<br />
<br />
Também temos a opção de formatar figura. Para isso, selecione a figura e vá no menu Formatar - Figura.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura3writer.jpg]]</div><br />
<br />
<br />
Nesta janela teremos várias opções de configuração, tais como ajuste de tamanho, ajuste no texto, posicionamento. hiperlink, recorte, bordas, transparência, etc.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=18/09/2018: Palestra Reflexos da reforma trabalhista para a classe trabalhadora=<br />
<font size="3"><br />
{{Collapse top | Aula 8}}<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=25/09/2018: Introdução ao Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 9}}<br />
<br />
===Libreoffice Calc===<br />
<br />
Calc é um software de planilha eletrônica multiplataforma de código aberto, desenvolvido originalmente pela Star Division, posteriormente pela Sun Microsystems (como parte da suíte StarOffice) e atualmente pela The Document Foundation, como parte da suíte LibreOffice. Também é distribuído gratuitamente com as suítes OpenOffice.org e NeoOffice.<br />
<br />
Nessa planilha, o número limite de linhas é de pouco mais de 1 milhão por planilha e o número limite de colunas é de 1024 por planilha.<br />
<br />
Na imagem abaixo podemos conhecer um pouco melhor a interface do Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interfacecalc.jpg]]</div><br />
<br />
<br />
As células do Calc possuem endereçamento, onde as colunas são definidas por letras e as linhas por números. Para identificar o endereço da célula, basta indicar primeiramente o endereçamento da coluna e depois da linha. Ex: '''A1'''.<br />
<br />
<br />
====Operadores====<br />
<br />
<br />
Devemos conhecer alguns símbolos que são muito utilizados, juntamente com a ordem dos cálculos efetuados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface2calc.jpg]]</div><br />
<br />
<br />
====Realce de valor====<br />
<br />
<br />
A função Realce de valor destaca os conteúdos das células através da diferenciação da cor da fonte. Para acioná-la, vá até o menu Exibir > Realce de valor ou clique na combinação de teclas Ctrl+F8.<br />
<br />
Textos são apresentados em preto, números em azul e fórmulas em verde. Essa configuração de cores é padrão para qualquer instalação do LibreOffice. Na figura abaixo, é possível identificar as três categorias. No exemplo, o conteúdo da célula B30 é a fórmula =1+1. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface3calc.jpg]]</div><br />
<br />
<br />
====Séries de preenchimento====<br />
<br />
<br />
Uma Série de preenchimento é uma forma fácil de fazer um preenchimento automático em uma área da planilha a partir de um valor inicial.<br />
<br />
Inicialmente, digite o valor inicial em uma célula. Com a célula selecionada, coloque o ponteiro do mouse sobre o ponto preto no canto inferior direito, chamado Alça de preenchimento, até que este se transforme em uma pequena cruz.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface4calc.jpg]]</div><br />
<br />
<br />
Arraste com o botão do mouse pressionado até a última célula da sequência desejada, como no passo 1 apresentado na tabela abaixo. Solte o botão do mouse e a área selecionada será preenchida com a sequência numérica correspondente (passo 2).<br />
<br />
Se a direção da sua seleção for horizontal para a esquerda ou vertical para cima, o Calc fará o preenchimento com decremento 1. Se a direção da sua seleção for horizontal para a direita ou vertical para baixo, o Calc fará o preenchimento com incremento 1.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface5calc.jpg]]</div><br />
<br />
<br />
Se você desejar criar uma sequência de preenchimento sem incremento algum, faça o mesmo procedimento, no entanto, ao clicar e arrastar com a alça de preenchimento, mantenha a tecla Ctrl pressionada.<br />
<br />
====Formatar Células====<br />
<br />
<br />
Permite que você especifique diversas opções de formatação e aplique atributos às células selecionadas.<br />
<br />
Escolha Formatar - Células<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:formatcelcalc.jpg]]</div><br />
<br />
<br />
Números<br />
Especifica as opções de formatação para a(s) célula(s) selecionada(s).<br />
<br />
<br />
Fonte<br />
Especifique a formatação e a fonte que deseja aplicar.<br />
<br />
<br />
Alinhamento<br />
Define ao opções de alinhamento para o conteúdo da célula atual, ou das células selecionadas.<br />
<br />
<br />
Bordas<br />
Define opções de borda para os objetos selecionados em Writer ou Calc.<br />
<br />
<br />
Plano de fundo<br />
Define a cor ou a figura do plano de fundo.<br />
<br />
<br />
Proteção de célula<br />
Define as opções de proteção para as células selecionadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=02/10/2018: Fórmulas simples Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 10}}<br />
<br />
===Funções===<br />
<br />
Funções são procedimentos baseados em operações e operandos que, manipulados, retornam um determinado resultado. Funções podem simplesmente representar a implementação de operadores, como a função Soma, que veremos adiante, ou, de forma mais complexa, realizar cálculos de nível avançado.<br />
<br />
<br />
Para inserir uma função através do assistente, siga os seguintes passos:<br />
<br />
Selecione a célula onde será inserida a função;<br />
<br />
Selecione uma das opções abaixo:<br />
<br />
* vá até o menu Inserir > Função ou<br />
* teclar Ctrl + F2 ou<br />
* clique sobre o botão Assistente de funções, na Barra de fórmulas.<br />
<br />
Será aberta a tela do Assistente de funções. Selecione, então, uma categoria de função na caixa Categoria;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalc.jpg]]</div><br />
<br />
<br />
Selecione o nome da função e clique no botão Próximo;<br />
<br />
Preencha os argumentos solicitados para a função;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcao2calc.jpg]]</div><br />
<br />
<br />
Clique OK. A fórmula será inserida na célula e o resultado será contabilizado.<br />
<br />
A função também pode ser digitada. Para isto, basta iniciar coma digitação do símbolo de = e posteriormente digitar o nome da fórmula desejada, juntamente com seu parâmetros.<br />
<br />
<br />
====Funções simples====<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaosomacalc.jpg]]</div><br />
<br />
<br />
No exemplo acima, a função é SOMA, o argumento é B2:B6 (leia-se de B2 até B6) e o resultado ( a soma dos valores) é 20. <br />
<br />
Como digitar<br />
<br />
Se as células são adjacentes: =SOMA(C2:C8) <br />
<br />
Essa função soma o conteúdo de células adjacentes (sequência C2 até C8)<br />
<br />
Se as células não são adjacentes: =SOMA(B2;C3;D1).<br />
<br />
A função Média calcula o valor médio de um intervalo, adjacente ou não.<br />
<br />
=MEDIA(C2:C8)<br />
<br />
A função Mínimo retorna o menor valor de um intervalo analisado<br />
<br />
=MINIMO(C2:C8)<br />
<br />
A função Máximo retorna o maior valor de um intervalo analisado<br />
<br />
=MAXIMO(C2:C8)<br />
<br />
A função Mediana de um intervalo é o seu valor central, ou seja, que divide o intervalo em duas partes iguais<br />
<br />
=MED(C2:C8)<br />
<br />
A função Moda retorna o valor que mais se repete em um intervalo. Caso dois números ou mais tenham a mesma quantidade de repetições, o menor valor será mostrado.<br />
<br />
=MODO(C2:C8)<br />
<br />
A função Concatenar agrupa valores indicados. Esta função aceita somente ;<br />
<br />
=CONCATENAR(C2;C5;C8)<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=09/10/2018: Fórmulas Compostas Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 11}}<br />
<br />
===Funções Lógicas===<br />
<br />
<br />
'''SE'''<br />
<br />
<br />
Esta é uma função bastante interessante pois permite ao usuário da planilha construir expressões condicionais, avaliando e apresentando diferentes resultados conforme uma cláusula avaliada.<br />
<br />
A estrutura da função SE é:<br />
<br />
=SE (CONDIÇÃO; VALOR_SE_CONDIÇÃO_VERDADEIRA; VALOR_SE_CONDIÇÃO_FALSA)<br />
<br />
O primeiro argumento é a condição. Normalmente, avaliamos o conteúdo de uma célula em relação a um dado parâmetro, como, por exemplo C4<100 ou A1=”APROVADO”.<br />
<br />
Caso a condição seja verdadeira, o segundo argumento é apresentado como resultado da função.<br />
<br />
Caso a condição seja falsa, o terceiro argumento é apresentado como resultado.<br />
<br />
No exemplo abaixo, avaliamos o valor da nota do aluno e, caso esteja acima da média, apresentamos o resultado “Aprovado”. Senão, apresentamos o resultado “Recuperação”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcse.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.NUM'''<br />
<br />
<br />
<br />
A função CONT.NÚM conta quantos valores numéricos estão entre os ARGUMENTOS da função.<br />
<br />
Entende-se como valores numéricos: números, datas e fórmulas cujo resultado seja um número. Células vazias ou células com conteúdo de texto não são contadas na função CONT.NÚM.<br />
<br />
O formato da função é:<br />
<br />
=CONT.NÚM(ARGUMENTOS)<br />
<br />
Observe no exemplo abaixo que nem todos os alunos fizeram a primeira avaliação. Podemos usar a função CONT.NÚM para contar as notas do intervalo B11:B19 e identificar quantos alunos de fato fizeram a prova.<br />
<br />
O resultado da função =CONT.NÚM(B11:B19) será 7 pois, as duas células, correspondentes aos alunos que não fizeram a prova, estão vazias.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontnum.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.SE'''<br />
<br />
<br />
<br />
A função CONT.SE tem como objetivo contar quantos valores obedecem a um determinado critério. A estrutura é bastante simples:<br />
<br />
=CONT.SE (INTERVALO; CONDIÇÃO)<br />
<br />
Os valores dentro do intervalo são avaliados um a um de acordo com a condição. O valor é contado somente se a condição for verdadeira.<br />
<br />
No exemplo abaixo, contamos quantos alunos estão com notas acima da média estabelecida.<br />
<br />
Note que usamos uma concatenação de texto para expressar adequadamente o critério, indicado no segundo argumento com a expressão “>”&B6. Ou seja, concatenamos o sinal de > com o conteúdo da célula B5.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse.jpg]]</div><br />
<br />
<br />
O resultado da função CONT.SE acima é de 7 alunos.<br />
<br />
Quando o critério ou condição for de igualdade, não precisamos usar a concatenação de texto, por exemplo:<br />
<br />
=CONT.SE(B10:B18;B6)<br />
<br />
Em sua construção mais comum, a função CONT.SE permite apenas um argumento como critério de contagem. No entanto, em casos específicos, é possível utilizar mais de um argumento através do uso de expressões regulares em fórmulas.<br />
<br />
O exemplo abaixo ilustra essa situação. A partir da tabela abaixo, desejamos obter a quantidade de cadastros de pessoas que são dos estados do Rio Grande do Sul e Santa Catarina.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse2.jpg]]</div><br />
<br />
<br />
Uma abordagem óbvia e simples seria a soma de CONT.SE:<br />
<br />
=CONT.SE(F3:F8;"RS")+CONT.SE(F3:F8;"SC")<br />
<br />
Uma abordagem elegante poderia utilizar expressões regulares:<br />
<br />
=CONT.SE(F3:F8;"RS|SC")<br />
<br />
Onde o símbolo | (pipe) entre as siglas RS e SC representa a operação OU lógica. Logo, estamos contando apenas os valores do intervalo de F3 até F8 que são iguais a RS ou a SC.<br />
<br />
<br />
'''CONT.VALORES'''<br />
<br />
<br />
A função CONT.VALORES permite contar células preenchidas com valores de texto, número ou fórmula dentro de um intervalo.<br />
<br />
O formato da função CONT.VALORES é:<br />
<br />
=CONT.VALORES(ARGUMENTOS)<br />
<br />
No exemplo abaixo, o usuário deverá preencher o espaço amarelo com cinco códigos de produto.<br />
<br />
Para contar quantas células já foram preenchidas, utilizamos a função CONT.VALORES e o intervalo de G5:G9.<br />
<br />
O resultado da função, no exemplo abaixo, será 3.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvalores.jpg]]</div><br />
<br />
<br />
<br />
'''CONTAR.VAZIO'''<br />
<br />
<br />
CONTAR.VAZIO conta quantas células do intervalo indicado em ARGUMENTOS estão vazias, isto é, sem conteúdo algum.<br />
<br />
=CONTAR.VAZIO(ARGUMENTOS)<br />
<br />
No nosso exemplo anterior, da função CONT.VALORES, calculamos quantas células do intervalo amarelo já haviam sido preenchidas. Podemos encontrar a informação complementar (quantas células faltam ser preenchidas) através da função CONTAR.VAZIO.<br />
<br />
No exemplo, a função CONTAR.VAZIO pode ser utilizada sobre o intervalo de G5:G9. O resultado da função na célula H15 será de 2.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvazio.jpg]]</div><br />
<br />
<br />
<br />
'''SOMASE'''<br />
<br />
<br />
A função SOMASE é útil para cálculos que envolvam valores totais a partir de um determinado critério. O formato da função é:<br />
<br />
=SOMASE(INTERVALO_DE_AVALIAÇÃO; CRITÉRIO; INTERVALO_DE_SOMA)<br />
<br />
Os valores do intervalo de avaliação são avaliados conforme o critério. Caso estejam de acordo com o critério indicado, o valor correspondente no intervalo de soma é somado ao resultado.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcsomase.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=23/10/2018: Avaliação=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
* Copie o conteúdo abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:avaliacaocalc.jpg]]</div><br />
<br />
<br />
* Efetue os cálculos solicitados (Total dos produtos por trimestre, Valor máximo, Valor mínimo, Média e Total por mês).<br />
<br />
* Salve o arquivo com o seu nome e envia para o seguinte e-mail:<br />
<br />
ederson.luiz@ifsc.edu.br<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=06/11/2018: Vínculo entre planilhas, Gráficos, Classificação e Filtros=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
===Classificação===<br />
<br />
<br />
No Libreoffice Calc, podemos efetuar a classificação de conteúdos, em ordem alfabética, de forma crescente ou decrescente.<br />
<br />
Para tanto, devemos clicar em um intervalo de banco de dados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc.jpg]]</div><br />
<br />
<br />
Ao selecionar um intervalo de células, somente estas células serão classificadas. <br />
<br />
Se você clicar somente em uma célula sem selecionar, então todo o intervalo de banco de dados será classificado.<br />
<br />
Escolha Dados - Classificar.<br />
<br />
O intervalo de células que será classificado é mostrado em cores invertidas.<br />
<br />
Selecione as opções de classificação desejadas.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc2.jpg]]</div><br />
<br />
Clique em OK.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc3.jpg]]</div><br />
<br />
<br />
===Filtro===<br />
<br />
<br />
Os filtros e filtros avançados permitem que você assegure que somente certas linhas (registros) de um intervalo de dados fiquem visíveis. Nos documentos de planilhas do LibreOffice, há várias possibilidades para a aplicação de filtros.<br />
<br />
Uma das utilizações para a função Autofiltro, que se encontra em Dados, Filtro, Autofiltro, é a de rapidamente restringir a exibição de registros com entradas idênticas em um campo de dados.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:autofiltrocalc.jpg|900px]]</div><br />
<br />
<br />
Na caixa de diálogo Filtro padrão, você também pode definir intervalos que contenham os valores em determinados campos de dados. É possível utilizar o filtro padrão para conectar até três condições com um operador lógico E ou OU.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtropadraocalc.jpg]]</div><br />
<br />
<br />
O Filtro avançado excede a restrição de três condições e permite até oito condições de filtro. Com os filtros avançados, você insere as condições diretamente na planilha.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtroavancadocalc.jpg]]</div><br />
<br />
<br />
Para remover um filtro, de forma a ver todas as células, clique dentro da área onde o filtro estiver aplicado e escolha Dados - Filtro - Redefinir filtro.<br />
<br />
Ao selecionar várias linhas de uma área onde um filtro foi aplicado, a seleção pode incluir linhas visíveis e linhas ocultas pelo filtro. Se depois você aplicar formatação, ou excluir as linhas selecionadas, esta ação só afetará as linhas visíveis. As linhas ocultas não serão afetadas.<br />
<br />
Isto é o oposto das linhas que foram ocultas manualmente pelo comando Formatar - Linhas - Ocultar linhas. Linhas ocultas manualmente são excluídas ao excluir uma seleção que as contenha.<br />
<br />
<br />
===Vínculo entre planilhas===<br />
<br />
Podemos utilizar conteúdos que se encontram em outras planilhas do documento.<br />
<br />
Para que isso ocorra, devemos utilizar como no exemplo abaixo:<br />
<br />
=Planilha2.A1<br />
<br />
Neste caso, o conteúdo da Planilha2, célula A1 será exibido onde esta fórmula for empregada.<br />
<br />
<br />
===Gráficos===<br />
<br />
<br />
No Calc, é fácil gerar gráficos a partir de qualquer planilha. <br />
<br />
Pode-se chamar o assistente de gráficos a partir do seu ícone ou do menu Inserir ... gráfico.<br />
<br />
Os gráficos no Calc estão muito fáceis e muito intuitivos e prometem-se ainda muitas melhorias para este recurso. <br />
<br />
Ao se invocar o comando Inserir Gráfico, tem-se uma tela como a seguir (previsão do gráfico e seu assistente):<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc.jpg]]</div><br />
<br />
<br />
Logo na Etapa 1 você terá vários tipos e subtipos de gráficos a escolher: barras, pizza, rede, dispersão, etc.<br />
<br />
Etapa 2 – Intervalo de Dados – aqui se informa ao Calc a área a ser computada e plotada.<br />
<br />
Etapa 3 – Série de Dados – Aqui se definem nomes e rótulos para as séries dos dados.<br />
<br />
Etapa 4 – É nesta etapa que se fazem as legendas do gráfico.<br />
<br />
A seguir, vemos um gráfico de Pizza gerado no LibreOffice Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc2.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=13/11/2018: Introdução ao Libreoffice Impress=<br />
<font size="3"><br />
{{Collapse top | Aula 13}}<br />
<br />
===Tela Principal===<br />
<br />
O Impress é software para desenvolvimento de apresentações. Por meio deste software pode-se preparar as apresentações textuais, adicionar imagens, sons e até mesmo animação.<br />
<br />
<div style="text-align: left;">[[Arquivo:impressprincipal.jpg]]</div><br />
<br />
<br />
===Slide Mestre===<br />
<br />
Toda apresentação possui no mínimo um slide mestre. Este slide em especial leva este nome não é à toa e veremos o por quê.<br />
<br />
No slide mestre pode-se configurar e/ou alterar as formatações de uma apresentação inteira.<br />
<br />
Nem sempre as pessoas que trabalham com este tipo de ferramenta o utilizam. Na maioria das vezes por pura falta de conhecimento.<br />
<br />
Vamos começar a desenvolver nossa apresentação exatamente pelo slide mestre. Mas antes disso vamos acessar o menu [Exibir | Régua], para que a régua seja mostrada da mesma forma como é mostrada no Writer.<br />
<br />
Agora então vamos acessar o menu [Exibir | Mestre | Slide Mestre]. Após este passo, podemos observar que a interface mudou bastante:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressmestre.jpg]]</div><br />
<br />
<br />
Tudo que fizermos neste slide será replicado para todos os slides que tenham este mesmo layout em nossa apresentação.<br />
<br />
<br />
Para fazer uma apresentação, não é pré-requisito configurar o slide mestre. No entanto, há alguns bons motivos para você fazê-lo:<br />
<br />
* Configurando o slide mestre, você não precisará fazer isto de novo em nenhum outro slide, pois, isto acontecerá automaticamente;<br />
* Hoje esta apresentação vai ter um fundo de tela voltado para este curso, amanhã se o autor não ficar satisfeito ou se for usá-la em outro curso, bastará fazer a alteração no slide mestre e tudo estará resolvido.<br />
<br />
<br />
===Segundo Slide===<br />
<br />
<br />
Para criar o segundo slide vamos dar um clique com o botão direito do mouse na área sob as miniaturas de slides. <br />
<br />
No menu pop-up que aparecer acesse a opção “Novo slide”.<br />
<br />
Muito provavelmente o slide que foi criado veio com o mesmo layout do anterior a ele. Então, vá até a área de layout de slides e clique no layout que gostaria de utilizar.<br />
<br />
<br />
===Slide com imagem===<br />
<br />
<br />
Mais uma vez vamos repetir o processo de criar um novo slide, ou seja, clique com o botão direito do mouse sobre a área limpa sob as miniaturas de slides. Então escolha a opção “Novo slide”.<br />
<br />
Será criado um slide com layout padrão. Vamos alterar o layout para um que comporte texto e objetos.<br />
<br />
Agora, no quadro do lado direito é apresentada uma imagem central que na verdade são quatro botões:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem.jpg]]</div><br />
<br />
<br />
Clique no botão para inserir “Imagem”. Será aberta uma caixa de diálogo do sistema operacional que você estiver usando, então, vá até a pasta onde está o arquivo, selecione-o e aperte o botão “Abrir” (Open em inglês).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem2.jpg]]</div><br />
<br />
<br />
O slide apresentará a imagem selecionada. Clique na figura e ajuste-a para que fique num tamanho adequado. E está pronto o terceiro slide.<br />
<br />
<br />
===Exercício===<br />
<br />
Desenvolva a apresentação abaixo de forma que fique o mais parecida possível.<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag1.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag2.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag3.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag4.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag5.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}<br />
<br />
=20/11/2018: Libreoffice Impress - Efeitos, aparência e demais configurações=<br />
<font size="3"><br />
{{Collapse top | Aula 14}}<br />
<br />
===Modificando a aparência de todos os slides===<br />
<br />
Para modificar a aparência de um slide, devemos alterar o slide mestre. Vimos anteriormente a criação de um silde mestre do zero, mas nesse momento iremos usar modelos prontos. Para tanto, clique no botão Páginas mestre no painel lateral, como mostra a imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssslidemestrepronto.jpg]]</div><br />
<br />
<br />
Basta escolher o modelo desejado que automaticamente será aplicado em todos os slides.<br />
<br />
<br />
===Avançar slides automaticamente===<br />
<br />
<br />
Pode-se configurar a apresentação para avançar automaticamente para o próximo slide após um determinado período de tempo (por exemplo na forma de quiosque ou carrocel) a partir do menu Apresentação de slide → Configurações da apresentação de slides ou para avançar automaticamente após um período preestabelecido de tempo diferente para cada slide.<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssstransicaoslides.jpg]]</div><br />
<br />
Para configurar este último, escolha Apresentação de slide → Cronometrar. Quando usamos esta ferramenta, um temporizador de pequeno porte é exibido no canto inferior esquerdo. Quando estiver pronto para avançar para o próximo slide, clique no temporizador. O Impress vai memorizar os intervalos e na próxima apresentação dos slides, estes irão avançar automaticamente após o tempo expirar.<br />
<br />
<br />
===Transições de slide===<br />
<br />
<br />
Transição de slide é a animação que é reproduzida quando um slide for alterado. Pode-se configurar a transição de slide a partir da aba Transição de slides no painel de Tarefas. Selecione a transição desejada, a velocidade da animação, e se a transição deve acontecer quando se clica com o mouse (de preferência) ou automaticamente depois de um determinado número de segundos. Clique Aplicar a todos os slides, a menos que prefira ter diferentes transições na apresentação.<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssstransicaoslides2.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 14}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impresssstransicaoslides.jpg&diff=152955Arquivo:Impresssstransicaoslides.jpg2018-11-20T19:46:27Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2018-2&diff=152954INF-2018-22018-11-20T19:46:10Z<p>Ederson.luiz: /* 20/11/2018: Libreoffice Impress - Efeitos, aparência e demais configurações */</p>
<hr />
<div>=Informática Básica II= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 3a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2018-2<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/2/2b/PPC_PROEJA_-_ano_2015.pdf PPC Proeja Operador de Computador]<br />
<br />
<br />
==Ementa==<br />
<br />
Aplicativos de escritório, tais como editor de texto, planilha eletrônica e ferramenta de apresentação.<br />
<br />
Navegação na Internet, pesquisa e cuidados com a segurança da informação.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Elaborar documentos digitais;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional;<br />
* Redigir e formatar documentos utilizando o editor de textos;<br />
* Construir planilhas eletrônicas, aproveitando suas funções;<br />
* Montar apresentações dinâmicas e interativas;<br />
* Navegar na internet, pesquisar e utilizar aplicativos Web como webmail, ferramentas de escritório online e redes sociais;<br />
* Reconhecer URLs (endereços) e mecanismos de segurança para navegação segura.<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.hardware.com.br/livros/linux/dicas-para-openofficebroffice.html Dicas de Openoffice]<br />
* [https://www.tecmundo.com.br/office/3767-como-migrar-do-office-para-o-openoffice-sem-dores-de-cabeca.htm Como migrar do Office para o Openoffice sem dores de cabeça]<br />
<br />
=31/07/2018: Apresentação da disciplina, introdução ao Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina===<br />
<br />
Introdução ao componente curricular e Introdução ao Libreoffice.<br />
<br />
'''Arquivo apresentação da disciplina'''<br />
<br />
[https://drive.google.com/file/d/127DSInkISdvAkptI3D_iSCafRoRkTepw/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://pt-br.libreoffice.org/baixe-ja/libreoffice-novo/ Link para download do LibreOffice]<br />
<br />
<br />
O LibreOffice é uma ferramenta do tipo “office” totalmente gratuita e de código aberto.<br />
<br />
Mas quais os motivos para usarmos o Libreoffice?<br />
<br />
* O LibreOffice é um conjunto de softwares de uso profissional ou doméstico ideal para quem quer uma suíte de escritório para o dia a dia e não deseja softwares desatualizadas e independentes.<br />
* Toda a interface do LibreOffice é padronizada, assim como acontece com o Microsoft Office. Conjuntos e ícones e funcionalidades são semelhantes em toda a interface do usuário. As teclas de atalho são diferentes dos utilizados em outras soluções, porém são bem simples de memorizar.<br />
* O LibreOffice pode ser instalado e utilizado de uma forma [https://pt-br.libreoffice.org/baixe-ja/portable-versions/ portátil], sem necessidade de instalação no computador de uso.<br />
* O LibreOffice é compatível com todos os formatos gerados pelos aplicativos Microsoft, inclusive os documentos mais antigos, tais como DOC, XLS e PPT.<br />
* O LibreOffice é um software de código aberto e grátis. Pode ser instalados em diversos computadores e ser utilizado para qualquer finalidade.<br />
<br />
No decorrer do curso iremos trabalhar com os seguintes softwares:<br />
<br />
'''LibreOffice Writer:'''<br />
<br />
O Writer é o processador de texto do LibreOffice e é um software similar ao Microsoft Word. Com o Writer é possível criar desde textos simples, até textos com padrões complexos, com imagens, tabelas, anotações, estilos e numeração de páginas. Sua interface lembra o Word na versão 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Calc:'''<br />
<br />
O Calc é o editor de planilhas eletrônicas do LibreOffice e é um software similar ao Microsoft Excel. Com o Calc é possível criar planilhas e gráficos de todos os tipos, com imagens, formatação de texto e bordas. Sua interface lembra o Excel 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Impress:'''<br />
<br />
O Impress é o criador de apresentações do LibreOffice e é um software similar ao Microsoft Power Point. Com o Impress é possível criar apresentações de todos tipos, com diversos slides, imagens, formas, animações e transições. Sua interface lembra o Power Point 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
<br />
===LibreOffice Writer===<br />
<br />
<br />
Para a maioria das nossas atividades no software Writer, nós faremos uso de textos.<br />
<br />
Vamos conhecer um pouco de sua interface:<br />
<br />
<div style="text-align: center;">[[Arquivo:writerinterface.jpg|900px]]</div><br />
bit.ly/inf-2018-2<br />
As barras de ferramentas podem ser movidas, de acordo com a necessidade ou preferência:<br />
<br />
<div style="text-align: center;">[[Arquivo:moverbarra.jpg|900px]]</div><br />
<br />
<br />
As funções dos botões também podem ser acessadas via teclas de atalho:<br />
<br />
Teclas de função para o LibreOffice Writer<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho1.jpg]]</div><br />
<br />
<br />
Teclas de atalho para controlar documentos e janelas<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho2.jpg]]</div><br />
<br />
<br />
Teclas de atalho para editar ou formatar documentos<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho3.jpg]]</div><br />
<br />
<br />
A extensão padrão do arquivo é '''ODT'''. Se salvarmos um arquivo com o nome '''Exemplo''', o mesmo se chamará '''Exemplo.odt'''.<br />
<br />
Para selecionarmos o texto, podemos utilizar o mouse ou o teclado, através da tecla '''SHIFT''' + '''SETA DIRECIONAL'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=07/08/2018: Formatação e alinhamento=<br />
<font size="3"><br />
{{Collapse top | Aula 2}}<br />
<br />
===Barra de ferramentas Formatação===<br />
<br />
A barra de Formatação permite alterar as configurações relacionadas ao texto em si, como fonte, tamanho de fonte, estilos, negrito, sublinhado, etc.<br />
<br />
<div style="text-align: left;">[[Arquivo:barraformatacao.jpg]]</div><br />
<br />
Estilos e Formatação (F11): Exibe a janela Estilos e Formatação (abaixo) que exibe os estilos pré-definidos e também permite salvar configurações relativas ao tamanho e cor da fonte, espaçamento entre linhas do parágrafo. É possível alterar os estilos existentes ou mesmo criar novos.<br />
<br />
<div style="text-align: left;">[[Arquivo:estilowriter.jpg]]</div><br />
<br />
<br />
Nesta caixa de seleção escolhemos a fonte:<br />
<br />
<div style="text-align: left;">[[Arquivo:fontewriter.jpg]]</div><br />
<br />
<br />
Permite definir o tamanho da fonte, entre 2 e 999,9:<br />
<br />
<div style="text-align: left;">[[Arquivo:tamanhofontewriter.jpg]]</div><br />
<br />
<br />
Aplicam negrito, itálico e sublinhado respectivamente. Atalhos CTRL+B, CTRL+I e CTRL+U:<br />
<br />
<div style="text-align: left;">[[Arquivo:niswriter.jpg]]</div><br />
<br />
<br />
Aqui estão os possíveis alinhamentos para os parágrafos e são extremamente cobrados em concursos. <br />
<br />
<div style="text-align: left;">[[Arquivo:alinhamentowriter.jpg]]</div><br />
<br />
<br />
Alinhamento à esquerda. Atalho CTRL + L.<br />
<br />
Obs.: Quando o parágrafo está alinhado a esquerda fica desalinhado a direita.<br />
<br />
Alinhamento Centralizado. Atalho CTRL + E.<br />
<br />
Obs.: Quando o parágrafo está centralizado fica desalinhado a esquerda e a direita.<br />
<br />
Alinhamento à Direita. Atalho CTRL + R.<br />
<br />
Obs.: Quando o parágrafo está alinhado a direita fica desalinhado a esquerda.<br />
<br />
Alinhamento Justificado. Atalho CTRL + J.<br />
<br />
Obs.: Quando o parágrafo está justificado fica alinhado a direita e a esquerda.<br />
<br />
Dica: Para aplicar qualquer alinhamento a um parágrafo não é preciso selecionar o parágrafo, basta que o cursor esteja dentro do parágrafo.<br />
<br />
<br />
Cor da Fonte. Permite alterar a cor da fonte.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfontewriter.jpg]]</div><br />
<br />
<br />
Dica: Não é preciso selecionar a palavra que se deseja alterar a cor da fonte, basta que o cursor esteja posicionado dentro da palavra.<br />
<br />
<br />
Realçar. Permite realçar um texto com várias cores.<br />
<br />
<div style="text-align: left;">[[Arquivo:realcewriter.jpg]]</div><br />
<br />
<br />
Cor do Plano de Fundo. Permite alterar a cor do plano de fundo da posição onde o cursor está ou no trecho selecionado.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfundowriter.jpg]]</div><br />
<br />
<br />
'''Exercício'''<br />
<br />
<br />
<div style="text-align: center;">'''O Conceito de Mercado'''</div><br />
<br />
<br />
O conceito de <u>mercado</u> continua intimamente associado à idéia de <u>local</u> onde se efetuam transações entre produtores e consumidores. Consideramos essa noção restritiva, pelos seguintes aspectos:<br />
O mercado é hoje um espaço de realização de operações econômicas de compra e venda que vai para além dos seus contornos <u>físicos</u> e mesmo <u>temporais</u>.<br />
De fato, estão a surgir com grande freqüência <u>formas imateriais de mercado</u> (…).<br />
Essas formas de mercado lançam mão dos meios proporcionados pela sociedade de informação, possibilitando a realização de compras e vendas em casa, pela simples manutenção interativa de um ecrã de televisão ou, mais simplesmente, através de um telefonema para um número fornecido por aquele ecrã, com entrega imediata no domicilio ou pelo correio, como é uso da chamada televisão comercial.<br />
Existem operações de compra e venda que se contratam hoje e se realizam apenas daqui a alguns meses (como por exemplo, nos mercados de futuros, caso dos mercados de cereais nos Estados Unidos da América,...).<br />
Por outro lado existe uma diversidade de mercados, que vai desde os mercados de produtos finais ou de consumo final aos mercados de produtos intermédios e de fatores produtivos, bem como ao mercado de trabalho ou à bolsa ou <u>mercado de valores imobiliários</u>. Aos mercados nacionais sobrepõem-se os <u>mercados transnacionais</u>, de natureza informal, ou de diversos acordos de comércio livre, uniões aduaneiras ou comunidades econômicas.<br />
Tudo são razões para que se considere a noção de mercado como relativa e circunstancial, além de mutável no tempo.<br />
Uma coisa é certa: num mercado existem sempre intenções de compra (compra), intenções de venda (<u>oferta</u>), um preço e uma situação de equilíbrio mais ou menos estável fornecida por esse preço e pela quantidade correspondente.<br />
<br />
<br />
<div style="text-align: right;">Extraído de: Tinto, G., Introdução à Economia, 1995.</div><br />
<br />
<br />
# Grave o documento com o nome '''Exercicio1_Writer_Nome_Aluno'''.<br />
# Centralize o título “O Conceito de Mercado” no texto.<br />
# Formate o título como: '''negrito, tamanho 16''', tipo de letra '''Dejavu Sans'''.<br />
# Efetue o '''alinhamento justificado''' do texto.<br />
# Formate o texto com a fonte '''Nimbus Sans L''' e tamanho '''11'''<br />
# '''Alinhe à direita''' a fonte de onde foi extraído o texto (última linha) e coloque o texto em '''itálico'''<br />
# Marque a '''bold''' (negrito) os termos/expressões sublinhados acima<br />
# Anule os sublinhados e mantenha o negrito dos mesmos termos expressões<br />
# Coloque a '''negrito, itálico e sublinhada''' todas as ocorrências das palavras compra e compras.<br />
<br />
<br />
Envie este arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=14/08/2018: Colunas, capitular e hifenização=<br />
<font size="3"><br />
{{Collapse top | Aula 3}}<br />
<br />
===Criando colunas===<br />
<br />
<br />
O Writer permite criar colunas em seus documentos de texto. É possível inserir colunas em um estilo de página ou em um bloco individual de texto, sendo possível ainda formatar o layout da coluna de acordo com suas preferências:<br />
<br />
* Inserir colunas em um estilo de página;<br />
* Inserir colunas a um bloco de texto individual;<br />
* Formatar um layout de coluna;<br />
* Reverter para um layout de coluna simples.<br />
<br />
<br />
====Inserindo colunas em um estilo de página====<br />
<br />
<br />
Para inserir uma coluna em um estilo de página, clique em qualquer lugar da página e escolha Formatar > Colunas... no menu principal. Abre-se a janela Colunas:<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter.jpg]]</div><br />
<br />
<br />
====Inserindo colunas em um bloco de texto====<br />
<br />
<br />
Também é possível inserir colunas em um bloco de texto individual. Isso é útil caso não se queira modificar o estilo da página, ou se você quiser inserir colunas dentro de colunas. Observe que o Writer criará automaticamente uma seção a partir do bloco de texto selecionado. Uma seção é simplesmente um bloco de texto que tem uma formatação especial.<br />
<br />
Para inserir uma coluna em um bloco individual de texto, selecione o texto desejado, escolhendo em seguida Formatar > Colunas... a partir do menu principal. Abre-se a janela Colunas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter2.jpg]]</div><br />
<br />
Se você inserir colunas em um bloco de texto, é possível escolher como você deseja distribuir o texto pela coluna. È possível distribuir o texto de uma ou duas maneiras:<br />
<br />
* Uniformemente. Se você escolher distribuir o texto uniformemente, o Writer preencherá a primeira linha de cada coluna, seguindo para a segunda linha de cada coluna, e assim por diante.<br />
* Estilo Jornal. Se você escolher distribuir o texto em Estilo Jornal, o Writer preencherá as colunas uma por vez, começando pela primeira coluna.<br />
<br />
Para distribuir o texto uniformemente, marque a caixa de seleção Distribuir conteúdo uniformemente em todas todas as colunas na área Configurações. Desmarque esta caixa de seleção se você quiser distribuir o texto no estilo jornal.<br />
<br />
<br />
====Especificando o número de colunas====<br />
<br />
<br />
Se preferir criar um layout de coluna personalizado, você deverá especifcar o número de colunas desejado. Insira o número desejado na caixa Colunas da área Configurações.<br />
<br />
<br />
====Formatando a largura e o espaçamento da coluna====<br />
<br />
<br />
Para criar colunas com espaçamento uniforme com a mesma largura, marque a caixa de seleção AutoLargura na área Largura e espaçamento.<br />
<br />
Para personalizar a largura e o espaçamento das colunas, siga as seguintes etapas:<br />
<br />
* Na área de Largura e espaçamento, desmarque a caixa de seleção AutoLargura.<br />
* Na linha Largura, insira uma largura para cada coluna.<br />
* Na linha Espaçamento, insira o valor de espaçamento desejado entre cada par de coluna.<br />
<br />
Utilize as teclas direcionais na linha Coluna para rolar pelas colunas.<br />
<br />
<br />
====Formatando as linhas separadoras====<br />
<br />
<br />
Para exibir as linhas separadoras entre as colunas, siga as seguintes etapas:<br />
<br />
* A partir da lista suspensa Linha na área Linha separadora, selecione o tipo de linha desejado.<br />
* Por padrão, as linhas separadoras têm o mesmo tamanho das colunas. Caso deseje que as linhas separadoras sejam mais curtas do que a coluna, utilize a caixa Altura para inserir a altura das linhas separadoras como uma porcentagem do tamanho das colunas. Por exemplo, se você inserir 50%, as linhas separadoras terão metade do tamanho das colunas.<br />
* Se você inseriu uma altura menor do que 100%, use a lista suspensa Posição para selecionar um alinhamento vertical para as linhas do separador.<br />
<br />
<br />
====Revertendo o layout de uma coluna simples====<br />
<br />
<br />
Para reverter o layout de uma coluna simples em um estilo de página ou em um bloco de texto:<br />
<br />
* Clique em qualquer local no layout da coluna.<br />
* A partir do menu principal, escolha Formatar > Colunas... A janela Colunas aparece. <br />
* Na área Configurações, clique no layout de coluna simples localizado no lado esquerdo da caixa Colunas . Ou, volte a caixa Colunas para 1.<br />
* Clique em OK. A janela Colunas se fecha e o layout é revertido para uma coluna simples.<br />
<br />
<br />
===Capitulares===<br />
<br />
<br />
Basta somente você deixar o cursor no parágrafo que você deseja a primeira letra capitulada. Vá no meu Parágrafo e escolha a guia Capitulares. Na parte de Configurações, ative a caixa Exibir capitulares. Também pode escolher o número de caracteres, se vai utilizar a palavra inteira, quantidade de linhas a serem utilizadas, espaçamento até o texto e estilo do caractere. Após efetuar as configurações, clique em Ok.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:capitulareswriter.jpg]]</div><br />
<br />
<br />
===Hifenização===<br />
<br />
<br />
Insere hifens nas palavras grandes demais para caber no fim da linha. O LibreOffice procura no documento e sugere uma hifenização que possa ser aceita ou rejeitada. Se o texto estiver selecionado, a caixa de diálogo Hifenização atuará somente no texto selecionado. Se não houver texto selecionado, a caixa de diálogo Hifenização atuará em todo o documento.<br />
<br />
<br />
Agora, para colocar Hifenização, é bem simples, pressione Ctrl + A, para selecionar tudo ou selecione a parte do texto que deseja hifenizar e depois justifique o texto. Logo em seguida, clique em Ferramentas > Idioma > Hifenização. Depois, é só confirmar quais palavras que deseja hifenizar ou clicar em hifenizar tudo e pressione OK.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:hifenizacaowriter.jpg]]</div><br />
<br />
===Exercício===<br />
<br />
<br />
Copie o texto abaixo e posteriormente efetue os ajustes pedidos:<br />
<br />
<br />
----<br />
<br />
<br />
Das Vantagens de Ser Bobo<br />
<br />
<br />
O bobo, por não se ocupar com ambições, tem tempo para ver, ouvir e tocar o mundo. O bobo é capaz de ficar sentado quase sem se mexer por duas horas. Se perguntado por que não faz alguma coisa, responde: "Estou fazendo. Estou pensando." <br />
Ser bobo às vezes oferece um mundo de saída porque os espertos só se lembram de sair por meio da esperteza, e o bobo tem originalidade, espontaneamente lhe vem a idéia. <br />
O bobo tem oportunidade de ver coisas que os espertos não vêem. Os espertos estão sempre tão atentos às espertezas alheias que se descontraem diante dos bobos, e estes os vêem como simples pessoas humanas. O bobo ganha utilidade e sabedoria para viver. O bobo nunca parece ter tido vez. No entanto, muitas vezes, o bobo é um Dostoievski. <br />
Há desvantagem, obviamente. Uma boba, por exemplo, confiou na palavra de um desconhecido para a compra de um ar refrigerado de segunda mão: ele disse que o aparelho era novo, praticamente sem uso porque se mudara para a Gávea onde é fresco. Vai a boba e compra o aparelho sem vê-lo sequer. Resultado: não funciona. Chamado um técnico, a opinião deste era de que o aparelho estava tão estragado que o conserto seria caríssimo: mais valia comprar outro. Mas, em contrapartida, a vantagem de ser bobo é ter boa-fé, não desconfiar, e portanto estar tranqüilo. Enquanto o esperto não dorme à noite com medo de ser ludibriado. O esperto vence com úlcera no estômago. O bobo não percebe que venceu. <br />
Aviso: não confundir bobos com burros. Desvantagem: pode receber uma punhalada de quem menos espera. É uma das tristezas que o bobo não prevê. César terminou dizendo a célebre frase: "Até tu, Brutus?" <br />
Bobo não reclama. Em compensação, como exclama! <br />
Os bobos, com todas as suas palhaçadas, devem estar todos no céu. Se Cristo tivesse sido esperto não teria morrido na cruz. <br />
O bobo é sempre tão simpático que há espertos que se fazem passar por bobos. Ser bobo é uma criatividade e, como toda criação, é difícil. Por isso é que os espertos não conseguem passar por bobos. Os espertos ganham dos outros. Em compensação os bobos ganham a vida. Bem-aventurados os bobos porque sabem sem que ninguém desconfie. Aliás não se importam que saibam que eles sabem. <br />
Há lugares que facilitam mais as pessoas serem bobas (não confundir bobo com burro, com tolo, com fútil). Minas Gerais, por exemplo, facilita ser bobo. Ah, quantos perdem por não nascer em Minas! <br />
Bobo é Chagall, que põe vaca no espaço, voando por cima das casas. É quase impossível evitar excesso de amor que o bobo provoca. É que só o bobo é capaz de excesso de amor. E só o amor faz o bobo.<br />
<br />
<br />
Clarice Lispector<br />
<br />
<br />
----<br />
<br />
<br />
* Formate o título do texto com fonte '''Loma''', tamanho '''14''', alinhamento '''centralizado''', e '''negrito'''.<br />
* selecione o texto (sem selecionar o título e nem a fonte do texto) e aplique o alinhamento '''justificado''', fonte '''Dejavu Sans''', tamanho '''12'''.<br />
* Ainda com o texto selecionado, vá em '''Formatar > Colunas''', selecione 2 colunas, espaçamento de '''0,50 cm''', estilo '''linha contínua'''.<br />
* No texto selecionado aplique a hifenização em todas as palavras.<br />
* Insira a opção Capitulares, com tamanho de 3 linhas no início do texto.<br />
* Alinhe a última linha (fonte do texto) a '''direita''', '''itálico''', fonte '''Droid Sans''' e tamanho '''10'''.<br />
<br />
<br />
O texto deve ficar neste formato:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:texto2writer.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/08/2018: Aula suspensa=<br />
<font size="3"><br />
{{Collapse top | Aula 4}}<br />
<br />
Aula suspensa devido a paralização dos técnicos administrativos.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=28/08/2018: Formatações e funções úteis no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 5}}<br />
<br />
===Comando Localizar e Substituir===<br />
<br />
Para se localizar palavras em um texto qualquer, basta que você acesse o menu '''Editar, Localizar''' ou por meio do atalho '''Ctrl + F'''. Logo será aberto, no canto inferior esquerdo do aplicativo, um campo para digitação da palavra a ser procurada.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarwriter.jpg]]</div><br />
<br />
<br />
O recurso para “localizar e substituir” também é muito importante pois nos auxilia a corrigir erros espalhados pelo texto ou mesmo a mudança de uma palavra por outra de mesmo significado. Para usarmos o recurso de “localizar e substituir” basta acessarmos o menu '''Editar, Localizar e substituir''' ou diretamente pelo atalho '''Ctrl + H'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarsubstituirwriter.jpg]]</div><br />
<br />
<br />
===Marcadores e numeração===<br />
<br />
Esse comando é utilizado para inserir no texto, marcadores e/ou numeração, como o próprio título desde tópico diz.<br />
O comando para colocar marcadores ou mudar os marcadores já adicionados em um texto, pode ser acionado por meio do menu '''Formatar, Marcadores e numerações'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumerwriter.jpg]]</div><br />
<br />
<br />
Nas duas primeiras abas definimos o tipo de marcador que queremos usar em nosso texto. <br />
<br />
Passando para a terceira aba “Estrutura de tópicos” definiremos como ficará a estrutura de tópicos que estamos criando em nosso texto. Mais uma vez, teremos 8 opções para escolha.<br />
<br />
Podemos utilizar também, ao invés dos marcadores tradicionais, figuras no lugar dos números ou símbolos. Estes estão disponíveis na aba “Figuras”.<br />
<br />
Nas próximas abas temos a parte de configuração dos marcadores. A aba “Posição” nos proporciona a possibilidade de definirmos as distâncias, em relação a margem, de todos os dez níveis de marcadores que podem existir no nosso documento.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer2writer.jpg]]</div><br />
<br />
<br />
Já a aba “Opções” nos permite, também por nível, definir:<br />
<br />
* O tipo de “Numeração” (algarismos arábicos, romanos, gregos e etc.),<br />
* Definir o que virá “Antes” do marcador e “Depois” também (veja que no campo “Depois” existe um “.” e é exatamente este ponto que está sendo mostrado do lado direito do “1” mostrado no quatro ao lado do campo, nos diversos níveis),<br />
* Definir o “Estilo de caractere” que será usado,<br />
* “Mostrar subníveis” em cada marcador e<br />
* Colocar um determinado marcador para “Iniciar em”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer3writer.jpg]]</div><br />
<br />
<br />
===Ferramenta Pincel===<br />
<br />
<br />
Esse comando copia toda a formatação de um objeto ou texto e aplica ao objeto que será clicado ou marcado a seguir. O Pincel não se encontra em um item de menu específico, porém, possui um botão na barra de ferramentas padrão, conforme Figura a seguir.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:pincelwriter.jpg]]</div><br />
<br />
<br />
Como utilizar o Pincel:<br />
<br />
* Primeiro clique na palavra ou objeto que você deseja copiar os formatos nele aplicados (por exemplo tipo da fonte, tamanho e etc.);<br />
* Em seguida, clique na palavra a qual você deseja que possua os mesmos formatos da palavra anterior (a que você copiou os formatos).<br />
<br />
===Recuos e espaçamentos===<br />
<br />
Este recurso permite alterar a posição inicial, final e primeira linha do texto.<br />
<br />
Escolha a guia Formatar - Parágrafo - Recuos e espaçamento<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:recuoespacamentowriter.jpg]]</div><br />
<br />
<br />
A opção '''Antes do texto''' permite indicar onde o texto irá iniciar.<br />
<br />
A opção '''Depois do texto''' indica onde ele irá terminar.<br />
<br />
Já a opção '''Primeira linha''' indica onde a primeira linha do parágrafo irá iniciar.<br />
<br />
As opções '''Acima do parágrafo''' e '''Abaixo do parágrafo''' indicam o espaçamento entre as linhas antes e depois de um parágrafo, respectivamente.<br />
<br />
A opção '''Entre linhas''' define o espaço entre cada linha do texto.<br />
<br />
<br />
===Exercício===<br />
<br />
<br />
Digite o texto abaixo. <br />
Vá na opção f'''ormatar parágrafo, Recuos e espaçamentos''', deixe todas as opções de medidas com valor '''0 cm''' e '''espaçamento de linha simples'''.<br />
<br />
O título da receita deve estar em '''fonte Free Sans, tamanho 14, negrito e centralizado'''.<br />
<br />
O subtítulo '''Ingredientes''' deve estar com '''fonte Loma, tamanho 12, itálico e alinhamento a esquerda'''. <br />
<br />
Aplique a formatação do subtítulo '''Ingredientes''' no subtítulo '''Modo de preparo''' usando a ferramenta '''pincel'''.<br />
<br />
Use a ferramenta '''Localizar e substituir''' para trocar as palavras '''kg''' por '''quilos''' e '''2 dl''' por '''200 ml'''.<br />
<br />
Insira marcadores de círculos grandes nos ingredientes, com '''deslocamento de primeira linha em 1,25 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Insira numeração com pontos no modo de preparo, com ''' Antes do texto em 2 cm, deslocamento de primeira linha em - 0,75 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Envie o arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''<br />
<br />
<br />
<br />
'''Receita: Bacalhau a beira-alta'''<br />
<br />
<br />
''Ingredientes:'' <br />
<br />
<br />
6 postas de bacalhau;<br />
<br />
1 molho de couves galegas com os talos;<br />
<br />
1,5 kg de batatas;<br />
<br />
Pão de trigo duro;<br />
<br />
4 dentes de alho picados;<br />
<br />
2 dl de azeite.<br />
<br />
<br />
''Modo de preparo''<br />
<br />
<br />
Coza o bacalhau e, à parte, coza também as batatas e as couves.<br />
<br />
Corte o pão em fatias e coloque numa travessa funda. Por cima, deite a água de cozer o bacalhau em quantidade suficiente para ensopar o pão.<br />
<br />
Regue ainda com metade do azeite e polvilhe com metade dos alhos. Disponha o bacalhau, as batatas as couves por cima.<br />
<br />
Cubra com o restante azeite e os alhos picados. Sacuda a travessa e está pronto a servir. <br />
<br />
<br />
Como o texto deve ficar ao final do exercício:<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exercicio3writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=04/09/2018: Tabelas, Cabeçalho, Rodapé e Campos no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 6}}<br />
<br />
===Tabelas===<br />
<br />
Sabemos que uma tabela nada mais é do que um conjunto de dados disponibilizados em uma grade. Onde esta possui diversas linhas e colunas.<br />
<br />
Para criar uma tabela no Writer basta acessarmos o menu Tabela, Inserir, Tabela, pelo atalho Ctrl + F12 ou ainda pelo botão disponibilizado na barra de Ferramentas Padrão. Ao acessar uma das opções acima, será mostrada a tela de configuração da tabela.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabelawriter.jpg]]</div><br />
<br />
<br />
Na Figura acima podemos ver claramente que há a possibilidade de darmos um nome para a tabela por meio do campo “Nome” e de determinarmos quantas linhas e colunas nossa tabela terá, por meio dos campos “Colunas” e “Linhas”.<br />
<br />
Logo a seguir, abaixo do campo “Linhas” podemos ver um campo “Título”, onde se o marcarmos, nossa tabela terá N linhas com formatação de título (e. g. Negrito). A quantidade de linhas será definida no campo “As primeiras ... linhas”.<br />
<br />
O Campo “Borda” indica a existência ou não de uma linha separando cada célula que comporá a tabela criada.<br />
<br />
O botão “Autoformatar...” nos dá a possibilidade de darmos uma formatação para a tabela que será criada (e. g. Cores, fonte, bordas, alinhamento e etc).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela2writer.jpg]]</div><br />
<br />
<br />
Após a criação da tabela, podemos alterar suas propriedades ou parte dela, selecionando a parte que queremos alterar e indo até o menu Tabela, Propriedades da tabela. <br />
<br />
Nesta janela podemos alterar O nome, espaçamento, tamanho de coluna e linha, estilos de borda e cores de fundo.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela3writer.jpg]]</div><br />
<br />
<br />
===Cabeçalho===<br />
<br />
<br />
Para colocar um cabeçalho em um documento basta acessarmos o menu Inserir, Cabeçalho, Padrão. Então abrir-se-á uma área para digitação do texto do cabeçalho.<br />
<br />
Você poderá digitar o texto do cabeçalho em qualquer página do documento, que este será automaticamente replicado para as demais páginas existentes.<br />
<br />
Você poderá ainda, aplicar formatação ao cabeçalho, incluir borda e plano de fundo e também excluir o cabeçalho por meio da aba azul “Cabeçalho (Padrão)”. Para isto, basta clicar na setinha apontada para baixo existente na aba que as opções surgirão na forma de um menu pop-up.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:cabecalhowriter.jpg]]</div><br />
<br />
<br />
===Rodapé===<br />
<br />
<br />
ara inserir um rodapé, o procedimento é idêntico ao do cabeçalho, porém deve-se acessar o menu Inserir, Rodapé, Padrão]. Abrir-se-á uma área para digitação do texto do rodapé. Nesta área, pode-se colocar o que for necessário. No entanto, o mais comum de ser colocado nos rodapés de documentos são: número da página, data/hora da impressão, autor, quantidade total de páginas existentes no documento, dentre outros.<br />
<br />
Você poderá ainda, da mesma forma que no cabeçalho, aplicar formatação ao rodapé, incluir borda, plano de fundo e também o excluir. Tudo isto poderá ser realizado por meio da aba azul “Rodapé (Padrão)”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:rodapewriter.jpg]]</div><br />
<br />
<br />
===Campos===<br />
<br />
<br />
Este é mais um recurso muito útil existente no LibreOffice. Com ele você poderá fazer seu documento mostrar informações automaticamente e sem muito esforço, disponibilizado no menu Inserir, Campos.<br />
<br />
Os campos preexistentes no LibreOffice. são:<br />
<br />
* Data: coloca a data atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Hora: coloca a hora atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Número da página: exibe o número da página atual;<br />
* Total de páginas: exibe a quantidade de páginas existentes no documento;<br />
* Assunto: mostra o que foi registrado no campo “Assunto”, descrito nas “Propriedades” do documento;<br />
* Título: mostra o que foi registrado no campo “Título”, descrito nas “Propriedades” do documento;<br />
* Autor: mostra o primeiro e último nome listados em “Dados do Usuário” do LibreOffice no menu Ferramentas, Opções;<br />
* Outros: [Ctrl + F2] que dá a possibilidade de escolha de diversos campos, com diversas informações sobre o documento. Estes outros campos poderão ser escolhidos na tela “Campos” em suas diversas abas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:camposwriter.jpg]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
Crie uma tabela no documento em branco com os dados da imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabelawriter.jpg]]</div><br />
<br />
<br />
Formate a tabela com as seguintes configurações:<br />
<br />
<br />
* Linha de título mesclada, fonte Rekha, tamanho 14, cor vermelha, negrito e centralizado;<br />
* Linha de subtítulo com fonte Loma, tamanho 12, itálico e centralizado;<br />
* Demais linhas com fonte Garuda, tamanho 12 alinhamento justificado;<br />
* Insira cor de fundo de acordo com a imagem acima.<br />
<br />
No cabeçalho, insira o texto Proeja - Informática básica II em fonte Liberation Serif, tamanho 12 e negrito.<br />
<br />
No rodapé insira o número da página alinhado a direita.<br />
<br />
Ao final, o documento deve ter essa aparência:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabela2writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=11/09/2018: Corretor ortográfico, impressão e Figuras=<br />
<font size="3"><br />
{{Collapse top | Aula 7}}<br />
<br />
===Corretor ortográfico===<br />
<br />
Você pode verificar a ortografia de uma seleção de texto ou do documento por inteiro manualmente.<br />
<br />
A verificação ortográfica começa na posição atual do cursor ou no início da seleção de texto.<br />
<br />
Clique no documento ou selecione o texto que deseja verificar. Escolha Ferramentas - Ortografia e gramática.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretorwriter.jpg]]</div><br />
<br />
<br />
Sempre que é encontrado um erro de ortografia, surge a caixa de diálogo Verificação ortográfica e o LibreOffice oferece algumas sugestões de correção.<br />
Adote um dos seguintes procedimentos:<br />
<br />
Para aceitar a correção, clique na sugestão e, em seguida, em Corrigir.<br />
<br />
Edite a frase na caixa de texto superior e, em seguida, clique em Corrigir.<br />
<br />
Para adicionar a palavra desconhecida ao dicionário definido pelo usuário, clique em Adicionar ao dicionário.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretor2writer.jpg]]</div><br />
<br />
<br />
===Impressão===<br />
<br />
<br />
Para imprimir documentos no Libreoffice Writer, podemos clicar diretamente no botão imprimir ou ir no menu Arquivo, imprimir:<br />
<br />
Na janela que se abre, podemos escolher diversas configurações adicionais.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:imprimir2writer.jpg]]</div><br />
<br />
<br />
Na aba Geral, podemos escolher a impressora, quantidade de cópias, se serão agrupadas, quais páginas serão impressas (todas, somente uma ou uma parte).<br />
<br />
Na aba Libreoffice Writer podemos escolher se o plano de fundo será impresso, as figuras e objetos, texto oculto, cor do texto e páginas em branco.<br />
<br />
Em Layout escolhemos a quantidade de páginas por folha, a ordem e lados da página.<br />
<br />
E na aba Opções escolhemos se irá para uma impressora física ou um arquivo, agrupamento, bandejas definidas na impressora e tamanho definido na impressora.<br />
<br />
<br />
===Visualizar impressão===<br />
<br />
Antes de imprimir algum trabalho, convém observar como ficará o layout no papel, para evitar alguns acidentes, tais como quebras de páginas em locais indesejados, ajustes de parágrafos, entre outros. Para tanto, o auxílio da função Visualizar Impressão é fundamental.<br />
<br />
Acesse o menu Arquivo > Visualização de Página, no ícone na barra de ferramentas ou através do atalho Ctrl + Shift + O.<br />
<br />
Na tela aparecerá uma projeção exata de como ficará a impressão. Serão apresentadas algumas ferramentas, se quisermos analisar com mais detalhes:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:visualizarimpressaowriter.jpg]]</div><br />
<br />
<br />
'''Uma página<br/>'''<br />
Mostra uma página na janela de visualização.<br />
<br />
<br />
'''Duas páginas<br/>'''<br />
Mostra duas páginas na janela de visualização. As páginas ímpares aparecerão no lado direito e as páginas pares no lado esquerdo.<br />
<br />
<br />
'''Visualização de livro<br/>'''<br />
Selecione esta opção para ver a primeira página no lado direito da visualização. Se não a selecionar, a primeira página é mostrada no lado esquerdo da visualização.<br />
<br />
<br />
'''Várias páginas<br/>'''<br />
Define o número de páginas exibidas na tela. Clique na seta ao lado do ícone para abrir uma grade e selecionar o número de páginas a serem exibidas como linhas e colunas na visualização.<br />
<br />
<br />
'''Para o início do documento<br/>'''<br />
Vai para a primeira página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Página anterior<br/>'''<br />
Vai para a página anterior do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Próxima página<br/>'''<br />
Vai para a próxima página do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Para o fim do documento<br/>'''<br />
Vai para a última página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Menos zoom<br/>'''<br />
Diminui o zoom para ver mais do documento em um tamanho reduzido.<br />
<br />
<br />
'''Zoom de visualização<br/>'''<br />
Determina o nível de zoom da visualização de impressão.<br />
<br />
<br />
'''Mais zoom<br/>'''<br />
Aumenta o zoom para obter um close do documento.<br />
<br />
<br />
'''Imprimir<br/>'''<br />
Imprime o documento.<br />
<br />
<br />
'''Tela inteira<br/>'''<br />
Exibe ou oculta os menus e as barras de ferramentas no Writer ou no Calc. Para sair do modo de tela inteira, clique no botão Tela inteira ou pressione a tecla Esc.<br />
<br />
<br />
'''Fechar visualização<br/>'''<br />
Fecha a visualização e volta na edição do documento.<br />
<br />
<br />
===Figuras===<br />
<br />
<br />
A inserção de figura em um texto e sua manipulação é simples no Writer.<br />
<br />
Vamos passo a passo mostrar como se dá essa inserção. <br />
<br />
Primeiro abra o documento em que deseja inserir a figura e posicione o cursor no local desejado que ela apareça. Depois escolha Inserir - Figura. Localize o arquivo gráfico que você deseja inserir e, em seguida, clique em Abrir. <br />
<br />
Por padrão, a figura inserida é centralizada acima do parágrafo no qual você clicou. <br />
<br />
<br />
Veja que é criada uma barra de ferramenta flutuante chamada figura. Nela você modifica os aspectos de cor e padrão da figura e também inverte vertical ou horizontalmente a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figurawriter.jpg]]</div><br />
<br />
<br />
Quando é inserida uma figura a barra de ferramenta quadro é mostrada para configurar com mais facilidade a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura2writer.jpg]]</div><br />
<br />
<br />
Também temos a opção de formatar figura. Para isso, selecione a figura e vá no menu Formatar - Figura.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura3writer.jpg]]</div><br />
<br />
<br />
Nesta janela teremos várias opções de configuração, tais como ajuste de tamanho, ajuste no texto, posicionamento. hiperlink, recorte, bordas, transparência, etc.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=18/09/2018: Palestra Reflexos da reforma trabalhista para a classe trabalhadora=<br />
<font size="3"><br />
{{Collapse top | Aula 8}}<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=25/09/2018: Introdução ao Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 9}}<br />
<br />
===Libreoffice Calc===<br />
<br />
Calc é um software de planilha eletrônica multiplataforma de código aberto, desenvolvido originalmente pela Star Division, posteriormente pela Sun Microsystems (como parte da suíte StarOffice) e atualmente pela The Document Foundation, como parte da suíte LibreOffice. Também é distribuído gratuitamente com as suítes OpenOffice.org e NeoOffice.<br />
<br />
Nessa planilha, o número limite de linhas é de pouco mais de 1 milhão por planilha e o número limite de colunas é de 1024 por planilha.<br />
<br />
Na imagem abaixo podemos conhecer um pouco melhor a interface do Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interfacecalc.jpg]]</div><br />
<br />
<br />
As células do Calc possuem endereçamento, onde as colunas são definidas por letras e as linhas por números. Para identificar o endereço da célula, basta indicar primeiramente o endereçamento da coluna e depois da linha. Ex: '''A1'''.<br />
<br />
<br />
====Operadores====<br />
<br />
<br />
Devemos conhecer alguns símbolos que são muito utilizados, juntamente com a ordem dos cálculos efetuados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface2calc.jpg]]</div><br />
<br />
<br />
====Realce de valor====<br />
<br />
<br />
A função Realce de valor destaca os conteúdos das células através da diferenciação da cor da fonte. Para acioná-la, vá até o menu Exibir > Realce de valor ou clique na combinação de teclas Ctrl+F8.<br />
<br />
Textos são apresentados em preto, números em azul e fórmulas em verde. Essa configuração de cores é padrão para qualquer instalação do LibreOffice. Na figura abaixo, é possível identificar as três categorias. No exemplo, o conteúdo da célula B30 é a fórmula =1+1. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface3calc.jpg]]</div><br />
<br />
<br />
====Séries de preenchimento====<br />
<br />
<br />
Uma Série de preenchimento é uma forma fácil de fazer um preenchimento automático em uma área da planilha a partir de um valor inicial.<br />
<br />
Inicialmente, digite o valor inicial em uma célula. Com a célula selecionada, coloque o ponteiro do mouse sobre o ponto preto no canto inferior direito, chamado Alça de preenchimento, até que este se transforme em uma pequena cruz.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface4calc.jpg]]</div><br />
<br />
<br />
Arraste com o botão do mouse pressionado até a última célula da sequência desejada, como no passo 1 apresentado na tabela abaixo. Solte o botão do mouse e a área selecionada será preenchida com a sequência numérica correspondente (passo 2).<br />
<br />
Se a direção da sua seleção for horizontal para a esquerda ou vertical para cima, o Calc fará o preenchimento com decremento 1. Se a direção da sua seleção for horizontal para a direita ou vertical para baixo, o Calc fará o preenchimento com incremento 1.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface5calc.jpg]]</div><br />
<br />
<br />
Se você desejar criar uma sequência de preenchimento sem incremento algum, faça o mesmo procedimento, no entanto, ao clicar e arrastar com a alça de preenchimento, mantenha a tecla Ctrl pressionada.<br />
<br />
====Formatar Células====<br />
<br />
<br />
Permite que você especifique diversas opções de formatação e aplique atributos às células selecionadas.<br />
<br />
Escolha Formatar - Células<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:formatcelcalc.jpg]]</div><br />
<br />
<br />
Números<br />
Especifica as opções de formatação para a(s) célula(s) selecionada(s).<br />
<br />
<br />
Fonte<br />
Especifique a formatação e a fonte que deseja aplicar.<br />
<br />
<br />
Alinhamento<br />
Define ao opções de alinhamento para o conteúdo da célula atual, ou das células selecionadas.<br />
<br />
<br />
Bordas<br />
Define opções de borda para os objetos selecionados em Writer ou Calc.<br />
<br />
<br />
Plano de fundo<br />
Define a cor ou a figura do plano de fundo.<br />
<br />
<br />
Proteção de célula<br />
Define as opções de proteção para as células selecionadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=02/10/2018: Fórmulas simples Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 10}}<br />
<br />
===Funções===<br />
<br />
Funções são procedimentos baseados em operações e operandos que, manipulados, retornam um determinado resultado. Funções podem simplesmente representar a implementação de operadores, como a função Soma, que veremos adiante, ou, de forma mais complexa, realizar cálculos de nível avançado.<br />
<br />
<br />
Para inserir uma função através do assistente, siga os seguintes passos:<br />
<br />
Selecione a célula onde será inserida a função;<br />
<br />
Selecione uma das opções abaixo:<br />
<br />
* vá até o menu Inserir > Função ou<br />
* teclar Ctrl + F2 ou<br />
* clique sobre o botão Assistente de funções, na Barra de fórmulas.<br />
<br />
Será aberta a tela do Assistente de funções. Selecione, então, uma categoria de função na caixa Categoria;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalc.jpg]]</div><br />
<br />
<br />
Selecione o nome da função e clique no botão Próximo;<br />
<br />
Preencha os argumentos solicitados para a função;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcao2calc.jpg]]</div><br />
<br />
<br />
Clique OK. A fórmula será inserida na célula e o resultado será contabilizado.<br />
<br />
A função também pode ser digitada. Para isto, basta iniciar coma digitação do símbolo de = e posteriormente digitar o nome da fórmula desejada, juntamente com seu parâmetros.<br />
<br />
<br />
====Funções simples====<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaosomacalc.jpg]]</div><br />
<br />
<br />
No exemplo acima, a função é SOMA, o argumento é B2:B6 (leia-se de B2 até B6) e o resultado ( a soma dos valores) é 20. <br />
<br />
Como digitar<br />
<br />
Se as células são adjacentes: =SOMA(C2:C8) <br />
<br />
Essa função soma o conteúdo de células adjacentes (sequência C2 até C8)<br />
<br />
Se as células não são adjacentes: =SOMA(B2;C3;D1).<br />
<br />
A função Média calcula o valor médio de um intervalo, adjacente ou não.<br />
<br />
=MEDIA(C2:C8)<br />
<br />
A função Mínimo retorna o menor valor de um intervalo analisado<br />
<br />
=MINIMO(C2:C8)<br />
<br />
A função Máximo retorna o maior valor de um intervalo analisado<br />
<br />
=MAXIMO(C2:C8)<br />
<br />
A função Mediana de um intervalo é o seu valor central, ou seja, que divide o intervalo em duas partes iguais<br />
<br />
=MED(C2:C8)<br />
<br />
A função Moda retorna o valor que mais se repete em um intervalo. Caso dois números ou mais tenham a mesma quantidade de repetições, o menor valor será mostrado.<br />
<br />
=MODO(C2:C8)<br />
<br />
A função Concatenar agrupa valores indicados. Esta função aceita somente ;<br />
<br />
=CONCATENAR(C2;C5;C8)<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=09/10/2018: Fórmulas Compostas Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 11}}<br />
<br />
===Funções Lógicas===<br />
<br />
<br />
'''SE'''<br />
<br />
<br />
Esta é uma função bastante interessante pois permite ao usuário da planilha construir expressões condicionais, avaliando e apresentando diferentes resultados conforme uma cláusula avaliada.<br />
<br />
A estrutura da função SE é:<br />
<br />
=SE (CONDIÇÃO; VALOR_SE_CONDIÇÃO_VERDADEIRA; VALOR_SE_CONDIÇÃO_FALSA)<br />
<br />
O primeiro argumento é a condição. Normalmente, avaliamos o conteúdo de uma célula em relação a um dado parâmetro, como, por exemplo C4<100 ou A1=”APROVADO”.<br />
<br />
Caso a condição seja verdadeira, o segundo argumento é apresentado como resultado da função.<br />
<br />
Caso a condição seja falsa, o terceiro argumento é apresentado como resultado.<br />
<br />
No exemplo abaixo, avaliamos o valor da nota do aluno e, caso esteja acima da média, apresentamos o resultado “Aprovado”. Senão, apresentamos o resultado “Recuperação”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcse.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.NUM'''<br />
<br />
<br />
<br />
A função CONT.NÚM conta quantos valores numéricos estão entre os ARGUMENTOS da função.<br />
<br />
Entende-se como valores numéricos: números, datas e fórmulas cujo resultado seja um número. Células vazias ou células com conteúdo de texto não são contadas na função CONT.NÚM.<br />
<br />
O formato da função é:<br />
<br />
=CONT.NÚM(ARGUMENTOS)<br />
<br />
Observe no exemplo abaixo que nem todos os alunos fizeram a primeira avaliação. Podemos usar a função CONT.NÚM para contar as notas do intervalo B11:B19 e identificar quantos alunos de fato fizeram a prova.<br />
<br />
O resultado da função =CONT.NÚM(B11:B19) será 7 pois, as duas células, correspondentes aos alunos que não fizeram a prova, estão vazias.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontnum.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.SE'''<br />
<br />
<br />
<br />
A função CONT.SE tem como objetivo contar quantos valores obedecem a um determinado critério. A estrutura é bastante simples:<br />
<br />
=CONT.SE (INTERVALO; CONDIÇÃO)<br />
<br />
Os valores dentro do intervalo são avaliados um a um de acordo com a condição. O valor é contado somente se a condição for verdadeira.<br />
<br />
No exemplo abaixo, contamos quantos alunos estão com notas acima da média estabelecida.<br />
<br />
Note que usamos uma concatenação de texto para expressar adequadamente o critério, indicado no segundo argumento com a expressão “>”&B6. Ou seja, concatenamos o sinal de > com o conteúdo da célula B5.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse.jpg]]</div><br />
<br />
<br />
O resultado da função CONT.SE acima é de 7 alunos.<br />
<br />
Quando o critério ou condição for de igualdade, não precisamos usar a concatenação de texto, por exemplo:<br />
<br />
=CONT.SE(B10:B18;B6)<br />
<br />
Em sua construção mais comum, a função CONT.SE permite apenas um argumento como critério de contagem. No entanto, em casos específicos, é possível utilizar mais de um argumento através do uso de expressões regulares em fórmulas.<br />
<br />
O exemplo abaixo ilustra essa situação. A partir da tabela abaixo, desejamos obter a quantidade de cadastros de pessoas que são dos estados do Rio Grande do Sul e Santa Catarina.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse2.jpg]]</div><br />
<br />
<br />
Uma abordagem óbvia e simples seria a soma de CONT.SE:<br />
<br />
=CONT.SE(F3:F8;"RS")+CONT.SE(F3:F8;"SC")<br />
<br />
Uma abordagem elegante poderia utilizar expressões regulares:<br />
<br />
=CONT.SE(F3:F8;"RS|SC")<br />
<br />
Onde o símbolo | (pipe) entre as siglas RS e SC representa a operação OU lógica. Logo, estamos contando apenas os valores do intervalo de F3 até F8 que são iguais a RS ou a SC.<br />
<br />
<br />
'''CONT.VALORES'''<br />
<br />
<br />
A função CONT.VALORES permite contar células preenchidas com valores de texto, número ou fórmula dentro de um intervalo.<br />
<br />
O formato da função CONT.VALORES é:<br />
<br />
=CONT.VALORES(ARGUMENTOS)<br />
<br />
No exemplo abaixo, o usuário deverá preencher o espaço amarelo com cinco códigos de produto.<br />
<br />
Para contar quantas células já foram preenchidas, utilizamos a função CONT.VALORES e o intervalo de G5:G9.<br />
<br />
O resultado da função, no exemplo abaixo, será 3.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvalores.jpg]]</div><br />
<br />
<br />
<br />
'''CONTAR.VAZIO'''<br />
<br />
<br />
CONTAR.VAZIO conta quantas células do intervalo indicado em ARGUMENTOS estão vazias, isto é, sem conteúdo algum.<br />
<br />
=CONTAR.VAZIO(ARGUMENTOS)<br />
<br />
No nosso exemplo anterior, da função CONT.VALORES, calculamos quantas células do intervalo amarelo já haviam sido preenchidas. Podemos encontrar a informação complementar (quantas células faltam ser preenchidas) através da função CONTAR.VAZIO.<br />
<br />
No exemplo, a função CONTAR.VAZIO pode ser utilizada sobre o intervalo de G5:G9. O resultado da função na célula H15 será de 2.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvazio.jpg]]</div><br />
<br />
<br />
<br />
'''SOMASE'''<br />
<br />
<br />
A função SOMASE é útil para cálculos que envolvam valores totais a partir de um determinado critério. O formato da função é:<br />
<br />
=SOMASE(INTERVALO_DE_AVALIAÇÃO; CRITÉRIO; INTERVALO_DE_SOMA)<br />
<br />
Os valores do intervalo de avaliação são avaliados conforme o critério. Caso estejam de acordo com o critério indicado, o valor correspondente no intervalo de soma é somado ao resultado.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcsomase.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=23/10/2018: Avaliação=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
* Copie o conteúdo abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:avaliacaocalc.jpg]]</div><br />
<br />
<br />
* Efetue os cálculos solicitados (Total dos produtos por trimestre, Valor máximo, Valor mínimo, Média e Total por mês).<br />
<br />
* Salve o arquivo com o seu nome e envia para o seguinte e-mail:<br />
<br />
ederson.luiz@ifsc.edu.br<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=06/11/2018: Vínculo entre planilhas, Gráficos, Classificação e Filtros=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
===Classificação===<br />
<br />
<br />
No Libreoffice Calc, podemos efetuar a classificação de conteúdos, em ordem alfabética, de forma crescente ou decrescente.<br />
<br />
Para tanto, devemos clicar em um intervalo de banco de dados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc.jpg]]</div><br />
<br />
<br />
Ao selecionar um intervalo de células, somente estas células serão classificadas. <br />
<br />
Se você clicar somente em uma célula sem selecionar, então todo o intervalo de banco de dados será classificado.<br />
<br />
Escolha Dados - Classificar.<br />
<br />
O intervalo de células que será classificado é mostrado em cores invertidas.<br />
<br />
Selecione as opções de classificação desejadas.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc2.jpg]]</div><br />
<br />
Clique em OK.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc3.jpg]]</div><br />
<br />
<br />
===Filtro===<br />
<br />
<br />
Os filtros e filtros avançados permitem que você assegure que somente certas linhas (registros) de um intervalo de dados fiquem visíveis. Nos documentos de planilhas do LibreOffice, há várias possibilidades para a aplicação de filtros.<br />
<br />
Uma das utilizações para a função Autofiltro, que se encontra em Dados, Filtro, Autofiltro, é a de rapidamente restringir a exibição de registros com entradas idênticas em um campo de dados.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:autofiltrocalc.jpg|900px]]</div><br />
<br />
<br />
Na caixa de diálogo Filtro padrão, você também pode definir intervalos que contenham os valores em determinados campos de dados. É possível utilizar o filtro padrão para conectar até três condições com um operador lógico E ou OU.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtropadraocalc.jpg]]</div><br />
<br />
<br />
O Filtro avançado excede a restrição de três condições e permite até oito condições de filtro. Com os filtros avançados, você insere as condições diretamente na planilha.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtroavancadocalc.jpg]]</div><br />
<br />
<br />
Para remover um filtro, de forma a ver todas as células, clique dentro da área onde o filtro estiver aplicado e escolha Dados - Filtro - Redefinir filtro.<br />
<br />
Ao selecionar várias linhas de uma área onde um filtro foi aplicado, a seleção pode incluir linhas visíveis e linhas ocultas pelo filtro. Se depois você aplicar formatação, ou excluir as linhas selecionadas, esta ação só afetará as linhas visíveis. As linhas ocultas não serão afetadas.<br />
<br />
Isto é o oposto das linhas que foram ocultas manualmente pelo comando Formatar - Linhas - Ocultar linhas. Linhas ocultas manualmente são excluídas ao excluir uma seleção que as contenha.<br />
<br />
<br />
===Vínculo entre planilhas===<br />
<br />
Podemos utilizar conteúdos que se encontram em outras planilhas do documento.<br />
<br />
Para que isso ocorra, devemos utilizar como no exemplo abaixo:<br />
<br />
=Planilha2.A1<br />
<br />
Neste caso, o conteúdo da Planilha2, célula A1 será exibido onde esta fórmula for empregada.<br />
<br />
<br />
===Gráficos===<br />
<br />
<br />
No Calc, é fácil gerar gráficos a partir de qualquer planilha. <br />
<br />
Pode-se chamar o assistente de gráficos a partir do seu ícone ou do menu Inserir ... gráfico.<br />
<br />
Os gráficos no Calc estão muito fáceis e muito intuitivos e prometem-se ainda muitas melhorias para este recurso. <br />
<br />
Ao se invocar o comando Inserir Gráfico, tem-se uma tela como a seguir (previsão do gráfico e seu assistente):<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc.jpg]]</div><br />
<br />
<br />
Logo na Etapa 1 você terá vários tipos e subtipos de gráficos a escolher: barras, pizza, rede, dispersão, etc.<br />
<br />
Etapa 2 – Intervalo de Dados – aqui se informa ao Calc a área a ser computada e plotada.<br />
<br />
Etapa 3 – Série de Dados – Aqui se definem nomes e rótulos para as séries dos dados.<br />
<br />
Etapa 4 – É nesta etapa que se fazem as legendas do gráfico.<br />
<br />
A seguir, vemos um gráfico de Pizza gerado no LibreOffice Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc2.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=13/11/2018: Introdução ao Libreoffice Impress=<br />
<font size="3"><br />
{{Collapse top | Aula 13}}<br />
<br />
===Tela Principal===<br />
<br />
O Impress é software para desenvolvimento de apresentações. Por meio deste software pode-se preparar as apresentações textuais, adicionar imagens, sons e até mesmo animação.<br />
<br />
<div style="text-align: left;">[[Arquivo:impressprincipal.jpg]]</div><br />
<br />
<br />
===Slide Mestre===<br />
<br />
Toda apresentação possui no mínimo um slide mestre. Este slide em especial leva este nome não é à toa e veremos o por quê.<br />
<br />
No slide mestre pode-se configurar e/ou alterar as formatações de uma apresentação inteira.<br />
<br />
Nem sempre as pessoas que trabalham com este tipo de ferramenta o utilizam. Na maioria das vezes por pura falta de conhecimento.<br />
<br />
Vamos começar a desenvolver nossa apresentação exatamente pelo slide mestre. Mas antes disso vamos acessar o menu [Exibir | Régua], para que a régua seja mostrada da mesma forma como é mostrada no Writer.<br />
<br />
Agora então vamos acessar o menu [Exibir | Mestre | Slide Mestre]. Após este passo, podemos observar que a interface mudou bastante:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressmestre.jpg]]</div><br />
<br />
<br />
Tudo que fizermos neste slide será replicado para todos os slides que tenham este mesmo layout em nossa apresentação.<br />
<br />
<br />
Para fazer uma apresentação, não é pré-requisito configurar o slide mestre. No entanto, há alguns bons motivos para você fazê-lo:<br />
<br />
* Configurando o slide mestre, você não precisará fazer isto de novo em nenhum outro slide, pois, isto acontecerá automaticamente;<br />
* Hoje esta apresentação vai ter um fundo de tela voltado para este curso, amanhã se o autor não ficar satisfeito ou se for usá-la em outro curso, bastará fazer a alteração no slide mestre e tudo estará resolvido.<br />
<br />
<br />
===Segundo Slide===<br />
<br />
<br />
Para criar o segundo slide vamos dar um clique com o botão direito do mouse na área sob as miniaturas de slides. <br />
<br />
No menu pop-up que aparecer acesse a opção “Novo slide”.<br />
<br />
Muito provavelmente o slide que foi criado veio com o mesmo layout do anterior a ele. Então, vá até a área de layout de slides e clique no layout que gostaria de utilizar.<br />
<br />
<br />
===Slide com imagem===<br />
<br />
<br />
Mais uma vez vamos repetir o processo de criar um novo slide, ou seja, clique com o botão direito do mouse sobre a área limpa sob as miniaturas de slides. Então escolha a opção “Novo slide”.<br />
<br />
Será criado um slide com layout padrão. Vamos alterar o layout para um que comporte texto e objetos.<br />
<br />
Agora, no quadro do lado direito é apresentada uma imagem central que na verdade são quatro botões:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem.jpg]]</div><br />
<br />
<br />
Clique no botão para inserir “Imagem”. Será aberta uma caixa de diálogo do sistema operacional que você estiver usando, então, vá até a pasta onde está o arquivo, selecione-o e aperte o botão “Abrir” (Open em inglês).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem2.jpg]]</div><br />
<br />
<br />
O slide apresentará a imagem selecionada. Clique na figura e ajuste-a para que fique num tamanho adequado. E está pronto o terceiro slide.<br />
<br />
<br />
===Exercício===<br />
<br />
Desenvolva a apresentação abaixo de forma que fique o mais parecida possível.<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag1.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag2.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag3.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag4.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag5.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}<br />
<br />
=20/11/2018: Libreoffice Impress - Efeitos, aparência e demais configurações=<br />
<font size="3"><br />
{{Collapse top | Aula 14}}<br />
<br />
===Modificando a aparência de todos os slides===<br />
<br />
Para modificar a aparência de um slide, devemos alterar o slide mestre. Vimos anteriormente a criação de um silde mestre do zero, mas nesse momento iremos usar modelos prontos. Para tanto, clique no botão Páginas mestre no painel lateral, como mostra a imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssslidemestrepronto.jpg]]</div><br />
<br />
<br />
Basta escolher o modelo desejado que automaticamente será aplicado em todos os slides.<br />
<br />
<br />
===Avançar slides automaticamente===<br />
<br />
<br />
Pode-se configurar a apresentação para avançar automaticamente para o próximo slide após um determinado período de tempo (por exemplo na forma de quiosque ou carrocel) a partir do menu Apresentação de slide → Configurações da apresentação de slides ou para avançar automaticamente após um período preestabelecido de tempo diferente para cada slide.<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssstransicaoslides.jpg]]</div><br />
<br />
Para configurar este último, escolha Apresentação de slide → Cronometrar. Quando usamos esta ferramenta, um temporizador de pequeno porte é exibido no canto inferior esquerdo. Quando estiver pronto para avançar para o próximo slide, clique no temporizador. O Impress vai memorizar os intervalos e na próxima apresentação dos slides, estes irão avançar automaticamente após o tempo expirar.<br />
<br />
<br />
===Transições de slide===<br />
<br />
<br />
Transição de slide é a animação que é reproduzida quando um slide for alterado. Pode-se configurar a transição de slide a partir da aba Transição de slides no painel de Tarefas. Selecione a transição desejada, a velocidade da animação, e se a transição deve acontecer quando se clica com o mouse (de preferência) ou automaticamente depois de um determinado número de segundos. Clique Aplicar a todos os slides, a menos que prefira ter diferentes transições na apresentação.<br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 14}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impresssslidemestrepronto.jpg&diff=152953Arquivo:Impresssslidemestrepronto.jpg2018-11-20T19:37:15Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2018-2&diff=152952INF-2018-22018-11-20T19:36:52Z<p>Ederson.luiz: </p>
<hr />
<div>=Informática Básica II= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 3a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2018-2<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/2/2b/PPC_PROEJA_-_ano_2015.pdf PPC Proeja Operador de Computador]<br />
<br />
<br />
==Ementa==<br />
<br />
Aplicativos de escritório, tais como editor de texto, planilha eletrônica e ferramenta de apresentação.<br />
<br />
Navegação na Internet, pesquisa e cuidados com a segurança da informação.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Elaborar documentos digitais;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional;<br />
* Redigir e formatar documentos utilizando o editor de textos;<br />
* Construir planilhas eletrônicas, aproveitando suas funções;<br />
* Montar apresentações dinâmicas e interativas;<br />
* Navegar na internet, pesquisar e utilizar aplicativos Web como webmail, ferramentas de escritório online e redes sociais;<br />
* Reconhecer URLs (endereços) e mecanismos de segurança para navegação segura.<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.hardware.com.br/livros/linux/dicas-para-openofficebroffice.html Dicas de Openoffice]<br />
* [https://www.tecmundo.com.br/office/3767-como-migrar-do-office-para-o-openoffice-sem-dores-de-cabeca.htm Como migrar do Office para o Openoffice sem dores de cabeça]<br />
<br />
=31/07/2018: Apresentação da disciplina, introdução ao Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina===<br />
<br />
Introdução ao componente curricular e Introdução ao Libreoffice.<br />
<br />
'''Arquivo apresentação da disciplina'''<br />
<br />
[https://drive.google.com/file/d/127DSInkISdvAkptI3D_iSCafRoRkTepw/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://pt-br.libreoffice.org/baixe-ja/libreoffice-novo/ Link para download do LibreOffice]<br />
<br />
<br />
O LibreOffice é uma ferramenta do tipo “office” totalmente gratuita e de código aberto.<br />
<br />
Mas quais os motivos para usarmos o Libreoffice?<br />
<br />
* O LibreOffice é um conjunto de softwares de uso profissional ou doméstico ideal para quem quer uma suíte de escritório para o dia a dia e não deseja softwares desatualizadas e independentes.<br />
* Toda a interface do LibreOffice é padronizada, assim como acontece com o Microsoft Office. Conjuntos e ícones e funcionalidades são semelhantes em toda a interface do usuário. As teclas de atalho são diferentes dos utilizados em outras soluções, porém são bem simples de memorizar.<br />
* O LibreOffice pode ser instalado e utilizado de uma forma [https://pt-br.libreoffice.org/baixe-ja/portable-versions/ portátil], sem necessidade de instalação no computador de uso.<br />
* O LibreOffice é compatível com todos os formatos gerados pelos aplicativos Microsoft, inclusive os documentos mais antigos, tais como DOC, XLS e PPT.<br />
* O LibreOffice é um software de código aberto e grátis. Pode ser instalados em diversos computadores e ser utilizado para qualquer finalidade.<br />
<br />
No decorrer do curso iremos trabalhar com os seguintes softwares:<br />
<br />
'''LibreOffice Writer:'''<br />
<br />
O Writer é o processador de texto do LibreOffice e é um software similar ao Microsoft Word. Com o Writer é possível criar desde textos simples, até textos com padrões complexos, com imagens, tabelas, anotações, estilos e numeração de páginas. Sua interface lembra o Word na versão 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Calc:'''<br />
<br />
O Calc é o editor de planilhas eletrônicas do LibreOffice e é um software similar ao Microsoft Excel. Com o Calc é possível criar planilhas e gráficos de todos os tipos, com imagens, formatação de texto e bordas. Sua interface lembra o Excel 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Impress:'''<br />
<br />
O Impress é o criador de apresentações do LibreOffice e é um software similar ao Microsoft Power Point. Com o Impress é possível criar apresentações de todos tipos, com diversos slides, imagens, formas, animações e transições. Sua interface lembra o Power Point 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
<br />
===LibreOffice Writer===<br />
<br />
<br />
Para a maioria das nossas atividades no software Writer, nós faremos uso de textos.<br />
<br />
Vamos conhecer um pouco de sua interface:<br />
<br />
<div style="text-align: center;">[[Arquivo:writerinterface.jpg|900px]]</div><br />
bit.ly/inf-2018-2<br />
As barras de ferramentas podem ser movidas, de acordo com a necessidade ou preferência:<br />
<br />
<div style="text-align: center;">[[Arquivo:moverbarra.jpg|900px]]</div><br />
<br />
<br />
As funções dos botões também podem ser acessadas via teclas de atalho:<br />
<br />
Teclas de função para o LibreOffice Writer<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho1.jpg]]</div><br />
<br />
<br />
Teclas de atalho para controlar documentos e janelas<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho2.jpg]]</div><br />
<br />
<br />
Teclas de atalho para editar ou formatar documentos<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho3.jpg]]</div><br />
<br />
<br />
A extensão padrão do arquivo é '''ODT'''. Se salvarmos um arquivo com o nome '''Exemplo''', o mesmo se chamará '''Exemplo.odt'''.<br />
<br />
Para selecionarmos o texto, podemos utilizar o mouse ou o teclado, através da tecla '''SHIFT''' + '''SETA DIRECIONAL'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=07/08/2018: Formatação e alinhamento=<br />
<font size="3"><br />
{{Collapse top | Aula 2}}<br />
<br />
===Barra de ferramentas Formatação===<br />
<br />
A barra de Formatação permite alterar as configurações relacionadas ao texto em si, como fonte, tamanho de fonte, estilos, negrito, sublinhado, etc.<br />
<br />
<div style="text-align: left;">[[Arquivo:barraformatacao.jpg]]</div><br />
<br />
Estilos e Formatação (F11): Exibe a janela Estilos e Formatação (abaixo) que exibe os estilos pré-definidos e também permite salvar configurações relativas ao tamanho e cor da fonte, espaçamento entre linhas do parágrafo. É possível alterar os estilos existentes ou mesmo criar novos.<br />
<br />
<div style="text-align: left;">[[Arquivo:estilowriter.jpg]]</div><br />
<br />
<br />
Nesta caixa de seleção escolhemos a fonte:<br />
<br />
<div style="text-align: left;">[[Arquivo:fontewriter.jpg]]</div><br />
<br />
<br />
Permite definir o tamanho da fonte, entre 2 e 999,9:<br />
<br />
<div style="text-align: left;">[[Arquivo:tamanhofontewriter.jpg]]</div><br />
<br />
<br />
Aplicam negrito, itálico e sublinhado respectivamente. Atalhos CTRL+B, CTRL+I e CTRL+U:<br />
<br />
<div style="text-align: left;">[[Arquivo:niswriter.jpg]]</div><br />
<br />
<br />
Aqui estão os possíveis alinhamentos para os parágrafos e são extremamente cobrados em concursos. <br />
<br />
<div style="text-align: left;">[[Arquivo:alinhamentowriter.jpg]]</div><br />
<br />
<br />
Alinhamento à esquerda. Atalho CTRL + L.<br />
<br />
Obs.: Quando o parágrafo está alinhado a esquerda fica desalinhado a direita.<br />
<br />
Alinhamento Centralizado. Atalho CTRL + E.<br />
<br />
Obs.: Quando o parágrafo está centralizado fica desalinhado a esquerda e a direita.<br />
<br />
Alinhamento à Direita. Atalho CTRL + R.<br />
<br />
Obs.: Quando o parágrafo está alinhado a direita fica desalinhado a esquerda.<br />
<br />
Alinhamento Justificado. Atalho CTRL + J.<br />
<br />
Obs.: Quando o parágrafo está justificado fica alinhado a direita e a esquerda.<br />
<br />
Dica: Para aplicar qualquer alinhamento a um parágrafo não é preciso selecionar o parágrafo, basta que o cursor esteja dentro do parágrafo.<br />
<br />
<br />
Cor da Fonte. Permite alterar a cor da fonte.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfontewriter.jpg]]</div><br />
<br />
<br />
Dica: Não é preciso selecionar a palavra que se deseja alterar a cor da fonte, basta que o cursor esteja posicionado dentro da palavra.<br />
<br />
<br />
Realçar. Permite realçar um texto com várias cores.<br />
<br />
<div style="text-align: left;">[[Arquivo:realcewriter.jpg]]</div><br />
<br />
<br />
Cor do Plano de Fundo. Permite alterar a cor do plano de fundo da posição onde o cursor está ou no trecho selecionado.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfundowriter.jpg]]</div><br />
<br />
<br />
'''Exercício'''<br />
<br />
<br />
<div style="text-align: center;">'''O Conceito de Mercado'''</div><br />
<br />
<br />
O conceito de <u>mercado</u> continua intimamente associado à idéia de <u>local</u> onde se efetuam transações entre produtores e consumidores. Consideramos essa noção restritiva, pelos seguintes aspectos:<br />
O mercado é hoje um espaço de realização de operações econômicas de compra e venda que vai para além dos seus contornos <u>físicos</u> e mesmo <u>temporais</u>.<br />
De fato, estão a surgir com grande freqüência <u>formas imateriais de mercado</u> (…).<br />
Essas formas de mercado lançam mão dos meios proporcionados pela sociedade de informação, possibilitando a realização de compras e vendas em casa, pela simples manutenção interativa de um ecrã de televisão ou, mais simplesmente, através de um telefonema para um número fornecido por aquele ecrã, com entrega imediata no domicilio ou pelo correio, como é uso da chamada televisão comercial.<br />
Existem operações de compra e venda que se contratam hoje e se realizam apenas daqui a alguns meses (como por exemplo, nos mercados de futuros, caso dos mercados de cereais nos Estados Unidos da América,...).<br />
Por outro lado existe uma diversidade de mercados, que vai desde os mercados de produtos finais ou de consumo final aos mercados de produtos intermédios e de fatores produtivos, bem como ao mercado de trabalho ou à bolsa ou <u>mercado de valores imobiliários</u>. Aos mercados nacionais sobrepõem-se os <u>mercados transnacionais</u>, de natureza informal, ou de diversos acordos de comércio livre, uniões aduaneiras ou comunidades econômicas.<br />
Tudo são razões para que se considere a noção de mercado como relativa e circunstancial, além de mutável no tempo.<br />
Uma coisa é certa: num mercado existem sempre intenções de compra (compra), intenções de venda (<u>oferta</u>), um preço e uma situação de equilíbrio mais ou menos estável fornecida por esse preço e pela quantidade correspondente.<br />
<br />
<br />
<div style="text-align: right;">Extraído de: Tinto, G., Introdução à Economia, 1995.</div><br />
<br />
<br />
# Grave o documento com o nome '''Exercicio1_Writer_Nome_Aluno'''.<br />
# Centralize o título “O Conceito de Mercado” no texto.<br />
# Formate o título como: '''negrito, tamanho 16''', tipo de letra '''Dejavu Sans'''.<br />
# Efetue o '''alinhamento justificado''' do texto.<br />
# Formate o texto com a fonte '''Nimbus Sans L''' e tamanho '''11'''<br />
# '''Alinhe à direita''' a fonte de onde foi extraído o texto (última linha) e coloque o texto em '''itálico'''<br />
# Marque a '''bold''' (negrito) os termos/expressões sublinhados acima<br />
# Anule os sublinhados e mantenha o negrito dos mesmos termos expressões<br />
# Coloque a '''negrito, itálico e sublinhada''' todas as ocorrências das palavras compra e compras.<br />
<br />
<br />
Envie este arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=14/08/2018: Colunas, capitular e hifenização=<br />
<font size="3"><br />
{{Collapse top | Aula 3}}<br />
<br />
===Criando colunas===<br />
<br />
<br />
O Writer permite criar colunas em seus documentos de texto. É possível inserir colunas em um estilo de página ou em um bloco individual de texto, sendo possível ainda formatar o layout da coluna de acordo com suas preferências:<br />
<br />
* Inserir colunas em um estilo de página;<br />
* Inserir colunas a um bloco de texto individual;<br />
* Formatar um layout de coluna;<br />
* Reverter para um layout de coluna simples.<br />
<br />
<br />
====Inserindo colunas em um estilo de página====<br />
<br />
<br />
Para inserir uma coluna em um estilo de página, clique em qualquer lugar da página e escolha Formatar > Colunas... no menu principal. Abre-se a janela Colunas:<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter.jpg]]</div><br />
<br />
<br />
====Inserindo colunas em um bloco de texto====<br />
<br />
<br />
Também é possível inserir colunas em um bloco de texto individual. Isso é útil caso não se queira modificar o estilo da página, ou se você quiser inserir colunas dentro de colunas. Observe que o Writer criará automaticamente uma seção a partir do bloco de texto selecionado. Uma seção é simplesmente um bloco de texto que tem uma formatação especial.<br />
<br />
Para inserir uma coluna em um bloco individual de texto, selecione o texto desejado, escolhendo em seguida Formatar > Colunas... a partir do menu principal. Abre-se a janela Colunas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter2.jpg]]</div><br />
<br />
Se você inserir colunas em um bloco de texto, é possível escolher como você deseja distribuir o texto pela coluna. È possível distribuir o texto de uma ou duas maneiras:<br />
<br />
* Uniformemente. Se você escolher distribuir o texto uniformemente, o Writer preencherá a primeira linha de cada coluna, seguindo para a segunda linha de cada coluna, e assim por diante.<br />
* Estilo Jornal. Se você escolher distribuir o texto em Estilo Jornal, o Writer preencherá as colunas uma por vez, começando pela primeira coluna.<br />
<br />
Para distribuir o texto uniformemente, marque a caixa de seleção Distribuir conteúdo uniformemente em todas todas as colunas na área Configurações. Desmarque esta caixa de seleção se você quiser distribuir o texto no estilo jornal.<br />
<br />
<br />
====Especificando o número de colunas====<br />
<br />
<br />
Se preferir criar um layout de coluna personalizado, você deverá especifcar o número de colunas desejado. Insira o número desejado na caixa Colunas da área Configurações.<br />
<br />
<br />
====Formatando a largura e o espaçamento da coluna====<br />
<br />
<br />
Para criar colunas com espaçamento uniforme com a mesma largura, marque a caixa de seleção AutoLargura na área Largura e espaçamento.<br />
<br />
Para personalizar a largura e o espaçamento das colunas, siga as seguintes etapas:<br />
<br />
* Na área de Largura e espaçamento, desmarque a caixa de seleção AutoLargura.<br />
* Na linha Largura, insira uma largura para cada coluna.<br />
* Na linha Espaçamento, insira o valor de espaçamento desejado entre cada par de coluna.<br />
<br />
Utilize as teclas direcionais na linha Coluna para rolar pelas colunas.<br />
<br />
<br />
====Formatando as linhas separadoras====<br />
<br />
<br />
Para exibir as linhas separadoras entre as colunas, siga as seguintes etapas:<br />
<br />
* A partir da lista suspensa Linha na área Linha separadora, selecione o tipo de linha desejado.<br />
* Por padrão, as linhas separadoras têm o mesmo tamanho das colunas. Caso deseje que as linhas separadoras sejam mais curtas do que a coluna, utilize a caixa Altura para inserir a altura das linhas separadoras como uma porcentagem do tamanho das colunas. Por exemplo, se você inserir 50%, as linhas separadoras terão metade do tamanho das colunas.<br />
* Se você inseriu uma altura menor do que 100%, use a lista suspensa Posição para selecionar um alinhamento vertical para as linhas do separador.<br />
<br />
<br />
====Revertendo o layout de uma coluna simples====<br />
<br />
<br />
Para reverter o layout de uma coluna simples em um estilo de página ou em um bloco de texto:<br />
<br />
* Clique em qualquer local no layout da coluna.<br />
* A partir do menu principal, escolha Formatar > Colunas... A janela Colunas aparece. <br />
* Na área Configurações, clique no layout de coluna simples localizado no lado esquerdo da caixa Colunas . Ou, volte a caixa Colunas para 1.<br />
* Clique em OK. A janela Colunas se fecha e o layout é revertido para uma coluna simples.<br />
<br />
<br />
===Capitulares===<br />
<br />
<br />
Basta somente você deixar o cursor no parágrafo que você deseja a primeira letra capitulada. Vá no meu Parágrafo e escolha a guia Capitulares. Na parte de Configurações, ative a caixa Exibir capitulares. Também pode escolher o número de caracteres, se vai utilizar a palavra inteira, quantidade de linhas a serem utilizadas, espaçamento até o texto e estilo do caractere. Após efetuar as configurações, clique em Ok.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:capitulareswriter.jpg]]</div><br />
<br />
<br />
===Hifenização===<br />
<br />
<br />
Insere hifens nas palavras grandes demais para caber no fim da linha. O LibreOffice procura no documento e sugere uma hifenização que possa ser aceita ou rejeitada. Se o texto estiver selecionado, a caixa de diálogo Hifenização atuará somente no texto selecionado. Se não houver texto selecionado, a caixa de diálogo Hifenização atuará em todo o documento.<br />
<br />
<br />
Agora, para colocar Hifenização, é bem simples, pressione Ctrl + A, para selecionar tudo ou selecione a parte do texto que deseja hifenizar e depois justifique o texto. Logo em seguida, clique em Ferramentas > Idioma > Hifenização. Depois, é só confirmar quais palavras que deseja hifenizar ou clicar em hifenizar tudo e pressione OK.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:hifenizacaowriter.jpg]]</div><br />
<br />
===Exercício===<br />
<br />
<br />
Copie o texto abaixo e posteriormente efetue os ajustes pedidos:<br />
<br />
<br />
----<br />
<br />
<br />
Das Vantagens de Ser Bobo<br />
<br />
<br />
O bobo, por não se ocupar com ambições, tem tempo para ver, ouvir e tocar o mundo. O bobo é capaz de ficar sentado quase sem se mexer por duas horas. Se perguntado por que não faz alguma coisa, responde: "Estou fazendo. Estou pensando." <br />
Ser bobo às vezes oferece um mundo de saída porque os espertos só se lembram de sair por meio da esperteza, e o bobo tem originalidade, espontaneamente lhe vem a idéia. <br />
O bobo tem oportunidade de ver coisas que os espertos não vêem. Os espertos estão sempre tão atentos às espertezas alheias que se descontraem diante dos bobos, e estes os vêem como simples pessoas humanas. O bobo ganha utilidade e sabedoria para viver. O bobo nunca parece ter tido vez. No entanto, muitas vezes, o bobo é um Dostoievski. <br />
Há desvantagem, obviamente. Uma boba, por exemplo, confiou na palavra de um desconhecido para a compra de um ar refrigerado de segunda mão: ele disse que o aparelho era novo, praticamente sem uso porque se mudara para a Gávea onde é fresco. Vai a boba e compra o aparelho sem vê-lo sequer. Resultado: não funciona. Chamado um técnico, a opinião deste era de que o aparelho estava tão estragado que o conserto seria caríssimo: mais valia comprar outro. Mas, em contrapartida, a vantagem de ser bobo é ter boa-fé, não desconfiar, e portanto estar tranqüilo. Enquanto o esperto não dorme à noite com medo de ser ludibriado. O esperto vence com úlcera no estômago. O bobo não percebe que venceu. <br />
Aviso: não confundir bobos com burros. Desvantagem: pode receber uma punhalada de quem menos espera. É uma das tristezas que o bobo não prevê. César terminou dizendo a célebre frase: "Até tu, Brutus?" <br />
Bobo não reclama. Em compensação, como exclama! <br />
Os bobos, com todas as suas palhaçadas, devem estar todos no céu. Se Cristo tivesse sido esperto não teria morrido na cruz. <br />
O bobo é sempre tão simpático que há espertos que se fazem passar por bobos. Ser bobo é uma criatividade e, como toda criação, é difícil. Por isso é que os espertos não conseguem passar por bobos. Os espertos ganham dos outros. Em compensação os bobos ganham a vida. Bem-aventurados os bobos porque sabem sem que ninguém desconfie. Aliás não se importam que saibam que eles sabem. <br />
Há lugares que facilitam mais as pessoas serem bobas (não confundir bobo com burro, com tolo, com fútil). Minas Gerais, por exemplo, facilita ser bobo. Ah, quantos perdem por não nascer em Minas! <br />
Bobo é Chagall, que põe vaca no espaço, voando por cima das casas. É quase impossível evitar excesso de amor que o bobo provoca. É que só o bobo é capaz de excesso de amor. E só o amor faz o bobo.<br />
<br />
<br />
Clarice Lispector<br />
<br />
<br />
----<br />
<br />
<br />
* Formate o título do texto com fonte '''Loma''', tamanho '''14''', alinhamento '''centralizado''', e '''negrito'''.<br />
* selecione o texto (sem selecionar o título e nem a fonte do texto) e aplique o alinhamento '''justificado''', fonte '''Dejavu Sans''', tamanho '''12'''.<br />
* Ainda com o texto selecionado, vá em '''Formatar > Colunas''', selecione 2 colunas, espaçamento de '''0,50 cm''', estilo '''linha contínua'''.<br />
* No texto selecionado aplique a hifenização em todas as palavras.<br />
* Insira a opção Capitulares, com tamanho de 3 linhas no início do texto.<br />
* Alinhe a última linha (fonte do texto) a '''direita''', '''itálico''', fonte '''Droid Sans''' e tamanho '''10'''.<br />
<br />
<br />
O texto deve ficar neste formato:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:texto2writer.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/08/2018: Aula suspensa=<br />
<font size="3"><br />
{{Collapse top | Aula 4}}<br />
<br />
Aula suspensa devido a paralização dos técnicos administrativos.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=28/08/2018: Formatações e funções úteis no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 5}}<br />
<br />
===Comando Localizar e Substituir===<br />
<br />
Para se localizar palavras em um texto qualquer, basta que você acesse o menu '''Editar, Localizar''' ou por meio do atalho '''Ctrl + F'''. Logo será aberto, no canto inferior esquerdo do aplicativo, um campo para digitação da palavra a ser procurada.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarwriter.jpg]]</div><br />
<br />
<br />
O recurso para “localizar e substituir” também é muito importante pois nos auxilia a corrigir erros espalhados pelo texto ou mesmo a mudança de uma palavra por outra de mesmo significado. Para usarmos o recurso de “localizar e substituir” basta acessarmos o menu '''Editar, Localizar e substituir''' ou diretamente pelo atalho '''Ctrl + H'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarsubstituirwriter.jpg]]</div><br />
<br />
<br />
===Marcadores e numeração===<br />
<br />
Esse comando é utilizado para inserir no texto, marcadores e/ou numeração, como o próprio título desde tópico diz.<br />
O comando para colocar marcadores ou mudar os marcadores já adicionados em um texto, pode ser acionado por meio do menu '''Formatar, Marcadores e numerações'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumerwriter.jpg]]</div><br />
<br />
<br />
Nas duas primeiras abas definimos o tipo de marcador que queremos usar em nosso texto. <br />
<br />
Passando para a terceira aba “Estrutura de tópicos” definiremos como ficará a estrutura de tópicos que estamos criando em nosso texto. Mais uma vez, teremos 8 opções para escolha.<br />
<br />
Podemos utilizar também, ao invés dos marcadores tradicionais, figuras no lugar dos números ou símbolos. Estes estão disponíveis na aba “Figuras”.<br />
<br />
Nas próximas abas temos a parte de configuração dos marcadores. A aba “Posição” nos proporciona a possibilidade de definirmos as distâncias, em relação a margem, de todos os dez níveis de marcadores que podem existir no nosso documento.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer2writer.jpg]]</div><br />
<br />
<br />
Já a aba “Opções” nos permite, também por nível, definir:<br />
<br />
* O tipo de “Numeração” (algarismos arábicos, romanos, gregos e etc.),<br />
* Definir o que virá “Antes” do marcador e “Depois” também (veja que no campo “Depois” existe um “.” e é exatamente este ponto que está sendo mostrado do lado direito do “1” mostrado no quatro ao lado do campo, nos diversos níveis),<br />
* Definir o “Estilo de caractere” que será usado,<br />
* “Mostrar subníveis” em cada marcador e<br />
* Colocar um determinado marcador para “Iniciar em”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer3writer.jpg]]</div><br />
<br />
<br />
===Ferramenta Pincel===<br />
<br />
<br />
Esse comando copia toda a formatação de um objeto ou texto e aplica ao objeto que será clicado ou marcado a seguir. O Pincel não se encontra em um item de menu específico, porém, possui um botão na barra de ferramentas padrão, conforme Figura a seguir.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:pincelwriter.jpg]]</div><br />
<br />
<br />
Como utilizar o Pincel:<br />
<br />
* Primeiro clique na palavra ou objeto que você deseja copiar os formatos nele aplicados (por exemplo tipo da fonte, tamanho e etc.);<br />
* Em seguida, clique na palavra a qual você deseja que possua os mesmos formatos da palavra anterior (a que você copiou os formatos).<br />
<br />
===Recuos e espaçamentos===<br />
<br />
Este recurso permite alterar a posição inicial, final e primeira linha do texto.<br />
<br />
Escolha a guia Formatar - Parágrafo - Recuos e espaçamento<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:recuoespacamentowriter.jpg]]</div><br />
<br />
<br />
A opção '''Antes do texto''' permite indicar onde o texto irá iniciar.<br />
<br />
A opção '''Depois do texto''' indica onde ele irá terminar.<br />
<br />
Já a opção '''Primeira linha''' indica onde a primeira linha do parágrafo irá iniciar.<br />
<br />
As opções '''Acima do parágrafo''' e '''Abaixo do parágrafo''' indicam o espaçamento entre as linhas antes e depois de um parágrafo, respectivamente.<br />
<br />
A opção '''Entre linhas''' define o espaço entre cada linha do texto.<br />
<br />
<br />
===Exercício===<br />
<br />
<br />
Digite o texto abaixo. <br />
Vá na opção f'''ormatar parágrafo, Recuos e espaçamentos''', deixe todas as opções de medidas com valor '''0 cm''' e '''espaçamento de linha simples'''.<br />
<br />
O título da receita deve estar em '''fonte Free Sans, tamanho 14, negrito e centralizado'''.<br />
<br />
O subtítulo '''Ingredientes''' deve estar com '''fonte Loma, tamanho 12, itálico e alinhamento a esquerda'''. <br />
<br />
Aplique a formatação do subtítulo '''Ingredientes''' no subtítulo '''Modo de preparo''' usando a ferramenta '''pincel'''.<br />
<br />
Use a ferramenta '''Localizar e substituir''' para trocar as palavras '''kg''' por '''quilos''' e '''2 dl''' por '''200 ml'''.<br />
<br />
Insira marcadores de círculos grandes nos ingredientes, com '''deslocamento de primeira linha em 1,25 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Insira numeração com pontos no modo de preparo, com ''' Antes do texto em 2 cm, deslocamento de primeira linha em - 0,75 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Envie o arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''<br />
<br />
<br />
<br />
'''Receita: Bacalhau a beira-alta'''<br />
<br />
<br />
''Ingredientes:'' <br />
<br />
<br />
6 postas de bacalhau;<br />
<br />
1 molho de couves galegas com os talos;<br />
<br />
1,5 kg de batatas;<br />
<br />
Pão de trigo duro;<br />
<br />
4 dentes de alho picados;<br />
<br />
2 dl de azeite.<br />
<br />
<br />
''Modo de preparo''<br />
<br />
<br />
Coza o bacalhau e, à parte, coza também as batatas e as couves.<br />
<br />
Corte o pão em fatias e coloque numa travessa funda. Por cima, deite a água de cozer o bacalhau em quantidade suficiente para ensopar o pão.<br />
<br />
Regue ainda com metade do azeite e polvilhe com metade dos alhos. Disponha o bacalhau, as batatas as couves por cima.<br />
<br />
Cubra com o restante azeite e os alhos picados. Sacuda a travessa e está pronto a servir. <br />
<br />
<br />
Como o texto deve ficar ao final do exercício:<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exercicio3writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=04/09/2018: Tabelas, Cabeçalho, Rodapé e Campos no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 6}}<br />
<br />
===Tabelas===<br />
<br />
Sabemos que uma tabela nada mais é do que um conjunto de dados disponibilizados em uma grade. Onde esta possui diversas linhas e colunas.<br />
<br />
Para criar uma tabela no Writer basta acessarmos o menu Tabela, Inserir, Tabela, pelo atalho Ctrl + F12 ou ainda pelo botão disponibilizado na barra de Ferramentas Padrão. Ao acessar uma das opções acima, será mostrada a tela de configuração da tabela.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabelawriter.jpg]]</div><br />
<br />
<br />
Na Figura acima podemos ver claramente que há a possibilidade de darmos um nome para a tabela por meio do campo “Nome” e de determinarmos quantas linhas e colunas nossa tabela terá, por meio dos campos “Colunas” e “Linhas”.<br />
<br />
Logo a seguir, abaixo do campo “Linhas” podemos ver um campo “Título”, onde se o marcarmos, nossa tabela terá N linhas com formatação de título (e. g. Negrito). A quantidade de linhas será definida no campo “As primeiras ... linhas”.<br />
<br />
O Campo “Borda” indica a existência ou não de uma linha separando cada célula que comporá a tabela criada.<br />
<br />
O botão “Autoformatar...” nos dá a possibilidade de darmos uma formatação para a tabela que será criada (e. g. Cores, fonte, bordas, alinhamento e etc).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela2writer.jpg]]</div><br />
<br />
<br />
Após a criação da tabela, podemos alterar suas propriedades ou parte dela, selecionando a parte que queremos alterar e indo até o menu Tabela, Propriedades da tabela. <br />
<br />
Nesta janela podemos alterar O nome, espaçamento, tamanho de coluna e linha, estilos de borda e cores de fundo.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela3writer.jpg]]</div><br />
<br />
<br />
===Cabeçalho===<br />
<br />
<br />
Para colocar um cabeçalho em um documento basta acessarmos o menu Inserir, Cabeçalho, Padrão. Então abrir-se-á uma área para digitação do texto do cabeçalho.<br />
<br />
Você poderá digitar o texto do cabeçalho em qualquer página do documento, que este será automaticamente replicado para as demais páginas existentes.<br />
<br />
Você poderá ainda, aplicar formatação ao cabeçalho, incluir borda e plano de fundo e também excluir o cabeçalho por meio da aba azul “Cabeçalho (Padrão)”. Para isto, basta clicar na setinha apontada para baixo existente na aba que as opções surgirão na forma de um menu pop-up.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:cabecalhowriter.jpg]]</div><br />
<br />
<br />
===Rodapé===<br />
<br />
<br />
ara inserir um rodapé, o procedimento é idêntico ao do cabeçalho, porém deve-se acessar o menu Inserir, Rodapé, Padrão]. Abrir-se-á uma área para digitação do texto do rodapé. Nesta área, pode-se colocar o que for necessário. No entanto, o mais comum de ser colocado nos rodapés de documentos são: número da página, data/hora da impressão, autor, quantidade total de páginas existentes no documento, dentre outros.<br />
<br />
Você poderá ainda, da mesma forma que no cabeçalho, aplicar formatação ao rodapé, incluir borda, plano de fundo e também o excluir. Tudo isto poderá ser realizado por meio da aba azul “Rodapé (Padrão)”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:rodapewriter.jpg]]</div><br />
<br />
<br />
===Campos===<br />
<br />
<br />
Este é mais um recurso muito útil existente no LibreOffice. Com ele você poderá fazer seu documento mostrar informações automaticamente e sem muito esforço, disponibilizado no menu Inserir, Campos.<br />
<br />
Os campos preexistentes no LibreOffice. são:<br />
<br />
* Data: coloca a data atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Hora: coloca a hora atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Número da página: exibe o número da página atual;<br />
* Total de páginas: exibe a quantidade de páginas existentes no documento;<br />
* Assunto: mostra o que foi registrado no campo “Assunto”, descrito nas “Propriedades” do documento;<br />
* Título: mostra o que foi registrado no campo “Título”, descrito nas “Propriedades” do documento;<br />
* Autor: mostra o primeiro e último nome listados em “Dados do Usuário” do LibreOffice no menu Ferramentas, Opções;<br />
* Outros: [Ctrl + F2] que dá a possibilidade de escolha de diversos campos, com diversas informações sobre o documento. Estes outros campos poderão ser escolhidos na tela “Campos” em suas diversas abas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:camposwriter.jpg]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
Crie uma tabela no documento em branco com os dados da imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabelawriter.jpg]]</div><br />
<br />
<br />
Formate a tabela com as seguintes configurações:<br />
<br />
<br />
* Linha de título mesclada, fonte Rekha, tamanho 14, cor vermelha, negrito e centralizado;<br />
* Linha de subtítulo com fonte Loma, tamanho 12, itálico e centralizado;<br />
* Demais linhas com fonte Garuda, tamanho 12 alinhamento justificado;<br />
* Insira cor de fundo de acordo com a imagem acima.<br />
<br />
No cabeçalho, insira o texto Proeja - Informática básica II em fonte Liberation Serif, tamanho 12 e negrito.<br />
<br />
No rodapé insira o número da página alinhado a direita.<br />
<br />
Ao final, o documento deve ter essa aparência:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabela2writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=11/09/2018: Corretor ortográfico, impressão e Figuras=<br />
<font size="3"><br />
{{Collapse top | Aula 7}}<br />
<br />
===Corretor ortográfico===<br />
<br />
Você pode verificar a ortografia de uma seleção de texto ou do documento por inteiro manualmente.<br />
<br />
A verificação ortográfica começa na posição atual do cursor ou no início da seleção de texto.<br />
<br />
Clique no documento ou selecione o texto que deseja verificar. Escolha Ferramentas - Ortografia e gramática.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretorwriter.jpg]]</div><br />
<br />
<br />
Sempre que é encontrado um erro de ortografia, surge a caixa de diálogo Verificação ortográfica e o LibreOffice oferece algumas sugestões de correção.<br />
Adote um dos seguintes procedimentos:<br />
<br />
Para aceitar a correção, clique na sugestão e, em seguida, em Corrigir.<br />
<br />
Edite a frase na caixa de texto superior e, em seguida, clique em Corrigir.<br />
<br />
Para adicionar a palavra desconhecida ao dicionário definido pelo usuário, clique em Adicionar ao dicionário.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretor2writer.jpg]]</div><br />
<br />
<br />
===Impressão===<br />
<br />
<br />
Para imprimir documentos no Libreoffice Writer, podemos clicar diretamente no botão imprimir ou ir no menu Arquivo, imprimir:<br />
<br />
Na janela que se abre, podemos escolher diversas configurações adicionais.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:imprimir2writer.jpg]]</div><br />
<br />
<br />
Na aba Geral, podemos escolher a impressora, quantidade de cópias, se serão agrupadas, quais páginas serão impressas (todas, somente uma ou uma parte).<br />
<br />
Na aba Libreoffice Writer podemos escolher se o plano de fundo será impresso, as figuras e objetos, texto oculto, cor do texto e páginas em branco.<br />
<br />
Em Layout escolhemos a quantidade de páginas por folha, a ordem e lados da página.<br />
<br />
E na aba Opções escolhemos se irá para uma impressora física ou um arquivo, agrupamento, bandejas definidas na impressora e tamanho definido na impressora.<br />
<br />
<br />
===Visualizar impressão===<br />
<br />
Antes de imprimir algum trabalho, convém observar como ficará o layout no papel, para evitar alguns acidentes, tais como quebras de páginas em locais indesejados, ajustes de parágrafos, entre outros. Para tanto, o auxílio da função Visualizar Impressão é fundamental.<br />
<br />
Acesse o menu Arquivo > Visualização de Página, no ícone na barra de ferramentas ou através do atalho Ctrl + Shift + O.<br />
<br />
Na tela aparecerá uma projeção exata de como ficará a impressão. Serão apresentadas algumas ferramentas, se quisermos analisar com mais detalhes:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:visualizarimpressaowriter.jpg]]</div><br />
<br />
<br />
'''Uma página<br/>'''<br />
Mostra uma página na janela de visualização.<br />
<br />
<br />
'''Duas páginas<br/>'''<br />
Mostra duas páginas na janela de visualização. As páginas ímpares aparecerão no lado direito e as páginas pares no lado esquerdo.<br />
<br />
<br />
'''Visualização de livro<br/>'''<br />
Selecione esta opção para ver a primeira página no lado direito da visualização. Se não a selecionar, a primeira página é mostrada no lado esquerdo da visualização.<br />
<br />
<br />
'''Várias páginas<br/>'''<br />
Define o número de páginas exibidas na tela. Clique na seta ao lado do ícone para abrir uma grade e selecionar o número de páginas a serem exibidas como linhas e colunas na visualização.<br />
<br />
<br />
'''Para o início do documento<br/>'''<br />
Vai para a primeira página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Página anterior<br/>'''<br />
Vai para a página anterior do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Próxima página<br/>'''<br />
Vai para a próxima página do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Para o fim do documento<br/>'''<br />
Vai para a última página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Menos zoom<br/>'''<br />
Diminui o zoom para ver mais do documento em um tamanho reduzido.<br />
<br />
<br />
'''Zoom de visualização<br/>'''<br />
Determina o nível de zoom da visualização de impressão.<br />
<br />
<br />
'''Mais zoom<br/>'''<br />
Aumenta o zoom para obter um close do documento.<br />
<br />
<br />
'''Imprimir<br/>'''<br />
Imprime o documento.<br />
<br />
<br />
'''Tela inteira<br/>'''<br />
Exibe ou oculta os menus e as barras de ferramentas no Writer ou no Calc. Para sair do modo de tela inteira, clique no botão Tela inteira ou pressione a tecla Esc.<br />
<br />
<br />
'''Fechar visualização<br/>'''<br />
Fecha a visualização e volta na edição do documento.<br />
<br />
<br />
===Figuras===<br />
<br />
<br />
A inserção de figura em um texto e sua manipulação é simples no Writer.<br />
<br />
Vamos passo a passo mostrar como se dá essa inserção. <br />
<br />
Primeiro abra o documento em que deseja inserir a figura e posicione o cursor no local desejado que ela apareça. Depois escolha Inserir - Figura. Localize o arquivo gráfico que você deseja inserir e, em seguida, clique em Abrir. <br />
<br />
Por padrão, a figura inserida é centralizada acima do parágrafo no qual você clicou. <br />
<br />
<br />
Veja que é criada uma barra de ferramenta flutuante chamada figura. Nela você modifica os aspectos de cor e padrão da figura e também inverte vertical ou horizontalmente a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figurawriter.jpg]]</div><br />
<br />
<br />
Quando é inserida uma figura a barra de ferramenta quadro é mostrada para configurar com mais facilidade a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura2writer.jpg]]</div><br />
<br />
<br />
Também temos a opção de formatar figura. Para isso, selecione a figura e vá no menu Formatar - Figura.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura3writer.jpg]]</div><br />
<br />
<br />
Nesta janela teremos várias opções de configuração, tais como ajuste de tamanho, ajuste no texto, posicionamento. hiperlink, recorte, bordas, transparência, etc.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=18/09/2018: Palestra Reflexos da reforma trabalhista para a classe trabalhadora=<br />
<font size="3"><br />
{{Collapse top | Aula 8}}<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=25/09/2018: Introdução ao Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 9}}<br />
<br />
===Libreoffice Calc===<br />
<br />
Calc é um software de planilha eletrônica multiplataforma de código aberto, desenvolvido originalmente pela Star Division, posteriormente pela Sun Microsystems (como parte da suíte StarOffice) e atualmente pela The Document Foundation, como parte da suíte LibreOffice. Também é distribuído gratuitamente com as suítes OpenOffice.org e NeoOffice.<br />
<br />
Nessa planilha, o número limite de linhas é de pouco mais de 1 milhão por planilha e o número limite de colunas é de 1024 por planilha.<br />
<br />
Na imagem abaixo podemos conhecer um pouco melhor a interface do Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interfacecalc.jpg]]</div><br />
<br />
<br />
As células do Calc possuem endereçamento, onde as colunas são definidas por letras e as linhas por números. Para identificar o endereço da célula, basta indicar primeiramente o endereçamento da coluna e depois da linha. Ex: '''A1'''.<br />
<br />
<br />
====Operadores====<br />
<br />
<br />
Devemos conhecer alguns símbolos que são muito utilizados, juntamente com a ordem dos cálculos efetuados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface2calc.jpg]]</div><br />
<br />
<br />
====Realce de valor====<br />
<br />
<br />
A função Realce de valor destaca os conteúdos das células através da diferenciação da cor da fonte. Para acioná-la, vá até o menu Exibir > Realce de valor ou clique na combinação de teclas Ctrl+F8.<br />
<br />
Textos são apresentados em preto, números em azul e fórmulas em verde. Essa configuração de cores é padrão para qualquer instalação do LibreOffice. Na figura abaixo, é possível identificar as três categorias. No exemplo, o conteúdo da célula B30 é a fórmula =1+1. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface3calc.jpg]]</div><br />
<br />
<br />
====Séries de preenchimento====<br />
<br />
<br />
Uma Série de preenchimento é uma forma fácil de fazer um preenchimento automático em uma área da planilha a partir de um valor inicial.<br />
<br />
Inicialmente, digite o valor inicial em uma célula. Com a célula selecionada, coloque o ponteiro do mouse sobre o ponto preto no canto inferior direito, chamado Alça de preenchimento, até que este se transforme em uma pequena cruz.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface4calc.jpg]]</div><br />
<br />
<br />
Arraste com o botão do mouse pressionado até a última célula da sequência desejada, como no passo 1 apresentado na tabela abaixo. Solte o botão do mouse e a área selecionada será preenchida com a sequência numérica correspondente (passo 2).<br />
<br />
Se a direção da sua seleção for horizontal para a esquerda ou vertical para cima, o Calc fará o preenchimento com decremento 1. Se a direção da sua seleção for horizontal para a direita ou vertical para baixo, o Calc fará o preenchimento com incremento 1.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface5calc.jpg]]</div><br />
<br />
<br />
Se você desejar criar uma sequência de preenchimento sem incremento algum, faça o mesmo procedimento, no entanto, ao clicar e arrastar com a alça de preenchimento, mantenha a tecla Ctrl pressionada.<br />
<br />
====Formatar Células====<br />
<br />
<br />
Permite que você especifique diversas opções de formatação e aplique atributos às células selecionadas.<br />
<br />
Escolha Formatar - Células<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:formatcelcalc.jpg]]</div><br />
<br />
<br />
Números<br />
Especifica as opções de formatação para a(s) célula(s) selecionada(s).<br />
<br />
<br />
Fonte<br />
Especifique a formatação e a fonte que deseja aplicar.<br />
<br />
<br />
Alinhamento<br />
Define ao opções de alinhamento para o conteúdo da célula atual, ou das células selecionadas.<br />
<br />
<br />
Bordas<br />
Define opções de borda para os objetos selecionados em Writer ou Calc.<br />
<br />
<br />
Plano de fundo<br />
Define a cor ou a figura do plano de fundo.<br />
<br />
<br />
Proteção de célula<br />
Define as opções de proteção para as células selecionadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=02/10/2018: Fórmulas simples Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 10}}<br />
<br />
===Funções===<br />
<br />
Funções são procedimentos baseados em operações e operandos que, manipulados, retornam um determinado resultado. Funções podem simplesmente representar a implementação de operadores, como a função Soma, que veremos adiante, ou, de forma mais complexa, realizar cálculos de nível avançado.<br />
<br />
<br />
Para inserir uma função através do assistente, siga os seguintes passos:<br />
<br />
Selecione a célula onde será inserida a função;<br />
<br />
Selecione uma das opções abaixo:<br />
<br />
* vá até o menu Inserir > Função ou<br />
* teclar Ctrl + F2 ou<br />
* clique sobre o botão Assistente de funções, na Barra de fórmulas.<br />
<br />
Será aberta a tela do Assistente de funções. Selecione, então, uma categoria de função na caixa Categoria;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalc.jpg]]</div><br />
<br />
<br />
Selecione o nome da função e clique no botão Próximo;<br />
<br />
Preencha os argumentos solicitados para a função;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcao2calc.jpg]]</div><br />
<br />
<br />
Clique OK. A fórmula será inserida na célula e o resultado será contabilizado.<br />
<br />
A função também pode ser digitada. Para isto, basta iniciar coma digitação do símbolo de = e posteriormente digitar o nome da fórmula desejada, juntamente com seu parâmetros.<br />
<br />
<br />
====Funções simples====<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaosomacalc.jpg]]</div><br />
<br />
<br />
No exemplo acima, a função é SOMA, o argumento é B2:B6 (leia-se de B2 até B6) e o resultado ( a soma dos valores) é 20. <br />
<br />
Como digitar<br />
<br />
Se as células são adjacentes: =SOMA(C2:C8) <br />
<br />
Essa função soma o conteúdo de células adjacentes (sequência C2 até C8)<br />
<br />
Se as células não são adjacentes: =SOMA(B2;C3;D1).<br />
<br />
A função Média calcula o valor médio de um intervalo, adjacente ou não.<br />
<br />
=MEDIA(C2:C8)<br />
<br />
A função Mínimo retorna o menor valor de um intervalo analisado<br />
<br />
=MINIMO(C2:C8)<br />
<br />
A função Máximo retorna o maior valor de um intervalo analisado<br />
<br />
=MAXIMO(C2:C8)<br />
<br />
A função Mediana de um intervalo é o seu valor central, ou seja, que divide o intervalo em duas partes iguais<br />
<br />
=MED(C2:C8)<br />
<br />
A função Moda retorna o valor que mais se repete em um intervalo. Caso dois números ou mais tenham a mesma quantidade de repetições, o menor valor será mostrado.<br />
<br />
=MODO(C2:C8)<br />
<br />
A função Concatenar agrupa valores indicados. Esta função aceita somente ;<br />
<br />
=CONCATENAR(C2;C5;C8)<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=09/10/2018: Fórmulas Compostas Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 11}}<br />
<br />
===Funções Lógicas===<br />
<br />
<br />
'''SE'''<br />
<br />
<br />
Esta é uma função bastante interessante pois permite ao usuário da planilha construir expressões condicionais, avaliando e apresentando diferentes resultados conforme uma cláusula avaliada.<br />
<br />
A estrutura da função SE é:<br />
<br />
=SE (CONDIÇÃO; VALOR_SE_CONDIÇÃO_VERDADEIRA; VALOR_SE_CONDIÇÃO_FALSA)<br />
<br />
O primeiro argumento é a condição. Normalmente, avaliamos o conteúdo de uma célula em relação a um dado parâmetro, como, por exemplo C4<100 ou A1=”APROVADO”.<br />
<br />
Caso a condição seja verdadeira, o segundo argumento é apresentado como resultado da função.<br />
<br />
Caso a condição seja falsa, o terceiro argumento é apresentado como resultado.<br />
<br />
No exemplo abaixo, avaliamos o valor da nota do aluno e, caso esteja acima da média, apresentamos o resultado “Aprovado”. Senão, apresentamos o resultado “Recuperação”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcse.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.NUM'''<br />
<br />
<br />
<br />
A função CONT.NÚM conta quantos valores numéricos estão entre os ARGUMENTOS da função.<br />
<br />
Entende-se como valores numéricos: números, datas e fórmulas cujo resultado seja um número. Células vazias ou células com conteúdo de texto não são contadas na função CONT.NÚM.<br />
<br />
O formato da função é:<br />
<br />
=CONT.NÚM(ARGUMENTOS)<br />
<br />
Observe no exemplo abaixo que nem todos os alunos fizeram a primeira avaliação. Podemos usar a função CONT.NÚM para contar as notas do intervalo B11:B19 e identificar quantos alunos de fato fizeram a prova.<br />
<br />
O resultado da função =CONT.NÚM(B11:B19) será 7 pois, as duas células, correspondentes aos alunos que não fizeram a prova, estão vazias.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontnum.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.SE'''<br />
<br />
<br />
<br />
A função CONT.SE tem como objetivo contar quantos valores obedecem a um determinado critério. A estrutura é bastante simples:<br />
<br />
=CONT.SE (INTERVALO; CONDIÇÃO)<br />
<br />
Os valores dentro do intervalo são avaliados um a um de acordo com a condição. O valor é contado somente se a condição for verdadeira.<br />
<br />
No exemplo abaixo, contamos quantos alunos estão com notas acima da média estabelecida.<br />
<br />
Note que usamos uma concatenação de texto para expressar adequadamente o critério, indicado no segundo argumento com a expressão “>”&B6. Ou seja, concatenamos o sinal de > com o conteúdo da célula B5.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse.jpg]]</div><br />
<br />
<br />
O resultado da função CONT.SE acima é de 7 alunos.<br />
<br />
Quando o critério ou condição for de igualdade, não precisamos usar a concatenação de texto, por exemplo:<br />
<br />
=CONT.SE(B10:B18;B6)<br />
<br />
Em sua construção mais comum, a função CONT.SE permite apenas um argumento como critério de contagem. No entanto, em casos específicos, é possível utilizar mais de um argumento através do uso de expressões regulares em fórmulas.<br />
<br />
O exemplo abaixo ilustra essa situação. A partir da tabela abaixo, desejamos obter a quantidade de cadastros de pessoas que são dos estados do Rio Grande do Sul e Santa Catarina.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse2.jpg]]</div><br />
<br />
<br />
Uma abordagem óbvia e simples seria a soma de CONT.SE:<br />
<br />
=CONT.SE(F3:F8;"RS")+CONT.SE(F3:F8;"SC")<br />
<br />
Uma abordagem elegante poderia utilizar expressões regulares:<br />
<br />
=CONT.SE(F3:F8;"RS|SC")<br />
<br />
Onde o símbolo | (pipe) entre as siglas RS e SC representa a operação OU lógica. Logo, estamos contando apenas os valores do intervalo de F3 até F8 que são iguais a RS ou a SC.<br />
<br />
<br />
'''CONT.VALORES'''<br />
<br />
<br />
A função CONT.VALORES permite contar células preenchidas com valores de texto, número ou fórmula dentro de um intervalo.<br />
<br />
O formato da função CONT.VALORES é:<br />
<br />
=CONT.VALORES(ARGUMENTOS)<br />
<br />
No exemplo abaixo, o usuário deverá preencher o espaço amarelo com cinco códigos de produto.<br />
<br />
Para contar quantas células já foram preenchidas, utilizamos a função CONT.VALORES e o intervalo de G5:G9.<br />
<br />
O resultado da função, no exemplo abaixo, será 3.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvalores.jpg]]</div><br />
<br />
<br />
<br />
'''CONTAR.VAZIO'''<br />
<br />
<br />
CONTAR.VAZIO conta quantas células do intervalo indicado em ARGUMENTOS estão vazias, isto é, sem conteúdo algum.<br />
<br />
=CONTAR.VAZIO(ARGUMENTOS)<br />
<br />
No nosso exemplo anterior, da função CONT.VALORES, calculamos quantas células do intervalo amarelo já haviam sido preenchidas. Podemos encontrar a informação complementar (quantas células faltam ser preenchidas) através da função CONTAR.VAZIO.<br />
<br />
No exemplo, a função CONTAR.VAZIO pode ser utilizada sobre o intervalo de G5:G9. O resultado da função na célula H15 será de 2.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvazio.jpg]]</div><br />
<br />
<br />
<br />
'''SOMASE'''<br />
<br />
<br />
A função SOMASE é útil para cálculos que envolvam valores totais a partir de um determinado critério. O formato da função é:<br />
<br />
=SOMASE(INTERVALO_DE_AVALIAÇÃO; CRITÉRIO; INTERVALO_DE_SOMA)<br />
<br />
Os valores do intervalo de avaliação são avaliados conforme o critério. Caso estejam de acordo com o critério indicado, o valor correspondente no intervalo de soma é somado ao resultado.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcsomase.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=23/10/2018: Avaliação=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
* Copie o conteúdo abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:avaliacaocalc.jpg]]</div><br />
<br />
<br />
* Efetue os cálculos solicitados (Total dos produtos por trimestre, Valor máximo, Valor mínimo, Média e Total por mês).<br />
<br />
* Salve o arquivo com o seu nome e envia para o seguinte e-mail:<br />
<br />
ederson.luiz@ifsc.edu.br<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=06/11/2018: Vínculo entre planilhas, Gráficos, Classificação e Filtros=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
===Classificação===<br />
<br />
<br />
No Libreoffice Calc, podemos efetuar a classificação de conteúdos, em ordem alfabética, de forma crescente ou decrescente.<br />
<br />
Para tanto, devemos clicar em um intervalo de banco de dados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc.jpg]]</div><br />
<br />
<br />
Ao selecionar um intervalo de células, somente estas células serão classificadas. <br />
<br />
Se você clicar somente em uma célula sem selecionar, então todo o intervalo de banco de dados será classificado.<br />
<br />
Escolha Dados - Classificar.<br />
<br />
O intervalo de células que será classificado é mostrado em cores invertidas.<br />
<br />
Selecione as opções de classificação desejadas.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc2.jpg]]</div><br />
<br />
Clique em OK.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc3.jpg]]</div><br />
<br />
<br />
===Filtro===<br />
<br />
<br />
Os filtros e filtros avançados permitem que você assegure que somente certas linhas (registros) de um intervalo de dados fiquem visíveis. Nos documentos de planilhas do LibreOffice, há várias possibilidades para a aplicação de filtros.<br />
<br />
Uma das utilizações para a função Autofiltro, que se encontra em Dados, Filtro, Autofiltro, é a de rapidamente restringir a exibição de registros com entradas idênticas em um campo de dados.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:autofiltrocalc.jpg|900px]]</div><br />
<br />
<br />
Na caixa de diálogo Filtro padrão, você também pode definir intervalos que contenham os valores em determinados campos de dados. É possível utilizar o filtro padrão para conectar até três condições com um operador lógico E ou OU.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtropadraocalc.jpg]]</div><br />
<br />
<br />
O Filtro avançado excede a restrição de três condições e permite até oito condições de filtro. Com os filtros avançados, você insere as condições diretamente na planilha.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtroavancadocalc.jpg]]</div><br />
<br />
<br />
Para remover um filtro, de forma a ver todas as células, clique dentro da área onde o filtro estiver aplicado e escolha Dados - Filtro - Redefinir filtro.<br />
<br />
Ao selecionar várias linhas de uma área onde um filtro foi aplicado, a seleção pode incluir linhas visíveis e linhas ocultas pelo filtro. Se depois você aplicar formatação, ou excluir as linhas selecionadas, esta ação só afetará as linhas visíveis. As linhas ocultas não serão afetadas.<br />
<br />
Isto é o oposto das linhas que foram ocultas manualmente pelo comando Formatar - Linhas - Ocultar linhas. Linhas ocultas manualmente são excluídas ao excluir uma seleção que as contenha.<br />
<br />
<br />
===Vínculo entre planilhas===<br />
<br />
Podemos utilizar conteúdos que se encontram em outras planilhas do documento.<br />
<br />
Para que isso ocorra, devemos utilizar como no exemplo abaixo:<br />
<br />
=Planilha2.A1<br />
<br />
Neste caso, o conteúdo da Planilha2, célula A1 será exibido onde esta fórmula for empregada.<br />
<br />
<br />
===Gráficos===<br />
<br />
<br />
No Calc, é fácil gerar gráficos a partir de qualquer planilha. <br />
<br />
Pode-se chamar o assistente de gráficos a partir do seu ícone ou do menu Inserir ... gráfico.<br />
<br />
Os gráficos no Calc estão muito fáceis e muito intuitivos e prometem-se ainda muitas melhorias para este recurso. <br />
<br />
Ao se invocar o comando Inserir Gráfico, tem-se uma tela como a seguir (previsão do gráfico e seu assistente):<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc.jpg]]</div><br />
<br />
<br />
Logo na Etapa 1 você terá vários tipos e subtipos de gráficos a escolher: barras, pizza, rede, dispersão, etc.<br />
<br />
Etapa 2 – Intervalo de Dados – aqui se informa ao Calc a área a ser computada e plotada.<br />
<br />
Etapa 3 – Série de Dados – Aqui se definem nomes e rótulos para as séries dos dados.<br />
<br />
Etapa 4 – É nesta etapa que se fazem as legendas do gráfico.<br />
<br />
A seguir, vemos um gráfico de Pizza gerado no LibreOffice Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc2.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=13/11/2018: Introdução ao Libreoffice Impress=<br />
<font size="3"><br />
{{Collapse top | Aula 13}}<br />
<br />
===Tela Principal===<br />
<br />
O Impress é software para desenvolvimento de apresentações. Por meio deste software pode-se preparar as apresentações textuais, adicionar imagens, sons e até mesmo animação.<br />
<br />
<div style="text-align: left;">[[Arquivo:impressprincipal.jpg]]</div><br />
<br />
<br />
===Slide Mestre===<br />
<br />
Toda apresentação possui no mínimo um slide mestre. Este slide em especial leva este nome não é à toa e veremos o por quê.<br />
<br />
No slide mestre pode-se configurar e/ou alterar as formatações de uma apresentação inteira.<br />
<br />
Nem sempre as pessoas que trabalham com este tipo de ferramenta o utilizam. Na maioria das vezes por pura falta de conhecimento.<br />
<br />
Vamos começar a desenvolver nossa apresentação exatamente pelo slide mestre. Mas antes disso vamos acessar o menu [Exibir | Régua], para que a régua seja mostrada da mesma forma como é mostrada no Writer.<br />
<br />
Agora então vamos acessar o menu [Exibir | Mestre | Slide Mestre]. Após este passo, podemos observar que a interface mudou bastante:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressmestre.jpg]]</div><br />
<br />
<br />
Tudo que fizermos neste slide será replicado para todos os slides que tenham este mesmo layout em nossa apresentação.<br />
<br />
<br />
Para fazer uma apresentação, não é pré-requisito configurar o slide mestre. No entanto, há alguns bons motivos para você fazê-lo:<br />
<br />
* Configurando o slide mestre, você não precisará fazer isto de novo em nenhum outro slide, pois, isto acontecerá automaticamente;<br />
* Hoje esta apresentação vai ter um fundo de tela voltado para este curso, amanhã se o autor não ficar satisfeito ou se for usá-la em outro curso, bastará fazer a alteração no slide mestre e tudo estará resolvido.<br />
<br />
<br />
===Segundo Slide===<br />
<br />
<br />
Para criar o segundo slide vamos dar um clique com o botão direito do mouse na área sob as miniaturas de slides. <br />
<br />
No menu pop-up que aparecer acesse a opção “Novo slide”.<br />
<br />
Muito provavelmente o slide que foi criado veio com o mesmo layout do anterior a ele. Então, vá até a área de layout de slides e clique no layout que gostaria de utilizar.<br />
<br />
<br />
===Slide com imagem===<br />
<br />
<br />
Mais uma vez vamos repetir o processo de criar um novo slide, ou seja, clique com o botão direito do mouse sobre a área limpa sob as miniaturas de slides. Então escolha a opção “Novo slide”.<br />
<br />
Será criado um slide com layout padrão. Vamos alterar o layout para um que comporte texto e objetos.<br />
<br />
Agora, no quadro do lado direito é apresentada uma imagem central que na verdade são quatro botões:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem.jpg]]</div><br />
<br />
<br />
Clique no botão para inserir “Imagem”. Será aberta uma caixa de diálogo do sistema operacional que você estiver usando, então, vá até a pasta onde está o arquivo, selecione-o e aperte o botão “Abrir” (Open em inglês).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem2.jpg]]</div><br />
<br />
<br />
O slide apresentará a imagem selecionada. Clique na figura e ajuste-a para que fique num tamanho adequado. E está pronto o terceiro slide.<br />
<br />
<br />
===Exercício===<br />
<br />
Desenvolva a apresentação abaixo de forma que fique o mais parecida possível.<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag1.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag2.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag3.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag4.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag5.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}<br />
<br />
=20/11/2018: Libreoffice Impress - Efeitos, aparência e demais configurações=<br />
<font size="3"><br />
{{Collapse top | Aula 14}}<br />
<br />
===Modificando a aparência de todos os slides===<br />
<br />
Para modificar a aparência de um slide, devemos alterar o slide mestre. Vimos anteriormente a criação de um silde mestre do zero, mas nesse momento iremos usar modelos prontos. Para tanto, clique no botão slides mestres no painel lateral, como mostra a imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssslidemestrepronto.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 14}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impresssexerciciopag5.jpg&diff=152658Arquivo:Impresssexerciciopag5.jpg2018-11-12T21:17:30Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impresssexerciciopag4.jpg&diff=152657Arquivo:Impresssexerciciopag4.jpg2018-11-12T21:17:13Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impresssexerciciopag3.jpg&diff=152656Arquivo:Impresssexerciciopag3.jpg2018-11-12T21:16:55Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impresssexerciciopag2.jpg&diff=152655Arquivo:Impresssexerciciopag2.jpg2018-11-12T21:16:29Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impresssexerciciopag1.jpg&diff=152654Arquivo:Impresssexerciciopag1.jpg2018-11-12T21:16:10Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2018-2&diff=152653INF-2018-22018-11-12T21:15:50Z<p>Ederson.luiz: /* 13/11/2018: Introdução ao Libreoffice Impress */</p>
<hr />
<div>=Informática Básica II= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 3a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2018-2<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/2/2b/PPC_PROEJA_-_ano_2015.pdf PPC Proeja Operador de Computador]<br />
<br />
<br />
==Ementa==<br />
<br />
Aplicativos de escritório, tais como editor de texto, planilha eletrônica e ferramenta de apresentação.<br />
<br />
Navegação na Internet, pesquisa e cuidados com a segurança da informação.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Elaborar documentos digitais;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional;<br />
* Redigir e formatar documentos utilizando o editor de textos;<br />
* Construir planilhas eletrônicas, aproveitando suas funções;<br />
* Montar apresentações dinâmicas e interativas;<br />
* Navegar na internet, pesquisar e utilizar aplicativos Web como webmail, ferramentas de escritório online e redes sociais;<br />
* Reconhecer URLs (endereços) e mecanismos de segurança para navegação segura.<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.hardware.com.br/livros/linux/dicas-para-openofficebroffice.html Dicas de Openoffice]<br />
* [https://www.tecmundo.com.br/office/3767-como-migrar-do-office-para-o-openoffice-sem-dores-de-cabeca.htm Como migrar do Office para o Openoffice sem dores de cabeça]<br />
<br />
=31/07/2018: Apresentação da disciplina, introdução ao Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina===<br />
<br />
Introdução ao componente curricular e Introdução ao Libreoffice.<br />
<br />
'''Arquivo apresentação da disciplina'''<br />
<br />
[https://drive.google.com/file/d/127DSInkISdvAkptI3D_iSCafRoRkTepw/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://pt-br.libreoffice.org/baixe-ja/libreoffice-novo/ Link para download do LibreOffice]<br />
<br />
<br />
O LibreOffice é uma ferramenta do tipo “office” totalmente gratuita e de código aberto.<br />
<br />
Mas quais os motivos para usarmos o Libreoffice?<br />
<br />
* O LibreOffice é um conjunto de softwares de uso profissional ou doméstico ideal para quem quer uma suíte de escritório para o dia a dia e não deseja softwares desatualizadas e independentes.<br />
* Toda a interface do LibreOffice é padronizada, assim como acontece com o Microsoft Office. Conjuntos e ícones e funcionalidades são semelhantes em toda a interface do usuário. As teclas de atalho são diferentes dos utilizados em outras soluções, porém são bem simples de memorizar.<br />
* O LibreOffice pode ser instalado e utilizado de uma forma [https://pt-br.libreoffice.org/baixe-ja/portable-versions/ portátil], sem necessidade de instalação no computador de uso.<br />
* O LibreOffice é compatível com todos os formatos gerados pelos aplicativos Microsoft, inclusive os documentos mais antigos, tais como DOC, XLS e PPT.<br />
* O LibreOffice é um software de código aberto e grátis. Pode ser instalados em diversos computadores e ser utilizado para qualquer finalidade.<br />
<br />
No decorrer do curso iremos trabalhar com os seguintes softwares:<br />
<br />
'''LibreOffice Writer:'''<br />
<br />
O Writer é o processador de texto do LibreOffice e é um software similar ao Microsoft Word. Com o Writer é possível criar desde textos simples, até textos com padrões complexos, com imagens, tabelas, anotações, estilos e numeração de páginas. Sua interface lembra o Word na versão 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Calc:'''<br />
<br />
O Calc é o editor de planilhas eletrônicas do LibreOffice e é um software similar ao Microsoft Excel. Com o Calc é possível criar planilhas e gráficos de todos os tipos, com imagens, formatação de texto e bordas. Sua interface lembra o Excel 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Impress:'''<br />
<br />
O Impress é o criador de apresentações do LibreOffice e é um software similar ao Microsoft Power Point. Com o Impress é possível criar apresentações de todos tipos, com diversos slides, imagens, formas, animações e transições. Sua interface lembra o Power Point 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
<br />
===LibreOffice Writer===<br />
<br />
<br />
Para a maioria das nossas atividades no software Writer, nós faremos uso de textos.<br />
<br />
Vamos conhecer um pouco de sua interface:<br />
<br />
<div style="text-align: center;">[[Arquivo:writerinterface.jpg|900px]]</div><br />
bit.ly/inf-2018-2<br />
As barras de ferramentas podem ser movidas, de acordo com a necessidade ou preferência:<br />
<br />
<div style="text-align: center;">[[Arquivo:moverbarra.jpg|900px]]</div><br />
<br />
<br />
As funções dos botões também podem ser acessadas via teclas de atalho:<br />
<br />
Teclas de função para o LibreOffice Writer<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho1.jpg]]</div><br />
<br />
<br />
Teclas de atalho para controlar documentos e janelas<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho2.jpg]]</div><br />
<br />
<br />
Teclas de atalho para editar ou formatar documentos<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho3.jpg]]</div><br />
<br />
<br />
A extensão padrão do arquivo é '''ODT'''. Se salvarmos um arquivo com o nome '''Exemplo''', o mesmo se chamará '''Exemplo.odt'''.<br />
<br />
Para selecionarmos o texto, podemos utilizar o mouse ou o teclado, através da tecla '''SHIFT''' + '''SETA DIRECIONAL'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=07/08/2018: Formatação e alinhamento=<br />
<font size="3"><br />
{{Collapse top | Aula 2}}<br />
<br />
===Barra de ferramentas Formatação===<br />
<br />
A barra de Formatação permite alterar as configurações relacionadas ao texto em si, como fonte, tamanho de fonte, estilos, negrito, sublinhado, etc.<br />
<br />
<div style="text-align: left;">[[Arquivo:barraformatacao.jpg]]</div><br />
<br />
Estilos e Formatação (F11): Exibe a janela Estilos e Formatação (abaixo) que exibe os estilos pré-definidos e também permite salvar configurações relativas ao tamanho e cor da fonte, espaçamento entre linhas do parágrafo. É possível alterar os estilos existentes ou mesmo criar novos.<br />
<br />
<div style="text-align: left;">[[Arquivo:estilowriter.jpg]]</div><br />
<br />
<br />
Nesta caixa de seleção escolhemos a fonte:<br />
<br />
<div style="text-align: left;">[[Arquivo:fontewriter.jpg]]</div><br />
<br />
<br />
Permite definir o tamanho da fonte, entre 2 e 999,9:<br />
<br />
<div style="text-align: left;">[[Arquivo:tamanhofontewriter.jpg]]</div><br />
<br />
<br />
Aplicam negrito, itálico e sublinhado respectivamente. Atalhos CTRL+B, CTRL+I e CTRL+U:<br />
<br />
<div style="text-align: left;">[[Arquivo:niswriter.jpg]]</div><br />
<br />
<br />
Aqui estão os possíveis alinhamentos para os parágrafos e são extremamente cobrados em concursos. <br />
<br />
<div style="text-align: left;">[[Arquivo:alinhamentowriter.jpg]]</div><br />
<br />
<br />
Alinhamento à esquerda. Atalho CTRL + L.<br />
<br />
Obs.: Quando o parágrafo está alinhado a esquerda fica desalinhado a direita.<br />
<br />
Alinhamento Centralizado. Atalho CTRL + E.<br />
<br />
Obs.: Quando o parágrafo está centralizado fica desalinhado a esquerda e a direita.<br />
<br />
Alinhamento à Direita. Atalho CTRL + R.<br />
<br />
Obs.: Quando o parágrafo está alinhado a direita fica desalinhado a esquerda.<br />
<br />
Alinhamento Justificado. Atalho CTRL + J.<br />
<br />
Obs.: Quando o parágrafo está justificado fica alinhado a direita e a esquerda.<br />
<br />
Dica: Para aplicar qualquer alinhamento a um parágrafo não é preciso selecionar o parágrafo, basta que o cursor esteja dentro do parágrafo.<br />
<br />
<br />
Cor da Fonte. Permite alterar a cor da fonte.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfontewriter.jpg]]</div><br />
<br />
<br />
Dica: Não é preciso selecionar a palavra que se deseja alterar a cor da fonte, basta que o cursor esteja posicionado dentro da palavra.<br />
<br />
<br />
Realçar. Permite realçar um texto com várias cores.<br />
<br />
<div style="text-align: left;">[[Arquivo:realcewriter.jpg]]</div><br />
<br />
<br />
Cor do Plano de Fundo. Permite alterar a cor do plano de fundo da posição onde o cursor está ou no trecho selecionado.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfundowriter.jpg]]</div><br />
<br />
<br />
'''Exercício'''<br />
<br />
<br />
<div style="text-align: center;">'''O Conceito de Mercado'''</div><br />
<br />
<br />
O conceito de <u>mercado</u> continua intimamente associado à idéia de <u>local</u> onde se efetuam transações entre produtores e consumidores. Consideramos essa noção restritiva, pelos seguintes aspectos:<br />
O mercado é hoje um espaço de realização de operações econômicas de compra e venda que vai para além dos seus contornos <u>físicos</u> e mesmo <u>temporais</u>.<br />
De fato, estão a surgir com grande freqüência <u>formas imateriais de mercado</u> (…).<br />
Essas formas de mercado lançam mão dos meios proporcionados pela sociedade de informação, possibilitando a realização de compras e vendas em casa, pela simples manutenção interativa de um ecrã de televisão ou, mais simplesmente, através de um telefonema para um número fornecido por aquele ecrã, com entrega imediata no domicilio ou pelo correio, como é uso da chamada televisão comercial.<br />
Existem operações de compra e venda que se contratam hoje e se realizam apenas daqui a alguns meses (como por exemplo, nos mercados de futuros, caso dos mercados de cereais nos Estados Unidos da América,...).<br />
Por outro lado existe uma diversidade de mercados, que vai desde os mercados de produtos finais ou de consumo final aos mercados de produtos intermédios e de fatores produtivos, bem como ao mercado de trabalho ou à bolsa ou <u>mercado de valores imobiliários</u>. Aos mercados nacionais sobrepõem-se os <u>mercados transnacionais</u>, de natureza informal, ou de diversos acordos de comércio livre, uniões aduaneiras ou comunidades econômicas.<br />
Tudo são razões para que se considere a noção de mercado como relativa e circunstancial, além de mutável no tempo.<br />
Uma coisa é certa: num mercado existem sempre intenções de compra (compra), intenções de venda (<u>oferta</u>), um preço e uma situação de equilíbrio mais ou menos estável fornecida por esse preço e pela quantidade correspondente.<br />
<br />
<br />
<div style="text-align: right;">Extraído de: Tinto, G., Introdução à Economia, 1995.</div><br />
<br />
<br />
# Grave o documento com o nome '''Exercicio1_Writer_Nome_Aluno'''.<br />
# Centralize o título “O Conceito de Mercado” no texto.<br />
# Formate o título como: '''negrito, tamanho 16''', tipo de letra '''Dejavu Sans'''.<br />
# Efetue o '''alinhamento justificado''' do texto.<br />
# Formate o texto com a fonte '''Nimbus Sans L''' e tamanho '''11'''<br />
# '''Alinhe à direita''' a fonte de onde foi extraído o texto (última linha) e coloque o texto em '''itálico'''<br />
# Marque a '''bold''' (negrito) os termos/expressões sublinhados acima<br />
# Anule os sublinhados e mantenha o negrito dos mesmos termos expressões<br />
# Coloque a '''negrito, itálico e sublinhada''' todas as ocorrências das palavras compra e compras.<br />
<br />
<br />
Envie este arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=14/08/2018: Colunas, capitular e hifenização=<br />
<font size="3"><br />
{{Collapse top | Aula 3}}<br />
<br />
===Criando colunas===<br />
<br />
<br />
O Writer permite criar colunas em seus documentos de texto. É possível inserir colunas em um estilo de página ou em um bloco individual de texto, sendo possível ainda formatar o layout da coluna de acordo com suas preferências:<br />
<br />
* Inserir colunas em um estilo de página;<br />
* Inserir colunas a um bloco de texto individual;<br />
* Formatar um layout de coluna;<br />
* Reverter para um layout de coluna simples.<br />
<br />
<br />
====Inserindo colunas em um estilo de página====<br />
<br />
<br />
Para inserir uma coluna em um estilo de página, clique em qualquer lugar da página e escolha Formatar > Colunas... no menu principal. Abre-se a janela Colunas:<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter.jpg]]</div><br />
<br />
<br />
====Inserindo colunas em um bloco de texto====<br />
<br />
<br />
Também é possível inserir colunas em um bloco de texto individual. Isso é útil caso não se queira modificar o estilo da página, ou se você quiser inserir colunas dentro de colunas. Observe que o Writer criará automaticamente uma seção a partir do bloco de texto selecionado. Uma seção é simplesmente um bloco de texto que tem uma formatação especial.<br />
<br />
Para inserir uma coluna em um bloco individual de texto, selecione o texto desejado, escolhendo em seguida Formatar > Colunas... a partir do menu principal. Abre-se a janela Colunas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter2.jpg]]</div><br />
<br />
Se você inserir colunas em um bloco de texto, é possível escolher como você deseja distribuir o texto pela coluna. È possível distribuir o texto de uma ou duas maneiras:<br />
<br />
* Uniformemente. Se você escolher distribuir o texto uniformemente, o Writer preencherá a primeira linha de cada coluna, seguindo para a segunda linha de cada coluna, e assim por diante.<br />
* Estilo Jornal. Se você escolher distribuir o texto em Estilo Jornal, o Writer preencherá as colunas uma por vez, começando pela primeira coluna.<br />
<br />
Para distribuir o texto uniformemente, marque a caixa de seleção Distribuir conteúdo uniformemente em todas todas as colunas na área Configurações. Desmarque esta caixa de seleção se você quiser distribuir o texto no estilo jornal.<br />
<br />
<br />
====Especificando o número de colunas====<br />
<br />
<br />
Se preferir criar um layout de coluna personalizado, você deverá especifcar o número de colunas desejado. Insira o número desejado na caixa Colunas da área Configurações.<br />
<br />
<br />
====Formatando a largura e o espaçamento da coluna====<br />
<br />
<br />
Para criar colunas com espaçamento uniforme com a mesma largura, marque a caixa de seleção AutoLargura na área Largura e espaçamento.<br />
<br />
Para personalizar a largura e o espaçamento das colunas, siga as seguintes etapas:<br />
<br />
* Na área de Largura e espaçamento, desmarque a caixa de seleção AutoLargura.<br />
* Na linha Largura, insira uma largura para cada coluna.<br />
* Na linha Espaçamento, insira o valor de espaçamento desejado entre cada par de coluna.<br />
<br />
Utilize as teclas direcionais na linha Coluna para rolar pelas colunas.<br />
<br />
<br />
====Formatando as linhas separadoras====<br />
<br />
<br />
Para exibir as linhas separadoras entre as colunas, siga as seguintes etapas:<br />
<br />
* A partir da lista suspensa Linha na área Linha separadora, selecione o tipo de linha desejado.<br />
* Por padrão, as linhas separadoras têm o mesmo tamanho das colunas. Caso deseje que as linhas separadoras sejam mais curtas do que a coluna, utilize a caixa Altura para inserir a altura das linhas separadoras como uma porcentagem do tamanho das colunas. Por exemplo, se você inserir 50%, as linhas separadoras terão metade do tamanho das colunas.<br />
* Se você inseriu uma altura menor do que 100%, use a lista suspensa Posição para selecionar um alinhamento vertical para as linhas do separador.<br />
<br />
<br />
====Revertendo o layout de uma coluna simples====<br />
<br />
<br />
Para reverter o layout de uma coluna simples em um estilo de página ou em um bloco de texto:<br />
<br />
* Clique em qualquer local no layout da coluna.<br />
* A partir do menu principal, escolha Formatar > Colunas... A janela Colunas aparece. <br />
* Na área Configurações, clique no layout de coluna simples localizado no lado esquerdo da caixa Colunas . Ou, volte a caixa Colunas para 1.<br />
* Clique em OK. A janela Colunas se fecha e o layout é revertido para uma coluna simples.<br />
<br />
<br />
===Capitulares===<br />
<br />
<br />
Basta somente você deixar o cursor no parágrafo que você deseja a primeira letra capitulada. Vá no meu Parágrafo e escolha a guia Capitulares. Na parte de Configurações, ative a caixa Exibir capitulares. Também pode escolher o número de caracteres, se vai utilizar a palavra inteira, quantidade de linhas a serem utilizadas, espaçamento até o texto e estilo do caractere. Após efetuar as configurações, clique em Ok.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:capitulareswriter.jpg]]</div><br />
<br />
<br />
===Hifenização===<br />
<br />
<br />
Insere hifens nas palavras grandes demais para caber no fim da linha. O LibreOffice procura no documento e sugere uma hifenização que possa ser aceita ou rejeitada. Se o texto estiver selecionado, a caixa de diálogo Hifenização atuará somente no texto selecionado. Se não houver texto selecionado, a caixa de diálogo Hifenização atuará em todo o documento.<br />
<br />
<br />
Agora, para colocar Hifenização, é bem simples, pressione Ctrl + A, para selecionar tudo ou selecione a parte do texto que deseja hifenizar e depois justifique o texto. Logo em seguida, clique em Ferramentas > Idioma > Hifenização. Depois, é só confirmar quais palavras que deseja hifenizar ou clicar em hifenizar tudo e pressione OK.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:hifenizacaowriter.jpg]]</div><br />
<br />
===Exercício===<br />
<br />
<br />
Copie o texto abaixo e posteriormente efetue os ajustes pedidos:<br />
<br />
<br />
----<br />
<br />
<br />
Das Vantagens de Ser Bobo<br />
<br />
<br />
O bobo, por não se ocupar com ambições, tem tempo para ver, ouvir e tocar o mundo. O bobo é capaz de ficar sentado quase sem se mexer por duas horas. Se perguntado por que não faz alguma coisa, responde: "Estou fazendo. Estou pensando." <br />
Ser bobo às vezes oferece um mundo de saída porque os espertos só se lembram de sair por meio da esperteza, e o bobo tem originalidade, espontaneamente lhe vem a idéia. <br />
O bobo tem oportunidade de ver coisas que os espertos não vêem. Os espertos estão sempre tão atentos às espertezas alheias que se descontraem diante dos bobos, e estes os vêem como simples pessoas humanas. O bobo ganha utilidade e sabedoria para viver. O bobo nunca parece ter tido vez. No entanto, muitas vezes, o bobo é um Dostoievski. <br />
Há desvantagem, obviamente. Uma boba, por exemplo, confiou na palavra de um desconhecido para a compra de um ar refrigerado de segunda mão: ele disse que o aparelho era novo, praticamente sem uso porque se mudara para a Gávea onde é fresco. Vai a boba e compra o aparelho sem vê-lo sequer. Resultado: não funciona. Chamado um técnico, a opinião deste era de que o aparelho estava tão estragado que o conserto seria caríssimo: mais valia comprar outro. Mas, em contrapartida, a vantagem de ser bobo é ter boa-fé, não desconfiar, e portanto estar tranqüilo. Enquanto o esperto não dorme à noite com medo de ser ludibriado. O esperto vence com úlcera no estômago. O bobo não percebe que venceu. <br />
Aviso: não confundir bobos com burros. Desvantagem: pode receber uma punhalada de quem menos espera. É uma das tristezas que o bobo não prevê. César terminou dizendo a célebre frase: "Até tu, Brutus?" <br />
Bobo não reclama. Em compensação, como exclama! <br />
Os bobos, com todas as suas palhaçadas, devem estar todos no céu. Se Cristo tivesse sido esperto não teria morrido na cruz. <br />
O bobo é sempre tão simpático que há espertos que se fazem passar por bobos. Ser bobo é uma criatividade e, como toda criação, é difícil. Por isso é que os espertos não conseguem passar por bobos. Os espertos ganham dos outros. Em compensação os bobos ganham a vida. Bem-aventurados os bobos porque sabem sem que ninguém desconfie. Aliás não se importam que saibam que eles sabem. <br />
Há lugares que facilitam mais as pessoas serem bobas (não confundir bobo com burro, com tolo, com fútil). Minas Gerais, por exemplo, facilita ser bobo. Ah, quantos perdem por não nascer em Minas! <br />
Bobo é Chagall, que põe vaca no espaço, voando por cima das casas. É quase impossível evitar excesso de amor que o bobo provoca. É que só o bobo é capaz de excesso de amor. E só o amor faz o bobo.<br />
<br />
<br />
Clarice Lispector<br />
<br />
<br />
----<br />
<br />
<br />
* Formate o título do texto com fonte '''Loma''', tamanho '''14''', alinhamento '''centralizado''', e '''negrito'''.<br />
* selecione o texto (sem selecionar o título e nem a fonte do texto) e aplique o alinhamento '''justificado''', fonte '''Dejavu Sans''', tamanho '''12'''.<br />
* Ainda com o texto selecionado, vá em '''Formatar > Colunas''', selecione 2 colunas, espaçamento de '''0,50 cm''', estilo '''linha contínua'''.<br />
* No texto selecionado aplique a hifenização em todas as palavras.<br />
* Insira a opção Capitulares, com tamanho de 3 linhas no início do texto.<br />
* Alinhe a última linha (fonte do texto) a '''direita''', '''itálico''', fonte '''Droid Sans''' e tamanho '''10'''.<br />
<br />
<br />
O texto deve ficar neste formato:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:texto2writer.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/08/2018: Aula suspensa=<br />
<font size="3"><br />
{{Collapse top | Aula 4}}<br />
<br />
Aula suspensa devido a paralização dos técnicos administrativos.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=28/08/2018: Formatações e funções úteis no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 5}}<br />
<br />
===Comando Localizar e Substituir===<br />
<br />
Para se localizar palavras em um texto qualquer, basta que você acesse o menu '''Editar, Localizar''' ou por meio do atalho '''Ctrl + F'''. Logo será aberto, no canto inferior esquerdo do aplicativo, um campo para digitação da palavra a ser procurada.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarwriter.jpg]]</div><br />
<br />
<br />
O recurso para “localizar e substituir” também é muito importante pois nos auxilia a corrigir erros espalhados pelo texto ou mesmo a mudança de uma palavra por outra de mesmo significado. Para usarmos o recurso de “localizar e substituir” basta acessarmos o menu '''Editar, Localizar e substituir''' ou diretamente pelo atalho '''Ctrl + H'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarsubstituirwriter.jpg]]</div><br />
<br />
<br />
===Marcadores e numeração===<br />
<br />
Esse comando é utilizado para inserir no texto, marcadores e/ou numeração, como o próprio título desde tópico diz.<br />
O comando para colocar marcadores ou mudar os marcadores já adicionados em um texto, pode ser acionado por meio do menu '''Formatar, Marcadores e numerações'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumerwriter.jpg]]</div><br />
<br />
<br />
Nas duas primeiras abas definimos o tipo de marcador que queremos usar em nosso texto. <br />
<br />
Passando para a terceira aba “Estrutura de tópicos” definiremos como ficará a estrutura de tópicos que estamos criando em nosso texto. Mais uma vez, teremos 8 opções para escolha.<br />
<br />
Podemos utilizar também, ao invés dos marcadores tradicionais, figuras no lugar dos números ou símbolos. Estes estão disponíveis na aba “Figuras”.<br />
<br />
Nas próximas abas temos a parte de configuração dos marcadores. A aba “Posição” nos proporciona a possibilidade de definirmos as distâncias, em relação a margem, de todos os dez níveis de marcadores que podem existir no nosso documento.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer2writer.jpg]]</div><br />
<br />
<br />
Já a aba “Opções” nos permite, também por nível, definir:<br />
<br />
* O tipo de “Numeração” (algarismos arábicos, romanos, gregos e etc.),<br />
* Definir o que virá “Antes” do marcador e “Depois” também (veja que no campo “Depois” existe um “.” e é exatamente este ponto que está sendo mostrado do lado direito do “1” mostrado no quatro ao lado do campo, nos diversos níveis),<br />
* Definir o “Estilo de caractere” que será usado,<br />
* “Mostrar subníveis” em cada marcador e<br />
* Colocar um determinado marcador para “Iniciar em”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer3writer.jpg]]</div><br />
<br />
<br />
===Ferramenta Pincel===<br />
<br />
<br />
Esse comando copia toda a formatação de um objeto ou texto e aplica ao objeto que será clicado ou marcado a seguir. O Pincel não se encontra em um item de menu específico, porém, possui um botão na barra de ferramentas padrão, conforme Figura a seguir.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:pincelwriter.jpg]]</div><br />
<br />
<br />
Como utilizar o Pincel:<br />
<br />
* Primeiro clique na palavra ou objeto que você deseja copiar os formatos nele aplicados (por exemplo tipo da fonte, tamanho e etc.);<br />
* Em seguida, clique na palavra a qual você deseja que possua os mesmos formatos da palavra anterior (a que você copiou os formatos).<br />
<br />
===Recuos e espaçamentos===<br />
<br />
Este recurso permite alterar a posição inicial, final e primeira linha do texto.<br />
<br />
Escolha a guia Formatar - Parágrafo - Recuos e espaçamento<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:recuoespacamentowriter.jpg]]</div><br />
<br />
<br />
A opção '''Antes do texto''' permite indicar onde o texto irá iniciar.<br />
<br />
A opção '''Depois do texto''' indica onde ele irá terminar.<br />
<br />
Já a opção '''Primeira linha''' indica onde a primeira linha do parágrafo irá iniciar.<br />
<br />
As opções '''Acima do parágrafo''' e '''Abaixo do parágrafo''' indicam o espaçamento entre as linhas antes e depois de um parágrafo, respectivamente.<br />
<br />
A opção '''Entre linhas''' define o espaço entre cada linha do texto.<br />
<br />
<br />
===Exercício===<br />
<br />
<br />
Digite o texto abaixo. <br />
Vá na opção f'''ormatar parágrafo, Recuos e espaçamentos''', deixe todas as opções de medidas com valor '''0 cm''' e '''espaçamento de linha simples'''.<br />
<br />
O título da receita deve estar em '''fonte Free Sans, tamanho 14, negrito e centralizado'''.<br />
<br />
O subtítulo '''Ingredientes''' deve estar com '''fonte Loma, tamanho 12, itálico e alinhamento a esquerda'''. <br />
<br />
Aplique a formatação do subtítulo '''Ingredientes''' no subtítulo '''Modo de preparo''' usando a ferramenta '''pincel'''.<br />
<br />
Use a ferramenta '''Localizar e substituir''' para trocar as palavras '''kg''' por '''quilos''' e '''2 dl''' por '''200 ml'''.<br />
<br />
Insira marcadores de círculos grandes nos ingredientes, com '''deslocamento de primeira linha em 1,25 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Insira numeração com pontos no modo de preparo, com ''' Antes do texto em 2 cm, deslocamento de primeira linha em - 0,75 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Envie o arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''<br />
<br />
<br />
<br />
'''Receita: Bacalhau a beira-alta'''<br />
<br />
<br />
''Ingredientes:'' <br />
<br />
<br />
6 postas de bacalhau;<br />
<br />
1 molho de couves galegas com os talos;<br />
<br />
1,5 kg de batatas;<br />
<br />
Pão de trigo duro;<br />
<br />
4 dentes de alho picados;<br />
<br />
2 dl de azeite.<br />
<br />
<br />
''Modo de preparo''<br />
<br />
<br />
Coza o bacalhau e, à parte, coza também as batatas e as couves.<br />
<br />
Corte o pão em fatias e coloque numa travessa funda. Por cima, deite a água de cozer o bacalhau em quantidade suficiente para ensopar o pão.<br />
<br />
Regue ainda com metade do azeite e polvilhe com metade dos alhos. Disponha o bacalhau, as batatas as couves por cima.<br />
<br />
Cubra com o restante azeite e os alhos picados. Sacuda a travessa e está pronto a servir. <br />
<br />
<br />
Como o texto deve ficar ao final do exercício:<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exercicio3writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=04/09/2018: Tabelas, Cabeçalho, Rodapé e Campos no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 6}}<br />
<br />
===Tabelas===<br />
<br />
Sabemos que uma tabela nada mais é do que um conjunto de dados disponibilizados em uma grade. Onde esta possui diversas linhas e colunas.<br />
<br />
Para criar uma tabela no Writer basta acessarmos o menu Tabela, Inserir, Tabela, pelo atalho Ctrl + F12 ou ainda pelo botão disponibilizado na barra de Ferramentas Padrão. Ao acessar uma das opções acima, será mostrada a tela de configuração da tabela.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabelawriter.jpg]]</div><br />
<br />
<br />
Na Figura acima podemos ver claramente que há a possibilidade de darmos um nome para a tabela por meio do campo “Nome” e de determinarmos quantas linhas e colunas nossa tabela terá, por meio dos campos “Colunas” e “Linhas”.<br />
<br />
Logo a seguir, abaixo do campo “Linhas” podemos ver um campo “Título”, onde se o marcarmos, nossa tabela terá N linhas com formatação de título (e. g. Negrito). A quantidade de linhas será definida no campo “As primeiras ... linhas”.<br />
<br />
O Campo “Borda” indica a existência ou não de uma linha separando cada célula que comporá a tabela criada.<br />
<br />
O botão “Autoformatar...” nos dá a possibilidade de darmos uma formatação para a tabela que será criada (e. g. Cores, fonte, bordas, alinhamento e etc).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela2writer.jpg]]</div><br />
<br />
<br />
Após a criação da tabela, podemos alterar suas propriedades ou parte dela, selecionando a parte que queremos alterar e indo até o menu Tabela, Propriedades da tabela. <br />
<br />
Nesta janela podemos alterar O nome, espaçamento, tamanho de coluna e linha, estilos de borda e cores de fundo.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela3writer.jpg]]</div><br />
<br />
<br />
===Cabeçalho===<br />
<br />
<br />
Para colocar um cabeçalho em um documento basta acessarmos o menu Inserir, Cabeçalho, Padrão. Então abrir-se-á uma área para digitação do texto do cabeçalho.<br />
<br />
Você poderá digitar o texto do cabeçalho em qualquer página do documento, que este será automaticamente replicado para as demais páginas existentes.<br />
<br />
Você poderá ainda, aplicar formatação ao cabeçalho, incluir borda e plano de fundo e também excluir o cabeçalho por meio da aba azul “Cabeçalho (Padrão)”. Para isto, basta clicar na setinha apontada para baixo existente na aba que as opções surgirão na forma de um menu pop-up.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:cabecalhowriter.jpg]]</div><br />
<br />
<br />
===Rodapé===<br />
<br />
<br />
ara inserir um rodapé, o procedimento é idêntico ao do cabeçalho, porém deve-se acessar o menu Inserir, Rodapé, Padrão]. Abrir-se-á uma área para digitação do texto do rodapé. Nesta área, pode-se colocar o que for necessário. No entanto, o mais comum de ser colocado nos rodapés de documentos são: número da página, data/hora da impressão, autor, quantidade total de páginas existentes no documento, dentre outros.<br />
<br />
Você poderá ainda, da mesma forma que no cabeçalho, aplicar formatação ao rodapé, incluir borda, plano de fundo e também o excluir. Tudo isto poderá ser realizado por meio da aba azul “Rodapé (Padrão)”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:rodapewriter.jpg]]</div><br />
<br />
<br />
===Campos===<br />
<br />
<br />
Este é mais um recurso muito útil existente no LibreOffice. Com ele você poderá fazer seu documento mostrar informações automaticamente e sem muito esforço, disponibilizado no menu Inserir, Campos.<br />
<br />
Os campos preexistentes no LibreOffice. são:<br />
<br />
* Data: coloca a data atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Hora: coloca a hora atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Número da página: exibe o número da página atual;<br />
* Total de páginas: exibe a quantidade de páginas existentes no documento;<br />
* Assunto: mostra o que foi registrado no campo “Assunto”, descrito nas “Propriedades” do documento;<br />
* Título: mostra o que foi registrado no campo “Título”, descrito nas “Propriedades” do documento;<br />
* Autor: mostra o primeiro e último nome listados em “Dados do Usuário” do LibreOffice no menu Ferramentas, Opções;<br />
* Outros: [Ctrl + F2] que dá a possibilidade de escolha de diversos campos, com diversas informações sobre o documento. Estes outros campos poderão ser escolhidos na tela “Campos” em suas diversas abas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:camposwriter.jpg]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
Crie uma tabela no documento em branco com os dados da imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabelawriter.jpg]]</div><br />
<br />
<br />
Formate a tabela com as seguintes configurações:<br />
<br />
<br />
* Linha de título mesclada, fonte Rekha, tamanho 14, cor vermelha, negrito e centralizado;<br />
* Linha de subtítulo com fonte Loma, tamanho 12, itálico e centralizado;<br />
* Demais linhas com fonte Garuda, tamanho 12 alinhamento justificado;<br />
* Insira cor de fundo de acordo com a imagem acima.<br />
<br />
No cabeçalho, insira o texto Proeja - Informática básica II em fonte Liberation Serif, tamanho 12 e negrito.<br />
<br />
No rodapé insira o número da página alinhado a direita.<br />
<br />
Ao final, o documento deve ter essa aparência:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabela2writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=11/09/2018: Corretor ortográfico, impressão e Figuras=<br />
<font size="3"><br />
{{Collapse top | Aula 7}}<br />
<br />
===Corretor ortográfico===<br />
<br />
Você pode verificar a ortografia de uma seleção de texto ou do documento por inteiro manualmente.<br />
<br />
A verificação ortográfica começa na posição atual do cursor ou no início da seleção de texto.<br />
<br />
Clique no documento ou selecione o texto que deseja verificar. Escolha Ferramentas - Ortografia e gramática.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretorwriter.jpg]]</div><br />
<br />
<br />
Sempre que é encontrado um erro de ortografia, surge a caixa de diálogo Verificação ortográfica e o LibreOffice oferece algumas sugestões de correção.<br />
Adote um dos seguintes procedimentos:<br />
<br />
Para aceitar a correção, clique na sugestão e, em seguida, em Corrigir.<br />
<br />
Edite a frase na caixa de texto superior e, em seguida, clique em Corrigir.<br />
<br />
Para adicionar a palavra desconhecida ao dicionário definido pelo usuário, clique em Adicionar ao dicionário.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretor2writer.jpg]]</div><br />
<br />
<br />
===Impressão===<br />
<br />
<br />
Para imprimir documentos no Libreoffice Writer, podemos clicar diretamente no botão imprimir ou ir no menu Arquivo, imprimir:<br />
<br />
Na janela que se abre, podemos escolher diversas configurações adicionais.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:imprimir2writer.jpg]]</div><br />
<br />
<br />
Na aba Geral, podemos escolher a impressora, quantidade de cópias, se serão agrupadas, quais páginas serão impressas (todas, somente uma ou uma parte).<br />
<br />
Na aba Libreoffice Writer podemos escolher se o plano de fundo será impresso, as figuras e objetos, texto oculto, cor do texto e páginas em branco.<br />
<br />
Em Layout escolhemos a quantidade de páginas por folha, a ordem e lados da página.<br />
<br />
E na aba Opções escolhemos se irá para uma impressora física ou um arquivo, agrupamento, bandejas definidas na impressora e tamanho definido na impressora.<br />
<br />
<br />
===Visualizar impressão===<br />
<br />
Antes de imprimir algum trabalho, convém observar como ficará o layout no papel, para evitar alguns acidentes, tais como quebras de páginas em locais indesejados, ajustes de parágrafos, entre outros. Para tanto, o auxílio da função Visualizar Impressão é fundamental.<br />
<br />
Acesse o menu Arquivo > Visualização de Página, no ícone na barra de ferramentas ou através do atalho Ctrl + Shift + O.<br />
<br />
Na tela aparecerá uma projeção exata de como ficará a impressão. Serão apresentadas algumas ferramentas, se quisermos analisar com mais detalhes:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:visualizarimpressaowriter.jpg]]</div><br />
<br />
<br />
'''Uma página<br/>'''<br />
Mostra uma página na janela de visualização.<br />
<br />
<br />
'''Duas páginas<br/>'''<br />
Mostra duas páginas na janela de visualização. As páginas ímpares aparecerão no lado direito e as páginas pares no lado esquerdo.<br />
<br />
<br />
'''Visualização de livro<br/>'''<br />
Selecione esta opção para ver a primeira página no lado direito da visualização. Se não a selecionar, a primeira página é mostrada no lado esquerdo da visualização.<br />
<br />
<br />
'''Várias páginas<br/>'''<br />
Define o número de páginas exibidas na tela. Clique na seta ao lado do ícone para abrir uma grade e selecionar o número de páginas a serem exibidas como linhas e colunas na visualização.<br />
<br />
<br />
'''Para o início do documento<br/>'''<br />
Vai para a primeira página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Página anterior<br/>'''<br />
Vai para a página anterior do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Próxima página<br/>'''<br />
Vai para a próxima página do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Para o fim do documento<br/>'''<br />
Vai para a última página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Menos zoom<br/>'''<br />
Diminui o zoom para ver mais do documento em um tamanho reduzido.<br />
<br />
<br />
'''Zoom de visualização<br/>'''<br />
Determina o nível de zoom da visualização de impressão.<br />
<br />
<br />
'''Mais zoom<br/>'''<br />
Aumenta o zoom para obter um close do documento.<br />
<br />
<br />
'''Imprimir<br/>'''<br />
Imprime o documento.<br />
<br />
<br />
'''Tela inteira<br/>'''<br />
Exibe ou oculta os menus e as barras de ferramentas no Writer ou no Calc. Para sair do modo de tela inteira, clique no botão Tela inteira ou pressione a tecla Esc.<br />
<br />
<br />
'''Fechar visualização<br/>'''<br />
Fecha a visualização e volta na edição do documento.<br />
<br />
<br />
===Figuras===<br />
<br />
<br />
A inserção de figura em um texto e sua manipulação é simples no Writer.<br />
<br />
Vamos passo a passo mostrar como se dá essa inserção. <br />
<br />
Primeiro abra o documento em que deseja inserir a figura e posicione o cursor no local desejado que ela apareça. Depois escolha Inserir - Figura. Localize o arquivo gráfico que você deseja inserir e, em seguida, clique em Abrir. <br />
<br />
Por padrão, a figura inserida é centralizada acima do parágrafo no qual você clicou. <br />
<br />
<br />
Veja que é criada uma barra de ferramenta flutuante chamada figura. Nela você modifica os aspectos de cor e padrão da figura e também inverte vertical ou horizontalmente a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figurawriter.jpg]]</div><br />
<br />
<br />
Quando é inserida uma figura a barra de ferramenta quadro é mostrada para configurar com mais facilidade a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura2writer.jpg]]</div><br />
<br />
<br />
Também temos a opção de formatar figura. Para isso, selecione a figura e vá no menu Formatar - Figura.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura3writer.jpg]]</div><br />
<br />
<br />
Nesta janela teremos várias opções de configuração, tais como ajuste de tamanho, ajuste no texto, posicionamento. hiperlink, recorte, bordas, transparência, etc.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=18/09/2018: Palestra Reflexos da reforma trabalhista para a classe trabalhadora=<br />
<font size="3"><br />
{{Collapse top | Aula 8}}<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=25/09/2018: Introdução ao Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 9}}<br />
<br />
===Libreoffice Calc===<br />
<br />
Calc é um software de planilha eletrônica multiplataforma de código aberto, desenvolvido originalmente pela Star Division, posteriormente pela Sun Microsystems (como parte da suíte StarOffice) e atualmente pela The Document Foundation, como parte da suíte LibreOffice. Também é distribuído gratuitamente com as suítes OpenOffice.org e NeoOffice.<br />
<br />
Nessa planilha, o número limite de linhas é de pouco mais de 1 milhão por planilha e o número limite de colunas é de 1024 por planilha.<br />
<br />
Na imagem abaixo podemos conhecer um pouco melhor a interface do Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interfacecalc.jpg]]</div><br />
<br />
<br />
As células do Calc possuem endereçamento, onde as colunas são definidas por letras e as linhas por números. Para identificar o endereço da célula, basta indicar primeiramente o endereçamento da coluna e depois da linha. Ex: '''A1'''.<br />
<br />
<br />
====Operadores====<br />
<br />
<br />
Devemos conhecer alguns símbolos que são muito utilizados, juntamente com a ordem dos cálculos efetuados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface2calc.jpg]]</div><br />
<br />
<br />
====Realce de valor====<br />
<br />
<br />
A função Realce de valor destaca os conteúdos das células através da diferenciação da cor da fonte. Para acioná-la, vá até o menu Exibir > Realce de valor ou clique na combinação de teclas Ctrl+F8.<br />
<br />
Textos são apresentados em preto, números em azul e fórmulas em verde. Essa configuração de cores é padrão para qualquer instalação do LibreOffice. Na figura abaixo, é possível identificar as três categorias. No exemplo, o conteúdo da célula B30 é a fórmula =1+1. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface3calc.jpg]]</div><br />
<br />
<br />
====Séries de preenchimento====<br />
<br />
<br />
Uma Série de preenchimento é uma forma fácil de fazer um preenchimento automático em uma área da planilha a partir de um valor inicial.<br />
<br />
Inicialmente, digite o valor inicial em uma célula. Com a célula selecionada, coloque o ponteiro do mouse sobre o ponto preto no canto inferior direito, chamado Alça de preenchimento, até que este se transforme em uma pequena cruz.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface4calc.jpg]]</div><br />
<br />
<br />
Arraste com o botão do mouse pressionado até a última célula da sequência desejada, como no passo 1 apresentado na tabela abaixo. Solte o botão do mouse e a área selecionada será preenchida com a sequência numérica correspondente (passo 2).<br />
<br />
Se a direção da sua seleção for horizontal para a esquerda ou vertical para cima, o Calc fará o preenchimento com decremento 1. Se a direção da sua seleção for horizontal para a direita ou vertical para baixo, o Calc fará o preenchimento com incremento 1.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface5calc.jpg]]</div><br />
<br />
<br />
Se você desejar criar uma sequência de preenchimento sem incremento algum, faça o mesmo procedimento, no entanto, ao clicar e arrastar com a alça de preenchimento, mantenha a tecla Ctrl pressionada.<br />
<br />
====Formatar Células====<br />
<br />
<br />
Permite que você especifique diversas opções de formatação e aplique atributos às células selecionadas.<br />
<br />
Escolha Formatar - Células<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:formatcelcalc.jpg]]</div><br />
<br />
<br />
Números<br />
Especifica as opções de formatação para a(s) célula(s) selecionada(s).<br />
<br />
<br />
Fonte<br />
Especifique a formatação e a fonte que deseja aplicar.<br />
<br />
<br />
Alinhamento<br />
Define ao opções de alinhamento para o conteúdo da célula atual, ou das células selecionadas.<br />
<br />
<br />
Bordas<br />
Define opções de borda para os objetos selecionados em Writer ou Calc.<br />
<br />
<br />
Plano de fundo<br />
Define a cor ou a figura do plano de fundo.<br />
<br />
<br />
Proteção de célula<br />
Define as opções de proteção para as células selecionadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=02/10/2018: Fórmulas simples Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 10}}<br />
<br />
===Funções===<br />
<br />
Funções são procedimentos baseados em operações e operandos que, manipulados, retornam um determinado resultado. Funções podem simplesmente representar a implementação de operadores, como a função Soma, que veremos adiante, ou, de forma mais complexa, realizar cálculos de nível avançado.<br />
<br />
<br />
Para inserir uma função através do assistente, siga os seguintes passos:<br />
<br />
Selecione a célula onde será inserida a função;<br />
<br />
Selecione uma das opções abaixo:<br />
<br />
* vá até o menu Inserir > Função ou<br />
* teclar Ctrl + F2 ou<br />
* clique sobre o botão Assistente de funções, na Barra de fórmulas.<br />
<br />
Será aberta a tela do Assistente de funções. Selecione, então, uma categoria de função na caixa Categoria;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalc.jpg]]</div><br />
<br />
<br />
Selecione o nome da função e clique no botão Próximo;<br />
<br />
Preencha os argumentos solicitados para a função;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcao2calc.jpg]]</div><br />
<br />
<br />
Clique OK. A fórmula será inserida na célula e o resultado será contabilizado.<br />
<br />
A função também pode ser digitada. Para isto, basta iniciar coma digitação do símbolo de = e posteriormente digitar o nome da fórmula desejada, juntamente com seu parâmetros.<br />
<br />
<br />
====Funções simples====<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaosomacalc.jpg]]</div><br />
<br />
<br />
No exemplo acima, a função é SOMA, o argumento é B2:B6 (leia-se de B2 até B6) e o resultado ( a soma dos valores) é 20. <br />
<br />
Como digitar<br />
<br />
Se as células são adjacentes: =SOMA(C2:C8) <br />
<br />
Essa função soma o conteúdo de células adjacentes (sequência C2 até C8)<br />
<br />
Se as células não são adjacentes: =SOMA(B2;C3;D1).<br />
<br />
A função Média calcula o valor médio de um intervalo, adjacente ou não.<br />
<br />
=MEDIA(C2:C8)<br />
<br />
A função Mínimo retorna o menor valor de um intervalo analisado<br />
<br />
=MINIMO(C2:C8)<br />
<br />
A função Máximo retorna o maior valor de um intervalo analisado<br />
<br />
=MAXIMO(C2:C8)<br />
<br />
A função Mediana de um intervalo é o seu valor central, ou seja, que divide o intervalo em duas partes iguais<br />
<br />
=MED(C2:C8)<br />
<br />
A função Moda retorna o valor que mais se repete em um intervalo. Caso dois números ou mais tenham a mesma quantidade de repetições, o menor valor será mostrado.<br />
<br />
=MODO(C2:C8)<br />
<br />
A função Concatenar agrupa valores indicados. Esta função aceita somente ;<br />
<br />
=CONCATENAR(C2;C5;C8)<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=09/10/2018: Fórmulas Compostas Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 11}}<br />
<br />
===Funções Lógicas===<br />
<br />
<br />
'''SE'''<br />
<br />
<br />
Esta é uma função bastante interessante pois permite ao usuário da planilha construir expressões condicionais, avaliando e apresentando diferentes resultados conforme uma cláusula avaliada.<br />
<br />
A estrutura da função SE é:<br />
<br />
=SE (CONDIÇÃO; VALOR_SE_CONDIÇÃO_VERDADEIRA; VALOR_SE_CONDIÇÃO_FALSA)<br />
<br />
O primeiro argumento é a condição. Normalmente, avaliamos o conteúdo de uma célula em relação a um dado parâmetro, como, por exemplo C4<100 ou A1=”APROVADO”.<br />
<br />
Caso a condição seja verdadeira, o segundo argumento é apresentado como resultado da função.<br />
<br />
Caso a condição seja falsa, o terceiro argumento é apresentado como resultado.<br />
<br />
No exemplo abaixo, avaliamos o valor da nota do aluno e, caso esteja acima da média, apresentamos o resultado “Aprovado”. Senão, apresentamos o resultado “Recuperação”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcse.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.NUM'''<br />
<br />
<br />
<br />
A função CONT.NÚM conta quantos valores numéricos estão entre os ARGUMENTOS da função.<br />
<br />
Entende-se como valores numéricos: números, datas e fórmulas cujo resultado seja um número. Células vazias ou células com conteúdo de texto não são contadas na função CONT.NÚM.<br />
<br />
O formato da função é:<br />
<br />
=CONT.NÚM(ARGUMENTOS)<br />
<br />
Observe no exemplo abaixo que nem todos os alunos fizeram a primeira avaliação. Podemos usar a função CONT.NÚM para contar as notas do intervalo B11:B19 e identificar quantos alunos de fato fizeram a prova.<br />
<br />
O resultado da função =CONT.NÚM(B11:B19) será 7 pois, as duas células, correspondentes aos alunos que não fizeram a prova, estão vazias.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontnum.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.SE'''<br />
<br />
<br />
<br />
A função CONT.SE tem como objetivo contar quantos valores obedecem a um determinado critério. A estrutura é bastante simples:<br />
<br />
=CONT.SE (INTERVALO; CONDIÇÃO)<br />
<br />
Os valores dentro do intervalo são avaliados um a um de acordo com a condição. O valor é contado somente se a condição for verdadeira.<br />
<br />
No exemplo abaixo, contamos quantos alunos estão com notas acima da média estabelecida.<br />
<br />
Note que usamos uma concatenação de texto para expressar adequadamente o critério, indicado no segundo argumento com a expressão “>”&B6. Ou seja, concatenamos o sinal de > com o conteúdo da célula B5.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse.jpg]]</div><br />
<br />
<br />
O resultado da função CONT.SE acima é de 7 alunos.<br />
<br />
Quando o critério ou condição for de igualdade, não precisamos usar a concatenação de texto, por exemplo:<br />
<br />
=CONT.SE(B10:B18;B6)<br />
<br />
Em sua construção mais comum, a função CONT.SE permite apenas um argumento como critério de contagem. No entanto, em casos específicos, é possível utilizar mais de um argumento através do uso de expressões regulares em fórmulas.<br />
<br />
O exemplo abaixo ilustra essa situação. A partir da tabela abaixo, desejamos obter a quantidade de cadastros de pessoas que são dos estados do Rio Grande do Sul e Santa Catarina.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse2.jpg]]</div><br />
<br />
<br />
Uma abordagem óbvia e simples seria a soma de CONT.SE:<br />
<br />
=CONT.SE(F3:F8;"RS")+CONT.SE(F3:F8;"SC")<br />
<br />
Uma abordagem elegante poderia utilizar expressões regulares:<br />
<br />
=CONT.SE(F3:F8;"RS|SC")<br />
<br />
Onde o símbolo | (pipe) entre as siglas RS e SC representa a operação OU lógica. Logo, estamos contando apenas os valores do intervalo de F3 até F8 que são iguais a RS ou a SC.<br />
<br />
<br />
'''CONT.VALORES'''<br />
<br />
<br />
A função CONT.VALORES permite contar células preenchidas com valores de texto, número ou fórmula dentro de um intervalo.<br />
<br />
O formato da função CONT.VALORES é:<br />
<br />
=CONT.VALORES(ARGUMENTOS)<br />
<br />
No exemplo abaixo, o usuário deverá preencher o espaço amarelo com cinco códigos de produto.<br />
<br />
Para contar quantas células já foram preenchidas, utilizamos a função CONT.VALORES e o intervalo de G5:G9.<br />
<br />
O resultado da função, no exemplo abaixo, será 3.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvalores.jpg]]</div><br />
<br />
<br />
<br />
'''CONTAR.VAZIO'''<br />
<br />
<br />
CONTAR.VAZIO conta quantas células do intervalo indicado em ARGUMENTOS estão vazias, isto é, sem conteúdo algum.<br />
<br />
=CONTAR.VAZIO(ARGUMENTOS)<br />
<br />
No nosso exemplo anterior, da função CONT.VALORES, calculamos quantas células do intervalo amarelo já haviam sido preenchidas. Podemos encontrar a informação complementar (quantas células faltam ser preenchidas) através da função CONTAR.VAZIO.<br />
<br />
No exemplo, a função CONTAR.VAZIO pode ser utilizada sobre o intervalo de G5:G9. O resultado da função na célula H15 será de 2.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvazio.jpg]]</div><br />
<br />
<br />
<br />
'''SOMASE'''<br />
<br />
<br />
A função SOMASE é útil para cálculos que envolvam valores totais a partir de um determinado critério. O formato da função é:<br />
<br />
=SOMASE(INTERVALO_DE_AVALIAÇÃO; CRITÉRIO; INTERVALO_DE_SOMA)<br />
<br />
Os valores do intervalo de avaliação são avaliados conforme o critério. Caso estejam de acordo com o critério indicado, o valor correspondente no intervalo de soma é somado ao resultado.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcsomase.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=23/10/2018: Avaliação=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
* Copie o conteúdo abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:avaliacaocalc.jpg]]</div><br />
<br />
<br />
* Efetue os cálculos solicitados (Total dos produtos por trimestre, Valor máximo, Valor mínimo, Média e Total por mês).<br />
<br />
* Salve o arquivo com o seu nome e envia para o seguinte e-mail:<br />
<br />
ederson.luiz@ifsc.edu.br<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=06/11/2018: Vínculo entre planilhas, Gráficos, Classificação e Filtros=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
===Classificação===<br />
<br />
<br />
No Libreoffice Calc, podemos efetuar a classificação de conteúdos, em ordem alfabética, de forma crescente ou decrescente.<br />
<br />
Para tanto, devemos clicar em um intervalo de banco de dados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc.jpg]]</div><br />
<br />
<br />
Ao selecionar um intervalo de células, somente estas células serão classificadas. <br />
<br />
Se você clicar somente em uma célula sem selecionar, então todo o intervalo de banco de dados será classificado.<br />
<br />
Escolha Dados - Classificar.<br />
<br />
O intervalo de células que será classificado é mostrado em cores invertidas.<br />
<br />
Selecione as opções de classificação desejadas.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc2.jpg]]</div><br />
<br />
Clique em OK.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc3.jpg]]</div><br />
<br />
<br />
===Filtro===<br />
<br />
<br />
Os filtros e filtros avançados permitem que você assegure que somente certas linhas (registros) de um intervalo de dados fiquem visíveis. Nos documentos de planilhas do LibreOffice, há várias possibilidades para a aplicação de filtros.<br />
<br />
Uma das utilizações para a função Autofiltro, que se encontra em Dados, Filtro, Autofiltro, é a de rapidamente restringir a exibição de registros com entradas idênticas em um campo de dados.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:autofiltrocalc.jpg|900px]]</div><br />
<br />
<br />
Na caixa de diálogo Filtro padrão, você também pode definir intervalos que contenham os valores em determinados campos de dados. É possível utilizar o filtro padrão para conectar até três condições com um operador lógico E ou OU.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtropadraocalc.jpg]]</div><br />
<br />
<br />
O Filtro avançado excede a restrição de três condições e permite até oito condições de filtro. Com os filtros avançados, você insere as condições diretamente na planilha.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtroavancadocalc.jpg]]</div><br />
<br />
<br />
Para remover um filtro, de forma a ver todas as células, clique dentro da área onde o filtro estiver aplicado e escolha Dados - Filtro - Redefinir filtro.<br />
<br />
Ao selecionar várias linhas de uma área onde um filtro foi aplicado, a seleção pode incluir linhas visíveis e linhas ocultas pelo filtro. Se depois você aplicar formatação, ou excluir as linhas selecionadas, esta ação só afetará as linhas visíveis. As linhas ocultas não serão afetadas.<br />
<br />
Isto é o oposto das linhas que foram ocultas manualmente pelo comando Formatar - Linhas - Ocultar linhas. Linhas ocultas manualmente são excluídas ao excluir uma seleção que as contenha.<br />
<br />
<br />
===Vínculo entre planilhas===<br />
<br />
Podemos utilizar conteúdos que se encontram em outras planilhas do documento.<br />
<br />
Para que isso ocorra, devemos utilizar como no exemplo abaixo:<br />
<br />
=Planilha2.A1<br />
<br />
Neste caso, o conteúdo da Planilha2, célula A1 será exibido onde esta fórmula for empregada.<br />
<br />
<br />
===Gráficos===<br />
<br />
<br />
No Calc, é fácil gerar gráficos a partir de qualquer planilha. <br />
<br />
Pode-se chamar o assistente de gráficos a partir do seu ícone ou do menu Inserir ... gráfico.<br />
<br />
Os gráficos no Calc estão muito fáceis e muito intuitivos e prometem-se ainda muitas melhorias para este recurso. <br />
<br />
Ao se invocar o comando Inserir Gráfico, tem-se uma tela como a seguir (previsão do gráfico e seu assistente):<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc.jpg]]</div><br />
<br />
<br />
Logo na Etapa 1 você terá vários tipos e subtipos de gráficos a escolher: barras, pizza, rede, dispersão, etc.<br />
<br />
Etapa 2 – Intervalo de Dados – aqui se informa ao Calc a área a ser computada e plotada.<br />
<br />
Etapa 3 – Série de Dados – Aqui se definem nomes e rótulos para as séries dos dados.<br />
<br />
Etapa 4 – É nesta etapa que se fazem as legendas do gráfico.<br />
<br />
A seguir, vemos um gráfico de Pizza gerado no LibreOffice Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc2.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=13/11/2018: Introdução ao Libreoffice Impress=<br />
<font size="3"><br />
{{Collapse top | Aula 13}}<br />
<br />
===Tela Principal===<br />
<br />
O Impress é software para desenvolvimento de apresentações. Por meio deste software pode-se preparar as apresentações textuais, adicionar imagens, sons e até mesmo animação.<br />
<br />
<div style="text-align: left;">[[Arquivo:impressprincipal.jpg]]</div><br />
<br />
<br />
===Slide Mestre===<br />
<br />
Toda apresentação possui no mínimo um slide mestre. Este slide em especial leva este nome não é à toa e veremos o por quê.<br />
<br />
No slide mestre pode-se configurar e/ou alterar as formatações de uma apresentação inteira.<br />
<br />
Nem sempre as pessoas que trabalham com este tipo de ferramenta o utilizam. Na maioria das vezes por pura falta de conhecimento.<br />
<br />
Vamos começar a desenvolver nossa apresentação exatamente pelo slide mestre. Mas antes disso vamos acessar o menu [Exibir | Régua], para que a régua seja mostrada da mesma forma como é mostrada no Writer.<br />
<br />
Agora então vamos acessar o menu [Exibir | Mestre | Slide Mestre]. Após este passo, podemos observar que a interface mudou bastante:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressmestre.jpg]]</div><br />
<br />
<br />
Tudo que fizermos neste slide será replicado para todos os slides que tenham este mesmo layout em nossa apresentação.<br />
<br />
<br />
Para fazer uma apresentação, não é pré-requisito configurar o slide mestre. No entanto, há alguns bons motivos para você fazê-lo:<br />
<br />
* Configurando o slide mestre, você não precisará fazer isto de novo em nenhum outro slide, pois, isto acontecerá automaticamente;<br />
* Hoje esta apresentação vai ter um fundo de tela voltado para este curso, amanhã se o autor não ficar satisfeito ou se for usá-la em outro curso, bastará fazer a alteração no slide mestre e tudo estará resolvido.<br />
<br />
<br />
===Segundo Slide===<br />
<br />
<br />
Para criar o segundo slide vamos dar um clique com o botão direito do mouse na área sob as miniaturas de slides. <br />
<br />
No menu pop-up que aparecer acesse a opção “Novo slide”.<br />
<br />
Muito provavelmente o slide que foi criado veio com o mesmo layout do anterior a ele. Então, vá até a área de layout de slides e clique no layout que gostaria de utilizar.<br />
<br />
<br />
===Slide com imagem===<br />
<br />
<br />
Mais uma vez vamos repetir o processo de criar um novo slide, ou seja, clique com o botão direito do mouse sobre a área limpa sob as miniaturas de slides. Então escolha a opção “Novo slide”.<br />
<br />
Será criado um slide com layout padrão. Vamos alterar o layout para um que comporte texto e objetos.<br />
<br />
Agora, no quadro do lado direito é apresentada uma imagem central que na verdade são quatro botões:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem.jpg]]</div><br />
<br />
<br />
Clique no botão para inserir “Imagem”. Será aberta uma caixa de diálogo do sistema operacional que você estiver usando, então, vá até a pasta onde está o arquivo, selecione-o e aperte o botão “Abrir” (Open em inglês).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem2.jpg]]</div><br />
<br />
<br />
O slide apresentará a imagem selecionada. Clique na figura e ajuste-a para que fique num tamanho adequado. E está pronto o terceiro slide.<br />
<br />
<br />
===Exercício===<br />
<br />
Desenvolva a apresentação abaixo de forma que fique o mais parecida possível.<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag1.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag2.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag3.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag4.jpg]]</div><br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impresssexerciciopag5.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impressslideimagem2.jpg&diff=152652Arquivo:Impressslideimagem2.jpg2018-11-12T20:59:14Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2018-2&diff=152651INF-2018-22018-11-12T20:59:01Z<p>Ederson.luiz: /* 13/11/2018: Introdução ao Libreoffice Impress */</p>
<hr />
<div>=Informática Básica II= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 3a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2018-2<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/2/2b/PPC_PROEJA_-_ano_2015.pdf PPC Proeja Operador de Computador]<br />
<br />
<br />
==Ementa==<br />
<br />
Aplicativos de escritório, tais como editor de texto, planilha eletrônica e ferramenta de apresentação.<br />
<br />
Navegação na Internet, pesquisa e cuidados com a segurança da informação.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Elaborar documentos digitais;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional;<br />
* Redigir e formatar documentos utilizando o editor de textos;<br />
* Construir planilhas eletrônicas, aproveitando suas funções;<br />
* Montar apresentações dinâmicas e interativas;<br />
* Navegar na internet, pesquisar e utilizar aplicativos Web como webmail, ferramentas de escritório online e redes sociais;<br />
* Reconhecer URLs (endereços) e mecanismos de segurança para navegação segura.<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.hardware.com.br/livros/linux/dicas-para-openofficebroffice.html Dicas de Openoffice]<br />
* [https://www.tecmundo.com.br/office/3767-como-migrar-do-office-para-o-openoffice-sem-dores-de-cabeca.htm Como migrar do Office para o Openoffice sem dores de cabeça]<br />
<br />
=31/07/2018: Apresentação da disciplina, introdução ao Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina===<br />
<br />
Introdução ao componente curricular e Introdução ao Libreoffice.<br />
<br />
'''Arquivo apresentação da disciplina'''<br />
<br />
[https://drive.google.com/file/d/127DSInkISdvAkptI3D_iSCafRoRkTepw/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://pt-br.libreoffice.org/baixe-ja/libreoffice-novo/ Link para download do LibreOffice]<br />
<br />
<br />
O LibreOffice é uma ferramenta do tipo “office” totalmente gratuita e de código aberto.<br />
<br />
Mas quais os motivos para usarmos o Libreoffice?<br />
<br />
* O LibreOffice é um conjunto de softwares de uso profissional ou doméstico ideal para quem quer uma suíte de escritório para o dia a dia e não deseja softwares desatualizadas e independentes.<br />
* Toda a interface do LibreOffice é padronizada, assim como acontece com o Microsoft Office. Conjuntos e ícones e funcionalidades são semelhantes em toda a interface do usuário. As teclas de atalho são diferentes dos utilizados em outras soluções, porém são bem simples de memorizar.<br />
* O LibreOffice pode ser instalado e utilizado de uma forma [https://pt-br.libreoffice.org/baixe-ja/portable-versions/ portátil], sem necessidade de instalação no computador de uso.<br />
* O LibreOffice é compatível com todos os formatos gerados pelos aplicativos Microsoft, inclusive os documentos mais antigos, tais como DOC, XLS e PPT.<br />
* O LibreOffice é um software de código aberto e grátis. Pode ser instalados em diversos computadores e ser utilizado para qualquer finalidade.<br />
<br />
No decorrer do curso iremos trabalhar com os seguintes softwares:<br />
<br />
'''LibreOffice Writer:'''<br />
<br />
O Writer é o processador de texto do LibreOffice e é um software similar ao Microsoft Word. Com o Writer é possível criar desde textos simples, até textos com padrões complexos, com imagens, tabelas, anotações, estilos e numeração de páginas. Sua interface lembra o Word na versão 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Calc:'''<br />
<br />
O Calc é o editor de planilhas eletrônicas do LibreOffice e é um software similar ao Microsoft Excel. Com o Calc é possível criar planilhas e gráficos de todos os tipos, com imagens, formatação de texto e bordas. Sua interface lembra o Excel 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Impress:'''<br />
<br />
O Impress é o criador de apresentações do LibreOffice e é um software similar ao Microsoft Power Point. Com o Impress é possível criar apresentações de todos tipos, com diversos slides, imagens, formas, animações e transições. Sua interface lembra o Power Point 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
<br />
===LibreOffice Writer===<br />
<br />
<br />
Para a maioria das nossas atividades no software Writer, nós faremos uso de textos.<br />
<br />
Vamos conhecer um pouco de sua interface:<br />
<br />
<div style="text-align: center;">[[Arquivo:writerinterface.jpg|900px]]</div><br />
bit.ly/inf-2018-2<br />
As barras de ferramentas podem ser movidas, de acordo com a necessidade ou preferência:<br />
<br />
<div style="text-align: center;">[[Arquivo:moverbarra.jpg|900px]]</div><br />
<br />
<br />
As funções dos botões também podem ser acessadas via teclas de atalho:<br />
<br />
Teclas de função para o LibreOffice Writer<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho1.jpg]]</div><br />
<br />
<br />
Teclas de atalho para controlar documentos e janelas<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho2.jpg]]</div><br />
<br />
<br />
Teclas de atalho para editar ou formatar documentos<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho3.jpg]]</div><br />
<br />
<br />
A extensão padrão do arquivo é '''ODT'''. Se salvarmos um arquivo com o nome '''Exemplo''', o mesmo se chamará '''Exemplo.odt'''.<br />
<br />
Para selecionarmos o texto, podemos utilizar o mouse ou o teclado, através da tecla '''SHIFT''' + '''SETA DIRECIONAL'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=07/08/2018: Formatação e alinhamento=<br />
<font size="3"><br />
{{Collapse top | Aula 2}}<br />
<br />
===Barra de ferramentas Formatação===<br />
<br />
A barra de Formatação permite alterar as configurações relacionadas ao texto em si, como fonte, tamanho de fonte, estilos, negrito, sublinhado, etc.<br />
<br />
<div style="text-align: left;">[[Arquivo:barraformatacao.jpg]]</div><br />
<br />
Estilos e Formatação (F11): Exibe a janela Estilos e Formatação (abaixo) que exibe os estilos pré-definidos e também permite salvar configurações relativas ao tamanho e cor da fonte, espaçamento entre linhas do parágrafo. É possível alterar os estilos existentes ou mesmo criar novos.<br />
<br />
<div style="text-align: left;">[[Arquivo:estilowriter.jpg]]</div><br />
<br />
<br />
Nesta caixa de seleção escolhemos a fonte:<br />
<br />
<div style="text-align: left;">[[Arquivo:fontewriter.jpg]]</div><br />
<br />
<br />
Permite definir o tamanho da fonte, entre 2 e 999,9:<br />
<br />
<div style="text-align: left;">[[Arquivo:tamanhofontewriter.jpg]]</div><br />
<br />
<br />
Aplicam negrito, itálico e sublinhado respectivamente. Atalhos CTRL+B, CTRL+I e CTRL+U:<br />
<br />
<div style="text-align: left;">[[Arquivo:niswriter.jpg]]</div><br />
<br />
<br />
Aqui estão os possíveis alinhamentos para os parágrafos e são extremamente cobrados em concursos. <br />
<br />
<div style="text-align: left;">[[Arquivo:alinhamentowriter.jpg]]</div><br />
<br />
<br />
Alinhamento à esquerda. Atalho CTRL + L.<br />
<br />
Obs.: Quando o parágrafo está alinhado a esquerda fica desalinhado a direita.<br />
<br />
Alinhamento Centralizado. Atalho CTRL + E.<br />
<br />
Obs.: Quando o parágrafo está centralizado fica desalinhado a esquerda e a direita.<br />
<br />
Alinhamento à Direita. Atalho CTRL + R.<br />
<br />
Obs.: Quando o parágrafo está alinhado a direita fica desalinhado a esquerda.<br />
<br />
Alinhamento Justificado. Atalho CTRL + J.<br />
<br />
Obs.: Quando o parágrafo está justificado fica alinhado a direita e a esquerda.<br />
<br />
Dica: Para aplicar qualquer alinhamento a um parágrafo não é preciso selecionar o parágrafo, basta que o cursor esteja dentro do parágrafo.<br />
<br />
<br />
Cor da Fonte. Permite alterar a cor da fonte.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfontewriter.jpg]]</div><br />
<br />
<br />
Dica: Não é preciso selecionar a palavra que se deseja alterar a cor da fonte, basta que o cursor esteja posicionado dentro da palavra.<br />
<br />
<br />
Realçar. Permite realçar um texto com várias cores.<br />
<br />
<div style="text-align: left;">[[Arquivo:realcewriter.jpg]]</div><br />
<br />
<br />
Cor do Plano de Fundo. Permite alterar a cor do plano de fundo da posição onde o cursor está ou no trecho selecionado.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfundowriter.jpg]]</div><br />
<br />
<br />
'''Exercício'''<br />
<br />
<br />
<div style="text-align: center;">'''O Conceito de Mercado'''</div><br />
<br />
<br />
O conceito de <u>mercado</u> continua intimamente associado à idéia de <u>local</u> onde se efetuam transações entre produtores e consumidores. Consideramos essa noção restritiva, pelos seguintes aspectos:<br />
O mercado é hoje um espaço de realização de operações econômicas de compra e venda que vai para além dos seus contornos <u>físicos</u> e mesmo <u>temporais</u>.<br />
De fato, estão a surgir com grande freqüência <u>formas imateriais de mercado</u> (…).<br />
Essas formas de mercado lançam mão dos meios proporcionados pela sociedade de informação, possibilitando a realização de compras e vendas em casa, pela simples manutenção interativa de um ecrã de televisão ou, mais simplesmente, através de um telefonema para um número fornecido por aquele ecrã, com entrega imediata no domicilio ou pelo correio, como é uso da chamada televisão comercial.<br />
Existem operações de compra e venda que se contratam hoje e se realizam apenas daqui a alguns meses (como por exemplo, nos mercados de futuros, caso dos mercados de cereais nos Estados Unidos da América,...).<br />
Por outro lado existe uma diversidade de mercados, que vai desde os mercados de produtos finais ou de consumo final aos mercados de produtos intermédios e de fatores produtivos, bem como ao mercado de trabalho ou à bolsa ou <u>mercado de valores imobiliários</u>. Aos mercados nacionais sobrepõem-se os <u>mercados transnacionais</u>, de natureza informal, ou de diversos acordos de comércio livre, uniões aduaneiras ou comunidades econômicas.<br />
Tudo são razões para que se considere a noção de mercado como relativa e circunstancial, além de mutável no tempo.<br />
Uma coisa é certa: num mercado existem sempre intenções de compra (compra), intenções de venda (<u>oferta</u>), um preço e uma situação de equilíbrio mais ou menos estável fornecida por esse preço e pela quantidade correspondente.<br />
<br />
<br />
<div style="text-align: right;">Extraído de: Tinto, G., Introdução à Economia, 1995.</div><br />
<br />
<br />
# Grave o documento com o nome '''Exercicio1_Writer_Nome_Aluno'''.<br />
# Centralize o título “O Conceito de Mercado” no texto.<br />
# Formate o título como: '''negrito, tamanho 16''', tipo de letra '''Dejavu Sans'''.<br />
# Efetue o '''alinhamento justificado''' do texto.<br />
# Formate o texto com a fonte '''Nimbus Sans L''' e tamanho '''11'''<br />
# '''Alinhe à direita''' a fonte de onde foi extraído o texto (última linha) e coloque o texto em '''itálico'''<br />
# Marque a '''bold''' (negrito) os termos/expressões sublinhados acima<br />
# Anule os sublinhados e mantenha o negrito dos mesmos termos expressões<br />
# Coloque a '''negrito, itálico e sublinhada''' todas as ocorrências das palavras compra e compras.<br />
<br />
<br />
Envie este arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=14/08/2018: Colunas, capitular e hifenização=<br />
<font size="3"><br />
{{Collapse top | Aula 3}}<br />
<br />
===Criando colunas===<br />
<br />
<br />
O Writer permite criar colunas em seus documentos de texto. É possível inserir colunas em um estilo de página ou em um bloco individual de texto, sendo possível ainda formatar o layout da coluna de acordo com suas preferências:<br />
<br />
* Inserir colunas em um estilo de página;<br />
* Inserir colunas a um bloco de texto individual;<br />
* Formatar um layout de coluna;<br />
* Reverter para um layout de coluna simples.<br />
<br />
<br />
====Inserindo colunas em um estilo de página====<br />
<br />
<br />
Para inserir uma coluna em um estilo de página, clique em qualquer lugar da página e escolha Formatar > Colunas... no menu principal. Abre-se a janela Colunas:<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter.jpg]]</div><br />
<br />
<br />
====Inserindo colunas em um bloco de texto====<br />
<br />
<br />
Também é possível inserir colunas em um bloco de texto individual. Isso é útil caso não se queira modificar o estilo da página, ou se você quiser inserir colunas dentro de colunas. Observe que o Writer criará automaticamente uma seção a partir do bloco de texto selecionado. Uma seção é simplesmente um bloco de texto que tem uma formatação especial.<br />
<br />
Para inserir uma coluna em um bloco individual de texto, selecione o texto desejado, escolhendo em seguida Formatar > Colunas... a partir do menu principal. Abre-se a janela Colunas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter2.jpg]]</div><br />
<br />
Se você inserir colunas em um bloco de texto, é possível escolher como você deseja distribuir o texto pela coluna. È possível distribuir o texto de uma ou duas maneiras:<br />
<br />
* Uniformemente. Se você escolher distribuir o texto uniformemente, o Writer preencherá a primeira linha de cada coluna, seguindo para a segunda linha de cada coluna, e assim por diante.<br />
* Estilo Jornal. Se você escolher distribuir o texto em Estilo Jornal, o Writer preencherá as colunas uma por vez, começando pela primeira coluna.<br />
<br />
Para distribuir o texto uniformemente, marque a caixa de seleção Distribuir conteúdo uniformemente em todas todas as colunas na área Configurações. Desmarque esta caixa de seleção se você quiser distribuir o texto no estilo jornal.<br />
<br />
<br />
====Especificando o número de colunas====<br />
<br />
<br />
Se preferir criar um layout de coluna personalizado, você deverá especifcar o número de colunas desejado. Insira o número desejado na caixa Colunas da área Configurações.<br />
<br />
<br />
====Formatando a largura e o espaçamento da coluna====<br />
<br />
<br />
Para criar colunas com espaçamento uniforme com a mesma largura, marque a caixa de seleção AutoLargura na área Largura e espaçamento.<br />
<br />
Para personalizar a largura e o espaçamento das colunas, siga as seguintes etapas:<br />
<br />
* Na área de Largura e espaçamento, desmarque a caixa de seleção AutoLargura.<br />
* Na linha Largura, insira uma largura para cada coluna.<br />
* Na linha Espaçamento, insira o valor de espaçamento desejado entre cada par de coluna.<br />
<br />
Utilize as teclas direcionais na linha Coluna para rolar pelas colunas.<br />
<br />
<br />
====Formatando as linhas separadoras====<br />
<br />
<br />
Para exibir as linhas separadoras entre as colunas, siga as seguintes etapas:<br />
<br />
* A partir da lista suspensa Linha na área Linha separadora, selecione o tipo de linha desejado.<br />
* Por padrão, as linhas separadoras têm o mesmo tamanho das colunas. Caso deseje que as linhas separadoras sejam mais curtas do que a coluna, utilize a caixa Altura para inserir a altura das linhas separadoras como uma porcentagem do tamanho das colunas. Por exemplo, se você inserir 50%, as linhas separadoras terão metade do tamanho das colunas.<br />
* Se você inseriu uma altura menor do que 100%, use a lista suspensa Posição para selecionar um alinhamento vertical para as linhas do separador.<br />
<br />
<br />
====Revertendo o layout de uma coluna simples====<br />
<br />
<br />
Para reverter o layout de uma coluna simples em um estilo de página ou em um bloco de texto:<br />
<br />
* Clique em qualquer local no layout da coluna.<br />
* A partir do menu principal, escolha Formatar > Colunas... A janela Colunas aparece. <br />
* Na área Configurações, clique no layout de coluna simples localizado no lado esquerdo da caixa Colunas . Ou, volte a caixa Colunas para 1.<br />
* Clique em OK. A janela Colunas se fecha e o layout é revertido para uma coluna simples.<br />
<br />
<br />
===Capitulares===<br />
<br />
<br />
Basta somente você deixar o cursor no parágrafo que você deseja a primeira letra capitulada. Vá no meu Parágrafo e escolha a guia Capitulares. Na parte de Configurações, ative a caixa Exibir capitulares. Também pode escolher o número de caracteres, se vai utilizar a palavra inteira, quantidade de linhas a serem utilizadas, espaçamento até o texto e estilo do caractere. Após efetuar as configurações, clique em Ok.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:capitulareswriter.jpg]]</div><br />
<br />
<br />
===Hifenização===<br />
<br />
<br />
Insere hifens nas palavras grandes demais para caber no fim da linha. O LibreOffice procura no documento e sugere uma hifenização que possa ser aceita ou rejeitada. Se o texto estiver selecionado, a caixa de diálogo Hifenização atuará somente no texto selecionado. Se não houver texto selecionado, a caixa de diálogo Hifenização atuará em todo o documento.<br />
<br />
<br />
Agora, para colocar Hifenização, é bem simples, pressione Ctrl + A, para selecionar tudo ou selecione a parte do texto que deseja hifenizar e depois justifique o texto. Logo em seguida, clique em Ferramentas > Idioma > Hifenização. Depois, é só confirmar quais palavras que deseja hifenizar ou clicar em hifenizar tudo e pressione OK.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:hifenizacaowriter.jpg]]</div><br />
<br />
===Exercício===<br />
<br />
<br />
Copie o texto abaixo e posteriormente efetue os ajustes pedidos:<br />
<br />
<br />
----<br />
<br />
<br />
Das Vantagens de Ser Bobo<br />
<br />
<br />
O bobo, por não se ocupar com ambições, tem tempo para ver, ouvir e tocar o mundo. O bobo é capaz de ficar sentado quase sem se mexer por duas horas. Se perguntado por que não faz alguma coisa, responde: "Estou fazendo. Estou pensando." <br />
Ser bobo às vezes oferece um mundo de saída porque os espertos só se lembram de sair por meio da esperteza, e o bobo tem originalidade, espontaneamente lhe vem a idéia. <br />
O bobo tem oportunidade de ver coisas que os espertos não vêem. Os espertos estão sempre tão atentos às espertezas alheias que se descontraem diante dos bobos, e estes os vêem como simples pessoas humanas. O bobo ganha utilidade e sabedoria para viver. O bobo nunca parece ter tido vez. No entanto, muitas vezes, o bobo é um Dostoievski. <br />
Há desvantagem, obviamente. Uma boba, por exemplo, confiou na palavra de um desconhecido para a compra de um ar refrigerado de segunda mão: ele disse que o aparelho era novo, praticamente sem uso porque se mudara para a Gávea onde é fresco. Vai a boba e compra o aparelho sem vê-lo sequer. Resultado: não funciona. Chamado um técnico, a opinião deste era de que o aparelho estava tão estragado que o conserto seria caríssimo: mais valia comprar outro. Mas, em contrapartida, a vantagem de ser bobo é ter boa-fé, não desconfiar, e portanto estar tranqüilo. Enquanto o esperto não dorme à noite com medo de ser ludibriado. O esperto vence com úlcera no estômago. O bobo não percebe que venceu. <br />
Aviso: não confundir bobos com burros. Desvantagem: pode receber uma punhalada de quem menos espera. É uma das tristezas que o bobo não prevê. César terminou dizendo a célebre frase: "Até tu, Brutus?" <br />
Bobo não reclama. Em compensação, como exclama! <br />
Os bobos, com todas as suas palhaçadas, devem estar todos no céu. Se Cristo tivesse sido esperto não teria morrido na cruz. <br />
O bobo é sempre tão simpático que há espertos que se fazem passar por bobos. Ser bobo é uma criatividade e, como toda criação, é difícil. Por isso é que os espertos não conseguem passar por bobos. Os espertos ganham dos outros. Em compensação os bobos ganham a vida. Bem-aventurados os bobos porque sabem sem que ninguém desconfie. Aliás não se importam que saibam que eles sabem. <br />
Há lugares que facilitam mais as pessoas serem bobas (não confundir bobo com burro, com tolo, com fútil). Minas Gerais, por exemplo, facilita ser bobo. Ah, quantos perdem por não nascer em Minas! <br />
Bobo é Chagall, que põe vaca no espaço, voando por cima das casas. É quase impossível evitar excesso de amor que o bobo provoca. É que só o bobo é capaz de excesso de amor. E só o amor faz o bobo.<br />
<br />
<br />
Clarice Lispector<br />
<br />
<br />
----<br />
<br />
<br />
* Formate o título do texto com fonte '''Loma''', tamanho '''14''', alinhamento '''centralizado''', e '''negrito'''.<br />
* selecione o texto (sem selecionar o título e nem a fonte do texto) e aplique o alinhamento '''justificado''', fonte '''Dejavu Sans''', tamanho '''12'''.<br />
* Ainda com o texto selecionado, vá em '''Formatar > Colunas''', selecione 2 colunas, espaçamento de '''0,50 cm''', estilo '''linha contínua'''.<br />
* No texto selecionado aplique a hifenização em todas as palavras.<br />
* Insira a opção Capitulares, com tamanho de 3 linhas no início do texto.<br />
* Alinhe a última linha (fonte do texto) a '''direita''', '''itálico''', fonte '''Droid Sans''' e tamanho '''10'''.<br />
<br />
<br />
O texto deve ficar neste formato:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:texto2writer.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/08/2018: Aula suspensa=<br />
<font size="3"><br />
{{Collapse top | Aula 4}}<br />
<br />
Aula suspensa devido a paralização dos técnicos administrativos.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=28/08/2018: Formatações e funções úteis no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 5}}<br />
<br />
===Comando Localizar e Substituir===<br />
<br />
Para se localizar palavras em um texto qualquer, basta que você acesse o menu '''Editar, Localizar''' ou por meio do atalho '''Ctrl + F'''. Logo será aberto, no canto inferior esquerdo do aplicativo, um campo para digitação da palavra a ser procurada.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarwriter.jpg]]</div><br />
<br />
<br />
O recurso para “localizar e substituir” também é muito importante pois nos auxilia a corrigir erros espalhados pelo texto ou mesmo a mudança de uma palavra por outra de mesmo significado. Para usarmos o recurso de “localizar e substituir” basta acessarmos o menu '''Editar, Localizar e substituir''' ou diretamente pelo atalho '''Ctrl + H'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarsubstituirwriter.jpg]]</div><br />
<br />
<br />
===Marcadores e numeração===<br />
<br />
Esse comando é utilizado para inserir no texto, marcadores e/ou numeração, como o próprio título desde tópico diz.<br />
O comando para colocar marcadores ou mudar os marcadores já adicionados em um texto, pode ser acionado por meio do menu '''Formatar, Marcadores e numerações'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumerwriter.jpg]]</div><br />
<br />
<br />
Nas duas primeiras abas definimos o tipo de marcador que queremos usar em nosso texto. <br />
<br />
Passando para a terceira aba “Estrutura de tópicos” definiremos como ficará a estrutura de tópicos que estamos criando em nosso texto. Mais uma vez, teremos 8 opções para escolha.<br />
<br />
Podemos utilizar também, ao invés dos marcadores tradicionais, figuras no lugar dos números ou símbolos. Estes estão disponíveis na aba “Figuras”.<br />
<br />
Nas próximas abas temos a parte de configuração dos marcadores. A aba “Posição” nos proporciona a possibilidade de definirmos as distâncias, em relação a margem, de todos os dez níveis de marcadores que podem existir no nosso documento.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer2writer.jpg]]</div><br />
<br />
<br />
Já a aba “Opções” nos permite, também por nível, definir:<br />
<br />
* O tipo de “Numeração” (algarismos arábicos, romanos, gregos e etc.),<br />
* Definir o que virá “Antes” do marcador e “Depois” também (veja que no campo “Depois” existe um “.” e é exatamente este ponto que está sendo mostrado do lado direito do “1” mostrado no quatro ao lado do campo, nos diversos níveis),<br />
* Definir o “Estilo de caractere” que será usado,<br />
* “Mostrar subníveis” em cada marcador e<br />
* Colocar um determinado marcador para “Iniciar em”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer3writer.jpg]]</div><br />
<br />
<br />
===Ferramenta Pincel===<br />
<br />
<br />
Esse comando copia toda a formatação de um objeto ou texto e aplica ao objeto que será clicado ou marcado a seguir. O Pincel não se encontra em um item de menu específico, porém, possui um botão na barra de ferramentas padrão, conforme Figura a seguir.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:pincelwriter.jpg]]</div><br />
<br />
<br />
Como utilizar o Pincel:<br />
<br />
* Primeiro clique na palavra ou objeto que você deseja copiar os formatos nele aplicados (por exemplo tipo da fonte, tamanho e etc.);<br />
* Em seguida, clique na palavra a qual você deseja que possua os mesmos formatos da palavra anterior (a que você copiou os formatos).<br />
<br />
===Recuos e espaçamentos===<br />
<br />
Este recurso permite alterar a posição inicial, final e primeira linha do texto.<br />
<br />
Escolha a guia Formatar - Parágrafo - Recuos e espaçamento<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:recuoespacamentowriter.jpg]]</div><br />
<br />
<br />
A opção '''Antes do texto''' permite indicar onde o texto irá iniciar.<br />
<br />
A opção '''Depois do texto''' indica onde ele irá terminar.<br />
<br />
Já a opção '''Primeira linha''' indica onde a primeira linha do parágrafo irá iniciar.<br />
<br />
As opções '''Acima do parágrafo''' e '''Abaixo do parágrafo''' indicam o espaçamento entre as linhas antes e depois de um parágrafo, respectivamente.<br />
<br />
A opção '''Entre linhas''' define o espaço entre cada linha do texto.<br />
<br />
<br />
===Exercício===<br />
<br />
<br />
Digite o texto abaixo. <br />
Vá na opção f'''ormatar parágrafo, Recuos e espaçamentos''', deixe todas as opções de medidas com valor '''0 cm''' e '''espaçamento de linha simples'''.<br />
<br />
O título da receita deve estar em '''fonte Free Sans, tamanho 14, negrito e centralizado'''.<br />
<br />
O subtítulo '''Ingredientes''' deve estar com '''fonte Loma, tamanho 12, itálico e alinhamento a esquerda'''. <br />
<br />
Aplique a formatação do subtítulo '''Ingredientes''' no subtítulo '''Modo de preparo''' usando a ferramenta '''pincel'''.<br />
<br />
Use a ferramenta '''Localizar e substituir''' para trocar as palavras '''kg''' por '''quilos''' e '''2 dl''' por '''200 ml'''.<br />
<br />
Insira marcadores de círculos grandes nos ingredientes, com '''deslocamento de primeira linha em 1,25 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Insira numeração com pontos no modo de preparo, com ''' Antes do texto em 2 cm, deslocamento de primeira linha em - 0,75 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Envie o arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''<br />
<br />
<br />
<br />
'''Receita: Bacalhau a beira-alta'''<br />
<br />
<br />
''Ingredientes:'' <br />
<br />
<br />
6 postas de bacalhau;<br />
<br />
1 molho de couves galegas com os talos;<br />
<br />
1,5 kg de batatas;<br />
<br />
Pão de trigo duro;<br />
<br />
4 dentes de alho picados;<br />
<br />
2 dl de azeite.<br />
<br />
<br />
''Modo de preparo''<br />
<br />
<br />
Coza o bacalhau e, à parte, coza também as batatas e as couves.<br />
<br />
Corte o pão em fatias e coloque numa travessa funda. Por cima, deite a água de cozer o bacalhau em quantidade suficiente para ensopar o pão.<br />
<br />
Regue ainda com metade do azeite e polvilhe com metade dos alhos. Disponha o bacalhau, as batatas as couves por cima.<br />
<br />
Cubra com o restante azeite e os alhos picados. Sacuda a travessa e está pronto a servir. <br />
<br />
<br />
Como o texto deve ficar ao final do exercício:<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exercicio3writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=04/09/2018: Tabelas, Cabeçalho, Rodapé e Campos no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 6}}<br />
<br />
===Tabelas===<br />
<br />
Sabemos que uma tabela nada mais é do que um conjunto de dados disponibilizados em uma grade. Onde esta possui diversas linhas e colunas.<br />
<br />
Para criar uma tabela no Writer basta acessarmos o menu Tabela, Inserir, Tabela, pelo atalho Ctrl + F12 ou ainda pelo botão disponibilizado na barra de Ferramentas Padrão. Ao acessar uma das opções acima, será mostrada a tela de configuração da tabela.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabelawriter.jpg]]</div><br />
<br />
<br />
Na Figura acima podemos ver claramente que há a possibilidade de darmos um nome para a tabela por meio do campo “Nome” e de determinarmos quantas linhas e colunas nossa tabela terá, por meio dos campos “Colunas” e “Linhas”.<br />
<br />
Logo a seguir, abaixo do campo “Linhas” podemos ver um campo “Título”, onde se o marcarmos, nossa tabela terá N linhas com formatação de título (e. g. Negrito). A quantidade de linhas será definida no campo “As primeiras ... linhas”.<br />
<br />
O Campo “Borda” indica a existência ou não de uma linha separando cada célula que comporá a tabela criada.<br />
<br />
O botão “Autoformatar...” nos dá a possibilidade de darmos uma formatação para a tabela que será criada (e. g. Cores, fonte, bordas, alinhamento e etc).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela2writer.jpg]]</div><br />
<br />
<br />
Após a criação da tabela, podemos alterar suas propriedades ou parte dela, selecionando a parte que queremos alterar e indo até o menu Tabela, Propriedades da tabela. <br />
<br />
Nesta janela podemos alterar O nome, espaçamento, tamanho de coluna e linha, estilos de borda e cores de fundo.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela3writer.jpg]]</div><br />
<br />
<br />
===Cabeçalho===<br />
<br />
<br />
Para colocar um cabeçalho em um documento basta acessarmos o menu Inserir, Cabeçalho, Padrão. Então abrir-se-á uma área para digitação do texto do cabeçalho.<br />
<br />
Você poderá digitar o texto do cabeçalho em qualquer página do documento, que este será automaticamente replicado para as demais páginas existentes.<br />
<br />
Você poderá ainda, aplicar formatação ao cabeçalho, incluir borda e plano de fundo e também excluir o cabeçalho por meio da aba azul “Cabeçalho (Padrão)”. Para isto, basta clicar na setinha apontada para baixo existente na aba que as opções surgirão na forma de um menu pop-up.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:cabecalhowriter.jpg]]</div><br />
<br />
<br />
===Rodapé===<br />
<br />
<br />
ara inserir um rodapé, o procedimento é idêntico ao do cabeçalho, porém deve-se acessar o menu Inserir, Rodapé, Padrão]. Abrir-se-á uma área para digitação do texto do rodapé. Nesta área, pode-se colocar o que for necessário. No entanto, o mais comum de ser colocado nos rodapés de documentos são: número da página, data/hora da impressão, autor, quantidade total de páginas existentes no documento, dentre outros.<br />
<br />
Você poderá ainda, da mesma forma que no cabeçalho, aplicar formatação ao rodapé, incluir borda, plano de fundo e também o excluir. Tudo isto poderá ser realizado por meio da aba azul “Rodapé (Padrão)”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:rodapewriter.jpg]]</div><br />
<br />
<br />
===Campos===<br />
<br />
<br />
Este é mais um recurso muito útil existente no LibreOffice. Com ele você poderá fazer seu documento mostrar informações automaticamente e sem muito esforço, disponibilizado no menu Inserir, Campos.<br />
<br />
Os campos preexistentes no LibreOffice. são:<br />
<br />
* Data: coloca a data atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Hora: coloca a hora atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Número da página: exibe o número da página atual;<br />
* Total de páginas: exibe a quantidade de páginas existentes no documento;<br />
* Assunto: mostra o que foi registrado no campo “Assunto”, descrito nas “Propriedades” do documento;<br />
* Título: mostra o que foi registrado no campo “Título”, descrito nas “Propriedades” do documento;<br />
* Autor: mostra o primeiro e último nome listados em “Dados do Usuário” do LibreOffice no menu Ferramentas, Opções;<br />
* Outros: [Ctrl + F2] que dá a possibilidade de escolha de diversos campos, com diversas informações sobre o documento. Estes outros campos poderão ser escolhidos na tela “Campos” em suas diversas abas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:camposwriter.jpg]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
Crie uma tabela no documento em branco com os dados da imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabelawriter.jpg]]</div><br />
<br />
<br />
Formate a tabela com as seguintes configurações:<br />
<br />
<br />
* Linha de título mesclada, fonte Rekha, tamanho 14, cor vermelha, negrito e centralizado;<br />
* Linha de subtítulo com fonte Loma, tamanho 12, itálico e centralizado;<br />
* Demais linhas com fonte Garuda, tamanho 12 alinhamento justificado;<br />
* Insira cor de fundo de acordo com a imagem acima.<br />
<br />
No cabeçalho, insira o texto Proeja - Informática básica II em fonte Liberation Serif, tamanho 12 e negrito.<br />
<br />
No rodapé insira o número da página alinhado a direita.<br />
<br />
Ao final, o documento deve ter essa aparência:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabela2writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=11/09/2018: Corretor ortográfico, impressão e Figuras=<br />
<font size="3"><br />
{{Collapse top | Aula 7}}<br />
<br />
===Corretor ortográfico===<br />
<br />
Você pode verificar a ortografia de uma seleção de texto ou do documento por inteiro manualmente.<br />
<br />
A verificação ortográfica começa na posição atual do cursor ou no início da seleção de texto.<br />
<br />
Clique no documento ou selecione o texto que deseja verificar. Escolha Ferramentas - Ortografia e gramática.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretorwriter.jpg]]</div><br />
<br />
<br />
Sempre que é encontrado um erro de ortografia, surge a caixa de diálogo Verificação ortográfica e o LibreOffice oferece algumas sugestões de correção.<br />
Adote um dos seguintes procedimentos:<br />
<br />
Para aceitar a correção, clique na sugestão e, em seguida, em Corrigir.<br />
<br />
Edite a frase na caixa de texto superior e, em seguida, clique em Corrigir.<br />
<br />
Para adicionar a palavra desconhecida ao dicionário definido pelo usuário, clique em Adicionar ao dicionário.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretor2writer.jpg]]</div><br />
<br />
<br />
===Impressão===<br />
<br />
<br />
Para imprimir documentos no Libreoffice Writer, podemos clicar diretamente no botão imprimir ou ir no menu Arquivo, imprimir:<br />
<br />
Na janela que se abre, podemos escolher diversas configurações adicionais.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:imprimir2writer.jpg]]</div><br />
<br />
<br />
Na aba Geral, podemos escolher a impressora, quantidade de cópias, se serão agrupadas, quais páginas serão impressas (todas, somente uma ou uma parte).<br />
<br />
Na aba Libreoffice Writer podemos escolher se o plano de fundo será impresso, as figuras e objetos, texto oculto, cor do texto e páginas em branco.<br />
<br />
Em Layout escolhemos a quantidade de páginas por folha, a ordem e lados da página.<br />
<br />
E na aba Opções escolhemos se irá para uma impressora física ou um arquivo, agrupamento, bandejas definidas na impressora e tamanho definido na impressora.<br />
<br />
<br />
===Visualizar impressão===<br />
<br />
Antes de imprimir algum trabalho, convém observar como ficará o layout no papel, para evitar alguns acidentes, tais como quebras de páginas em locais indesejados, ajustes de parágrafos, entre outros. Para tanto, o auxílio da função Visualizar Impressão é fundamental.<br />
<br />
Acesse o menu Arquivo > Visualização de Página, no ícone na barra de ferramentas ou através do atalho Ctrl + Shift + O.<br />
<br />
Na tela aparecerá uma projeção exata de como ficará a impressão. Serão apresentadas algumas ferramentas, se quisermos analisar com mais detalhes:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:visualizarimpressaowriter.jpg]]</div><br />
<br />
<br />
'''Uma página<br/>'''<br />
Mostra uma página na janela de visualização.<br />
<br />
<br />
'''Duas páginas<br/>'''<br />
Mostra duas páginas na janela de visualização. As páginas ímpares aparecerão no lado direito e as páginas pares no lado esquerdo.<br />
<br />
<br />
'''Visualização de livro<br/>'''<br />
Selecione esta opção para ver a primeira página no lado direito da visualização. Se não a selecionar, a primeira página é mostrada no lado esquerdo da visualização.<br />
<br />
<br />
'''Várias páginas<br/>'''<br />
Define o número de páginas exibidas na tela. Clique na seta ao lado do ícone para abrir uma grade e selecionar o número de páginas a serem exibidas como linhas e colunas na visualização.<br />
<br />
<br />
'''Para o início do documento<br/>'''<br />
Vai para a primeira página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Página anterior<br/>'''<br />
Vai para a página anterior do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Próxima página<br/>'''<br />
Vai para a próxima página do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Para o fim do documento<br/>'''<br />
Vai para a última página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Menos zoom<br/>'''<br />
Diminui o zoom para ver mais do documento em um tamanho reduzido.<br />
<br />
<br />
'''Zoom de visualização<br/>'''<br />
Determina o nível de zoom da visualização de impressão.<br />
<br />
<br />
'''Mais zoom<br/>'''<br />
Aumenta o zoom para obter um close do documento.<br />
<br />
<br />
'''Imprimir<br/>'''<br />
Imprime o documento.<br />
<br />
<br />
'''Tela inteira<br/>'''<br />
Exibe ou oculta os menus e as barras de ferramentas no Writer ou no Calc. Para sair do modo de tela inteira, clique no botão Tela inteira ou pressione a tecla Esc.<br />
<br />
<br />
'''Fechar visualização<br/>'''<br />
Fecha a visualização e volta na edição do documento.<br />
<br />
<br />
===Figuras===<br />
<br />
<br />
A inserção de figura em um texto e sua manipulação é simples no Writer.<br />
<br />
Vamos passo a passo mostrar como se dá essa inserção. <br />
<br />
Primeiro abra o documento em que deseja inserir a figura e posicione o cursor no local desejado que ela apareça. Depois escolha Inserir - Figura. Localize o arquivo gráfico que você deseja inserir e, em seguida, clique em Abrir. <br />
<br />
Por padrão, a figura inserida é centralizada acima do parágrafo no qual você clicou. <br />
<br />
<br />
Veja que é criada uma barra de ferramenta flutuante chamada figura. Nela você modifica os aspectos de cor e padrão da figura e também inverte vertical ou horizontalmente a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figurawriter.jpg]]</div><br />
<br />
<br />
Quando é inserida uma figura a barra de ferramenta quadro é mostrada para configurar com mais facilidade a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura2writer.jpg]]</div><br />
<br />
<br />
Também temos a opção de formatar figura. Para isso, selecione a figura e vá no menu Formatar - Figura.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura3writer.jpg]]</div><br />
<br />
<br />
Nesta janela teremos várias opções de configuração, tais como ajuste de tamanho, ajuste no texto, posicionamento. hiperlink, recorte, bordas, transparência, etc.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=18/09/2018: Palestra Reflexos da reforma trabalhista para a classe trabalhadora=<br />
<font size="3"><br />
{{Collapse top | Aula 8}}<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=25/09/2018: Introdução ao Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 9}}<br />
<br />
===Libreoffice Calc===<br />
<br />
Calc é um software de planilha eletrônica multiplataforma de código aberto, desenvolvido originalmente pela Star Division, posteriormente pela Sun Microsystems (como parte da suíte StarOffice) e atualmente pela The Document Foundation, como parte da suíte LibreOffice. Também é distribuído gratuitamente com as suítes OpenOffice.org e NeoOffice.<br />
<br />
Nessa planilha, o número limite de linhas é de pouco mais de 1 milhão por planilha e o número limite de colunas é de 1024 por planilha.<br />
<br />
Na imagem abaixo podemos conhecer um pouco melhor a interface do Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interfacecalc.jpg]]</div><br />
<br />
<br />
As células do Calc possuem endereçamento, onde as colunas são definidas por letras e as linhas por números. Para identificar o endereço da célula, basta indicar primeiramente o endereçamento da coluna e depois da linha. Ex: '''A1'''.<br />
<br />
<br />
====Operadores====<br />
<br />
<br />
Devemos conhecer alguns símbolos que são muito utilizados, juntamente com a ordem dos cálculos efetuados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface2calc.jpg]]</div><br />
<br />
<br />
====Realce de valor====<br />
<br />
<br />
A função Realce de valor destaca os conteúdos das células através da diferenciação da cor da fonte. Para acioná-la, vá até o menu Exibir > Realce de valor ou clique na combinação de teclas Ctrl+F8.<br />
<br />
Textos são apresentados em preto, números em azul e fórmulas em verde. Essa configuração de cores é padrão para qualquer instalação do LibreOffice. Na figura abaixo, é possível identificar as três categorias. No exemplo, o conteúdo da célula B30 é a fórmula =1+1. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface3calc.jpg]]</div><br />
<br />
<br />
====Séries de preenchimento====<br />
<br />
<br />
Uma Série de preenchimento é uma forma fácil de fazer um preenchimento automático em uma área da planilha a partir de um valor inicial.<br />
<br />
Inicialmente, digite o valor inicial em uma célula. Com a célula selecionada, coloque o ponteiro do mouse sobre o ponto preto no canto inferior direito, chamado Alça de preenchimento, até que este se transforme em uma pequena cruz.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface4calc.jpg]]</div><br />
<br />
<br />
Arraste com o botão do mouse pressionado até a última célula da sequência desejada, como no passo 1 apresentado na tabela abaixo. Solte o botão do mouse e a área selecionada será preenchida com a sequência numérica correspondente (passo 2).<br />
<br />
Se a direção da sua seleção for horizontal para a esquerda ou vertical para cima, o Calc fará o preenchimento com decremento 1. Se a direção da sua seleção for horizontal para a direita ou vertical para baixo, o Calc fará o preenchimento com incremento 1.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface5calc.jpg]]</div><br />
<br />
<br />
Se você desejar criar uma sequência de preenchimento sem incremento algum, faça o mesmo procedimento, no entanto, ao clicar e arrastar com a alça de preenchimento, mantenha a tecla Ctrl pressionada.<br />
<br />
====Formatar Células====<br />
<br />
<br />
Permite que você especifique diversas opções de formatação e aplique atributos às células selecionadas.<br />
<br />
Escolha Formatar - Células<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:formatcelcalc.jpg]]</div><br />
<br />
<br />
Números<br />
Especifica as opções de formatação para a(s) célula(s) selecionada(s).<br />
<br />
<br />
Fonte<br />
Especifique a formatação e a fonte que deseja aplicar.<br />
<br />
<br />
Alinhamento<br />
Define ao opções de alinhamento para o conteúdo da célula atual, ou das células selecionadas.<br />
<br />
<br />
Bordas<br />
Define opções de borda para os objetos selecionados em Writer ou Calc.<br />
<br />
<br />
Plano de fundo<br />
Define a cor ou a figura do plano de fundo.<br />
<br />
<br />
Proteção de célula<br />
Define as opções de proteção para as células selecionadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=02/10/2018: Fórmulas simples Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 10}}<br />
<br />
===Funções===<br />
<br />
Funções são procedimentos baseados em operações e operandos que, manipulados, retornam um determinado resultado. Funções podem simplesmente representar a implementação de operadores, como a função Soma, que veremos adiante, ou, de forma mais complexa, realizar cálculos de nível avançado.<br />
<br />
<br />
Para inserir uma função através do assistente, siga os seguintes passos:<br />
<br />
Selecione a célula onde será inserida a função;<br />
<br />
Selecione uma das opções abaixo:<br />
<br />
* vá até o menu Inserir > Função ou<br />
* teclar Ctrl + F2 ou<br />
* clique sobre o botão Assistente de funções, na Barra de fórmulas.<br />
<br />
Será aberta a tela do Assistente de funções. Selecione, então, uma categoria de função na caixa Categoria;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalc.jpg]]</div><br />
<br />
<br />
Selecione o nome da função e clique no botão Próximo;<br />
<br />
Preencha os argumentos solicitados para a função;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcao2calc.jpg]]</div><br />
<br />
<br />
Clique OK. A fórmula será inserida na célula e o resultado será contabilizado.<br />
<br />
A função também pode ser digitada. Para isto, basta iniciar coma digitação do símbolo de = e posteriormente digitar o nome da fórmula desejada, juntamente com seu parâmetros.<br />
<br />
<br />
====Funções simples====<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaosomacalc.jpg]]</div><br />
<br />
<br />
No exemplo acima, a função é SOMA, o argumento é B2:B6 (leia-se de B2 até B6) e o resultado ( a soma dos valores) é 20. <br />
<br />
Como digitar<br />
<br />
Se as células são adjacentes: =SOMA(C2:C8) <br />
<br />
Essa função soma o conteúdo de células adjacentes (sequência C2 até C8)<br />
<br />
Se as células não são adjacentes: =SOMA(B2;C3;D1).<br />
<br />
A função Média calcula o valor médio de um intervalo, adjacente ou não.<br />
<br />
=MEDIA(C2:C8)<br />
<br />
A função Mínimo retorna o menor valor de um intervalo analisado<br />
<br />
=MINIMO(C2:C8)<br />
<br />
A função Máximo retorna o maior valor de um intervalo analisado<br />
<br />
=MAXIMO(C2:C8)<br />
<br />
A função Mediana de um intervalo é o seu valor central, ou seja, que divide o intervalo em duas partes iguais<br />
<br />
=MED(C2:C8)<br />
<br />
A função Moda retorna o valor que mais se repete em um intervalo. Caso dois números ou mais tenham a mesma quantidade de repetições, o menor valor será mostrado.<br />
<br />
=MODO(C2:C8)<br />
<br />
A função Concatenar agrupa valores indicados. Esta função aceita somente ;<br />
<br />
=CONCATENAR(C2;C5;C8)<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=09/10/2018: Fórmulas Compostas Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 11}}<br />
<br />
===Funções Lógicas===<br />
<br />
<br />
'''SE'''<br />
<br />
<br />
Esta é uma função bastante interessante pois permite ao usuário da planilha construir expressões condicionais, avaliando e apresentando diferentes resultados conforme uma cláusula avaliada.<br />
<br />
A estrutura da função SE é:<br />
<br />
=SE (CONDIÇÃO; VALOR_SE_CONDIÇÃO_VERDADEIRA; VALOR_SE_CONDIÇÃO_FALSA)<br />
<br />
O primeiro argumento é a condição. Normalmente, avaliamos o conteúdo de uma célula em relação a um dado parâmetro, como, por exemplo C4<100 ou A1=”APROVADO”.<br />
<br />
Caso a condição seja verdadeira, o segundo argumento é apresentado como resultado da função.<br />
<br />
Caso a condição seja falsa, o terceiro argumento é apresentado como resultado.<br />
<br />
No exemplo abaixo, avaliamos o valor da nota do aluno e, caso esteja acima da média, apresentamos o resultado “Aprovado”. Senão, apresentamos o resultado “Recuperação”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcse.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.NUM'''<br />
<br />
<br />
<br />
A função CONT.NÚM conta quantos valores numéricos estão entre os ARGUMENTOS da função.<br />
<br />
Entende-se como valores numéricos: números, datas e fórmulas cujo resultado seja um número. Células vazias ou células com conteúdo de texto não são contadas na função CONT.NÚM.<br />
<br />
O formato da função é:<br />
<br />
=CONT.NÚM(ARGUMENTOS)<br />
<br />
Observe no exemplo abaixo que nem todos os alunos fizeram a primeira avaliação. Podemos usar a função CONT.NÚM para contar as notas do intervalo B11:B19 e identificar quantos alunos de fato fizeram a prova.<br />
<br />
O resultado da função =CONT.NÚM(B11:B19) será 7 pois, as duas células, correspondentes aos alunos que não fizeram a prova, estão vazias.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontnum.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.SE'''<br />
<br />
<br />
<br />
A função CONT.SE tem como objetivo contar quantos valores obedecem a um determinado critério. A estrutura é bastante simples:<br />
<br />
=CONT.SE (INTERVALO; CONDIÇÃO)<br />
<br />
Os valores dentro do intervalo são avaliados um a um de acordo com a condição. O valor é contado somente se a condição for verdadeira.<br />
<br />
No exemplo abaixo, contamos quantos alunos estão com notas acima da média estabelecida.<br />
<br />
Note que usamos uma concatenação de texto para expressar adequadamente o critério, indicado no segundo argumento com a expressão “>”&B6. Ou seja, concatenamos o sinal de > com o conteúdo da célula B5.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse.jpg]]</div><br />
<br />
<br />
O resultado da função CONT.SE acima é de 7 alunos.<br />
<br />
Quando o critério ou condição for de igualdade, não precisamos usar a concatenação de texto, por exemplo:<br />
<br />
=CONT.SE(B10:B18;B6)<br />
<br />
Em sua construção mais comum, a função CONT.SE permite apenas um argumento como critério de contagem. No entanto, em casos específicos, é possível utilizar mais de um argumento através do uso de expressões regulares em fórmulas.<br />
<br />
O exemplo abaixo ilustra essa situação. A partir da tabela abaixo, desejamos obter a quantidade de cadastros de pessoas que são dos estados do Rio Grande do Sul e Santa Catarina.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse2.jpg]]</div><br />
<br />
<br />
Uma abordagem óbvia e simples seria a soma de CONT.SE:<br />
<br />
=CONT.SE(F3:F8;"RS")+CONT.SE(F3:F8;"SC")<br />
<br />
Uma abordagem elegante poderia utilizar expressões regulares:<br />
<br />
=CONT.SE(F3:F8;"RS|SC")<br />
<br />
Onde o símbolo | (pipe) entre as siglas RS e SC representa a operação OU lógica. Logo, estamos contando apenas os valores do intervalo de F3 até F8 que são iguais a RS ou a SC.<br />
<br />
<br />
'''CONT.VALORES'''<br />
<br />
<br />
A função CONT.VALORES permite contar células preenchidas com valores de texto, número ou fórmula dentro de um intervalo.<br />
<br />
O formato da função CONT.VALORES é:<br />
<br />
=CONT.VALORES(ARGUMENTOS)<br />
<br />
No exemplo abaixo, o usuário deverá preencher o espaço amarelo com cinco códigos de produto.<br />
<br />
Para contar quantas células já foram preenchidas, utilizamos a função CONT.VALORES e o intervalo de G5:G9.<br />
<br />
O resultado da função, no exemplo abaixo, será 3.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvalores.jpg]]</div><br />
<br />
<br />
<br />
'''CONTAR.VAZIO'''<br />
<br />
<br />
CONTAR.VAZIO conta quantas células do intervalo indicado em ARGUMENTOS estão vazias, isto é, sem conteúdo algum.<br />
<br />
=CONTAR.VAZIO(ARGUMENTOS)<br />
<br />
No nosso exemplo anterior, da função CONT.VALORES, calculamos quantas células do intervalo amarelo já haviam sido preenchidas. Podemos encontrar a informação complementar (quantas células faltam ser preenchidas) através da função CONTAR.VAZIO.<br />
<br />
No exemplo, a função CONTAR.VAZIO pode ser utilizada sobre o intervalo de G5:G9. O resultado da função na célula H15 será de 2.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvazio.jpg]]</div><br />
<br />
<br />
<br />
'''SOMASE'''<br />
<br />
<br />
A função SOMASE é útil para cálculos que envolvam valores totais a partir de um determinado critério. O formato da função é:<br />
<br />
=SOMASE(INTERVALO_DE_AVALIAÇÃO; CRITÉRIO; INTERVALO_DE_SOMA)<br />
<br />
Os valores do intervalo de avaliação são avaliados conforme o critério. Caso estejam de acordo com o critério indicado, o valor correspondente no intervalo de soma é somado ao resultado.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcsomase.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=23/10/2018: Avaliação=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
* Copie o conteúdo abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:avaliacaocalc.jpg]]</div><br />
<br />
<br />
* Efetue os cálculos solicitados (Total dos produtos por trimestre, Valor máximo, Valor mínimo, Média e Total por mês).<br />
<br />
* Salve o arquivo com o seu nome e envia para o seguinte e-mail:<br />
<br />
ederson.luiz@ifsc.edu.br<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=06/11/2018: Vínculo entre planilhas, Gráficos, Classificação e Filtros=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
===Classificação===<br />
<br />
<br />
No Libreoffice Calc, podemos efetuar a classificação de conteúdos, em ordem alfabética, de forma crescente ou decrescente.<br />
<br />
Para tanto, devemos clicar em um intervalo de banco de dados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc.jpg]]</div><br />
<br />
<br />
Ao selecionar um intervalo de células, somente estas células serão classificadas. <br />
<br />
Se você clicar somente em uma célula sem selecionar, então todo o intervalo de banco de dados será classificado.<br />
<br />
Escolha Dados - Classificar.<br />
<br />
O intervalo de células que será classificado é mostrado em cores invertidas.<br />
<br />
Selecione as opções de classificação desejadas.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc2.jpg]]</div><br />
<br />
Clique em OK.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc3.jpg]]</div><br />
<br />
<br />
===Filtro===<br />
<br />
<br />
Os filtros e filtros avançados permitem que você assegure que somente certas linhas (registros) de um intervalo de dados fiquem visíveis. Nos documentos de planilhas do LibreOffice, há várias possibilidades para a aplicação de filtros.<br />
<br />
Uma das utilizações para a função Autofiltro, que se encontra em Dados, Filtro, Autofiltro, é a de rapidamente restringir a exibição de registros com entradas idênticas em um campo de dados.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:autofiltrocalc.jpg|900px]]</div><br />
<br />
<br />
Na caixa de diálogo Filtro padrão, você também pode definir intervalos que contenham os valores em determinados campos de dados. É possível utilizar o filtro padrão para conectar até três condições com um operador lógico E ou OU.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtropadraocalc.jpg]]</div><br />
<br />
<br />
O Filtro avançado excede a restrição de três condições e permite até oito condições de filtro. Com os filtros avançados, você insere as condições diretamente na planilha.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtroavancadocalc.jpg]]</div><br />
<br />
<br />
Para remover um filtro, de forma a ver todas as células, clique dentro da área onde o filtro estiver aplicado e escolha Dados - Filtro - Redefinir filtro.<br />
<br />
Ao selecionar várias linhas de uma área onde um filtro foi aplicado, a seleção pode incluir linhas visíveis e linhas ocultas pelo filtro. Se depois você aplicar formatação, ou excluir as linhas selecionadas, esta ação só afetará as linhas visíveis. As linhas ocultas não serão afetadas.<br />
<br />
Isto é o oposto das linhas que foram ocultas manualmente pelo comando Formatar - Linhas - Ocultar linhas. Linhas ocultas manualmente são excluídas ao excluir uma seleção que as contenha.<br />
<br />
<br />
===Vínculo entre planilhas===<br />
<br />
Podemos utilizar conteúdos que se encontram em outras planilhas do documento.<br />
<br />
Para que isso ocorra, devemos utilizar como no exemplo abaixo:<br />
<br />
=Planilha2.A1<br />
<br />
Neste caso, o conteúdo da Planilha2, célula A1 será exibido onde esta fórmula for empregada.<br />
<br />
<br />
===Gráficos===<br />
<br />
<br />
No Calc, é fácil gerar gráficos a partir de qualquer planilha. <br />
<br />
Pode-se chamar o assistente de gráficos a partir do seu ícone ou do menu Inserir ... gráfico.<br />
<br />
Os gráficos no Calc estão muito fáceis e muito intuitivos e prometem-se ainda muitas melhorias para este recurso. <br />
<br />
Ao se invocar o comando Inserir Gráfico, tem-se uma tela como a seguir (previsão do gráfico e seu assistente):<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc.jpg]]</div><br />
<br />
<br />
Logo na Etapa 1 você terá vários tipos e subtipos de gráficos a escolher: barras, pizza, rede, dispersão, etc.<br />
<br />
Etapa 2 – Intervalo de Dados – aqui se informa ao Calc a área a ser computada e plotada.<br />
<br />
Etapa 3 – Série de Dados – Aqui se definem nomes e rótulos para as séries dos dados.<br />
<br />
Etapa 4 – É nesta etapa que se fazem as legendas do gráfico.<br />
<br />
A seguir, vemos um gráfico de Pizza gerado no LibreOffice Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc2.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=13/11/2018: Introdução ao Libreoffice Impress=<br />
<font size="3"><br />
{{Collapse top | Aula 13}}<br />
<br />
===Tela Principal===<br />
<br />
O Impress é software para desenvolvimento de apresentações. Por meio deste software pode-se preparar as apresentações textuais, adicionar imagens, sons e até mesmo animação.<br />
<br />
<div style="text-align: left;">[[Arquivo:impressprincipal.jpg]]</div><br />
<br />
<br />
===Slide Mestre===<br />
<br />
Toda apresentação possui no mínimo um slide mestre. Este slide em especial leva este nome não é à toa e veremos o por quê.<br />
<br />
No slide mestre pode-se configurar e/ou alterar as formatações de uma apresentação inteira.<br />
<br />
Nem sempre as pessoas que trabalham com este tipo de ferramenta o utilizam. Na maioria das vezes por pura falta de conhecimento.<br />
<br />
Vamos começar a desenvolver nossa apresentação exatamente pelo slide mestre. Mas antes disso vamos acessar o menu [Exibir | Régua], para que a régua seja mostrada da mesma forma como é mostrada no Writer.<br />
<br />
Agora então vamos acessar o menu [Exibir | Mestre | Slide Mestre]. Após este passo, podemos observar que a interface mudou bastante:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressmestre.jpg]]</div><br />
<br />
<br />
Tudo que fizermos neste slide será replicado para todos os slides que tenham este mesmo layout em nossa apresentação.<br />
<br />
<br />
Para fazer uma apresentação, não é pré-requisito configurar o slide mestre. No entanto, há alguns bons motivos para você fazê-lo:<br />
<br />
* Configurando o slide mestre, você não precisará fazer isto de novo em nenhum outro slide, pois, isto acontecerá automaticamente;<br />
* Hoje esta apresentação vai ter um fundo de tela voltado para este curso, amanhã se o autor não ficar satisfeito ou se for usá-la em outro curso, bastará fazer a alteração no slide mestre e tudo estará resolvido.<br />
<br />
<br />
===Segundo Slide===<br />
<br />
<br />
Para criar o segundo slide vamos dar um clique com o botão direito do mouse na área sob as miniaturas de slides. <br />
<br />
No menu pop-up que aparecer acesse a opção “Novo slide”.<br />
<br />
Muito provavelmente o slide que foi criado veio com o mesmo layout do anterior a ele. Então, vá até a área de layout de slides e clique no layout que gostaria de utilizar.<br />
<br />
<br />
===Slide com imagem===<br />
<br />
<br />
Mais uma vez vamos repetir o processo de criar um novo slide, ou seja, clique com o botão direito do mouse sobre a área limpa sob as miniaturas de slides. Então escolha a opção “Novo slide”.<br />
<br />
Será criado um slide com layout padrão. Vamos alterar o layout para um que comporte texto e objetos.<br />
<br />
Agora, no quadro do lado direito é apresentada uma imagem central que na verdade são quatro botões:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem.jpg]]</div><br />
<br />
<br />
Clique no botão para inserir “Imagem”. Será aberta uma caixa de diálogo do sistema operacional que você estiver usando, então, vá até a pasta onde está o arquivo, selecione-o e aperte o botão “Abrir” (Open em inglês).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem2.jpg]]</div><br />
<br />
<br />
O slide apresentará a imagem selecionada. Clique na figura e ajuste-a para que fique num tamanho adequado. E está pronto o �terceiro slide.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impressslideimagem.jpg&diff=152650Arquivo:Impressslideimagem.jpg2018-11-12T20:56:53Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2018-2&diff=152649INF-2018-22018-11-12T20:56:40Z<p>Ederson.luiz: /* 13/11/2018: Introdução ao Libreoffice Impress */</p>
<hr />
<div>=Informática Básica II= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 3a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2018-2<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/2/2b/PPC_PROEJA_-_ano_2015.pdf PPC Proeja Operador de Computador]<br />
<br />
<br />
==Ementa==<br />
<br />
Aplicativos de escritório, tais como editor de texto, planilha eletrônica e ferramenta de apresentação.<br />
<br />
Navegação na Internet, pesquisa e cuidados com a segurança da informação.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Elaborar documentos digitais;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional;<br />
* Redigir e formatar documentos utilizando o editor de textos;<br />
* Construir planilhas eletrônicas, aproveitando suas funções;<br />
* Montar apresentações dinâmicas e interativas;<br />
* Navegar na internet, pesquisar e utilizar aplicativos Web como webmail, ferramentas de escritório online e redes sociais;<br />
* Reconhecer URLs (endereços) e mecanismos de segurança para navegação segura.<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.hardware.com.br/livros/linux/dicas-para-openofficebroffice.html Dicas de Openoffice]<br />
* [https://www.tecmundo.com.br/office/3767-como-migrar-do-office-para-o-openoffice-sem-dores-de-cabeca.htm Como migrar do Office para o Openoffice sem dores de cabeça]<br />
<br />
=31/07/2018: Apresentação da disciplina, introdução ao Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina===<br />
<br />
Introdução ao componente curricular e Introdução ao Libreoffice.<br />
<br />
'''Arquivo apresentação da disciplina'''<br />
<br />
[https://drive.google.com/file/d/127DSInkISdvAkptI3D_iSCafRoRkTepw/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://pt-br.libreoffice.org/baixe-ja/libreoffice-novo/ Link para download do LibreOffice]<br />
<br />
<br />
O LibreOffice é uma ferramenta do tipo “office” totalmente gratuita e de código aberto.<br />
<br />
Mas quais os motivos para usarmos o Libreoffice?<br />
<br />
* O LibreOffice é um conjunto de softwares de uso profissional ou doméstico ideal para quem quer uma suíte de escritório para o dia a dia e não deseja softwares desatualizadas e independentes.<br />
* Toda a interface do LibreOffice é padronizada, assim como acontece com o Microsoft Office. Conjuntos e ícones e funcionalidades são semelhantes em toda a interface do usuário. As teclas de atalho são diferentes dos utilizados em outras soluções, porém são bem simples de memorizar.<br />
* O LibreOffice pode ser instalado e utilizado de uma forma [https://pt-br.libreoffice.org/baixe-ja/portable-versions/ portátil], sem necessidade de instalação no computador de uso.<br />
* O LibreOffice é compatível com todos os formatos gerados pelos aplicativos Microsoft, inclusive os documentos mais antigos, tais como DOC, XLS e PPT.<br />
* O LibreOffice é um software de código aberto e grátis. Pode ser instalados em diversos computadores e ser utilizado para qualquer finalidade.<br />
<br />
No decorrer do curso iremos trabalhar com os seguintes softwares:<br />
<br />
'''LibreOffice Writer:'''<br />
<br />
O Writer é o processador de texto do LibreOffice e é um software similar ao Microsoft Word. Com o Writer é possível criar desde textos simples, até textos com padrões complexos, com imagens, tabelas, anotações, estilos e numeração de páginas. Sua interface lembra o Word na versão 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Calc:'''<br />
<br />
O Calc é o editor de planilhas eletrônicas do LibreOffice e é um software similar ao Microsoft Excel. Com o Calc é possível criar planilhas e gráficos de todos os tipos, com imagens, formatação de texto e bordas. Sua interface lembra o Excel 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Impress:'''<br />
<br />
O Impress é o criador de apresentações do LibreOffice e é um software similar ao Microsoft Power Point. Com o Impress é possível criar apresentações de todos tipos, com diversos slides, imagens, formas, animações e transições. Sua interface lembra o Power Point 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
<br />
===LibreOffice Writer===<br />
<br />
<br />
Para a maioria das nossas atividades no software Writer, nós faremos uso de textos.<br />
<br />
Vamos conhecer um pouco de sua interface:<br />
<br />
<div style="text-align: center;">[[Arquivo:writerinterface.jpg|900px]]</div><br />
bit.ly/inf-2018-2<br />
As barras de ferramentas podem ser movidas, de acordo com a necessidade ou preferência:<br />
<br />
<div style="text-align: center;">[[Arquivo:moverbarra.jpg|900px]]</div><br />
<br />
<br />
As funções dos botões também podem ser acessadas via teclas de atalho:<br />
<br />
Teclas de função para o LibreOffice Writer<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho1.jpg]]</div><br />
<br />
<br />
Teclas de atalho para controlar documentos e janelas<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho2.jpg]]</div><br />
<br />
<br />
Teclas de atalho para editar ou formatar documentos<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho3.jpg]]</div><br />
<br />
<br />
A extensão padrão do arquivo é '''ODT'''. Se salvarmos um arquivo com o nome '''Exemplo''', o mesmo se chamará '''Exemplo.odt'''.<br />
<br />
Para selecionarmos o texto, podemos utilizar o mouse ou o teclado, através da tecla '''SHIFT''' + '''SETA DIRECIONAL'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=07/08/2018: Formatação e alinhamento=<br />
<font size="3"><br />
{{Collapse top | Aula 2}}<br />
<br />
===Barra de ferramentas Formatação===<br />
<br />
A barra de Formatação permite alterar as configurações relacionadas ao texto em si, como fonte, tamanho de fonte, estilos, negrito, sublinhado, etc.<br />
<br />
<div style="text-align: left;">[[Arquivo:barraformatacao.jpg]]</div><br />
<br />
Estilos e Formatação (F11): Exibe a janela Estilos e Formatação (abaixo) que exibe os estilos pré-definidos e também permite salvar configurações relativas ao tamanho e cor da fonte, espaçamento entre linhas do parágrafo. É possível alterar os estilos existentes ou mesmo criar novos.<br />
<br />
<div style="text-align: left;">[[Arquivo:estilowriter.jpg]]</div><br />
<br />
<br />
Nesta caixa de seleção escolhemos a fonte:<br />
<br />
<div style="text-align: left;">[[Arquivo:fontewriter.jpg]]</div><br />
<br />
<br />
Permite definir o tamanho da fonte, entre 2 e 999,9:<br />
<br />
<div style="text-align: left;">[[Arquivo:tamanhofontewriter.jpg]]</div><br />
<br />
<br />
Aplicam negrito, itálico e sublinhado respectivamente. Atalhos CTRL+B, CTRL+I e CTRL+U:<br />
<br />
<div style="text-align: left;">[[Arquivo:niswriter.jpg]]</div><br />
<br />
<br />
Aqui estão os possíveis alinhamentos para os parágrafos e são extremamente cobrados em concursos. <br />
<br />
<div style="text-align: left;">[[Arquivo:alinhamentowriter.jpg]]</div><br />
<br />
<br />
Alinhamento à esquerda. Atalho CTRL + L.<br />
<br />
Obs.: Quando o parágrafo está alinhado a esquerda fica desalinhado a direita.<br />
<br />
Alinhamento Centralizado. Atalho CTRL + E.<br />
<br />
Obs.: Quando o parágrafo está centralizado fica desalinhado a esquerda e a direita.<br />
<br />
Alinhamento à Direita. Atalho CTRL + R.<br />
<br />
Obs.: Quando o parágrafo está alinhado a direita fica desalinhado a esquerda.<br />
<br />
Alinhamento Justificado. Atalho CTRL + J.<br />
<br />
Obs.: Quando o parágrafo está justificado fica alinhado a direita e a esquerda.<br />
<br />
Dica: Para aplicar qualquer alinhamento a um parágrafo não é preciso selecionar o parágrafo, basta que o cursor esteja dentro do parágrafo.<br />
<br />
<br />
Cor da Fonte. Permite alterar a cor da fonte.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfontewriter.jpg]]</div><br />
<br />
<br />
Dica: Não é preciso selecionar a palavra que se deseja alterar a cor da fonte, basta que o cursor esteja posicionado dentro da palavra.<br />
<br />
<br />
Realçar. Permite realçar um texto com várias cores.<br />
<br />
<div style="text-align: left;">[[Arquivo:realcewriter.jpg]]</div><br />
<br />
<br />
Cor do Plano de Fundo. Permite alterar a cor do plano de fundo da posição onde o cursor está ou no trecho selecionado.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfundowriter.jpg]]</div><br />
<br />
<br />
'''Exercício'''<br />
<br />
<br />
<div style="text-align: center;">'''O Conceito de Mercado'''</div><br />
<br />
<br />
O conceito de <u>mercado</u> continua intimamente associado à idéia de <u>local</u> onde se efetuam transações entre produtores e consumidores. Consideramos essa noção restritiva, pelos seguintes aspectos:<br />
O mercado é hoje um espaço de realização de operações econômicas de compra e venda que vai para além dos seus contornos <u>físicos</u> e mesmo <u>temporais</u>.<br />
De fato, estão a surgir com grande freqüência <u>formas imateriais de mercado</u> (…).<br />
Essas formas de mercado lançam mão dos meios proporcionados pela sociedade de informação, possibilitando a realização de compras e vendas em casa, pela simples manutenção interativa de um ecrã de televisão ou, mais simplesmente, através de um telefonema para um número fornecido por aquele ecrã, com entrega imediata no domicilio ou pelo correio, como é uso da chamada televisão comercial.<br />
Existem operações de compra e venda que se contratam hoje e se realizam apenas daqui a alguns meses (como por exemplo, nos mercados de futuros, caso dos mercados de cereais nos Estados Unidos da América,...).<br />
Por outro lado existe uma diversidade de mercados, que vai desde os mercados de produtos finais ou de consumo final aos mercados de produtos intermédios e de fatores produtivos, bem como ao mercado de trabalho ou à bolsa ou <u>mercado de valores imobiliários</u>. Aos mercados nacionais sobrepõem-se os <u>mercados transnacionais</u>, de natureza informal, ou de diversos acordos de comércio livre, uniões aduaneiras ou comunidades econômicas.<br />
Tudo são razões para que se considere a noção de mercado como relativa e circunstancial, além de mutável no tempo.<br />
Uma coisa é certa: num mercado existem sempre intenções de compra (compra), intenções de venda (<u>oferta</u>), um preço e uma situação de equilíbrio mais ou menos estável fornecida por esse preço e pela quantidade correspondente.<br />
<br />
<br />
<div style="text-align: right;">Extraído de: Tinto, G., Introdução à Economia, 1995.</div><br />
<br />
<br />
# Grave o documento com o nome '''Exercicio1_Writer_Nome_Aluno'''.<br />
# Centralize o título “O Conceito de Mercado” no texto.<br />
# Formate o título como: '''negrito, tamanho 16''', tipo de letra '''Dejavu Sans'''.<br />
# Efetue o '''alinhamento justificado''' do texto.<br />
# Formate o texto com a fonte '''Nimbus Sans L''' e tamanho '''11'''<br />
# '''Alinhe à direita''' a fonte de onde foi extraído o texto (última linha) e coloque o texto em '''itálico'''<br />
# Marque a '''bold''' (negrito) os termos/expressões sublinhados acima<br />
# Anule os sublinhados e mantenha o negrito dos mesmos termos expressões<br />
# Coloque a '''negrito, itálico e sublinhada''' todas as ocorrências das palavras compra e compras.<br />
<br />
<br />
Envie este arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=14/08/2018: Colunas, capitular e hifenização=<br />
<font size="3"><br />
{{Collapse top | Aula 3}}<br />
<br />
===Criando colunas===<br />
<br />
<br />
O Writer permite criar colunas em seus documentos de texto. É possível inserir colunas em um estilo de página ou em um bloco individual de texto, sendo possível ainda formatar o layout da coluna de acordo com suas preferências:<br />
<br />
* Inserir colunas em um estilo de página;<br />
* Inserir colunas a um bloco de texto individual;<br />
* Formatar um layout de coluna;<br />
* Reverter para um layout de coluna simples.<br />
<br />
<br />
====Inserindo colunas em um estilo de página====<br />
<br />
<br />
Para inserir uma coluna em um estilo de página, clique em qualquer lugar da página e escolha Formatar > Colunas... no menu principal. Abre-se a janela Colunas:<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter.jpg]]</div><br />
<br />
<br />
====Inserindo colunas em um bloco de texto====<br />
<br />
<br />
Também é possível inserir colunas em um bloco de texto individual. Isso é útil caso não se queira modificar o estilo da página, ou se você quiser inserir colunas dentro de colunas. Observe que o Writer criará automaticamente uma seção a partir do bloco de texto selecionado. Uma seção é simplesmente um bloco de texto que tem uma formatação especial.<br />
<br />
Para inserir uma coluna em um bloco individual de texto, selecione o texto desejado, escolhendo em seguida Formatar > Colunas... a partir do menu principal. Abre-se a janela Colunas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter2.jpg]]</div><br />
<br />
Se você inserir colunas em um bloco de texto, é possível escolher como você deseja distribuir o texto pela coluna. È possível distribuir o texto de uma ou duas maneiras:<br />
<br />
* Uniformemente. Se você escolher distribuir o texto uniformemente, o Writer preencherá a primeira linha de cada coluna, seguindo para a segunda linha de cada coluna, e assim por diante.<br />
* Estilo Jornal. Se você escolher distribuir o texto em Estilo Jornal, o Writer preencherá as colunas uma por vez, começando pela primeira coluna.<br />
<br />
Para distribuir o texto uniformemente, marque a caixa de seleção Distribuir conteúdo uniformemente em todas todas as colunas na área Configurações. Desmarque esta caixa de seleção se você quiser distribuir o texto no estilo jornal.<br />
<br />
<br />
====Especificando o número de colunas====<br />
<br />
<br />
Se preferir criar um layout de coluna personalizado, você deverá especifcar o número de colunas desejado. Insira o número desejado na caixa Colunas da área Configurações.<br />
<br />
<br />
====Formatando a largura e o espaçamento da coluna====<br />
<br />
<br />
Para criar colunas com espaçamento uniforme com a mesma largura, marque a caixa de seleção AutoLargura na área Largura e espaçamento.<br />
<br />
Para personalizar a largura e o espaçamento das colunas, siga as seguintes etapas:<br />
<br />
* Na área de Largura e espaçamento, desmarque a caixa de seleção AutoLargura.<br />
* Na linha Largura, insira uma largura para cada coluna.<br />
* Na linha Espaçamento, insira o valor de espaçamento desejado entre cada par de coluna.<br />
<br />
Utilize as teclas direcionais na linha Coluna para rolar pelas colunas.<br />
<br />
<br />
====Formatando as linhas separadoras====<br />
<br />
<br />
Para exibir as linhas separadoras entre as colunas, siga as seguintes etapas:<br />
<br />
* A partir da lista suspensa Linha na área Linha separadora, selecione o tipo de linha desejado.<br />
* Por padrão, as linhas separadoras têm o mesmo tamanho das colunas. Caso deseje que as linhas separadoras sejam mais curtas do que a coluna, utilize a caixa Altura para inserir a altura das linhas separadoras como uma porcentagem do tamanho das colunas. Por exemplo, se você inserir 50%, as linhas separadoras terão metade do tamanho das colunas.<br />
* Se você inseriu uma altura menor do que 100%, use a lista suspensa Posição para selecionar um alinhamento vertical para as linhas do separador.<br />
<br />
<br />
====Revertendo o layout de uma coluna simples====<br />
<br />
<br />
Para reverter o layout de uma coluna simples em um estilo de página ou em um bloco de texto:<br />
<br />
* Clique em qualquer local no layout da coluna.<br />
* A partir do menu principal, escolha Formatar > Colunas... A janela Colunas aparece. <br />
* Na área Configurações, clique no layout de coluna simples localizado no lado esquerdo da caixa Colunas . Ou, volte a caixa Colunas para 1.<br />
* Clique em OK. A janela Colunas se fecha e o layout é revertido para uma coluna simples.<br />
<br />
<br />
===Capitulares===<br />
<br />
<br />
Basta somente você deixar o cursor no parágrafo que você deseja a primeira letra capitulada. Vá no meu Parágrafo e escolha a guia Capitulares. Na parte de Configurações, ative a caixa Exibir capitulares. Também pode escolher o número de caracteres, se vai utilizar a palavra inteira, quantidade de linhas a serem utilizadas, espaçamento até o texto e estilo do caractere. Após efetuar as configurações, clique em Ok.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:capitulareswriter.jpg]]</div><br />
<br />
<br />
===Hifenização===<br />
<br />
<br />
Insere hifens nas palavras grandes demais para caber no fim da linha. O LibreOffice procura no documento e sugere uma hifenização que possa ser aceita ou rejeitada. Se o texto estiver selecionado, a caixa de diálogo Hifenização atuará somente no texto selecionado. Se não houver texto selecionado, a caixa de diálogo Hifenização atuará em todo o documento.<br />
<br />
<br />
Agora, para colocar Hifenização, é bem simples, pressione Ctrl + A, para selecionar tudo ou selecione a parte do texto que deseja hifenizar e depois justifique o texto. Logo em seguida, clique em Ferramentas > Idioma > Hifenização. Depois, é só confirmar quais palavras que deseja hifenizar ou clicar em hifenizar tudo e pressione OK.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:hifenizacaowriter.jpg]]</div><br />
<br />
===Exercício===<br />
<br />
<br />
Copie o texto abaixo e posteriormente efetue os ajustes pedidos:<br />
<br />
<br />
----<br />
<br />
<br />
Das Vantagens de Ser Bobo<br />
<br />
<br />
O bobo, por não se ocupar com ambições, tem tempo para ver, ouvir e tocar o mundo. O bobo é capaz de ficar sentado quase sem se mexer por duas horas. Se perguntado por que não faz alguma coisa, responde: "Estou fazendo. Estou pensando." <br />
Ser bobo às vezes oferece um mundo de saída porque os espertos só se lembram de sair por meio da esperteza, e o bobo tem originalidade, espontaneamente lhe vem a idéia. <br />
O bobo tem oportunidade de ver coisas que os espertos não vêem. Os espertos estão sempre tão atentos às espertezas alheias que se descontraem diante dos bobos, e estes os vêem como simples pessoas humanas. O bobo ganha utilidade e sabedoria para viver. O bobo nunca parece ter tido vez. No entanto, muitas vezes, o bobo é um Dostoievski. <br />
Há desvantagem, obviamente. Uma boba, por exemplo, confiou na palavra de um desconhecido para a compra de um ar refrigerado de segunda mão: ele disse que o aparelho era novo, praticamente sem uso porque se mudara para a Gávea onde é fresco. Vai a boba e compra o aparelho sem vê-lo sequer. Resultado: não funciona. Chamado um técnico, a opinião deste era de que o aparelho estava tão estragado que o conserto seria caríssimo: mais valia comprar outro. Mas, em contrapartida, a vantagem de ser bobo é ter boa-fé, não desconfiar, e portanto estar tranqüilo. Enquanto o esperto não dorme à noite com medo de ser ludibriado. O esperto vence com úlcera no estômago. O bobo não percebe que venceu. <br />
Aviso: não confundir bobos com burros. Desvantagem: pode receber uma punhalada de quem menos espera. É uma das tristezas que o bobo não prevê. César terminou dizendo a célebre frase: "Até tu, Brutus?" <br />
Bobo não reclama. Em compensação, como exclama! <br />
Os bobos, com todas as suas palhaçadas, devem estar todos no céu. Se Cristo tivesse sido esperto não teria morrido na cruz. <br />
O bobo é sempre tão simpático que há espertos que se fazem passar por bobos. Ser bobo é uma criatividade e, como toda criação, é difícil. Por isso é que os espertos não conseguem passar por bobos. Os espertos ganham dos outros. Em compensação os bobos ganham a vida. Bem-aventurados os bobos porque sabem sem que ninguém desconfie. Aliás não se importam que saibam que eles sabem. <br />
Há lugares que facilitam mais as pessoas serem bobas (não confundir bobo com burro, com tolo, com fútil). Minas Gerais, por exemplo, facilita ser bobo. Ah, quantos perdem por não nascer em Minas! <br />
Bobo é Chagall, que põe vaca no espaço, voando por cima das casas. É quase impossível evitar excesso de amor que o bobo provoca. É que só o bobo é capaz de excesso de amor. E só o amor faz o bobo.<br />
<br />
<br />
Clarice Lispector<br />
<br />
<br />
----<br />
<br />
<br />
* Formate o título do texto com fonte '''Loma''', tamanho '''14''', alinhamento '''centralizado''', e '''negrito'''.<br />
* selecione o texto (sem selecionar o título e nem a fonte do texto) e aplique o alinhamento '''justificado''', fonte '''Dejavu Sans''', tamanho '''12'''.<br />
* Ainda com o texto selecionado, vá em '''Formatar > Colunas''', selecione 2 colunas, espaçamento de '''0,50 cm''', estilo '''linha contínua'''.<br />
* No texto selecionado aplique a hifenização em todas as palavras.<br />
* Insira a opção Capitulares, com tamanho de 3 linhas no início do texto.<br />
* Alinhe a última linha (fonte do texto) a '''direita''', '''itálico''', fonte '''Droid Sans''' e tamanho '''10'''.<br />
<br />
<br />
O texto deve ficar neste formato:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:texto2writer.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/08/2018: Aula suspensa=<br />
<font size="3"><br />
{{Collapse top | Aula 4}}<br />
<br />
Aula suspensa devido a paralização dos técnicos administrativos.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=28/08/2018: Formatações e funções úteis no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 5}}<br />
<br />
===Comando Localizar e Substituir===<br />
<br />
Para se localizar palavras em um texto qualquer, basta que você acesse o menu '''Editar, Localizar''' ou por meio do atalho '''Ctrl + F'''. Logo será aberto, no canto inferior esquerdo do aplicativo, um campo para digitação da palavra a ser procurada.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarwriter.jpg]]</div><br />
<br />
<br />
O recurso para “localizar e substituir” também é muito importante pois nos auxilia a corrigir erros espalhados pelo texto ou mesmo a mudança de uma palavra por outra de mesmo significado. Para usarmos o recurso de “localizar e substituir” basta acessarmos o menu '''Editar, Localizar e substituir''' ou diretamente pelo atalho '''Ctrl + H'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarsubstituirwriter.jpg]]</div><br />
<br />
<br />
===Marcadores e numeração===<br />
<br />
Esse comando é utilizado para inserir no texto, marcadores e/ou numeração, como o próprio título desde tópico diz.<br />
O comando para colocar marcadores ou mudar os marcadores já adicionados em um texto, pode ser acionado por meio do menu '''Formatar, Marcadores e numerações'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumerwriter.jpg]]</div><br />
<br />
<br />
Nas duas primeiras abas definimos o tipo de marcador que queremos usar em nosso texto. <br />
<br />
Passando para a terceira aba “Estrutura de tópicos” definiremos como ficará a estrutura de tópicos que estamos criando em nosso texto. Mais uma vez, teremos 8 opções para escolha.<br />
<br />
Podemos utilizar também, ao invés dos marcadores tradicionais, figuras no lugar dos números ou símbolos. Estes estão disponíveis na aba “Figuras”.<br />
<br />
Nas próximas abas temos a parte de configuração dos marcadores. A aba “Posição” nos proporciona a possibilidade de definirmos as distâncias, em relação a margem, de todos os dez níveis de marcadores que podem existir no nosso documento.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer2writer.jpg]]</div><br />
<br />
<br />
Já a aba “Opções” nos permite, também por nível, definir:<br />
<br />
* O tipo de “Numeração” (algarismos arábicos, romanos, gregos e etc.),<br />
* Definir o que virá “Antes” do marcador e “Depois” também (veja que no campo “Depois” existe um “.” e é exatamente este ponto que está sendo mostrado do lado direito do “1” mostrado no quatro ao lado do campo, nos diversos níveis),<br />
* Definir o “Estilo de caractere” que será usado,<br />
* “Mostrar subníveis” em cada marcador e<br />
* Colocar um determinado marcador para “Iniciar em”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer3writer.jpg]]</div><br />
<br />
<br />
===Ferramenta Pincel===<br />
<br />
<br />
Esse comando copia toda a formatação de um objeto ou texto e aplica ao objeto que será clicado ou marcado a seguir. O Pincel não se encontra em um item de menu específico, porém, possui um botão na barra de ferramentas padrão, conforme Figura a seguir.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:pincelwriter.jpg]]</div><br />
<br />
<br />
Como utilizar o Pincel:<br />
<br />
* Primeiro clique na palavra ou objeto que você deseja copiar os formatos nele aplicados (por exemplo tipo da fonte, tamanho e etc.);<br />
* Em seguida, clique na palavra a qual você deseja que possua os mesmos formatos da palavra anterior (a que você copiou os formatos).<br />
<br />
===Recuos e espaçamentos===<br />
<br />
Este recurso permite alterar a posição inicial, final e primeira linha do texto.<br />
<br />
Escolha a guia Formatar - Parágrafo - Recuos e espaçamento<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:recuoespacamentowriter.jpg]]</div><br />
<br />
<br />
A opção '''Antes do texto''' permite indicar onde o texto irá iniciar.<br />
<br />
A opção '''Depois do texto''' indica onde ele irá terminar.<br />
<br />
Já a opção '''Primeira linha''' indica onde a primeira linha do parágrafo irá iniciar.<br />
<br />
As opções '''Acima do parágrafo''' e '''Abaixo do parágrafo''' indicam o espaçamento entre as linhas antes e depois de um parágrafo, respectivamente.<br />
<br />
A opção '''Entre linhas''' define o espaço entre cada linha do texto.<br />
<br />
<br />
===Exercício===<br />
<br />
<br />
Digite o texto abaixo. <br />
Vá na opção f'''ormatar parágrafo, Recuos e espaçamentos''', deixe todas as opções de medidas com valor '''0 cm''' e '''espaçamento de linha simples'''.<br />
<br />
O título da receita deve estar em '''fonte Free Sans, tamanho 14, negrito e centralizado'''.<br />
<br />
O subtítulo '''Ingredientes''' deve estar com '''fonte Loma, tamanho 12, itálico e alinhamento a esquerda'''. <br />
<br />
Aplique a formatação do subtítulo '''Ingredientes''' no subtítulo '''Modo de preparo''' usando a ferramenta '''pincel'''.<br />
<br />
Use a ferramenta '''Localizar e substituir''' para trocar as palavras '''kg''' por '''quilos''' e '''2 dl''' por '''200 ml'''.<br />
<br />
Insira marcadores de círculos grandes nos ingredientes, com '''deslocamento de primeira linha em 1,25 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Insira numeração com pontos no modo de preparo, com ''' Antes do texto em 2 cm, deslocamento de primeira linha em - 0,75 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Envie o arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''<br />
<br />
<br />
<br />
'''Receita: Bacalhau a beira-alta'''<br />
<br />
<br />
''Ingredientes:'' <br />
<br />
<br />
6 postas de bacalhau;<br />
<br />
1 molho de couves galegas com os talos;<br />
<br />
1,5 kg de batatas;<br />
<br />
Pão de trigo duro;<br />
<br />
4 dentes de alho picados;<br />
<br />
2 dl de azeite.<br />
<br />
<br />
''Modo de preparo''<br />
<br />
<br />
Coza o bacalhau e, à parte, coza também as batatas e as couves.<br />
<br />
Corte o pão em fatias e coloque numa travessa funda. Por cima, deite a água de cozer o bacalhau em quantidade suficiente para ensopar o pão.<br />
<br />
Regue ainda com metade do azeite e polvilhe com metade dos alhos. Disponha o bacalhau, as batatas as couves por cima.<br />
<br />
Cubra com o restante azeite e os alhos picados. Sacuda a travessa e está pronto a servir. <br />
<br />
<br />
Como o texto deve ficar ao final do exercício:<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exercicio3writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=04/09/2018: Tabelas, Cabeçalho, Rodapé e Campos no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 6}}<br />
<br />
===Tabelas===<br />
<br />
Sabemos que uma tabela nada mais é do que um conjunto de dados disponibilizados em uma grade. Onde esta possui diversas linhas e colunas.<br />
<br />
Para criar uma tabela no Writer basta acessarmos o menu Tabela, Inserir, Tabela, pelo atalho Ctrl + F12 ou ainda pelo botão disponibilizado na barra de Ferramentas Padrão. Ao acessar uma das opções acima, será mostrada a tela de configuração da tabela.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabelawriter.jpg]]</div><br />
<br />
<br />
Na Figura acima podemos ver claramente que há a possibilidade de darmos um nome para a tabela por meio do campo “Nome” e de determinarmos quantas linhas e colunas nossa tabela terá, por meio dos campos “Colunas” e “Linhas”.<br />
<br />
Logo a seguir, abaixo do campo “Linhas” podemos ver um campo “Título”, onde se o marcarmos, nossa tabela terá N linhas com formatação de título (e. g. Negrito). A quantidade de linhas será definida no campo “As primeiras ... linhas”.<br />
<br />
O Campo “Borda” indica a existência ou não de uma linha separando cada célula que comporá a tabela criada.<br />
<br />
O botão “Autoformatar...” nos dá a possibilidade de darmos uma formatação para a tabela que será criada (e. g. Cores, fonte, bordas, alinhamento e etc).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela2writer.jpg]]</div><br />
<br />
<br />
Após a criação da tabela, podemos alterar suas propriedades ou parte dela, selecionando a parte que queremos alterar e indo até o menu Tabela, Propriedades da tabela. <br />
<br />
Nesta janela podemos alterar O nome, espaçamento, tamanho de coluna e linha, estilos de borda e cores de fundo.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela3writer.jpg]]</div><br />
<br />
<br />
===Cabeçalho===<br />
<br />
<br />
Para colocar um cabeçalho em um documento basta acessarmos o menu Inserir, Cabeçalho, Padrão. Então abrir-se-á uma área para digitação do texto do cabeçalho.<br />
<br />
Você poderá digitar o texto do cabeçalho em qualquer página do documento, que este será automaticamente replicado para as demais páginas existentes.<br />
<br />
Você poderá ainda, aplicar formatação ao cabeçalho, incluir borda e plano de fundo e também excluir o cabeçalho por meio da aba azul “Cabeçalho (Padrão)”. Para isto, basta clicar na setinha apontada para baixo existente na aba que as opções surgirão na forma de um menu pop-up.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:cabecalhowriter.jpg]]</div><br />
<br />
<br />
===Rodapé===<br />
<br />
<br />
ara inserir um rodapé, o procedimento é idêntico ao do cabeçalho, porém deve-se acessar o menu Inserir, Rodapé, Padrão]. Abrir-se-á uma área para digitação do texto do rodapé. Nesta área, pode-se colocar o que for necessário. No entanto, o mais comum de ser colocado nos rodapés de documentos são: número da página, data/hora da impressão, autor, quantidade total de páginas existentes no documento, dentre outros.<br />
<br />
Você poderá ainda, da mesma forma que no cabeçalho, aplicar formatação ao rodapé, incluir borda, plano de fundo e também o excluir. Tudo isto poderá ser realizado por meio da aba azul “Rodapé (Padrão)”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:rodapewriter.jpg]]</div><br />
<br />
<br />
===Campos===<br />
<br />
<br />
Este é mais um recurso muito útil existente no LibreOffice. Com ele você poderá fazer seu documento mostrar informações automaticamente e sem muito esforço, disponibilizado no menu Inserir, Campos.<br />
<br />
Os campos preexistentes no LibreOffice. são:<br />
<br />
* Data: coloca a data atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Hora: coloca a hora atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Número da página: exibe o número da página atual;<br />
* Total de páginas: exibe a quantidade de páginas existentes no documento;<br />
* Assunto: mostra o que foi registrado no campo “Assunto”, descrito nas “Propriedades” do documento;<br />
* Título: mostra o que foi registrado no campo “Título”, descrito nas “Propriedades” do documento;<br />
* Autor: mostra o primeiro e último nome listados em “Dados do Usuário” do LibreOffice no menu Ferramentas, Opções;<br />
* Outros: [Ctrl + F2] que dá a possibilidade de escolha de diversos campos, com diversas informações sobre o documento. Estes outros campos poderão ser escolhidos na tela “Campos” em suas diversas abas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:camposwriter.jpg]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
Crie uma tabela no documento em branco com os dados da imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabelawriter.jpg]]</div><br />
<br />
<br />
Formate a tabela com as seguintes configurações:<br />
<br />
<br />
* Linha de título mesclada, fonte Rekha, tamanho 14, cor vermelha, negrito e centralizado;<br />
* Linha de subtítulo com fonte Loma, tamanho 12, itálico e centralizado;<br />
* Demais linhas com fonte Garuda, tamanho 12 alinhamento justificado;<br />
* Insira cor de fundo de acordo com a imagem acima.<br />
<br />
No cabeçalho, insira o texto Proeja - Informática básica II em fonte Liberation Serif, tamanho 12 e negrito.<br />
<br />
No rodapé insira o número da página alinhado a direita.<br />
<br />
Ao final, o documento deve ter essa aparência:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabela2writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=11/09/2018: Corretor ortográfico, impressão e Figuras=<br />
<font size="3"><br />
{{Collapse top | Aula 7}}<br />
<br />
===Corretor ortográfico===<br />
<br />
Você pode verificar a ortografia de uma seleção de texto ou do documento por inteiro manualmente.<br />
<br />
A verificação ortográfica começa na posição atual do cursor ou no início da seleção de texto.<br />
<br />
Clique no documento ou selecione o texto que deseja verificar. Escolha Ferramentas - Ortografia e gramática.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretorwriter.jpg]]</div><br />
<br />
<br />
Sempre que é encontrado um erro de ortografia, surge a caixa de diálogo Verificação ortográfica e o LibreOffice oferece algumas sugestões de correção.<br />
Adote um dos seguintes procedimentos:<br />
<br />
Para aceitar a correção, clique na sugestão e, em seguida, em Corrigir.<br />
<br />
Edite a frase na caixa de texto superior e, em seguida, clique em Corrigir.<br />
<br />
Para adicionar a palavra desconhecida ao dicionário definido pelo usuário, clique em Adicionar ao dicionário.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretor2writer.jpg]]</div><br />
<br />
<br />
===Impressão===<br />
<br />
<br />
Para imprimir documentos no Libreoffice Writer, podemos clicar diretamente no botão imprimir ou ir no menu Arquivo, imprimir:<br />
<br />
Na janela que se abre, podemos escolher diversas configurações adicionais.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:imprimir2writer.jpg]]</div><br />
<br />
<br />
Na aba Geral, podemos escolher a impressora, quantidade de cópias, se serão agrupadas, quais páginas serão impressas (todas, somente uma ou uma parte).<br />
<br />
Na aba Libreoffice Writer podemos escolher se o plano de fundo será impresso, as figuras e objetos, texto oculto, cor do texto e páginas em branco.<br />
<br />
Em Layout escolhemos a quantidade de páginas por folha, a ordem e lados da página.<br />
<br />
E na aba Opções escolhemos se irá para uma impressora física ou um arquivo, agrupamento, bandejas definidas na impressora e tamanho definido na impressora.<br />
<br />
<br />
===Visualizar impressão===<br />
<br />
Antes de imprimir algum trabalho, convém observar como ficará o layout no papel, para evitar alguns acidentes, tais como quebras de páginas em locais indesejados, ajustes de parágrafos, entre outros. Para tanto, o auxílio da função Visualizar Impressão é fundamental.<br />
<br />
Acesse o menu Arquivo > Visualização de Página, no ícone na barra de ferramentas ou através do atalho Ctrl + Shift + O.<br />
<br />
Na tela aparecerá uma projeção exata de como ficará a impressão. Serão apresentadas algumas ferramentas, se quisermos analisar com mais detalhes:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:visualizarimpressaowriter.jpg]]</div><br />
<br />
<br />
'''Uma página<br/>'''<br />
Mostra uma página na janela de visualização.<br />
<br />
<br />
'''Duas páginas<br/>'''<br />
Mostra duas páginas na janela de visualização. As páginas ímpares aparecerão no lado direito e as páginas pares no lado esquerdo.<br />
<br />
<br />
'''Visualização de livro<br/>'''<br />
Selecione esta opção para ver a primeira página no lado direito da visualização. Se não a selecionar, a primeira página é mostrada no lado esquerdo da visualização.<br />
<br />
<br />
'''Várias páginas<br/>'''<br />
Define o número de páginas exibidas na tela. Clique na seta ao lado do ícone para abrir uma grade e selecionar o número de páginas a serem exibidas como linhas e colunas na visualização.<br />
<br />
<br />
'''Para o início do documento<br/>'''<br />
Vai para a primeira página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Página anterior<br/>'''<br />
Vai para a página anterior do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Próxima página<br/>'''<br />
Vai para a próxima página do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Para o fim do documento<br/>'''<br />
Vai para a última página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Menos zoom<br/>'''<br />
Diminui o zoom para ver mais do documento em um tamanho reduzido.<br />
<br />
<br />
'''Zoom de visualização<br/>'''<br />
Determina o nível de zoom da visualização de impressão.<br />
<br />
<br />
'''Mais zoom<br/>'''<br />
Aumenta o zoom para obter um close do documento.<br />
<br />
<br />
'''Imprimir<br/>'''<br />
Imprime o documento.<br />
<br />
<br />
'''Tela inteira<br/>'''<br />
Exibe ou oculta os menus e as barras de ferramentas no Writer ou no Calc. Para sair do modo de tela inteira, clique no botão Tela inteira ou pressione a tecla Esc.<br />
<br />
<br />
'''Fechar visualização<br/>'''<br />
Fecha a visualização e volta na edição do documento.<br />
<br />
<br />
===Figuras===<br />
<br />
<br />
A inserção de figura em um texto e sua manipulação é simples no Writer.<br />
<br />
Vamos passo a passo mostrar como se dá essa inserção. <br />
<br />
Primeiro abra o documento em que deseja inserir a figura e posicione o cursor no local desejado que ela apareça. Depois escolha Inserir - Figura. Localize o arquivo gráfico que você deseja inserir e, em seguida, clique em Abrir. <br />
<br />
Por padrão, a figura inserida é centralizada acima do parágrafo no qual você clicou. <br />
<br />
<br />
Veja que é criada uma barra de ferramenta flutuante chamada figura. Nela você modifica os aspectos de cor e padrão da figura e também inverte vertical ou horizontalmente a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figurawriter.jpg]]</div><br />
<br />
<br />
Quando é inserida uma figura a barra de ferramenta quadro é mostrada para configurar com mais facilidade a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura2writer.jpg]]</div><br />
<br />
<br />
Também temos a opção de formatar figura. Para isso, selecione a figura e vá no menu Formatar - Figura.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura3writer.jpg]]</div><br />
<br />
<br />
Nesta janela teremos várias opções de configuração, tais como ajuste de tamanho, ajuste no texto, posicionamento. hiperlink, recorte, bordas, transparência, etc.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=18/09/2018: Palestra Reflexos da reforma trabalhista para a classe trabalhadora=<br />
<font size="3"><br />
{{Collapse top | Aula 8}}<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=25/09/2018: Introdução ao Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 9}}<br />
<br />
===Libreoffice Calc===<br />
<br />
Calc é um software de planilha eletrônica multiplataforma de código aberto, desenvolvido originalmente pela Star Division, posteriormente pela Sun Microsystems (como parte da suíte StarOffice) e atualmente pela The Document Foundation, como parte da suíte LibreOffice. Também é distribuído gratuitamente com as suítes OpenOffice.org e NeoOffice.<br />
<br />
Nessa planilha, o número limite de linhas é de pouco mais de 1 milhão por planilha e o número limite de colunas é de 1024 por planilha.<br />
<br />
Na imagem abaixo podemos conhecer um pouco melhor a interface do Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interfacecalc.jpg]]</div><br />
<br />
<br />
As células do Calc possuem endereçamento, onde as colunas são definidas por letras e as linhas por números. Para identificar o endereço da célula, basta indicar primeiramente o endereçamento da coluna e depois da linha. Ex: '''A1'''.<br />
<br />
<br />
====Operadores====<br />
<br />
<br />
Devemos conhecer alguns símbolos que são muito utilizados, juntamente com a ordem dos cálculos efetuados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface2calc.jpg]]</div><br />
<br />
<br />
====Realce de valor====<br />
<br />
<br />
A função Realce de valor destaca os conteúdos das células através da diferenciação da cor da fonte. Para acioná-la, vá até o menu Exibir > Realce de valor ou clique na combinação de teclas Ctrl+F8.<br />
<br />
Textos são apresentados em preto, números em azul e fórmulas em verde. Essa configuração de cores é padrão para qualquer instalação do LibreOffice. Na figura abaixo, é possível identificar as três categorias. No exemplo, o conteúdo da célula B30 é a fórmula =1+1. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface3calc.jpg]]</div><br />
<br />
<br />
====Séries de preenchimento====<br />
<br />
<br />
Uma Série de preenchimento é uma forma fácil de fazer um preenchimento automático em uma área da planilha a partir de um valor inicial.<br />
<br />
Inicialmente, digite o valor inicial em uma célula. Com a célula selecionada, coloque o ponteiro do mouse sobre o ponto preto no canto inferior direito, chamado Alça de preenchimento, até que este se transforme em uma pequena cruz.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface4calc.jpg]]</div><br />
<br />
<br />
Arraste com o botão do mouse pressionado até a última célula da sequência desejada, como no passo 1 apresentado na tabela abaixo. Solte o botão do mouse e a área selecionada será preenchida com a sequência numérica correspondente (passo 2).<br />
<br />
Se a direção da sua seleção for horizontal para a esquerda ou vertical para cima, o Calc fará o preenchimento com decremento 1. Se a direção da sua seleção for horizontal para a direita ou vertical para baixo, o Calc fará o preenchimento com incremento 1.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface5calc.jpg]]</div><br />
<br />
<br />
Se você desejar criar uma sequência de preenchimento sem incremento algum, faça o mesmo procedimento, no entanto, ao clicar e arrastar com a alça de preenchimento, mantenha a tecla Ctrl pressionada.<br />
<br />
====Formatar Células====<br />
<br />
<br />
Permite que você especifique diversas opções de formatação e aplique atributos às células selecionadas.<br />
<br />
Escolha Formatar - Células<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:formatcelcalc.jpg]]</div><br />
<br />
<br />
Números<br />
Especifica as opções de formatação para a(s) célula(s) selecionada(s).<br />
<br />
<br />
Fonte<br />
Especifique a formatação e a fonte que deseja aplicar.<br />
<br />
<br />
Alinhamento<br />
Define ao opções de alinhamento para o conteúdo da célula atual, ou das células selecionadas.<br />
<br />
<br />
Bordas<br />
Define opções de borda para os objetos selecionados em Writer ou Calc.<br />
<br />
<br />
Plano de fundo<br />
Define a cor ou a figura do plano de fundo.<br />
<br />
<br />
Proteção de célula<br />
Define as opções de proteção para as células selecionadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=02/10/2018: Fórmulas simples Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 10}}<br />
<br />
===Funções===<br />
<br />
Funções são procedimentos baseados em operações e operandos que, manipulados, retornam um determinado resultado. Funções podem simplesmente representar a implementação de operadores, como a função Soma, que veremos adiante, ou, de forma mais complexa, realizar cálculos de nível avançado.<br />
<br />
<br />
Para inserir uma função através do assistente, siga os seguintes passos:<br />
<br />
Selecione a célula onde será inserida a função;<br />
<br />
Selecione uma das opções abaixo:<br />
<br />
* vá até o menu Inserir > Função ou<br />
* teclar Ctrl + F2 ou<br />
* clique sobre o botão Assistente de funções, na Barra de fórmulas.<br />
<br />
Será aberta a tela do Assistente de funções. Selecione, então, uma categoria de função na caixa Categoria;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalc.jpg]]</div><br />
<br />
<br />
Selecione o nome da função e clique no botão Próximo;<br />
<br />
Preencha os argumentos solicitados para a função;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcao2calc.jpg]]</div><br />
<br />
<br />
Clique OK. A fórmula será inserida na célula e o resultado será contabilizado.<br />
<br />
A função também pode ser digitada. Para isto, basta iniciar coma digitação do símbolo de = e posteriormente digitar o nome da fórmula desejada, juntamente com seu parâmetros.<br />
<br />
<br />
====Funções simples====<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaosomacalc.jpg]]</div><br />
<br />
<br />
No exemplo acima, a função é SOMA, o argumento é B2:B6 (leia-se de B2 até B6) e o resultado ( a soma dos valores) é 20. <br />
<br />
Como digitar<br />
<br />
Se as células são adjacentes: =SOMA(C2:C8) <br />
<br />
Essa função soma o conteúdo de células adjacentes (sequência C2 até C8)<br />
<br />
Se as células não são adjacentes: =SOMA(B2;C3;D1).<br />
<br />
A função Média calcula o valor médio de um intervalo, adjacente ou não.<br />
<br />
=MEDIA(C2:C8)<br />
<br />
A função Mínimo retorna o menor valor de um intervalo analisado<br />
<br />
=MINIMO(C2:C8)<br />
<br />
A função Máximo retorna o maior valor de um intervalo analisado<br />
<br />
=MAXIMO(C2:C8)<br />
<br />
A função Mediana de um intervalo é o seu valor central, ou seja, que divide o intervalo em duas partes iguais<br />
<br />
=MED(C2:C8)<br />
<br />
A função Moda retorna o valor que mais se repete em um intervalo. Caso dois números ou mais tenham a mesma quantidade de repetições, o menor valor será mostrado.<br />
<br />
=MODO(C2:C8)<br />
<br />
A função Concatenar agrupa valores indicados. Esta função aceita somente ;<br />
<br />
=CONCATENAR(C2;C5;C8)<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=09/10/2018: Fórmulas Compostas Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 11}}<br />
<br />
===Funções Lógicas===<br />
<br />
<br />
'''SE'''<br />
<br />
<br />
Esta é uma função bastante interessante pois permite ao usuário da planilha construir expressões condicionais, avaliando e apresentando diferentes resultados conforme uma cláusula avaliada.<br />
<br />
A estrutura da função SE é:<br />
<br />
=SE (CONDIÇÃO; VALOR_SE_CONDIÇÃO_VERDADEIRA; VALOR_SE_CONDIÇÃO_FALSA)<br />
<br />
O primeiro argumento é a condição. Normalmente, avaliamos o conteúdo de uma célula em relação a um dado parâmetro, como, por exemplo C4<100 ou A1=”APROVADO”.<br />
<br />
Caso a condição seja verdadeira, o segundo argumento é apresentado como resultado da função.<br />
<br />
Caso a condição seja falsa, o terceiro argumento é apresentado como resultado.<br />
<br />
No exemplo abaixo, avaliamos o valor da nota do aluno e, caso esteja acima da média, apresentamos o resultado “Aprovado”. Senão, apresentamos o resultado “Recuperação”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcse.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.NUM'''<br />
<br />
<br />
<br />
A função CONT.NÚM conta quantos valores numéricos estão entre os ARGUMENTOS da função.<br />
<br />
Entende-se como valores numéricos: números, datas e fórmulas cujo resultado seja um número. Células vazias ou células com conteúdo de texto não são contadas na função CONT.NÚM.<br />
<br />
O formato da função é:<br />
<br />
=CONT.NÚM(ARGUMENTOS)<br />
<br />
Observe no exemplo abaixo que nem todos os alunos fizeram a primeira avaliação. Podemos usar a função CONT.NÚM para contar as notas do intervalo B11:B19 e identificar quantos alunos de fato fizeram a prova.<br />
<br />
O resultado da função =CONT.NÚM(B11:B19) será 7 pois, as duas células, correspondentes aos alunos que não fizeram a prova, estão vazias.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontnum.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.SE'''<br />
<br />
<br />
<br />
A função CONT.SE tem como objetivo contar quantos valores obedecem a um determinado critério. A estrutura é bastante simples:<br />
<br />
=CONT.SE (INTERVALO; CONDIÇÃO)<br />
<br />
Os valores dentro do intervalo são avaliados um a um de acordo com a condição. O valor é contado somente se a condição for verdadeira.<br />
<br />
No exemplo abaixo, contamos quantos alunos estão com notas acima da média estabelecida.<br />
<br />
Note que usamos uma concatenação de texto para expressar adequadamente o critério, indicado no segundo argumento com a expressão “>”&B6. Ou seja, concatenamos o sinal de > com o conteúdo da célula B5.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse.jpg]]</div><br />
<br />
<br />
O resultado da função CONT.SE acima é de 7 alunos.<br />
<br />
Quando o critério ou condição for de igualdade, não precisamos usar a concatenação de texto, por exemplo:<br />
<br />
=CONT.SE(B10:B18;B6)<br />
<br />
Em sua construção mais comum, a função CONT.SE permite apenas um argumento como critério de contagem. No entanto, em casos específicos, é possível utilizar mais de um argumento através do uso de expressões regulares em fórmulas.<br />
<br />
O exemplo abaixo ilustra essa situação. A partir da tabela abaixo, desejamos obter a quantidade de cadastros de pessoas que são dos estados do Rio Grande do Sul e Santa Catarina.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse2.jpg]]</div><br />
<br />
<br />
Uma abordagem óbvia e simples seria a soma de CONT.SE:<br />
<br />
=CONT.SE(F3:F8;"RS")+CONT.SE(F3:F8;"SC")<br />
<br />
Uma abordagem elegante poderia utilizar expressões regulares:<br />
<br />
=CONT.SE(F3:F8;"RS|SC")<br />
<br />
Onde o símbolo | (pipe) entre as siglas RS e SC representa a operação OU lógica. Logo, estamos contando apenas os valores do intervalo de F3 até F8 que são iguais a RS ou a SC.<br />
<br />
<br />
'''CONT.VALORES'''<br />
<br />
<br />
A função CONT.VALORES permite contar células preenchidas com valores de texto, número ou fórmula dentro de um intervalo.<br />
<br />
O formato da função CONT.VALORES é:<br />
<br />
=CONT.VALORES(ARGUMENTOS)<br />
<br />
No exemplo abaixo, o usuário deverá preencher o espaço amarelo com cinco códigos de produto.<br />
<br />
Para contar quantas células já foram preenchidas, utilizamos a função CONT.VALORES e o intervalo de G5:G9.<br />
<br />
O resultado da função, no exemplo abaixo, será 3.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvalores.jpg]]</div><br />
<br />
<br />
<br />
'''CONTAR.VAZIO'''<br />
<br />
<br />
CONTAR.VAZIO conta quantas células do intervalo indicado em ARGUMENTOS estão vazias, isto é, sem conteúdo algum.<br />
<br />
=CONTAR.VAZIO(ARGUMENTOS)<br />
<br />
No nosso exemplo anterior, da função CONT.VALORES, calculamos quantas células do intervalo amarelo já haviam sido preenchidas. Podemos encontrar a informação complementar (quantas células faltam ser preenchidas) através da função CONTAR.VAZIO.<br />
<br />
No exemplo, a função CONTAR.VAZIO pode ser utilizada sobre o intervalo de G5:G9. O resultado da função na célula H15 será de 2.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvazio.jpg]]</div><br />
<br />
<br />
<br />
'''SOMASE'''<br />
<br />
<br />
A função SOMASE é útil para cálculos que envolvam valores totais a partir de um determinado critério. O formato da função é:<br />
<br />
=SOMASE(INTERVALO_DE_AVALIAÇÃO; CRITÉRIO; INTERVALO_DE_SOMA)<br />
<br />
Os valores do intervalo de avaliação são avaliados conforme o critério. Caso estejam de acordo com o critério indicado, o valor correspondente no intervalo de soma é somado ao resultado.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcsomase.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=23/10/2018: Avaliação=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
* Copie o conteúdo abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:avaliacaocalc.jpg]]</div><br />
<br />
<br />
* Efetue os cálculos solicitados (Total dos produtos por trimestre, Valor máximo, Valor mínimo, Média e Total por mês).<br />
<br />
* Salve o arquivo com o seu nome e envia para o seguinte e-mail:<br />
<br />
ederson.luiz@ifsc.edu.br<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=06/11/2018: Vínculo entre planilhas, Gráficos, Classificação e Filtros=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
===Classificação===<br />
<br />
<br />
No Libreoffice Calc, podemos efetuar a classificação de conteúdos, em ordem alfabética, de forma crescente ou decrescente.<br />
<br />
Para tanto, devemos clicar em um intervalo de banco de dados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc.jpg]]</div><br />
<br />
<br />
Ao selecionar um intervalo de células, somente estas células serão classificadas. <br />
<br />
Se você clicar somente em uma célula sem selecionar, então todo o intervalo de banco de dados será classificado.<br />
<br />
Escolha Dados - Classificar.<br />
<br />
O intervalo de células que será classificado é mostrado em cores invertidas.<br />
<br />
Selecione as opções de classificação desejadas.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc2.jpg]]</div><br />
<br />
Clique em OK.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc3.jpg]]</div><br />
<br />
<br />
===Filtro===<br />
<br />
<br />
Os filtros e filtros avançados permitem que você assegure que somente certas linhas (registros) de um intervalo de dados fiquem visíveis. Nos documentos de planilhas do LibreOffice, há várias possibilidades para a aplicação de filtros.<br />
<br />
Uma das utilizações para a função Autofiltro, que se encontra em Dados, Filtro, Autofiltro, é a de rapidamente restringir a exibição de registros com entradas idênticas em um campo de dados.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:autofiltrocalc.jpg|900px]]</div><br />
<br />
<br />
Na caixa de diálogo Filtro padrão, você também pode definir intervalos que contenham os valores em determinados campos de dados. É possível utilizar o filtro padrão para conectar até três condições com um operador lógico E ou OU.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtropadraocalc.jpg]]</div><br />
<br />
<br />
O Filtro avançado excede a restrição de três condições e permite até oito condições de filtro. Com os filtros avançados, você insere as condições diretamente na planilha.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtroavancadocalc.jpg]]</div><br />
<br />
<br />
Para remover um filtro, de forma a ver todas as células, clique dentro da área onde o filtro estiver aplicado e escolha Dados - Filtro - Redefinir filtro.<br />
<br />
Ao selecionar várias linhas de uma área onde um filtro foi aplicado, a seleção pode incluir linhas visíveis e linhas ocultas pelo filtro. Se depois você aplicar formatação, ou excluir as linhas selecionadas, esta ação só afetará as linhas visíveis. As linhas ocultas não serão afetadas.<br />
<br />
Isto é o oposto das linhas que foram ocultas manualmente pelo comando Formatar - Linhas - Ocultar linhas. Linhas ocultas manualmente são excluídas ao excluir uma seleção que as contenha.<br />
<br />
<br />
===Vínculo entre planilhas===<br />
<br />
Podemos utilizar conteúdos que se encontram em outras planilhas do documento.<br />
<br />
Para que isso ocorra, devemos utilizar como no exemplo abaixo:<br />
<br />
=Planilha2.A1<br />
<br />
Neste caso, o conteúdo da Planilha2, célula A1 será exibido onde esta fórmula for empregada.<br />
<br />
<br />
===Gráficos===<br />
<br />
<br />
No Calc, é fácil gerar gráficos a partir de qualquer planilha. <br />
<br />
Pode-se chamar o assistente de gráficos a partir do seu ícone ou do menu Inserir ... gráfico.<br />
<br />
Os gráficos no Calc estão muito fáceis e muito intuitivos e prometem-se ainda muitas melhorias para este recurso. <br />
<br />
Ao se invocar o comando Inserir Gráfico, tem-se uma tela como a seguir (previsão do gráfico e seu assistente):<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc.jpg]]</div><br />
<br />
<br />
Logo na Etapa 1 você terá vários tipos e subtipos de gráficos a escolher: barras, pizza, rede, dispersão, etc.<br />
<br />
Etapa 2 – Intervalo de Dados – aqui se informa ao Calc a área a ser computada e plotada.<br />
<br />
Etapa 3 – Série de Dados – Aqui se definem nomes e rótulos para as séries dos dados.<br />
<br />
Etapa 4 – É nesta etapa que se fazem as legendas do gráfico.<br />
<br />
A seguir, vemos um gráfico de Pizza gerado no LibreOffice Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc2.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=13/11/2018: Introdução ao Libreoffice Impress=<br />
<font size="3"><br />
{{Collapse top | Aula 13}}<br />
<br />
===Tela Principal===<br />
<br />
O Impress é software para desenvolvimento de apresentações. Por meio deste software pode-se preparar as apresentações textuais, adicionar imagens, sons e até mesmo animação.<br />
<br />
<div style="text-align: left;">[[Arquivo:impressprincipal.jpg]]</div><br />
<br />
<br />
===Slide Mestre===<br />
<br />
Toda apresentação possui no mínimo um slide mestre. Este slide em especial leva este nome não é à toa e veremos o por quê.<br />
<br />
No slide mestre pode-se configurar e/ou alterar as formatações de uma apresentação inteira.<br />
<br />
Nem sempre as pessoas que trabalham com este tipo de ferramenta o utilizam. Na maioria das vezes por pura falta de conhecimento.<br />
<br />
Vamos começar a desenvolver nossa apresentação exatamente pelo slide mestre. Mas antes disso vamos acessar o menu [Exibir | Régua], para que a régua seja mostrada da mesma forma como é mostrada no Writer.<br />
<br />
Agora então vamos acessar o menu [Exibir | Mestre | Slide Mestre]. Após este passo, podemos observar que a interface mudou bastante:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressmestre.jpg]]</div><br />
<br />
<br />
Tudo que fizermos neste slide será replicado para todos os slides que tenham este mesmo layout em nossa apresentação.<br />
<br />
<br />
Para fazer uma apresentação, não é pré-requisito configurar o slide mestre. No entanto, há alguns bons motivos para você fazê-lo:<br />
<br />
* Configurando o slide mestre, você não precisará fazer isto de novo em nenhum outro slide, pois, isto acontecerá automaticamente;<br />
* Hoje esta apresentação vai ter um fundo de tela voltado para este curso, amanhã se o autor não ficar satisfeito ou se for usá-la em outro curso, bastará fazer a alteração no slide mestre e tudo estará resolvido.<br />
<br />
<br />
===Segundo Slide===<br />
<br />
<br />
Para criar o segundo slide vamos dar um clique com o botão direito do mouse na área sob as miniaturas de slides. <br />
<br />
No menu pop-up que aparecer acesse a opção “Novo slide”.<br />
<br />
Muito provavelmente o slide que foi criado veio com o mesmo layout do anterior a ele. Então, vá até a área de layout de slides e clique no layout que gostaria de utilizar.<br />
<br />
<br />
===Slide com imagem===<br />
<br />
<br />
Mais uma vez vamos repetir o processo de criar um novo slide, ou seja, clique com o botão direito do mouse sobre a área limpa sob as miniaturas de slides. Então escolha a opção “Novo slide”.<br />
<br />
Será criado um slide com layout padrão. Vamos alterar o layout para um que comporte texto e objetos.<br />
<br />
Agora, no quadro do lado direito é apresentada uma imagem central que na verdade são quatro botões:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressslideimagem.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2018-2&diff=152648INF-2018-22018-11-12T20:07:45Z<p>Ederson.luiz: /* 13/11/2018: Introdução ao Libreoffice Impress */</p>
<hr />
<div>=Informática Básica II= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 3a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2018-2<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/2/2b/PPC_PROEJA_-_ano_2015.pdf PPC Proeja Operador de Computador]<br />
<br />
<br />
==Ementa==<br />
<br />
Aplicativos de escritório, tais como editor de texto, planilha eletrônica e ferramenta de apresentação.<br />
<br />
Navegação na Internet, pesquisa e cuidados com a segurança da informação.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Elaborar documentos digitais;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional;<br />
* Redigir e formatar documentos utilizando o editor de textos;<br />
* Construir planilhas eletrônicas, aproveitando suas funções;<br />
* Montar apresentações dinâmicas e interativas;<br />
* Navegar na internet, pesquisar e utilizar aplicativos Web como webmail, ferramentas de escritório online e redes sociais;<br />
* Reconhecer URLs (endereços) e mecanismos de segurança para navegação segura.<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.hardware.com.br/livros/linux/dicas-para-openofficebroffice.html Dicas de Openoffice]<br />
* [https://www.tecmundo.com.br/office/3767-como-migrar-do-office-para-o-openoffice-sem-dores-de-cabeca.htm Como migrar do Office para o Openoffice sem dores de cabeça]<br />
<br />
=31/07/2018: Apresentação da disciplina, introdução ao Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina===<br />
<br />
Introdução ao componente curricular e Introdução ao Libreoffice.<br />
<br />
'''Arquivo apresentação da disciplina'''<br />
<br />
[https://drive.google.com/file/d/127DSInkISdvAkptI3D_iSCafRoRkTepw/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://pt-br.libreoffice.org/baixe-ja/libreoffice-novo/ Link para download do LibreOffice]<br />
<br />
<br />
O LibreOffice é uma ferramenta do tipo “office” totalmente gratuita e de código aberto.<br />
<br />
Mas quais os motivos para usarmos o Libreoffice?<br />
<br />
* O LibreOffice é um conjunto de softwares de uso profissional ou doméstico ideal para quem quer uma suíte de escritório para o dia a dia e não deseja softwares desatualizadas e independentes.<br />
* Toda a interface do LibreOffice é padronizada, assim como acontece com o Microsoft Office. Conjuntos e ícones e funcionalidades são semelhantes em toda a interface do usuário. As teclas de atalho são diferentes dos utilizados em outras soluções, porém são bem simples de memorizar.<br />
* O LibreOffice pode ser instalado e utilizado de uma forma [https://pt-br.libreoffice.org/baixe-ja/portable-versions/ portátil], sem necessidade de instalação no computador de uso.<br />
* O LibreOffice é compatível com todos os formatos gerados pelos aplicativos Microsoft, inclusive os documentos mais antigos, tais como DOC, XLS e PPT.<br />
* O LibreOffice é um software de código aberto e grátis. Pode ser instalados em diversos computadores e ser utilizado para qualquer finalidade.<br />
<br />
No decorrer do curso iremos trabalhar com os seguintes softwares:<br />
<br />
'''LibreOffice Writer:'''<br />
<br />
O Writer é o processador de texto do LibreOffice e é um software similar ao Microsoft Word. Com o Writer é possível criar desde textos simples, até textos com padrões complexos, com imagens, tabelas, anotações, estilos e numeração de páginas. Sua interface lembra o Word na versão 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Calc:'''<br />
<br />
O Calc é o editor de planilhas eletrônicas do LibreOffice e é um software similar ao Microsoft Excel. Com o Calc é possível criar planilhas e gráficos de todos os tipos, com imagens, formatação de texto e bordas. Sua interface lembra o Excel 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Impress:'''<br />
<br />
O Impress é o criador de apresentações do LibreOffice e é um software similar ao Microsoft Power Point. Com o Impress é possível criar apresentações de todos tipos, com diversos slides, imagens, formas, animações e transições. Sua interface lembra o Power Point 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
<br />
===LibreOffice Writer===<br />
<br />
<br />
Para a maioria das nossas atividades no software Writer, nós faremos uso de textos.<br />
<br />
Vamos conhecer um pouco de sua interface:<br />
<br />
<div style="text-align: center;">[[Arquivo:writerinterface.jpg|900px]]</div><br />
bit.ly/inf-2018-2<br />
As barras de ferramentas podem ser movidas, de acordo com a necessidade ou preferência:<br />
<br />
<div style="text-align: center;">[[Arquivo:moverbarra.jpg|900px]]</div><br />
<br />
<br />
As funções dos botões também podem ser acessadas via teclas de atalho:<br />
<br />
Teclas de função para o LibreOffice Writer<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho1.jpg]]</div><br />
<br />
<br />
Teclas de atalho para controlar documentos e janelas<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho2.jpg]]</div><br />
<br />
<br />
Teclas de atalho para editar ou formatar documentos<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho3.jpg]]</div><br />
<br />
<br />
A extensão padrão do arquivo é '''ODT'''. Se salvarmos um arquivo com o nome '''Exemplo''', o mesmo se chamará '''Exemplo.odt'''.<br />
<br />
Para selecionarmos o texto, podemos utilizar o mouse ou o teclado, através da tecla '''SHIFT''' + '''SETA DIRECIONAL'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=07/08/2018: Formatação e alinhamento=<br />
<font size="3"><br />
{{Collapse top | Aula 2}}<br />
<br />
===Barra de ferramentas Formatação===<br />
<br />
A barra de Formatação permite alterar as configurações relacionadas ao texto em si, como fonte, tamanho de fonte, estilos, negrito, sublinhado, etc.<br />
<br />
<div style="text-align: left;">[[Arquivo:barraformatacao.jpg]]</div><br />
<br />
Estilos e Formatação (F11): Exibe a janela Estilos e Formatação (abaixo) que exibe os estilos pré-definidos e também permite salvar configurações relativas ao tamanho e cor da fonte, espaçamento entre linhas do parágrafo. É possível alterar os estilos existentes ou mesmo criar novos.<br />
<br />
<div style="text-align: left;">[[Arquivo:estilowriter.jpg]]</div><br />
<br />
<br />
Nesta caixa de seleção escolhemos a fonte:<br />
<br />
<div style="text-align: left;">[[Arquivo:fontewriter.jpg]]</div><br />
<br />
<br />
Permite definir o tamanho da fonte, entre 2 e 999,9:<br />
<br />
<div style="text-align: left;">[[Arquivo:tamanhofontewriter.jpg]]</div><br />
<br />
<br />
Aplicam negrito, itálico e sublinhado respectivamente. Atalhos CTRL+B, CTRL+I e CTRL+U:<br />
<br />
<div style="text-align: left;">[[Arquivo:niswriter.jpg]]</div><br />
<br />
<br />
Aqui estão os possíveis alinhamentos para os parágrafos e são extremamente cobrados em concursos. <br />
<br />
<div style="text-align: left;">[[Arquivo:alinhamentowriter.jpg]]</div><br />
<br />
<br />
Alinhamento à esquerda. Atalho CTRL + L.<br />
<br />
Obs.: Quando o parágrafo está alinhado a esquerda fica desalinhado a direita.<br />
<br />
Alinhamento Centralizado. Atalho CTRL + E.<br />
<br />
Obs.: Quando o parágrafo está centralizado fica desalinhado a esquerda e a direita.<br />
<br />
Alinhamento à Direita. Atalho CTRL + R.<br />
<br />
Obs.: Quando o parágrafo está alinhado a direita fica desalinhado a esquerda.<br />
<br />
Alinhamento Justificado. Atalho CTRL + J.<br />
<br />
Obs.: Quando o parágrafo está justificado fica alinhado a direita e a esquerda.<br />
<br />
Dica: Para aplicar qualquer alinhamento a um parágrafo não é preciso selecionar o parágrafo, basta que o cursor esteja dentro do parágrafo.<br />
<br />
<br />
Cor da Fonte. Permite alterar a cor da fonte.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfontewriter.jpg]]</div><br />
<br />
<br />
Dica: Não é preciso selecionar a palavra que se deseja alterar a cor da fonte, basta que o cursor esteja posicionado dentro da palavra.<br />
<br />
<br />
Realçar. Permite realçar um texto com várias cores.<br />
<br />
<div style="text-align: left;">[[Arquivo:realcewriter.jpg]]</div><br />
<br />
<br />
Cor do Plano de Fundo. Permite alterar a cor do plano de fundo da posição onde o cursor está ou no trecho selecionado.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfundowriter.jpg]]</div><br />
<br />
<br />
'''Exercício'''<br />
<br />
<br />
<div style="text-align: center;">'''O Conceito de Mercado'''</div><br />
<br />
<br />
O conceito de <u>mercado</u> continua intimamente associado à idéia de <u>local</u> onde se efetuam transações entre produtores e consumidores. Consideramos essa noção restritiva, pelos seguintes aspectos:<br />
O mercado é hoje um espaço de realização de operações econômicas de compra e venda que vai para além dos seus contornos <u>físicos</u> e mesmo <u>temporais</u>.<br />
De fato, estão a surgir com grande freqüência <u>formas imateriais de mercado</u> (…).<br />
Essas formas de mercado lançam mão dos meios proporcionados pela sociedade de informação, possibilitando a realização de compras e vendas em casa, pela simples manutenção interativa de um ecrã de televisão ou, mais simplesmente, através de um telefonema para um número fornecido por aquele ecrã, com entrega imediata no domicilio ou pelo correio, como é uso da chamada televisão comercial.<br />
Existem operações de compra e venda que se contratam hoje e se realizam apenas daqui a alguns meses (como por exemplo, nos mercados de futuros, caso dos mercados de cereais nos Estados Unidos da América,...).<br />
Por outro lado existe uma diversidade de mercados, que vai desde os mercados de produtos finais ou de consumo final aos mercados de produtos intermédios e de fatores produtivos, bem como ao mercado de trabalho ou à bolsa ou <u>mercado de valores imobiliários</u>. Aos mercados nacionais sobrepõem-se os <u>mercados transnacionais</u>, de natureza informal, ou de diversos acordos de comércio livre, uniões aduaneiras ou comunidades econômicas.<br />
Tudo são razões para que se considere a noção de mercado como relativa e circunstancial, além de mutável no tempo.<br />
Uma coisa é certa: num mercado existem sempre intenções de compra (compra), intenções de venda (<u>oferta</u>), um preço e uma situação de equilíbrio mais ou menos estável fornecida por esse preço e pela quantidade correspondente.<br />
<br />
<br />
<div style="text-align: right;">Extraído de: Tinto, G., Introdução à Economia, 1995.</div><br />
<br />
<br />
# Grave o documento com o nome '''Exercicio1_Writer_Nome_Aluno'''.<br />
# Centralize o título “O Conceito de Mercado” no texto.<br />
# Formate o título como: '''negrito, tamanho 16''', tipo de letra '''Dejavu Sans'''.<br />
# Efetue o '''alinhamento justificado''' do texto.<br />
# Formate o texto com a fonte '''Nimbus Sans L''' e tamanho '''11'''<br />
# '''Alinhe à direita''' a fonte de onde foi extraído o texto (última linha) e coloque o texto em '''itálico'''<br />
# Marque a '''bold''' (negrito) os termos/expressões sublinhados acima<br />
# Anule os sublinhados e mantenha o negrito dos mesmos termos expressões<br />
# Coloque a '''negrito, itálico e sublinhada''' todas as ocorrências das palavras compra e compras.<br />
<br />
<br />
Envie este arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=14/08/2018: Colunas, capitular e hifenização=<br />
<font size="3"><br />
{{Collapse top | Aula 3}}<br />
<br />
===Criando colunas===<br />
<br />
<br />
O Writer permite criar colunas em seus documentos de texto. É possível inserir colunas em um estilo de página ou em um bloco individual de texto, sendo possível ainda formatar o layout da coluna de acordo com suas preferências:<br />
<br />
* Inserir colunas em um estilo de página;<br />
* Inserir colunas a um bloco de texto individual;<br />
* Formatar um layout de coluna;<br />
* Reverter para um layout de coluna simples.<br />
<br />
<br />
====Inserindo colunas em um estilo de página====<br />
<br />
<br />
Para inserir uma coluna em um estilo de página, clique em qualquer lugar da página e escolha Formatar > Colunas... no menu principal. Abre-se a janela Colunas:<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter.jpg]]</div><br />
<br />
<br />
====Inserindo colunas em um bloco de texto====<br />
<br />
<br />
Também é possível inserir colunas em um bloco de texto individual. Isso é útil caso não se queira modificar o estilo da página, ou se você quiser inserir colunas dentro de colunas. Observe que o Writer criará automaticamente uma seção a partir do bloco de texto selecionado. Uma seção é simplesmente um bloco de texto que tem uma formatação especial.<br />
<br />
Para inserir uma coluna em um bloco individual de texto, selecione o texto desejado, escolhendo em seguida Formatar > Colunas... a partir do menu principal. Abre-se a janela Colunas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter2.jpg]]</div><br />
<br />
Se você inserir colunas em um bloco de texto, é possível escolher como você deseja distribuir o texto pela coluna. È possível distribuir o texto de uma ou duas maneiras:<br />
<br />
* Uniformemente. Se você escolher distribuir o texto uniformemente, o Writer preencherá a primeira linha de cada coluna, seguindo para a segunda linha de cada coluna, e assim por diante.<br />
* Estilo Jornal. Se você escolher distribuir o texto em Estilo Jornal, o Writer preencherá as colunas uma por vez, começando pela primeira coluna.<br />
<br />
Para distribuir o texto uniformemente, marque a caixa de seleção Distribuir conteúdo uniformemente em todas todas as colunas na área Configurações. Desmarque esta caixa de seleção se você quiser distribuir o texto no estilo jornal.<br />
<br />
<br />
====Especificando o número de colunas====<br />
<br />
<br />
Se preferir criar um layout de coluna personalizado, você deverá especifcar o número de colunas desejado. Insira o número desejado na caixa Colunas da área Configurações.<br />
<br />
<br />
====Formatando a largura e o espaçamento da coluna====<br />
<br />
<br />
Para criar colunas com espaçamento uniforme com a mesma largura, marque a caixa de seleção AutoLargura na área Largura e espaçamento.<br />
<br />
Para personalizar a largura e o espaçamento das colunas, siga as seguintes etapas:<br />
<br />
* Na área de Largura e espaçamento, desmarque a caixa de seleção AutoLargura.<br />
* Na linha Largura, insira uma largura para cada coluna.<br />
* Na linha Espaçamento, insira o valor de espaçamento desejado entre cada par de coluna.<br />
<br />
Utilize as teclas direcionais na linha Coluna para rolar pelas colunas.<br />
<br />
<br />
====Formatando as linhas separadoras====<br />
<br />
<br />
Para exibir as linhas separadoras entre as colunas, siga as seguintes etapas:<br />
<br />
* A partir da lista suspensa Linha na área Linha separadora, selecione o tipo de linha desejado.<br />
* Por padrão, as linhas separadoras têm o mesmo tamanho das colunas. Caso deseje que as linhas separadoras sejam mais curtas do que a coluna, utilize a caixa Altura para inserir a altura das linhas separadoras como uma porcentagem do tamanho das colunas. Por exemplo, se você inserir 50%, as linhas separadoras terão metade do tamanho das colunas.<br />
* Se você inseriu uma altura menor do que 100%, use a lista suspensa Posição para selecionar um alinhamento vertical para as linhas do separador.<br />
<br />
<br />
====Revertendo o layout de uma coluna simples====<br />
<br />
<br />
Para reverter o layout de uma coluna simples em um estilo de página ou em um bloco de texto:<br />
<br />
* Clique em qualquer local no layout da coluna.<br />
* A partir do menu principal, escolha Formatar > Colunas... A janela Colunas aparece. <br />
* Na área Configurações, clique no layout de coluna simples localizado no lado esquerdo da caixa Colunas . Ou, volte a caixa Colunas para 1.<br />
* Clique em OK. A janela Colunas se fecha e o layout é revertido para uma coluna simples.<br />
<br />
<br />
===Capitulares===<br />
<br />
<br />
Basta somente você deixar o cursor no parágrafo que você deseja a primeira letra capitulada. Vá no meu Parágrafo e escolha a guia Capitulares. Na parte de Configurações, ative a caixa Exibir capitulares. Também pode escolher o número de caracteres, se vai utilizar a palavra inteira, quantidade de linhas a serem utilizadas, espaçamento até o texto e estilo do caractere. Após efetuar as configurações, clique em Ok.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:capitulareswriter.jpg]]</div><br />
<br />
<br />
===Hifenização===<br />
<br />
<br />
Insere hifens nas palavras grandes demais para caber no fim da linha. O LibreOffice procura no documento e sugere uma hifenização que possa ser aceita ou rejeitada. Se o texto estiver selecionado, a caixa de diálogo Hifenização atuará somente no texto selecionado. Se não houver texto selecionado, a caixa de diálogo Hifenização atuará em todo o documento.<br />
<br />
<br />
Agora, para colocar Hifenização, é bem simples, pressione Ctrl + A, para selecionar tudo ou selecione a parte do texto que deseja hifenizar e depois justifique o texto. Logo em seguida, clique em Ferramentas > Idioma > Hifenização. Depois, é só confirmar quais palavras que deseja hifenizar ou clicar em hifenizar tudo e pressione OK.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:hifenizacaowriter.jpg]]</div><br />
<br />
===Exercício===<br />
<br />
<br />
Copie o texto abaixo e posteriormente efetue os ajustes pedidos:<br />
<br />
<br />
----<br />
<br />
<br />
Das Vantagens de Ser Bobo<br />
<br />
<br />
O bobo, por não se ocupar com ambições, tem tempo para ver, ouvir e tocar o mundo. O bobo é capaz de ficar sentado quase sem se mexer por duas horas. Se perguntado por que não faz alguma coisa, responde: "Estou fazendo. Estou pensando." <br />
Ser bobo às vezes oferece um mundo de saída porque os espertos só se lembram de sair por meio da esperteza, e o bobo tem originalidade, espontaneamente lhe vem a idéia. <br />
O bobo tem oportunidade de ver coisas que os espertos não vêem. Os espertos estão sempre tão atentos às espertezas alheias que se descontraem diante dos bobos, e estes os vêem como simples pessoas humanas. O bobo ganha utilidade e sabedoria para viver. O bobo nunca parece ter tido vez. No entanto, muitas vezes, o bobo é um Dostoievski. <br />
Há desvantagem, obviamente. Uma boba, por exemplo, confiou na palavra de um desconhecido para a compra de um ar refrigerado de segunda mão: ele disse que o aparelho era novo, praticamente sem uso porque se mudara para a Gávea onde é fresco. Vai a boba e compra o aparelho sem vê-lo sequer. Resultado: não funciona. Chamado um técnico, a opinião deste era de que o aparelho estava tão estragado que o conserto seria caríssimo: mais valia comprar outro. Mas, em contrapartida, a vantagem de ser bobo é ter boa-fé, não desconfiar, e portanto estar tranqüilo. Enquanto o esperto não dorme à noite com medo de ser ludibriado. O esperto vence com úlcera no estômago. O bobo não percebe que venceu. <br />
Aviso: não confundir bobos com burros. Desvantagem: pode receber uma punhalada de quem menos espera. É uma das tristezas que o bobo não prevê. César terminou dizendo a célebre frase: "Até tu, Brutus?" <br />
Bobo não reclama. Em compensação, como exclama! <br />
Os bobos, com todas as suas palhaçadas, devem estar todos no céu. Se Cristo tivesse sido esperto não teria morrido na cruz. <br />
O bobo é sempre tão simpático que há espertos que se fazem passar por bobos. Ser bobo é uma criatividade e, como toda criação, é difícil. Por isso é que os espertos não conseguem passar por bobos. Os espertos ganham dos outros. Em compensação os bobos ganham a vida. Bem-aventurados os bobos porque sabem sem que ninguém desconfie. Aliás não se importam que saibam que eles sabem. <br />
Há lugares que facilitam mais as pessoas serem bobas (não confundir bobo com burro, com tolo, com fútil). Minas Gerais, por exemplo, facilita ser bobo. Ah, quantos perdem por não nascer em Minas! <br />
Bobo é Chagall, que põe vaca no espaço, voando por cima das casas. É quase impossível evitar excesso de amor que o bobo provoca. É que só o bobo é capaz de excesso de amor. E só o amor faz o bobo.<br />
<br />
<br />
Clarice Lispector<br />
<br />
<br />
----<br />
<br />
<br />
* Formate o título do texto com fonte '''Loma''', tamanho '''14''', alinhamento '''centralizado''', e '''negrito'''.<br />
* selecione o texto (sem selecionar o título e nem a fonte do texto) e aplique o alinhamento '''justificado''', fonte '''Dejavu Sans''', tamanho '''12'''.<br />
* Ainda com o texto selecionado, vá em '''Formatar > Colunas''', selecione 2 colunas, espaçamento de '''0,50 cm''', estilo '''linha contínua'''.<br />
* No texto selecionado aplique a hifenização em todas as palavras.<br />
* Insira a opção Capitulares, com tamanho de 3 linhas no início do texto.<br />
* Alinhe a última linha (fonte do texto) a '''direita''', '''itálico''', fonte '''Droid Sans''' e tamanho '''10'''.<br />
<br />
<br />
O texto deve ficar neste formato:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:texto2writer.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/08/2018: Aula suspensa=<br />
<font size="3"><br />
{{Collapse top | Aula 4}}<br />
<br />
Aula suspensa devido a paralização dos técnicos administrativos.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=28/08/2018: Formatações e funções úteis no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 5}}<br />
<br />
===Comando Localizar e Substituir===<br />
<br />
Para se localizar palavras em um texto qualquer, basta que você acesse o menu '''Editar, Localizar''' ou por meio do atalho '''Ctrl + F'''. Logo será aberto, no canto inferior esquerdo do aplicativo, um campo para digitação da palavra a ser procurada.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarwriter.jpg]]</div><br />
<br />
<br />
O recurso para “localizar e substituir” também é muito importante pois nos auxilia a corrigir erros espalhados pelo texto ou mesmo a mudança de uma palavra por outra de mesmo significado. Para usarmos o recurso de “localizar e substituir” basta acessarmos o menu '''Editar, Localizar e substituir''' ou diretamente pelo atalho '''Ctrl + H'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarsubstituirwriter.jpg]]</div><br />
<br />
<br />
===Marcadores e numeração===<br />
<br />
Esse comando é utilizado para inserir no texto, marcadores e/ou numeração, como o próprio título desde tópico diz.<br />
O comando para colocar marcadores ou mudar os marcadores já adicionados em um texto, pode ser acionado por meio do menu '''Formatar, Marcadores e numerações'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumerwriter.jpg]]</div><br />
<br />
<br />
Nas duas primeiras abas definimos o tipo de marcador que queremos usar em nosso texto. <br />
<br />
Passando para a terceira aba “Estrutura de tópicos” definiremos como ficará a estrutura de tópicos que estamos criando em nosso texto. Mais uma vez, teremos 8 opções para escolha.<br />
<br />
Podemos utilizar também, ao invés dos marcadores tradicionais, figuras no lugar dos números ou símbolos. Estes estão disponíveis na aba “Figuras”.<br />
<br />
Nas próximas abas temos a parte de configuração dos marcadores. A aba “Posição” nos proporciona a possibilidade de definirmos as distâncias, em relação a margem, de todos os dez níveis de marcadores que podem existir no nosso documento.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer2writer.jpg]]</div><br />
<br />
<br />
Já a aba “Opções” nos permite, também por nível, definir:<br />
<br />
* O tipo de “Numeração” (algarismos arábicos, romanos, gregos e etc.),<br />
* Definir o que virá “Antes” do marcador e “Depois” também (veja que no campo “Depois” existe um “.” e é exatamente este ponto que está sendo mostrado do lado direito do “1” mostrado no quatro ao lado do campo, nos diversos níveis),<br />
* Definir o “Estilo de caractere” que será usado,<br />
* “Mostrar subníveis” em cada marcador e<br />
* Colocar um determinado marcador para “Iniciar em”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer3writer.jpg]]</div><br />
<br />
<br />
===Ferramenta Pincel===<br />
<br />
<br />
Esse comando copia toda a formatação de um objeto ou texto e aplica ao objeto que será clicado ou marcado a seguir. O Pincel não se encontra em um item de menu específico, porém, possui um botão na barra de ferramentas padrão, conforme Figura a seguir.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:pincelwriter.jpg]]</div><br />
<br />
<br />
Como utilizar o Pincel:<br />
<br />
* Primeiro clique na palavra ou objeto que você deseja copiar os formatos nele aplicados (por exemplo tipo da fonte, tamanho e etc.);<br />
* Em seguida, clique na palavra a qual você deseja que possua os mesmos formatos da palavra anterior (a que você copiou os formatos).<br />
<br />
===Recuos e espaçamentos===<br />
<br />
Este recurso permite alterar a posição inicial, final e primeira linha do texto.<br />
<br />
Escolha a guia Formatar - Parágrafo - Recuos e espaçamento<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:recuoespacamentowriter.jpg]]</div><br />
<br />
<br />
A opção '''Antes do texto''' permite indicar onde o texto irá iniciar.<br />
<br />
A opção '''Depois do texto''' indica onde ele irá terminar.<br />
<br />
Já a opção '''Primeira linha''' indica onde a primeira linha do parágrafo irá iniciar.<br />
<br />
As opções '''Acima do parágrafo''' e '''Abaixo do parágrafo''' indicam o espaçamento entre as linhas antes e depois de um parágrafo, respectivamente.<br />
<br />
A opção '''Entre linhas''' define o espaço entre cada linha do texto.<br />
<br />
<br />
===Exercício===<br />
<br />
<br />
Digite o texto abaixo. <br />
Vá na opção f'''ormatar parágrafo, Recuos e espaçamentos''', deixe todas as opções de medidas com valor '''0 cm''' e '''espaçamento de linha simples'''.<br />
<br />
O título da receita deve estar em '''fonte Free Sans, tamanho 14, negrito e centralizado'''.<br />
<br />
O subtítulo '''Ingredientes''' deve estar com '''fonte Loma, tamanho 12, itálico e alinhamento a esquerda'''. <br />
<br />
Aplique a formatação do subtítulo '''Ingredientes''' no subtítulo '''Modo de preparo''' usando a ferramenta '''pincel'''.<br />
<br />
Use a ferramenta '''Localizar e substituir''' para trocar as palavras '''kg''' por '''quilos''' e '''2 dl''' por '''200 ml'''.<br />
<br />
Insira marcadores de círculos grandes nos ingredientes, com '''deslocamento de primeira linha em 1,25 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Insira numeração com pontos no modo de preparo, com ''' Antes do texto em 2 cm, deslocamento de primeira linha em - 0,75 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Envie o arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''<br />
<br />
<br />
<br />
'''Receita: Bacalhau a beira-alta'''<br />
<br />
<br />
''Ingredientes:'' <br />
<br />
<br />
6 postas de bacalhau;<br />
<br />
1 molho de couves galegas com os talos;<br />
<br />
1,5 kg de batatas;<br />
<br />
Pão de trigo duro;<br />
<br />
4 dentes de alho picados;<br />
<br />
2 dl de azeite.<br />
<br />
<br />
''Modo de preparo''<br />
<br />
<br />
Coza o bacalhau e, à parte, coza também as batatas e as couves.<br />
<br />
Corte o pão em fatias e coloque numa travessa funda. Por cima, deite a água de cozer o bacalhau em quantidade suficiente para ensopar o pão.<br />
<br />
Regue ainda com metade do azeite e polvilhe com metade dos alhos. Disponha o bacalhau, as batatas as couves por cima.<br />
<br />
Cubra com o restante azeite e os alhos picados. Sacuda a travessa e está pronto a servir. <br />
<br />
<br />
Como o texto deve ficar ao final do exercício:<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exercicio3writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=04/09/2018: Tabelas, Cabeçalho, Rodapé e Campos no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 6}}<br />
<br />
===Tabelas===<br />
<br />
Sabemos que uma tabela nada mais é do que um conjunto de dados disponibilizados em uma grade. Onde esta possui diversas linhas e colunas.<br />
<br />
Para criar uma tabela no Writer basta acessarmos o menu Tabela, Inserir, Tabela, pelo atalho Ctrl + F12 ou ainda pelo botão disponibilizado na barra de Ferramentas Padrão. Ao acessar uma das opções acima, será mostrada a tela de configuração da tabela.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabelawriter.jpg]]</div><br />
<br />
<br />
Na Figura acima podemos ver claramente que há a possibilidade de darmos um nome para a tabela por meio do campo “Nome” e de determinarmos quantas linhas e colunas nossa tabela terá, por meio dos campos “Colunas” e “Linhas”.<br />
<br />
Logo a seguir, abaixo do campo “Linhas” podemos ver um campo “Título”, onde se o marcarmos, nossa tabela terá N linhas com formatação de título (e. g. Negrito). A quantidade de linhas será definida no campo “As primeiras ... linhas”.<br />
<br />
O Campo “Borda” indica a existência ou não de uma linha separando cada célula que comporá a tabela criada.<br />
<br />
O botão “Autoformatar...” nos dá a possibilidade de darmos uma formatação para a tabela que será criada (e. g. Cores, fonte, bordas, alinhamento e etc).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela2writer.jpg]]</div><br />
<br />
<br />
Após a criação da tabela, podemos alterar suas propriedades ou parte dela, selecionando a parte que queremos alterar e indo até o menu Tabela, Propriedades da tabela. <br />
<br />
Nesta janela podemos alterar O nome, espaçamento, tamanho de coluna e linha, estilos de borda e cores de fundo.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela3writer.jpg]]</div><br />
<br />
<br />
===Cabeçalho===<br />
<br />
<br />
Para colocar um cabeçalho em um documento basta acessarmos o menu Inserir, Cabeçalho, Padrão. Então abrir-se-á uma área para digitação do texto do cabeçalho.<br />
<br />
Você poderá digitar o texto do cabeçalho em qualquer página do documento, que este será automaticamente replicado para as demais páginas existentes.<br />
<br />
Você poderá ainda, aplicar formatação ao cabeçalho, incluir borda e plano de fundo e também excluir o cabeçalho por meio da aba azul “Cabeçalho (Padrão)”. Para isto, basta clicar na setinha apontada para baixo existente na aba que as opções surgirão na forma de um menu pop-up.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:cabecalhowriter.jpg]]</div><br />
<br />
<br />
===Rodapé===<br />
<br />
<br />
ara inserir um rodapé, o procedimento é idêntico ao do cabeçalho, porém deve-se acessar o menu Inserir, Rodapé, Padrão]. Abrir-se-á uma área para digitação do texto do rodapé. Nesta área, pode-se colocar o que for necessário. No entanto, o mais comum de ser colocado nos rodapés de documentos são: número da página, data/hora da impressão, autor, quantidade total de páginas existentes no documento, dentre outros.<br />
<br />
Você poderá ainda, da mesma forma que no cabeçalho, aplicar formatação ao rodapé, incluir borda, plano de fundo e também o excluir. Tudo isto poderá ser realizado por meio da aba azul “Rodapé (Padrão)”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:rodapewriter.jpg]]</div><br />
<br />
<br />
===Campos===<br />
<br />
<br />
Este é mais um recurso muito útil existente no LibreOffice. Com ele você poderá fazer seu documento mostrar informações automaticamente e sem muito esforço, disponibilizado no menu Inserir, Campos.<br />
<br />
Os campos preexistentes no LibreOffice. são:<br />
<br />
* Data: coloca a data atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Hora: coloca a hora atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Número da página: exibe o número da página atual;<br />
* Total de páginas: exibe a quantidade de páginas existentes no documento;<br />
* Assunto: mostra o que foi registrado no campo “Assunto”, descrito nas “Propriedades” do documento;<br />
* Título: mostra o que foi registrado no campo “Título”, descrito nas “Propriedades” do documento;<br />
* Autor: mostra o primeiro e último nome listados em “Dados do Usuário” do LibreOffice no menu Ferramentas, Opções;<br />
* Outros: [Ctrl + F2] que dá a possibilidade de escolha de diversos campos, com diversas informações sobre o documento. Estes outros campos poderão ser escolhidos na tela “Campos” em suas diversas abas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:camposwriter.jpg]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
Crie uma tabela no documento em branco com os dados da imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabelawriter.jpg]]</div><br />
<br />
<br />
Formate a tabela com as seguintes configurações:<br />
<br />
<br />
* Linha de título mesclada, fonte Rekha, tamanho 14, cor vermelha, negrito e centralizado;<br />
* Linha de subtítulo com fonte Loma, tamanho 12, itálico e centralizado;<br />
* Demais linhas com fonte Garuda, tamanho 12 alinhamento justificado;<br />
* Insira cor de fundo de acordo com a imagem acima.<br />
<br />
No cabeçalho, insira o texto Proeja - Informática básica II em fonte Liberation Serif, tamanho 12 e negrito.<br />
<br />
No rodapé insira o número da página alinhado a direita.<br />
<br />
Ao final, o documento deve ter essa aparência:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabela2writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=11/09/2018: Corretor ortográfico, impressão e Figuras=<br />
<font size="3"><br />
{{Collapse top | Aula 7}}<br />
<br />
===Corretor ortográfico===<br />
<br />
Você pode verificar a ortografia de uma seleção de texto ou do documento por inteiro manualmente.<br />
<br />
A verificação ortográfica começa na posição atual do cursor ou no início da seleção de texto.<br />
<br />
Clique no documento ou selecione o texto que deseja verificar. Escolha Ferramentas - Ortografia e gramática.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretorwriter.jpg]]</div><br />
<br />
<br />
Sempre que é encontrado um erro de ortografia, surge a caixa de diálogo Verificação ortográfica e o LibreOffice oferece algumas sugestões de correção.<br />
Adote um dos seguintes procedimentos:<br />
<br />
Para aceitar a correção, clique na sugestão e, em seguida, em Corrigir.<br />
<br />
Edite a frase na caixa de texto superior e, em seguida, clique em Corrigir.<br />
<br />
Para adicionar a palavra desconhecida ao dicionário definido pelo usuário, clique em Adicionar ao dicionário.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretor2writer.jpg]]</div><br />
<br />
<br />
===Impressão===<br />
<br />
<br />
Para imprimir documentos no Libreoffice Writer, podemos clicar diretamente no botão imprimir ou ir no menu Arquivo, imprimir:<br />
<br />
Na janela que se abre, podemos escolher diversas configurações adicionais.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:imprimir2writer.jpg]]</div><br />
<br />
<br />
Na aba Geral, podemos escolher a impressora, quantidade de cópias, se serão agrupadas, quais páginas serão impressas (todas, somente uma ou uma parte).<br />
<br />
Na aba Libreoffice Writer podemos escolher se o plano de fundo será impresso, as figuras e objetos, texto oculto, cor do texto e páginas em branco.<br />
<br />
Em Layout escolhemos a quantidade de páginas por folha, a ordem e lados da página.<br />
<br />
E na aba Opções escolhemos se irá para uma impressora física ou um arquivo, agrupamento, bandejas definidas na impressora e tamanho definido na impressora.<br />
<br />
<br />
===Visualizar impressão===<br />
<br />
Antes de imprimir algum trabalho, convém observar como ficará o layout no papel, para evitar alguns acidentes, tais como quebras de páginas em locais indesejados, ajustes de parágrafos, entre outros. Para tanto, o auxílio da função Visualizar Impressão é fundamental.<br />
<br />
Acesse o menu Arquivo > Visualização de Página, no ícone na barra de ferramentas ou através do atalho Ctrl + Shift + O.<br />
<br />
Na tela aparecerá uma projeção exata de como ficará a impressão. Serão apresentadas algumas ferramentas, se quisermos analisar com mais detalhes:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:visualizarimpressaowriter.jpg]]</div><br />
<br />
<br />
'''Uma página<br/>'''<br />
Mostra uma página na janela de visualização.<br />
<br />
<br />
'''Duas páginas<br/>'''<br />
Mostra duas páginas na janela de visualização. As páginas ímpares aparecerão no lado direito e as páginas pares no lado esquerdo.<br />
<br />
<br />
'''Visualização de livro<br/>'''<br />
Selecione esta opção para ver a primeira página no lado direito da visualização. Se não a selecionar, a primeira página é mostrada no lado esquerdo da visualização.<br />
<br />
<br />
'''Várias páginas<br/>'''<br />
Define o número de páginas exibidas na tela. Clique na seta ao lado do ícone para abrir uma grade e selecionar o número de páginas a serem exibidas como linhas e colunas na visualização.<br />
<br />
<br />
'''Para o início do documento<br/>'''<br />
Vai para a primeira página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Página anterior<br/>'''<br />
Vai para a página anterior do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Próxima página<br/>'''<br />
Vai para a próxima página do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Para o fim do documento<br/>'''<br />
Vai para a última página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Menos zoom<br/>'''<br />
Diminui o zoom para ver mais do documento em um tamanho reduzido.<br />
<br />
<br />
'''Zoom de visualização<br/>'''<br />
Determina o nível de zoom da visualização de impressão.<br />
<br />
<br />
'''Mais zoom<br/>'''<br />
Aumenta o zoom para obter um close do documento.<br />
<br />
<br />
'''Imprimir<br/>'''<br />
Imprime o documento.<br />
<br />
<br />
'''Tela inteira<br/>'''<br />
Exibe ou oculta os menus e as barras de ferramentas no Writer ou no Calc. Para sair do modo de tela inteira, clique no botão Tela inteira ou pressione a tecla Esc.<br />
<br />
<br />
'''Fechar visualização<br/>'''<br />
Fecha a visualização e volta na edição do documento.<br />
<br />
<br />
===Figuras===<br />
<br />
<br />
A inserção de figura em um texto e sua manipulação é simples no Writer.<br />
<br />
Vamos passo a passo mostrar como se dá essa inserção. <br />
<br />
Primeiro abra o documento em que deseja inserir a figura e posicione o cursor no local desejado que ela apareça. Depois escolha Inserir - Figura. Localize o arquivo gráfico que você deseja inserir e, em seguida, clique em Abrir. <br />
<br />
Por padrão, a figura inserida é centralizada acima do parágrafo no qual você clicou. <br />
<br />
<br />
Veja que é criada uma barra de ferramenta flutuante chamada figura. Nela você modifica os aspectos de cor e padrão da figura e também inverte vertical ou horizontalmente a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figurawriter.jpg]]</div><br />
<br />
<br />
Quando é inserida uma figura a barra de ferramenta quadro é mostrada para configurar com mais facilidade a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura2writer.jpg]]</div><br />
<br />
<br />
Também temos a opção de formatar figura. Para isso, selecione a figura e vá no menu Formatar - Figura.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura3writer.jpg]]</div><br />
<br />
<br />
Nesta janela teremos várias opções de configuração, tais como ajuste de tamanho, ajuste no texto, posicionamento. hiperlink, recorte, bordas, transparência, etc.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=18/09/2018: Palestra Reflexos da reforma trabalhista para a classe trabalhadora=<br />
<font size="3"><br />
{{Collapse top | Aula 8}}<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=25/09/2018: Introdução ao Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 9}}<br />
<br />
===Libreoffice Calc===<br />
<br />
Calc é um software de planilha eletrônica multiplataforma de código aberto, desenvolvido originalmente pela Star Division, posteriormente pela Sun Microsystems (como parte da suíte StarOffice) e atualmente pela The Document Foundation, como parte da suíte LibreOffice. Também é distribuído gratuitamente com as suítes OpenOffice.org e NeoOffice.<br />
<br />
Nessa planilha, o número limite de linhas é de pouco mais de 1 milhão por planilha e o número limite de colunas é de 1024 por planilha.<br />
<br />
Na imagem abaixo podemos conhecer um pouco melhor a interface do Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interfacecalc.jpg]]</div><br />
<br />
<br />
As células do Calc possuem endereçamento, onde as colunas são definidas por letras e as linhas por números. Para identificar o endereço da célula, basta indicar primeiramente o endereçamento da coluna e depois da linha. Ex: '''A1'''.<br />
<br />
<br />
====Operadores====<br />
<br />
<br />
Devemos conhecer alguns símbolos que são muito utilizados, juntamente com a ordem dos cálculos efetuados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface2calc.jpg]]</div><br />
<br />
<br />
====Realce de valor====<br />
<br />
<br />
A função Realce de valor destaca os conteúdos das células através da diferenciação da cor da fonte. Para acioná-la, vá até o menu Exibir > Realce de valor ou clique na combinação de teclas Ctrl+F8.<br />
<br />
Textos são apresentados em preto, números em azul e fórmulas em verde. Essa configuração de cores é padrão para qualquer instalação do LibreOffice. Na figura abaixo, é possível identificar as três categorias. No exemplo, o conteúdo da célula B30 é a fórmula =1+1. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface3calc.jpg]]</div><br />
<br />
<br />
====Séries de preenchimento====<br />
<br />
<br />
Uma Série de preenchimento é uma forma fácil de fazer um preenchimento automático em uma área da planilha a partir de um valor inicial.<br />
<br />
Inicialmente, digite o valor inicial em uma célula. Com a célula selecionada, coloque o ponteiro do mouse sobre o ponto preto no canto inferior direito, chamado Alça de preenchimento, até que este se transforme em uma pequena cruz.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface4calc.jpg]]</div><br />
<br />
<br />
Arraste com o botão do mouse pressionado até a última célula da sequência desejada, como no passo 1 apresentado na tabela abaixo. Solte o botão do mouse e a área selecionada será preenchida com a sequência numérica correspondente (passo 2).<br />
<br />
Se a direção da sua seleção for horizontal para a esquerda ou vertical para cima, o Calc fará o preenchimento com decremento 1. Se a direção da sua seleção for horizontal para a direita ou vertical para baixo, o Calc fará o preenchimento com incremento 1.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface5calc.jpg]]</div><br />
<br />
<br />
Se você desejar criar uma sequência de preenchimento sem incremento algum, faça o mesmo procedimento, no entanto, ao clicar e arrastar com a alça de preenchimento, mantenha a tecla Ctrl pressionada.<br />
<br />
====Formatar Células====<br />
<br />
<br />
Permite que você especifique diversas opções de formatação e aplique atributos às células selecionadas.<br />
<br />
Escolha Formatar - Células<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:formatcelcalc.jpg]]</div><br />
<br />
<br />
Números<br />
Especifica as opções de formatação para a(s) célula(s) selecionada(s).<br />
<br />
<br />
Fonte<br />
Especifique a formatação e a fonte que deseja aplicar.<br />
<br />
<br />
Alinhamento<br />
Define ao opções de alinhamento para o conteúdo da célula atual, ou das células selecionadas.<br />
<br />
<br />
Bordas<br />
Define opções de borda para os objetos selecionados em Writer ou Calc.<br />
<br />
<br />
Plano de fundo<br />
Define a cor ou a figura do plano de fundo.<br />
<br />
<br />
Proteção de célula<br />
Define as opções de proteção para as células selecionadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=02/10/2018: Fórmulas simples Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 10}}<br />
<br />
===Funções===<br />
<br />
Funções são procedimentos baseados em operações e operandos que, manipulados, retornam um determinado resultado. Funções podem simplesmente representar a implementação de operadores, como a função Soma, que veremos adiante, ou, de forma mais complexa, realizar cálculos de nível avançado.<br />
<br />
<br />
Para inserir uma função através do assistente, siga os seguintes passos:<br />
<br />
Selecione a célula onde será inserida a função;<br />
<br />
Selecione uma das opções abaixo:<br />
<br />
* vá até o menu Inserir > Função ou<br />
* teclar Ctrl + F2 ou<br />
* clique sobre o botão Assistente de funções, na Barra de fórmulas.<br />
<br />
Será aberta a tela do Assistente de funções. Selecione, então, uma categoria de função na caixa Categoria;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalc.jpg]]</div><br />
<br />
<br />
Selecione o nome da função e clique no botão Próximo;<br />
<br />
Preencha os argumentos solicitados para a função;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcao2calc.jpg]]</div><br />
<br />
<br />
Clique OK. A fórmula será inserida na célula e o resultado será contabilizado.<br />
<br />
A função também pode ser digitada. Para isto, basta iniciar coma digitação do símbolo de = e posteriormente digitar o nome da fórmula desejada, juntamente com seu parâmetros.<br />
<br />
<br />
====Funções simples====<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaosomacalc.jpg]]</div><br />
<br />
<br />
No exemplo acima, a função é SOMA, o argumento é B2:B6 (leia-se de B2 até B6) e o resultado ( a soma dos valores) é 20. <br />
<br />
Como digitar<br />
<br />
Se as células são adjacentes: =SOMA(C2:C8) <br />
<br />
Essa função soma o conteúdo de células adjacentes (sequência C2 até C8)<br />
<br />
Se as células não são adjacentes: =SOMA(B2;C3;D1).<br />
<br />
A função Média calcula o valor médio de um intervalo, adjacente ou não.<br />
<br />
=MEDIA(C2:C8)<br />
<br />
A função Mínimo retorna o menor valor de um intervalo analisado<br />
<br />
=MINIMO(C2:C8)<br />
<br />
A função Máximo retorna o maior valor de um intervalo analisado<br />
<br />
=MAXIMO(C2:C8)<br />
<br />
A função Mediana de um intervalo é o seu valor central, ou seja, que divide o intervalo em duas partes iguais<br />
<br />
=MED(C2:C8)<br />
<br />
A função Moda retorna o valor que mais se repete em um intervalo. Caso dois números ou mais tenham a mesma quantidade de repetições, o menor valor será mostrado.<br />
<br />
=MODO(C2:C8)<br />
<br />
A função Concatenar agrupa valores indicados. Esta função aceita somente ;<br />
<br />
=CONCATENAR(C2;C5;C8)<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=09/10/2018: Fórmulas Compostas Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 11}}<br />
<br />
===Funções Lógicas===<br />
<br />
<br />
'''SE'''<br />
<br />
<br />
Esta é uma função bastante interessante pois permite ao usuário da planilha construir expressões condicionais, avaliando e apresentando diferentes resultados conforme uma cláusula avaliada.<br />
<br />
A estrutura da função SE é:<br />
<br />
=SE (CONDIÇÃO; VALOR_SE_CONDIÇÃO_VERDADEIRA; VALOR_SE_CONDIÇÃO_FALSA)<br />
<br />
O primeiro argumento é a condição. Normalmente, avaliamos o conteúdo de uma célula em relação a um dado parâmetro, como, por exemplo C4<100 ou A1=”APROVADO”.<br />
<br />
Caso a condição seja verdadeira, o segundo argumento é apresentado como resultado da função.<br />
<br />
Caso a condição seja falsa, o terceiro argumento é apresentado como resultado.<br />
<br />
No exemplo abaixo, avaliamos o valor da nota do aluno e, caso esteja acima da média, apresentamos o resultado “Aprovado”. Senão, apresentamos o resultado “Recuperação”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcse.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.NUM'''<br />
<br />
<br />
<br />
A função CONT.NÚM conta quantos valores numéricos estão entre os ARGUMENTOS da função.<br />
<br />
Entende-se como valores numéricos: números, datas e fórmulas cujo resultado seja um número. Células vazias ou células com conteúdo de texto não são contadas na função CONT.NÚM.<br />
<br />
O formato da função é:<br />
<br />
=CONT.NÚM(ARGUMENTOS)<br />
<br />
Observe no exemplo abaixo que nem todos os alunos fizeram a primeira avaliação. Podemos usar a função CONT.NÚM para contar as notas do intervalo B11:B19 e identificar quantos alunos de fato fizeram a prova.<br />
<br />
O resultado da função =CONT.NÚM(B11:B19) será 7 pois, as duas células, correspondentes aos alunos que não fizeram a prova, estão vazias.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontnum.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.SE'''<br />
<br />
<br />
<br />
A função CONT.SE tem como objetivo contar quantos valores obedecem a um determinado critério. A estrutura é bastante simples:<br />
<br />
=CONT.SE (INTERVALO; CONDIÇÃO)<br />
<br />
Os valores dentro do intervalo são avaliados um a um de acordo com a condição. O valor é contado somente se a condição for verdadeira.<br />
<br />
No exemplo abaixo, contamos quantos alunos estão com notas acima da média estabelecida.<br />
<br />
Note que usamos uma concatenação de texto para expressar adequadamente o critério, indicado no segundo argumento com a expressão “>”&B6. Ou seja, concatenamos o sinal de > com o conteúdo da célula B5.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse.jpg]]</div><br />
<br />
<br />
O resultado da função CONT.SE acima é de 7 alunos.<br />
<br />
Quando o critério ou condição for de igualdade, não precisamos usar a concatenação de texto, por exemplo:<br />
<br />
=CONT.SE(B10:B18;B6)<br />
<br />
Em sua construção mais comum, a função CONT.SE permite apenas um argumento como critério de contagem. No entanto, em casos específicos, é possível utilizar mais de um argumento através do uso de expressões regulares em fórmulas.<br />
<br />
O exemplo abaixo ilustra essa situação. A partir da tabela abaixo, desejamos obter a quantidade de cadastros de pessoas que são dos estados do Rio Grande do Sul e Santa Catarina.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse2.jpg]]</div><br />
<br />
<br />
Uma abordagem óbvia e simples seria a soma de CONT.SE:<br />
<br />
=CONT.SE(F3:F8;"RS")+CONT.SE(F3:F8;"SC")<br />
<br />
Uma abordagem elegante poderia utilizar expressões regulares:<br />
<br />
=CONT.SE(F3:F8;"RS|SC")<br />
<br />
Onde o símbolo | (pipe) entre as siglas RS e SC representa a operação OU lógica. Logo, estamos contando apenas os valores do intervalo de F3 até F8 que são iguais a RS ou a SC.<br />
<br />
<br />
'''CONT.VALORES'''<br />
<br />
<br />
A função CONT.VALORES permite contar células preenchidas com valores de texto, número ou fórmula dentro de um intervalo.<br />
<br />
O formato da função CONT.VALORES é:<br />
<br />
=CONT.VALORES(ARGUMENTOS)<br />
<br />
No exemplo abaixo, o usuário deverá preencher o espaço amarelo com cinco códigos de produto.<br />
<br />
Para contar quantas células já foram preenchidas, utilizamos a função CONT.VALORES e o intervalo de G5:G9.<br />
<br />
O resultado da função, no exemplo abaixo, será 3.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvalores.jpg]]</div><br />
<br />
<br />
<br />
'''CONTAR.VAZIO'''<br />
<br />
<br />
CONTAR.VAZIO conta quantas células do intervalo indicado em ARGUMENTOS estão vazias, isto é, sem conteúdo algum.<br />
<br />
=CONTAR.VAZIO(ARGUMENTOS)<br />
<br />
No nosso exemplo anterior, da função CONT.VALORES, calculamos quantas células do intervalo amarelo já haviam sido preenchidas. Podemos encontrar a informação complementar (quantas células faltam ser preenchidas) através da função CONTAR.VAZIO.<br />
<br />
No exemplo, a função CONTAR.VAZIO pode ser utilizada sobre o intervalo de G5:G9. O resultado da função na célula H15 será de 2.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvazio.jpg]]</div><br />
<br />
<br />
<br />
'''SOMASE'''<br />
<br />
<br />
A função SOMASE é útil para cálculos que envolvam valores totais a partir de um determinado critério. O formato da função é:<br />
<br />
=SOMASE(INTERVALO_DE_AVALIAÇÃO; CRITÉRIO; INTERVALO_DE_SOMA)<br />
<br />
Os valores do intervalo de avaliação são avaliados conforme o critério. Caso estejam de acordo com o critério indicado, o valor correspondente no intervalo de soma é somado ao resultado.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcsomase.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=23/10/2018: Avaliação=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
* Copie o conteúdo abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:avaliacaocalc.jpg]]</div><br />
<br />
<br />
* Efetue os cálculos solicitados (Total dos produtos por trimestre, Valor máximo, Valor mínimo, Média e Total por mês).<br />
<br />
* Salve o arquivo com o seu nome e envia para o seguinte e-mail:<br />
<br />
ederson.luiz@ifsc.edu.br<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=06/11/2018: Vínculo entre planilhas, Gráficos, Classificação e Filtros=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
===Classificação===<br />
<br />
<br />
No Libreoffice Calc, podemos efetuar a classificação de conteúdos, em ordem alfabética, de forma crescente ou decrescente.<br />
<br />
Para tanto, devemos clicar em um intervalo de banco de dados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc.jpg]]</div><br />
<br />
<br />
Ao selecionar um intervalo de células, somente estas células serão classificadas. <br />
<br />
Se você clicar somente em uma célula sem selecionar, então todo o intervalo de banco de dados será classificado.<br />
<br />
Escolha Dados - Classificar.<br />
<br />
O intervalo de células que será classificado é mostrado em cores invertidas.<br />
<br />
Selecione as opções de classificação desejadas.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc2.jpg]]</div><br />
<br />
Clique em OK.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc3.jpg]]</div><br />
<br />
<br />
===Filtro===<br />
<br />
<br />
Os filtros e filtros avançados permitem que você assegure que somente certas linhas (registros) de um intervalo de dados fiquem visíveis. Nos documentos de planilhas do LibreOffice, há várias possibilidades para a aplicação de filtros.<br />
<br />
Uma das utilizações para a função Autofiltro, que se encontra em Dados, Filtro, Autofiltro, é a de rapidamente restringir a exibição de registros com entradas idênticas em um campo de dados.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:autofiltrocalc.jpg|900px]]</div><br />
<br />
<br />
Na caixa de diálogo Filtro padrão, você também pode definir intervalos que contenham os valores em determinados campos de dados. É possível utilizar o filtro padrão para conectar até três condições com um operador lógico E ou OU.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtropadraocalc.jpg]]</div><br />
<br />
<br />
O Filtro avançado excede a restrição de três condições e permite até oito condições de filtro. Com os filtros avançados, você insere as condições diretamente na planilha.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtroavancadocalc.jpg]]</div><br />
<br />
<br />
Para remover um filtro, de forma a ver todas as células, clique dentro da área onde o filtro estiver aplicado e escolha Dados - Filtro - Redefinir filtro.<br />
<br />
Ao selecionar várias linhas de uma área onde um filtro foi aplicado, a seleção pode incluir linhas visíveis e linhas ocultas pelo filtro. Se depois você aplicar formatação, ou excluir as linhas selecionadas, esta ação só afetará as linhas visíveis. As linhas ocultas não serão afetadas.<br />
<br />
Isto é o oposto das linhas que foram ocultas manualmente pelo comando Formatar - Linhas - Ocultar linhas. Linhas ocultas manualmente são excluídas ao excluir uma seleção que as contenha.<br />
<br />
<br />
===Vínculo entre planilhas===<br />
<br />
Podemos utilizar conteúdos que se encontram em outras planilhas do documento.<br />
<br />
Para que isso ocorra, devemos utilizar como no exemplo abaixo:<br />
<br />
=Planilha2.A1<br />
<br />
Neste caso, o conteúdo da Planilha2, célula A1 será exibido onde esta fórmula for empregada.<br />
<br />
<br />
===Gráficos===<br />
<br />
<br />
No Calc, é fácil gerar gráficos a partir de qualquer planilha. <br />
<br />
Pode-se chamar o assistente de gráficos a partir do seu ícone ou do menu Inserir ... gráfico.<br />
<br />
Os gráficos no Calc estão muito fáceis e muito intuitivos e prometem-se ainda muitas melhorias para este recurso. <br />
<br />
Ao se invocar o comando Inserir Gráfico, tem-se uma tela como a seguir (previsão do gráfico e seu assistente):<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc.jpg]]</div><br />
<br />
<br />
Logo na Etapa 1 você terá vários tipos e subtipos de gráficos a escolher: barras, pizza, rede, dispersão, etc.<br />
<br />
Etapa 2 – Intervalo de Dados – aqui se informa ao Calc a área a ser computada e plotada.<br />
<br />
Etapa 3 – Série de Dados – Aqui se definem nomes e rótulos para as séries dos dados.<br />
<br />
Etapa 4 – É nesta etapa que se fazem as legendas do gráfico.<br />
<br />
A seguir, vemos um gráfico de Pizza gerado no LibreOffice Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc2.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=13/11/2018: Introdução ao Libreoffice Impress=<br />
<font size="3"><br />
{{Collapse top | Aula 13}}<br />
<br />
===Tela Principal===<br />
<br />
O Impress é software para desenvolvimento de apresentações. Por meio deste software pode-se preparar as apresentações textuais, adicionar imagens, sons e até mesmo animação.<br />
<br />
<div style="text-align: left;">[[Arquivo:impressprincipal.jpg]]</div><br />
<br />
<br />
===Slide Mestre===<br />
<br />
Toda apresentação possui no mínimo um slide mestre. Este slide em especial leva este nome não é à toa e veremos o por quê.<br />
<br />
No slide mestre pode-se configurar e/ou alterar as formatações de uma apresentação inteira.<br />
<br />
Nem sempre as pessoas que trabalham com este tipo de ferramenta o utilizam. Na maioria das vezes por pura falta de conhecimento.<br />
<br />
Vamos começar a desenvolver nossa apresentação exatamente pelo slide mestre. Mas antes disso vamos acessar o menu [Exibir | Régua], para que a régua seja mostrada da mesma forma como é mostrada no Writer.<br />
<br />
Agora então vamos acessar o menu [Exibir | Mestre | Slide Mestre]. Após este passo, podemos observar que a interface mudou bastante:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressmestre.jpg]]</div><br />
<br />
<br />
Tudo que fizermos neste slide será replicado para todos os slides que tenham este mesmo layout em nossa apresentação.<br />
<br />
<br />
Para fazer uma apresentação, não é pré-requisito configurar o slide mestre. No entanto, há alguns bons motivos para você fazê-lo:<br />
<br />
* Configurando o slide mestre, você não precisará fazer isto de novo em nenhum outro slide, pois, isto acontecerá automaticamente;<br />
* Hoje esta apresentação vai ter um fundo de tela voltado para este curso, amanhã se o autor não ficar satisfeito ou se for usá-la em outro curso, bastará fazer a alteração no slide mestre e tudo estará resolvido.<br />
<br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impressmestre.jpg&diff=152647Arquivo:Impressmestre.jpg2018-11-12T19:58:15Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=INF-2018-2&diff=152646INF-2018-22018-11-12T19:58:02Z<p>Ederson.luiz: /* 13/11/2018: Introdução ao Libreoffice Impress */</p>
<hr />
<div>=Informática Básica II= <br />
<br />
'''Professor:''' [[Usuário:Ederson.luiz|Ederson Luiz de Souza Santos]] ([mailto:ederson.luiz@ifsc.edu.br ederson.luiz@ifsc.edu.br])<br />
<br>'''Encontros:''' 3a feira/20:40<br />
<br>'''Atendimento paralelo:''' 2a e 3a feira 17:30 h<br />
<br />
Link encurtado: http://bit.ly/inf-2018-2<br />
<br />
[https://wiki.sj.ifsc.edu.br/images/2/2b/PPC_PROEJA_-_ano_2015.pdf PPC Proeja Operador de Computador]<br />
<br />
<br />
==Ementa==<br />
<br />
Aplicativos de escritório, tais como editor de texto, planilha eletrônica e ferramenta de apresentação.<br />
<br />
Navegação na Internet, pesquisa e cuidados com a segurança da informação.<br />
<br />
<br />
==Objetivos==<br />
<br />
<br />
<i>Geral</i><br />
<br />
* Elaborar documentos digitais;<br />
* Navegação na internet de forma responsável e segura.<br />
<br />
<br />
<i>Específicos</i><br />
<br />
* Utilizar programas de atividades do cotidiano, com destaque para aplicativos de escritório e navegadores da Internet;<br />
* Armazenar informação em arquivos, bem como manipulá-los de acordo com os recursos do sistema operacional;<br />
* Redigir e formatar documentos utilizando o editor de textos;<br />
* Construir planilhas eletrônicas, aproveitando suas funções;<br />
* Montar apresentações dinâmicas e interativas;<br />
* Navegar na internet, pesquisar e utilizar aplicativos Web como webmail, ferramentas de escritório online e redes sociais;<br />
* Reconhecer URLs (endereços) e mecanismos de segurança para navegação segura.<br />
<br />
==Estratégias de ensino utilizadas==<br />
<br />
* O conteúdo da disciplina será apresentado através de aulas expositivas e práticas no laboratório. Nas aulas práticas serão desenvolvidos exercícios e trabalhos individuais e/ou em grupo.<br />
<br />
==Referências==<br />
<br />
<br />
;Básicas<br />
<br />
COSTA, Edgard Alves. <b>BrOffice.org - da Teoria à Prática</b>. Edição 1a. Editora Brasport. ISBN 978-85-7452-298-2<br />
<br />
MANZANO, José Augusto N. G. <b>BrOffice.org 3.2.1 - Guia Prático de Aplicação</b>. Edição 1a. Editora Érica. ISBN 978-85-365-0286-1<br />
<br />
<br />
;Complementares<br />
<br />
CERT.br. <b>Cartilha de Segurança para Internet. São Paulo: Comitê Gestor da Internet do Brasil</b>. 2a. ed. URL: http://cartilha.cert.br/livro/. Acessado em: 06/07/2015. ISBN 978-85-60062-54-6. 2012<br />
<br />
<br />
==Material de apoio==<br />
<br />
* [https://www.hardware.com.br/livros/linux/dicas-para-openofficebroffice.html Dicas de Openoffice]<br />
* [https://www.tecmundo.com.br/office/3767-como-migrar-do-office-para-o-openoffice-sem-dores-de-cabeca.htm Como migrar do Office para o Openoffice sem dores de cabeça]<br />
<br />
=31/07/2018: Apresentação da disciplina, introdução ao Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 1}}<br />
===Apresentação da disciplina===<br />
<br />
Introdução ao componente curricular e Introdução ao Libreoffice.<br />
<br />
'''Arquivo apresentação da disciplina'''<br />
<br />
[https://drive.google.com/file/d/127DSInkISdvAkptI3D_iSCafRoRkTepw/view?usp=sharing Apresentação da disciplina]<br />
<br />
[https://pt-br.libreoffice.org/baixe-ja/libreoffice-novo/ Link para download do LibreOffice]<br />
<br />
<br />
O LibreOffice é uma ferramenta do tipo “office” totalmente gratuita e de código aberto.<br />
<br />
Mas quais os motivos para usarmos o Libreoffice?<br />
<br />
* O LibreOffice é um conjunto de softwares de uso profissional ou doméstico ideal para quem quer uma suíte de escritório para o dia a dia e não deseja softwares desatualizadas e independentes.<br />
* Toda a interface do LibreOffice é padronizada, assim como acontece com o Microsoft Office. Conjuntos e ícones e funcionalidades são semelhantes em toda a interface do usuário. As teclas de atalho são diferentes dos utilizados em outras soluções, porém são bem simples de memorizar.<br />
* O LibreOffice pode ser instalado e utilizado de uma forma [https://pt-br.libreoffice.org/baixe-ja/portable-versions/ portátil], sem necessidade de instalação no computador de uso.<br />
* O LibreOffice é compatível com todos os formatos gerados pelos aplicativos Microsoft, inclusive os documentos mais antigos, tais como DOC, XLS e PPT.<br />
* O LibreOffice é um software de código aberto e grátis. Pode ser instalados em diversos computadores e ser utilizado para qualquer finalidade.<br />
<br />
No decorrer do curso iremos trabalhar com os seguintes softwares:<br />
<br />
'''LibreOffice Writer:'''<br />
<br />
O Writer é o processador de texto do LibreOffice e é um software similar ao Microsoft Word. Com o Writer é possível criar desde textos simples, até textos com padrões complexos, com imagens, tabelas, anotações, estilos e numeração de páginas. Sua interface lembra o Word na versão 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Calc:'''<br />
<br />
O Calc é o editor de planilhas eletrônicas do LibreOffice e é um software similar ao Microsoft Excel. Com o Calc é possível criar planilhas e gráficos de todos os tipos, com imagens, formatação de texto e bordas. Sua interface lembra o Excel 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
'''LibreOffice Impress:'''<br />
<br />
O Impress é o criador de apresentações do LibreOffice e é um software similar ao Microsoft Power Point. Com o Impress é possível criar apresentações de todos tipos, com diversos slides, imagens, formas, animações e transições. Sua interface lembra o Power Point 2000 e as barras de ferramentas são personalizáveis assim como todos os outros softwares que acompanham o pacote LibreOffice.<br />
<br />
<br />
<br />
===LibreOffice Writer===<br />
<br />
<br />
Para a maioria das nossas atividades no software Writer, nós faremos uso de textos.<br />
<br />
Vamos conhecer um pouco de sua interface:<br />
<br />
<div style="text-align: center;">[[Arquivo:writerinterface.jpg|900px]]</div><br />
bit.ly/inf-2018-2<br />
As barras de ferramentas podem ser movidas, de acordo com a necessidade ou preferência:<br />
<br />
<div style="text-align: center;">[[Arquivo:moverbarra.jpg|900px]]</div><br />
<br />
<br />
As funções dos botões também podem ser acessadas via teclas de atalho:<br />
<br />
Teclas de função para o LibreOffice Writer<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho1.jpg]]</div><br />
<br />
<br />
Teclas de atalho para controlar documentos e janelas<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho2.jpg]]</div><br />
<br />
<br />
Teclas de atalho para editar ou formatar documentos<br />
<br />
<div style="text-align: center;">[[Arquivo:atalho3.jpg]]</div><br />
<br />
<br />
A extensão padrão do arquivo é '''ODT'''. Se salvarmos um arquivo com o nome '''Exemplo''', o mesmo se chamará '''Exemplo.odt'''.<br />
<br />
Para selecionarmos o texto, podemos utilizar o mouse ou o teclado, através da tecla '''SHIFT''' + '''SETA DIRECIONAL'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 1}}<br />
<br />
=07/08/2018: Formatação e alinhamento=<br />
<font size="3"><br />
{{Collapse top | Aula 2}}<br />
<br />
===Barra de ferramentas Formatação===<br />
<br />
A barra de Formatação permite alterar as configurações relacionadas ao texto em si, como fonte, tamanho de fonte, estilos, negrito, sublinhado, etc.<br />
<br />
<div style="text-align: left;">[[Arquivo:barraformatacao.jpg]]</div><br />
<br />
Estilos e Formatação (F11): Exibe a janela Estilos e Formatação (abaixo) que exibe os estilos pré-definidos e também permite salvar configurações relativas ao tamanho e cor da fonte, espaçamento entre linhas do parágrafo. É possível alterar os estilos existentes ou mesmo criar novos.<br />
<br />
<div style="text-align: left;">[[Arquivo:estilowriter.jpg]]</div><br />
<br />
<br />
Nesta caixa de seleção escolhemos a fonte:<br />
<br />
<div style="text-align: left;">[[Arquivo:fontewriter.jpg]]</div><br />
<br />
<br />
Permite definir o tamanho da fonte, entre 2 e 999,9:<br />
<br />
<div style="text-align: left;">[[Arquivo:tamanhofontewriter.jpg]]</div><br />
<br />
<br />
Aplicam negrito, itálico e sublinhado respectivamente. Atalhos CTRL+B, CTRL+I e CTRL+U:<br />
<br />
<div style="text-align: left;">[[Arquivo:niswriter.jpg]]</div><br />
<br />
<br />
Aqui estão os possíveis alinhamentos para os parágrafos e são extremamente cobrados em concursos. <br />
<br />
<div style="text-align: left;">[[Arquivo:alinhamentowriter.jpg]]</div><br />
<br />
<br />
Alinhamento à esquerda. Atalho CTRL + L.<br />
<br />
Obs.: Quando o parágrafo está alinhado a esquerda fica desalinhado a direita.<br />
<br />
Alinhamento Centralizado. Atalho CTRL + E.<br />
<br />
Obs.: Quando o parágrafo está centralizado fica desalinhado a esquerda e a direita.<br />
<br />
Alinhamento à Direita. Atalho CTRL + R.<br />
<br />
Obs.: Quando o parágrafo está alinhado a direita fica desalinhado a esquerda.<br />
<br />
Alinhamento Justificado. Atalho CTRL + J.<br />
<br />
Obs.: Quando o parágrafo está justificado fica alinhado a direita e a esquerda.<br />
<br />
Dica: Para aplicar qualquer alinhamento a um parágrafo não é preciso selecionar o parágrafo, basta que o cursor esteja dentro do parágrafo.<br />
<br />
<br />
Cor da Fonte. Permite alterar a cor da fonte.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfontewriter.jpg]]</div><br />
<br />
<br />
Dica: Não é preciso selecionar a palavra que se deseja alterar a cor da fonte, basta que o cursor esteja posicionado dentro da palavra.<br />
<br />
<br />
Realçar. Permite realçar um texto com várias cores.<br />
<br />
<div style="text-align: left;">[[Arquivo:realcewriter.jpg]]</div><br />
<br />
<br />
Cor do Plano de Fundo. Permite alterar a cor do plano de fundo da posição onde o cursor está ou no trecho selecionado.<br />
<br />
<div style="text-align: left;">[[Arquivo:corfundowriter.jpg]]</div><br />
<br />
<br />
'''Exercício'''<br />
<br />
<br />
<div style="text-align: center;">'''O Conceito de Mercado'''</div><br />
<br />
<br />
O conceito de <u>mercado</u> continua intimamente associado à idéia de <u>local</u> onde se efetuam transações entre produtores e consumidores. Consideramos essa noção restritiva, pelos seguintes aspectos:<br />
O mercado é hoje um espaço de realização de operações econômicas de compra e venda que vai para além dos seus contornos <u>físicos</u> e mesmo <u>temporais</u>.<br />
De fato, estão a surgir com grande freqüência <u>formas imateriais de mercado</u> (…).<br />
Essas formas de mercado lançam mão dos meios proporcionados pela sociedade de informação, possibilitando a realização de compras e vendas em casa, pela simples manutenção interativa de um ecrã de televisão ou, mais simplesmente, através de um telefonema para um número fornecido por aquele ecrã, com entrega imediata no domicilio ou pelo correio, como é uso da chamada televisão comercial.<br />
Existem operações de compra e venda que se contratam hoje e se realizam apenas daqui a alguns meses (como por exemplo, nos mercados de futuros, caso dos mercados de cereais nos Estados Unidos da América,...).<br />
Por outro lado existe uma diversidade de mercados, que vai desde os mercados de produtos finais ou de consumo final aos mercados de produtos intermédios e de fatores produtivos, bem como ao mercado de trabalho ou à bolsa ou <u>mercado de valores imobiliários</u>. Aos mercados nacionais sobrepõem-se os <u>mercados transnacionais</u>, de natureza informal, ou de diversos acordos de comércio livre, uniões aduaneiras ou comunidades econômicas.<br />
Tudo são razões para que se considere a noção de mercado como relativa e circunstancial, além de mutável no tempo.<br />
Uma coisa é certa: num mercado existem sempre intenções de compra (compra), intenções de venda (<u>oferta</u>), um preço e uma situação de equilíbrio mais ou menos estável fornecida por esse preço e pela quantidade correspondente.<br />
<br />
<br />
<div style="text-align: right;">Extraído de: Tinto, G., Introdução à Economia, 1995.</div><br />
<br />
<br />
# Grave o documento com o nome '''Exercicio1_Writer_Nome_Aluno'''.<br />
# Centralize o título “O Conceito de Mercado” no texto.<br />
# Formate o título como: '''negrito, tamanho 16''', tipo de letra '''Dejavu Sans'''.<br />
# Efetue o '''alinhamento justificado''' do texto.<br />
# Formate o texto com a fonte '''Nimbus Sans L''' e tamanho '''11'''<br />
# '''Alinhe à direita''' a fonte de onde foi extraído o texto (última linha) e coloque o texto em '''itálico'''<br />
# Marque a '''bold''' (negrito) os termos/expressões sublinhados acima<br />
# Anule os sublinhados e mantenha o negrito dos mesmos termos expressões<br />
# Coloque a '''negrito, itálico e sublinhada''' todas as ocorrências das palavras compra e compras.<br />
<br />
<br />
Envie este arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''.<br />
<br />
</font><br />
{{Collapse bottom | Aula 2}}<br />
<br />
=14/08/2018: Colunas, capitular e hifenização=<br />
<font size="3"><br />
{{Collapse top | Aula 3}}<br />
<br />
===Criando colunas===<br />
<br />
<br />
O Writer permite criar colunas em seus documentos de texto. É possível inserir colunas em um estilo de página ou em um bloco individual de texto, sendo possível ainda formatar o layout da coluna de acordo com suas preferências:<br />
<br />
* Inserir colunas em um estilo de página;<br />
* Inserir colunas a um bloco de texto individual;<br />
* Formatar um layout de coluna;<br />
* Reverter para um layout de coluna simples.<br />
<br />
<br />
====Inserindo colunas em um estilo de página====<br />
<br />
<br />
Para inserir uma coluna em um estilo de página, clique em qualquer lugar da página e escolha Formatar > Colunas... no menu principal. Abre-se a janela Colunas:<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter.jpg]]</div><br />
<br />
<br />
====Inserindo colunas em um bloco de texto====<br />
<br />
<br />
Também é possível inserir colunas em um bloco de texto individual. Isso é útil caso não se queira modificar o estilo da página, ou se você quiser inserir colunas dentro de colunas. Observe que o Writer criará automaticamente uma seção a partir do bloco de texto selecionado. Uma seção é simplesmente um bloco de texto que tem uma formatação especial.<br />
<br />
Para inserir uma coluna em um bloco individual de texto, selecione o texto desejado, escolhendo em seguida Formatar > Colunas... a partir do menu principal. Abre-se a janela Colunas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:colunaswriter2.jpg]]</div><br />
<br />
Se você inserir colunas em um bloco de texto, é possível escolher como você deseja distribuir o texto pela coluna. È possível distribuir o texto de uma ou duas maneiras:<br />
<br />
* Uniformemente. Se você escolher distribuir o texto uniformemente, o Writer preencherá a primeira linha de cada coluna, seguindo para a segunda linha de cada coluna, e assim por diante.<br />
* Estilo Jornal. Se você escolher distribuir o texto em Estilo Jornal, o Writer preencherá as colunas uma por vez, começando pela primeira coluna.<br />
<br />
Para distribuir o texto uniformemente, marque a caixa de seleção Distribuir conteúdo uniformemente em todas todas as colunas na área Configurações. Desmarque esta caixa de seleção se você quiser distribuir o texto no estilo jornal.<br />
<br />
<br />
====Especificando o número de colunas====<br />
<br />
<br />
Se preferir criar um layout de coluna personalizado, você deverá especifcar o número de colunas desejado. Insira o número desejado na caixa Colunas da área Configurações.<br />
<br />
<br />
====Formatando a largura e o espaçamento da coluna====<br />
<br />
<br />
Para criar colunas com espaçamento uniforme com a mesma largura, marque a caixa de seleção AutoLargura na área Largura e espaçamento.<br />
<br />
Para personalizar a largura e o espaçamento das colunas, siga as seguintes etapas:<br />
<br />
* Na área de Largura e espaçamento, desmarque a caixa de seleção AutoLargura.<br />
* Na linha Largura, insira uma largura para cada coluna.<br />
* Na linha Espaçamento, insira o valor de espaçamento desejado entre cada par de coluna.<br />
<br />
Utilize as teclas direcionais na linha Coluna para rolar pelas colunas.<br />
<br />
<br />
====Formatando as linhas separadoras====<br />
<br />
<br />
Para exibir as linhas separadoras entre as colunas, siga as seguintes etapas:<br />
<br />
* A partir da lista suspensa Linha na área Linha separadora, selecione o tipo de linha desejado.<br />
* Por padrão, as linhas separadoras têm o mesmo tamanho das colunas. Caso deseje que as linhas separadoras sejam mais curtas do que a coluna, utilize a caixa Altura para inserir a altura das linhas separadoras como uma porcentagem do tamanho das colunas. Por exemplo, se você inserir 50%, as linhas separadoras terão metade do tamanho das colunas.<br />
* Se você inseriu uma altura menor do que 100%, use a lista suspensa Posição para selecionar um alinhamento vertical para as linhas do separador.<br />
<br />
<br />
====Revertendo o layout de uma coluna simples====<br />
<br />
<br />
Para reverter o layout de uma coluna simples em um estilo de página ou em um bloco de texto:<br />
<br />
* Clique em qualquer local no layout da coluna.<br />
* A partir do menu principal, escolha Formatar > Colunas... A janela Colunas aparece. <br />
* Na área Configurações, clique no layout de coluna simples localizado no lado esquerdo da caixa Colunas . Ou, volte a caixa Colunas para 1.<br />
* Clique em OK. A janela Colunas se fecha e o layout é revertido para uma coluna simples.<br />
<br />
<br />
===Capitulares===<br />
<br />
<br />
Basta somente você deixar o cursor no parágrafo que você deseja a primeira letra capitulada. Vá no meu Parágrafo e escolha a guia Capitulares. Na parte de Configurações, ative a caixa Exibir capitulares. Também pode escolher o número de caracteres, se vai utilizar a palavra inteira, quantidade de linhas a serem utilizadas, espaçamento até o texto e estilo do caractere. Após efetuar as configurações, clique em Ok.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:capitulareswriter.jpg]]</div><br />
<br />
<br />
===Hifenização===<br />
<br />
<br />
Insere hifens nas palavras grandes demais para caber no fim da linha. O LibreOffice procura no documento e sugere uma hifenização que possa ser aceita ou rejeitada. Se o texto estiver selecionado, a caixa de diálogo Hifenização atuará somente no texto selecionado. Se não houver texto selecionado, a caixa de diálogo Hifenização atuará em todo o documento.<br />
<br />
<br />
Agora, para colocar Hifenização, é bem simples, pressione Ctrl + A, para selecionar tudo ou selecione a parte do texto que deseja hifenizar e depois justifique o texto. Logo em seguida, clique em Ferramentas > Idioma > Hifenização. Depois, é só confirmar quais palavras que deseja hifenizar ou clicar em hifenizar tudo e pressione OK.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:hifenizacaowriter.jpg]]</div><br />
<br />
===Exercício===<br />
<br />
<br />
Copie o texto abaixo e posteriormente efetue os ajustes pedidos:<br />
<br />
<br />
----<br />
<br />
<br />
Das Vantagens de Ser Bobo<br />
<br />
<br />
O bobo, por não se ocupar com ambições, tem tempo para ver, ouvir e tocar o mundo. O bobo é capaz de ficar sentado quase sem se mexer por duas horas. Se perguntado por que não faz alguma coisa, responde: "Estou fazendo. Estou pensando." <br />
Ser bobo às vezes oferece um mundo de saída porque os espertos só se lembram de sair por meio da esperteza, e o bobo tem originalidade, espontaneamente lhe vem a idéia. <br />
O bobo tem oportunidade de ver coisas que os espertos não vêem. Os espertos estão sempre tão atentos às espertezas alheias que se descontraem diante dos bobos, e estes os vêem como simples pessoas humanas. O bobo ganha utilidade e sabedoria para viver. O bobo nunca parece ter tido vez. No entanto, muitas vezes, o bobo é um Dostoievski. <br />
Há desvantagem, obviamente. Uma boba, por exemplo, confiou na palavra de um desconhecido para a compra de um ar refrigerado de segunda mão: ele disse que o aparelho era novo, praticamente sem uso porque se mudara para a Gávea onde é fresco. Vai a boba e compra o aparelho sem vê-lo sequer. Resultado: não funciona. Chamado um técnico, a opinião deste era de que o aparelho estava tão estragado que o conserto seria caríssimo: mais valia comprar outro. Mas, em contrapartida, a vantagem de ser bobo é ter boa-fé, não desconfiar, e portanto estar tranqüilo. Enquanto o esperto não dorme à noite com medo de ser ludibriado. O esperto vence com úlcera no estômago. O bobo não percebe que venceu. <br />
Aviso: não confundir bobos com burros. Desvantagem: pode receber uma punhalada de quem menos espera. É uma das tristezas que o bobo não prevê. César terminou dizendo a célebre frase: "Até tu, Brutus?" <br />
Bobo não reclama. Em compensação, como exclama! <br />
Os bobos, com todas as suas palhaçadas, devem estar todos no céu. Se Cristo tivesse sido esperto não teria morrido na cruz. <br />
O bobo é sempre tão simpático que há espertos que se fazem passar por bobos. Ser bobo é uma criatividade e, como toda criação, é difícil. Por isso é que os espertos não conseguem passar por bobos. Os espertos ganham dos outros. Em compensação os bobos ganham a vida. Bem-aventurados os bobos porque sabem sem que ninguém desconfie. Aliás não se importam que saibam que eles sabem. <br />
Há lugares que facilitam mais as pessoas serem bobas (não confundir bobo com burro, com tolo, com fútil). Minas Gerais, por exemplo, facilita ser bobo. Ah, quantos perdem por não nascer em Minas! <br />
Bobo é Chagall, que põe vaca no espaço, voando por cima das casas. É quase impossível evitar excesso de amor que o bobo provoca. É que só o bobo é capaz de excesso de amor. E só o amor faz o bobo.<br />
<br />
<br />
Clarice Lispector<br />
<br />
<br />
----<br />
<br />
<br />
* Formate o título do texto com fonte '''Loma''', tamanho '''14''', alinhamento '''centralizado''', e '''negrito'''.<br />
* selecione o texto (sem selecionar o título e nem a fonte do texto) e aplique o alinhamento '''justificado''', fonte '''Dejavu Sans''', tamanho '''12'''.<br />
* Ainda com o texto selecionado, vá em '''Formatar > Colunas''', selecione 2 colunas, espaçamento de '''0,50 cm''', estilo '''linha contínua'''.<br />
* No texto selecionado aplique a hifenização em todas as palavras.<br />
* Insira a opção Capitulares, com tamanho de 3 linhas no início do texto.<br />
* Alinhe a última linha (fonte do texto) a '''direita''', '''itálico''', fonte '''Droid Sans''' e tamanho '''10'''.<br />
<br />
<br />
O texto deve ficar neste formato:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:texto2writer.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 3}}<br />
<br />
=21/08/2018: Aula suspensa=<br />
<font size="3"><br />
{{Collapse top | Aula 4}}<br />
<br />
Aula suspensa devido a paralização dos técnicos administrativos.<br />
<br />
</font><br />
{{Collapse bottom | Aula 4}}<br />
<br />
=28/08/2018: Formatações e funções úteis no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 5}}<br />
<br />
===Comando Localizar e Substituir===<br />
<br />
Para se localizar palavras em um texto qualquer, basta que você acesse o menu '''Editar, Localizar''' ou por meio do atalho '''Ctrl + F'''. Logo será aberto, no canto inferior esquerdo do aplicativo, um campo para digitação da palavra a ser procurada.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarwriter.jpg]]</div><br />
<br />
<br />
O recurso para “localizar e substituir” também é muito importante pois nos auxilia a corrigir erros espalhados pelo texto ou mesmo a mudança de uma palavra por outra de mesmo significado. Para usarmos o recurso de “localizar e substituir” basta acessarmos o menu '''Editar, Localizar e substituir''' ou diretamente pelo atalho '''Ctrl + H'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:localizarsubstituirwriter.jpg]]</div><br />
<br />
<br />
===Marcadores e numeração===<br />
<br />
Esse comando é utilizado para inserir no texto, marcadores e/ou numeração, como o próprio título desde tópico diz.<br />
O comando para colocar marcadores ou mudar os marcadores já adicionados em um texto, pode ser acionado por meio do menu '''Formatar, Marcadores e numerações'''.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumerwriter.jpg]]</div><br />
<br />
<br />
Nas duas primeiras abas definimos o tipo de marcador que queremos usar em nosso texto. <br />
<br />
Passando para a terceira aba “Estrutura de tópicos” definiremos como ficará a estrutura de tópicos que estamos criando em nosso texto. Mais uma vez, teremos 8 opções para escolha.<br />
<br />
Podemos utilizar também, ao invés dos marcadores tradicionais, figuras no lugar dos números ou símbolos. Estes estão disponíveis na aba “Figuras”.<br />
<br />
Nas próximas abas temos a parte de configuração dos marcadores. A aba “Posição” nos proporciona a possibilidade de definirmos as distâncias, em relação a margem, de todos os dez níveis de marcadores que podem existir no nosso documento.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer2writer.jpg]]</div><br />
<br />
<br />
Já a aba “Opções” nos permite, também por nível, definir:<br />
<br />
* O tipo de “Numeração” (algarismos arábicos, romanos, gregos e etc.),<br />
* Definir o que virá “Antes” do marcador e “Depois” também (veja que no campo “Depois” existe um “.” e é exatamente este ponto que está sendo mostrado do lado direito do “1” mostrado no quatro ao lado do campo, nos diversos níveis),<br />
* Definir o “Estilo de caractere” que será usado,<br />
* “Mostrar subníveis” em cada marcador e<br />
* Colocar um determinado marcador para “Iniciar em”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:marcadoresnumer3writer.jpg]]</div><br />
<br />
<br />
===Ferramenta Pincel===<br />
<br />
<br />
Esse comando copia toda a formatação de um objeto ou texto e aplica ao objeto que será clicado ou marcado a seguir. O Pincel não se encontra em um item de menu específico, porém, possui um botão na barra de ferramentas padrão, conforme Figura a seguir.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:pincelwriter.jpg]]</div><br />
<br />
<br />
Como utilizar o Pincel:<br />
<br />
* Primeiro clique na palavra ou objeto que você deseja copiar os formatos nele aplicados (por exemplo tipo da fonte, tamanho e etc.);<br />
* Em seguida, clique na palavra a qual você deseja que possua os mesmos formatos da palavra anterior (a que você copiou os formatos).<br />
<br />
===Recuos e espaçamentos===<br />
<br />
Este recurso permite alterar a posição inicial, final e primeira linha do texto.<br />
<br />
Escolha a guia Formatar - Parágrafo - Recuos e espaçamento<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:recuoespacamentowriter.jpg]]</div><br />
<br />
<br />
A opção '''Antes do texto''' permite indicar onde o texto irá iniciar.<br />
<br />
A opção '''Depois do texto''' indica onde ele irá terminar.<br />
<br />
Já a opção '''Primeira linha''' indica onde a primeira linha do parágrafo irá iniciar.<br />
<br />
As opções '''Acima do parágrafo''' e '''Abaixo do parágrafo''' indicam o espaçamento entre as linhas antes e depois de um parágrafo, respectivamente.<br />
<br />
A opção '''Entre linhas''' define o espaço entre cada linha do texto.<br />
<br />
<br />
===Exercício===<br />
<br />
<br />
Digite o texto abaixo. <br />
Vá na opção f'''ormatar parágrafo, Recuos e espaçamentos''', deixe todas as opções de medidas com valor '''0 cm''' e '''espaçamento de linha simples'''.<br />
<br />
O título da receita deve estar em '''fonte Free Sans, tamanho 14, negrito e centralizado'''.<br />
<br />
O subtítulo '''Ingredientes''' deve estar com '''fonte Loma, tamanho 12, itálico e alinhamento a esquerda'''. <br />
<br />
Aplique a formatação do subtítulo '''Ingredientes''' no subtítulo '''Modo de preparo''' usando a ferramenta '''pincel'''.<br />
<br />
Use a ferramenta '''Localizar e substituir''' para trocar as palavras '''kg''' por '''quilos''' e '''2 dl''' por '''200 ml'''.<br />
<br />
Insira marcadores de círculos grandes nos ingredientes, com '''deslocamento de primeira linha em 1,25 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Insira numeração com pontos no modo de preparo, com ''' Antes do texto em 2 cm, deslocamento de primeira linha em - 0,75 cm, fonte Dejavu Sans, tamanho 12, alinhamento justificado'''.<br />
<br />
Envie o arquivo para o e-mail '''ederson.luiz@ifsc.edu.br'''<br />
<br />
<br />
<br />
'''Receita: Bacalhau a beira-alta'''<br />
<br />
<br />
''Ingredientes:'' <br />
<br />
<br />
6 postas de bacalhau;<br />
<br />
1 molho de couves galegas com os talos;<br />
<br />
1,5 kg de batatas;<br />
<br />
Pão de trigo duro;<br />
<br />
4 dentes de alho picados;<br />
<br />
2 dl de azeite.<br />
<br />
<br />
''Modo de preparo''<br />
<br />
<br />
Coza o bacalhau e, à parte, coza também as batatas e as couves.<br />
<br />
Corte o pão em fatias e coloque numa travessa funda. Por cima, deite a água de cozer o bacalhau em quantidade suficiente para ensopar o pão.<br />
<br />
Regue ainda com metade do azeite e polvilhe com metade dos alhos. Disponha o bacalhau, as batatas as couves por cima.<br />
<br />
Cubra com o restante azeite e os alhos picados. Sacuda a travessa e está pronto a servir. <br />
<br />
<br />
Como o texto deve ficar ao final do exercício:<br />
<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exercicio3writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 5}}<br />
<br />
=04/09/2018: Tabelas, Cabeçalho, Rodapé e Campos no Libreoffice Writer=<br />
<font size="3"><br />
{{Collapse top | Aula 6}}<br />
<br />
===Tabelas===<br />
<br />
Sabemos que uma tabela nada mais é do que um conjunto de dados disponibilizados em uma grade. Onde esta possui diversas linhas e colunas.<br />
<br />
Para criar uma tabela no Writer basta acessarmos o menu Tabela, Inserir, Tabela, pelo atalho Ctrl + F12 ou ainda pelo botão disponibilizado na barra de Ferramentas Padrão. Ao acessar uma das opções acima, será mostrada a tela de configuração da tabela.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabelawriter.jpg]]</div><br />
<br />
<br />
Na Figura acima podemos ver claramente que há a possibilidade de darmos um nome para a tabela por meio do campo “Nome” e de determinarmos quantas linhas e colunas nossa tabela terá, por meio dos campos “Colunas” e “Linhas”.<br />
<br />
Logo a seguir, abaixo do campo “Linhas” podemos ver um campo “Título”, onde se o marcarmos, nossa tabela terá N linhas com formatação de título (e. g. Negrito). A quantidade de linhas será definida no campo “As primeiras ... linhas”.<br />
<br />
O Campo “Borda” indica a existência ou não de uma linha separando cada célula que comporá a tabela criada.<br />
<br />
O botão “Autoformatar...” nos dá a possibilidade de darmos uma formatação para a tabela que será criada (e. g. Cores, fonte, bordas, alinhamento e etc).<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela2writer.jpg]]</div><br />
<br />
<br />
Após a criação da tabela, podemos alterar suas propriedades ou parte dela, selecionando a parte que queremos alterar e indo até o menu Tabela, Propriedades da tabela. <br />
<br />
Nesta janela podemos alterar O nome, espaçamento, tamanho de coluna e linha, estilos de borda e cores de fundo.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:tabela3writer.jpg]]</div><br />
<br />
<br />
===Cabeçalho===<br />
<br />
<br />
Para colocar um cabeçalho em um documento basta acessarmos o menu Inserir, Cabeçalho, Padrão. Então abrir-se-á uma área para digitação do texto do cabeçalho.<br />
<br />
Você poderá digitar o texto do cabeçalho em qualquer página do documento, que este será automaticamente replicado para as demais páginas existentes.<br />
<br />
Você poderá ainda, aplicar formatação ao cabeçalho, incluir borda e plano de fundo e também excluir o cabeçalho por meio da aba azul “Cabeçalho (Padrão)”. Para isto, basta clicar na setinha apontada para baixo existente na aba que as opções surgirão na forma de um menu pop-up.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:cabecalhowriter.jpg]]</div><br />
<br />
<br />
===Rodapé===<br />
<br />
<br />
ara inserir um rodapé, o procedimento é idêntico ao do cabeçalho, porém deve-se acessar o menu Inserir, Rodapé, Padrão]. Abrir-se-á uma área para digitação do texto do rodapé. Nesta área, pode-se colocar o que for necessário. No entanto, o mais comum de ser colocado nos rodapés de documentos são: número da página, data/hora da impressão, autor, quantidade total de páginas existentes no documento, dentre outros.<br />
<br />
Você poderá ainda, da mesma forma que no cabeçalho, aplicar formatação ao rodapé, incluir borda, plano de fundo e também o excluir. Tudo isto poderá ser realizado por meio da aba azul “Rodapé (Padrão)”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:rodapewriter.jpg]]</div><br />
<br />
<br />
===Campos===<br />
<br />
<br />
Este é mais um recurso muito útil existente no LibreOffice. Com ele você poderá fazer seu documento mostrar informações automaticamente e sem muito esforço, disponibilizado no menu Inserir, Campos.<br />
<br />
Os campos preexistentes no LibreOffice. são:<br />
<br />
* Data: coloca a data atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Hora: coloca a hora atual (do sistema operacional) no documento toda vez que o mesmo for aberto;<br />
* Número da página: exibe o número da página atual;<br />
* Total de páginas: exibe a quantidade de páginas existentes no documento;<br />
* Assunto: mostra o que foi registrado no campo “Assunto”, descrito nas “Propriedades” do documento;<br />
* Título: mostra o que foi registrado no campo “Título”, descrito nas “Propriedades” do documento;<br />
* Autor: mostra o primeiro e último nome listados em “Dados do Usuário” do LibreOffice no menu Ferramentas, Opções;<br />
* Outros: [Ctrl + F2] que dá a possibilidade de escolha de diversos campos, com diversas informações sobre o documento. Estes outros campos poderão ser escolhidos na tela “Campos” em suas diversas abas.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:camposwriter.jpg]]</div><br />
<br />
<br />
===Exercícios===<br />
<br />
<br />
Crie uma tabela no documento em branco com os dados da imagem abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabelawriter.jpg]]</div><br />
<br />
<br />
Formate a tabela com as seguintes configurações:<br />
<br />
<br />
* Linha de título mesclada, fonte Rekha, tamanho 14, cor vermelha, negrito e centralizado;<br />
* Linha de subtítulo com fonte Loma, tamanho 12, itálico e centralizado;<br />
* Demais linhas com fonte Garuda, tamanho 12 alinhamento justificado;<br />
* Insira cor de fundo de acordo com a imagem acima.<br />
<br />
No cabeçalho, insira o texto Proeja - Informática básica II em fonte Liberation Serif, tamanho 12 e negrito.<br />
<br />
No rodapé insira o número da página alinhado a direita.<br />
<br />
Ao final, o documento deve ter essa aparência:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:exerciciotabela2writer.jpg]]</div><br />
<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 6}}<br />
<br />
=11/09/2018: Corretor ortográfico, impressão e Figuras=<br />
<font size="3"><br />
{{Collapse top | Aula 7}}<br />
<br />
===Corretor ortográfico===<br />
<br />
Você pode verificar a ortografia de uma seleção de texto ou do documento por inteiro manualmente.<br />
<br />
A verificação ortográfica começa na posição atual do cursor ou no início da seleção de texto.<br />
<br />
Clique no documento ou selecione o texto que deseja verificar. Escolha Ferramentas - Ortografia e gramática.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretorwriter.jpg]]</div><br />
<br />
<br />
Sempre que é encontrado um erro de ortografia, surge a caixa de diálogo Verificação ortográfica e o LibreOffice oferece algumas sugestões de correção.<br />
Adote um dos seguintes procedimentos:<br />
<br />
Para aceitar a correção, clique na sugestão e, em seguida, em Corrigir.<br />
<br />
Edite a frase na caixa de texto superior e, em seguida, clique em Corrigir.<br />
<br />
Para adicionar a palavra desconhecida ao dicionário definido pelo usuário, clique em Adicionar ao dicionário.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:corretor2writer.jpg]]</div><br />
<br />
<br />
===Impressão===<br />
<br />
<br />
Para imprimir documentos no Libreoffice Writer, podemos clicar diretamente no botão imprimir ou ir no menu Arquivo, imprimir:<br />
<br />
Na janela que se abre, podemos escolher diversas configurações adicionais.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:imprimir2writer.jpg]]</div><br />
<br />
<br />
Na aba Geral, podemos escolher a impressora, quantidade de cópias, se serão agrupadas, quais páginas serão impressas (todas, somente uma ou uma parte).<br />
<br />
Na aba Libreoffice Writer podemos escolher se o plano de fundo será impresso, as figuras e objetos, texto oculto, cor do texto e páginas em branco.<br />
<br />
Em Layout escolhemos a quantidade de páginas por folha, a ordem e lados da página.<br />
<br />
E na aba Opções escolhemos se irá para uma impressora física ou um arquivo, agrupamento, bandejas definidas na impressora e tamanho definido na impressora.<br />
<br />
<br />
===Visualizar impressão===<br />
<br />
Antes de imprimir algum trabalho, convém observar como ficará o layout no papel, para evitar alguns acidentes, tais como quebras de páginas em locais indesejados, ajustes de parágrafos, entre outros. Para tanto, o auxílio da função Visualizar Impressão é fundamental.<br />
<br />
Acesse o menu Arquivo > Visualização de Página, no ícone na barra de ferramentas ou através do atalho Ctrl + Shift + O.<br />
<br />
Na tela aparecerá uma projeção exata de como ficará a impressão. Serão apresentadas algumas ferramentas, se quisermos analisar com mais detalhes:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:visualizarimpressaowriter.jpg]]</div><br />
<br />
<br />
'''Uma página<br/>'''<br />
Mostra uma página na janela de visualização.<br />
<br />
<br />
'''Duas páginas<br/>'''<br />
Mostra duas páginas na janela de visualização. As páginas ímpares aparecerão no lado direito e as páginas pares no lado esquerdo.<br />
<br />
<br />
'''Visualização de livro<br/>'''<br />
Selecione esta opção para ver a primeira página no lado direito da visualização. Se não a selecionar, a primeira página é mostrada no lado esquerdo da visualização.<br />
<br />
<br />
'''Várias páginas<br/>'''<br />
Define o número de páginas exibidas na tela. Clique na seta ao lado do ícone para abrir uma grade e selecionar o número de páginas a serem exibidas como linhas e colunas na visualização.<br />
<br />
<br />
'''Para o início do documento<br/>'''<br />
Vai para a primeira página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Página anterior<br/>'''<br />
Vai para a página anterior do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Próxima página<br/>'''<br />
Vai para a próxima página do documento. Essa função só estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Para o fim do documento<br/>'''<br />
Vai para a última página do documento. Essa função somente estará ativa quando você selecionar a função Visualizar impressão no menu Arquivo.<br />
<br />
<br />
'''Menos zoom<br/>'''<br />
Diminui o zoom para ver mais do documento em um tamanho reduzido.<br />
<br />
<br />
'''Zoom de visualização<br/>'''<br />
Determina o nível de zoom da visualização de impressão.<br />
<br />
<br />
'''Mais zoom<br/>'''<br />
Aumenta o zoom para obter um close do documento.<br />
<br />
<br />
'''Imprimir<br/>'''<br />
Imprime o documento.<br />
<br />
<br />
'''Tela inteira<br/>'''<br />
Exibe ou oculta os menus e as barras de ferramentas no Writer ou no Calc. Para sair do modo de tela inteira, clique no botão Tela inteira ou pressione a tecla Esc.<br />
<br />
<br />
'''Fechar visualização<br/>'''<br />
Fecha a visualização e volta na edição do documento.<br />
<br />
<br />
===Figuras===<br />
<br />
<br />
A inserção de figura em um texto e sua manipulação é simples no Writer.<br />
<br />
Vamos passo a passo mostrar como se dá essa inserção. <br />
<br />
Primeiro abra o documento em que deseja inserir a figura e posicione o cursor no local desejado que ela apareça. Depois escolha Inserir - Figura. Localize o arquivo gráfico que você deseja inserir e, em seguida, clique em Abrir. <br />
<br />
Por padrão, a figura inserida é centralizada acima do parágrafo no qual você clicou. <br />
<br />
<br />
Veja que é criada uma barra de ferramenta flutuante chamada figura. Nela você modifica os aspectos de cor e padrão da figura e também inverte vertical ou horizontalmente a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figurawriter.jpg]]</div><br />
<br />
<br />
Quando é inserida uma figura a barra de ferramenta quadro é mostrada para configurar com mais facilidade a figura. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura2writer.jpg]]</div><br />
<br />
<br />
Também temos a opção de formatar figura. Para isso, selecione a figura e vá no menu Formatar - Figura.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:figura3writer.jpg]]</div><br />
<br />
<br />
Nesta janela teremos várias opções de configuração, tais como ajuste de tamanho, ajuste no texto, posicionamento. hiperlink, recorte, bordas, transparência, etc.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 7}}<br />
<br />
=18/09/2018: Palestra Reflexos da reforma trabalhista para a classe trabalhadora=<br />
<font size="3"><br />
{{Collapse top | Aula 8}}<br />
<br />
</font><br />
{{Collapse bottom | Aula 8}}<br />
<br />
=25/09/2018: Introdução ao Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 9}}<br />
<br />
===Libreoffice Calc===<br />
<br />
Calc é um software de planilha eletrônica multiplataforma de código aberto, desenvolvido originalmente pela Star Division, posteriormente pela Sun Microsystems (como parte da suíte StarOffice) e atualmente pela The Document Foundation, como parte da suíte LibreOffice. Também é distribuído gratuitamente com as suítes OpenOffice.org e NeoOffice.<br />
<br />
Nessa planilha, o número limite de linhas é de pouco mais de 1 milhão por planilha e o número limite de colunas é de 1024 por planilha.<br />
<br />
Na imagem abaixo podemos conhecer um pouco melhor a interface do Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interfacecalc.jpg]]</div><br />
<br />
<br />
As células do Calc possuem endereçamento, onde as colunas são definidas por letras e as linhas por números. Para identificar o endereço da célula, basta indicar primeiramente o endereçamento da coluna e depois da linha. Ex: '''A1'''.<br />
<br />
<br />
====Operadores====<br />
<br />
<br />
Devemos conhecer alguns símbolos que são muito utilizados, juntamente com a ordem dos cálculos efetuados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface2calc.jpg]]</div><br />
<br />
<br />
====Realce de valor====<br />
<br />
<br />
A função Realce de valor destaca os conteúdos das células através da diferenciação da cor da fonte. Para acioná-la, vá até o menu Exibir > Realce de valor ou clique na combinação de teclas Ctrl+F8.<br />
<br />
Textos são apresentados em preto, números em azul e fórmulas em verde. Essa configuração de cores é padrão para qualquer instalação do LibreOffice. Na figura abaixo, é possível identificar as três categorias. No exemplo, o conteúdo da célula B30 é a fórmula =1+1. <br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface3calc.jpg]]</div><br />
<br />
<br />
====Séries de preenchimento====<br />
<br />
<br />
Uma Série de preenchimento é uma forma fácil de fazer um preenchimento automático em uma área da planilha a partir de um valor inicial.<br />
<br />
Inicialmente, digite o valor inicial em uma célula. Com a célula selecionada, coloque o ponteiro do mouse sobre o ponto preto no canto inferior direito, chamado Alça de preenchimento, até que este se transforme em uma pequena cruz.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface4calc.jpg]]</div><br />
<br />
<br />
Arraste com o botão do mouse pressionado até a última célula da sequência desejada, como no passo 1 apresentado na tabela abaixo. Solte o botão do mouse e a área selecionada será preenchida com a sequência numérica correspondente (passo 2).<br />
<br />
Se a direção da sua seleção for horizontal para a esquerda ou vertical para cima, o Calc fará o preenchimento com decremento 1. Se a direção da sua seleção for horizontal para a direita ou vertical para baixo, o Calc fará o preenchimento com incremento 1.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:interface5calc.jpg]]</div><br />
<br />
<br />
Se você desejar criar uma sequência de preenchimento sem incremento algum, faça o mesmo procedimento, no entanto, ao clicar e arrastar com a alça de preenchimento, mantenha a tecla Ctrl pressionada.<br />
<br />
====Formatar Células====<br />
<br />
<br />
Permite que você especifique diversas opções de formatação e aplique atributos às células selecionadas.<br />
<br />
Escolha Formatar - Células<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:formatcelcalc.jpg]]</div><br />
<br />
<br />
Números<br />
Especifica as opções de formatação para a(s) célula(s) selecionada(s).<br />
<br />
<br />
Fonte<br />
Especifique a formatação e a fonte que deseja aplicar.<br />
<br />
<br />
Alinhamento<br />
Define ao opções de alinhamento para o conteúdo da célula atual, ou das células selecionadas.<br />
<br />
<br />
Bordas<br />
Define opções de borda para os objetos selecionados em Writer ou Calc.<br />
<br />
<br />
Plano de fundo<br />
Define a cor ou a figura do plano de fundo.<br />
<br />
<br />
Proteção de célula<br />
Define as opções de proteção para as células selecionadas.<br />
<br />
</font><br />
{{Collapse bottom | Aula 9}}<br />
<br />
=02/10/2018: Fórmulas simples Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 10}}<br />
<br />
===Funções===<br />
<br />
Funções são procedimentos baseados em operações e operandos que, manipulados, retornam um determinado resultado. Funções podem simplesmente representar a implementação de operadores, como a função Soma, que veremos adiante, ou, de forma mais complexa, realizar cálculos de nível avançado.<br />
<br />
<br />
Para inserir uma função através do assistente, siga os seguintes passos:<br />
<br />
Selecione a célula onde será inserida a função;<br />
<br />
Selecione uma das opções abaixo:<br />
<br />
* vá até o menu Inserir > Função ou<br />
* teclar Ctrl + F2 ou<br />
* clique sobre o botão Assistente de funções, na Barra de fórmulas.<br />
<br />
Será aberta a tela do Assistente de funções. Selecione, então, uma categoria de função na caixa Categoria;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalc.jpg]]</div><br />
<br />
<br />
Selecione o nome da função e clique no botão Próximo;<br />
<br />
Preencha os argumentos solicitados para a função;<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcao2calc.jpg]]</div><br />
<br />
<br />
Clique OK. A fórmula será inserida na célula e o resultado será contabilizado.<br />
<br />
A função também pode ser digitada. Para isto, basta iniciar coma digitação do símbolo de = e posteriormente digitar o nome da fórmula desejada, juntamente com seu parâmetros.<br />
<br />
<br />
====Funções simples====<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaosomacalc.jpg]]</div><br />
<br />
<br />
No exemplo acima, a função é SOMA, o argumento é B2:B6 (leia-se de B2 até B6) e o resultado ( a soma dos valores) é 20. <br />
<br />
Como digitar<br />
<br />
Se as células são adjacentes: =SOMA(C2:C8) <br />
<br />
Essa função soma o conteúdo de células adjacentes (sequência C2 até C8)<br />
<br />
Se as células não são adjacentes: =SOMA(B2;C3;D1).<br />
<br />
A função Média calcula o valor médio de um intervalo, adjacente ou não.<br />
<br />
=MEDIA(C2:C8)<br />
<br />
A função Mínimo retorna o menor valor de um intervalo analisado<br />
<br />
=MINIMO(C2:C8)<br />
<br />
A função Máximo retorna o maior valor de um intervalo analisado<br />
<br />
=MAXIMO(C2:C8)<br />
<br />
A função Mediana de um intervalo é o seu valor central, ou seja, que divide o intervalo em duas partes iguais<br />
<br />
=MED(C2:C8)<br />
<br />
A função Moda retorna o valor que mais se repete em um intervalo. Caso dois números ou mais tenham a mesma quantidade de repetições, o menor valor será mostrado.<br />
<br />
=MODO(C2:C8)<br />
<br />
A função Concatenar agrupa valores indicados. Esta função aceita somente ;<br />
<br />
=CONCATENAR(C2;C5;C8)<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 10}}<br />
<br />
=09/10/2018: Fórmulas Compostas Libreoffice Calc=<br />
<font size="3"><br />
{{Collapse top | Aula 11}}<br />
<br />
===Funções Lógicas===<br />
<br />
<br />
'''SE'''<br />
<br />
<br />
Esta é uma função bastante interessante pois permite ao usuário da planilha construir expressões condicionais, avaliando e apresentando diferentes resultados conforme uma cláusula avaliada.<br />
<br />
A estrutura da função SE é:<br />
<br />
=SE (CONDIÇÃO; VALOR_SE_CONDIÇÃO_VERDADEIRA; VALOR_SE_CONDIÇÃO_FALSA)<br />
<br />
O primeiro argumento é a condição. Normalmente, avaliamos o conteúdo de uma célula em relação a um dado parâmetro, como, por exemplo C4<100 ou A1=”APROVADO”.<br />
<br />
Caso a condição seja verdadeira, o segundo argumento é apresentado como resultado da função.<br />
<br />
Caso a condição seja falsa, o terceiro argumento é apresentado como resultado.<br />
<br />
No exemplo abaixo, avaliamos o valor da nota do aluno e, caso esteja acima da média, apresentamos o resultado “Aprovado”. Senão, apresentamos o resultado “Recuperação”.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcse.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.NUM'''<br />
<br />
<br />
<br />
A função CONT.NÚM conta quantos valores numéricos estão entre os ARGUMENTOS da função.<br />
<br />
Entende-se como valores numéricos: números, datas e fórmulas cujo resultado seja um número. Células vazias ou células com conteúdo de texto não são contadas na função CONT.NÚM.<br />
<br />
O formato da função é:<br />
<br />
=CONT.NÚM(ARGUMENTOS)<br />
<br />
Observe no exemplo abaixo que nem todos os alunos fizeram a primeira avaliação. Podemos usar a função CONT.NÚM para contar as notas do intervalo B11:B19 e identificar quantos alunos de fato fizeram a prova.<br />
<br />
O resultado da função =CONT.NÚM(B11:B19) será 7 pois, as duas células, correspondentes aos alunos que não fizeram a prova, estão vazias.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontnum.jpg]]</div><br />
<br />
<br />
<br />
'''CONT.SE'''<br />
<br />
<br />
<br />
A função CONT.SE tem como objetivo contar quantos valores obedecem a um determinado critério. A estrutura é bastante simples:<br />
<br />
=CONT.SE (INTERVALO; CONDIÇÃO)<br />
<br />
Os valores dentro do intervalo são avaliados um a um de acordo com a condição. O valor é contado somente se a condição for verdadeira.<br />
<br />
No exemplo abaixo, contamos quantos alunos estão com notas acima da média estabelecida.<br />
<br />
Note que usamos uma concatenação de texto para expressar adequadamente o critério, indicado no segundo argumento com a expressão “>”&B6. Ou seja, concatenamos o sinal de > com o conteúdo da célula B5.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse.jpg]]</div><br />
<br />
<br />
O resultado da função CONT.SE acima é de 7 alunos.<br />
<br />
Quando o critério ou condição for de igualdade, não precisamos usar a concatenação de texto, por exemplo:<br />
<br />
=CONT.SE(B10:B18;B6)<br />
<br />
Em sua construção mais comum, a função CONT.SE permite apenas um argumento como critério de contagem. No entanto, em casos específicos, é possível utilizar mais de um argumento através do uso de expressões regulares em fórmulas.<br />
<br />
O exemplo abaixo ilustra essa situação. A partir da tabela abaixo, desejamos obter a quantidade de cadastros de pessoas que são dos estados do Rio Grande do Sul e Santa Catarina.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontse2.jpg]]</div><br />
<br />
<br />
Uma abordagem óbvia e simples seria a soma de CONT.SE:<br />
<br />
=CONT.SE(F3:F8;"RS")+CONT.SE(F3:F8;"SC")<br />
<br />
Uma abordagem elegante poderia utilizar expressões regulares:<br />
<br />
=CONT.SE(F3:F8;"RS|SC")<br />
<br />
Onde o símbolo | (pipe) entre as siglas RS e SC representa a operação OU lógica. Logo, estamos contando apenas os valores do intervalo de F3 até F8 que são iguais a RS ou a SC.<br />
<br />
<br />
'''CONT.VALORES'''<br />
<br />
<br />
A função CONT.VALORES permite contar células preenchidas com valores de texto, número ou fórmula dentro de um intervalo.<br />
<br />
O formato da função CONT.VALORES é:<br />
<br />
=CONT.VALORES(ARGUMENTOS)<br />
<br />
No exemplo abaixo, o usuário deverá preencher o espaço amarelo com cinco códigos de produto.<br />
<br />
Para contar quantas células já foram preenchidas, utilizamos a função CONT.VALORES e o intervalo de G5:G9.<br />
<br />
O resultado da função, no exemplo abaixo, será 3.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvalores.jpg]]</div><br />
<br />
<br />
<br />
'''CONTAR.VAZIO'''<br />
<br />
<br />
CONTAR.VAZIO conta quantas células do intervalo indicado em ARGUMENTOS estão vazias, isto é, sem conteúdo algum.<br />
<br />
=CONTAR.VAZIO(ARGUMENTOS)<br />
<br />
No nosso exemplo anterior, da função CONT.VALORES, calculamos quantas células do intervalo amarelo já haviam sido preenchidas. Podemos encontrar a informação complementar (quantas células faltam ser preenchidas) através da função CONTAR.VAZIO.<br />
<br />
No exemplo, a função CONTAR.VAZIO pode ser utilizada sobre o intervalo de G5:G9. O resultado da função na célula H15 será de 2.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalccontvazio.jpg]]</div><br />
<br />
<br />
<br />
'''SOMASE'''<br />
<br />
<br />
A função SOMASE é útil para cálculos que envolvam valores totais a partir de um determinado critério. O formato da função é:<br />
<br />
=SOMASE(INTERVALO_DE_AVALIAÇÃO; CRITÉRIO; INTERVALO_DE_SOMA)<br />
<br />
Os valores do intervalo de avaliação são avaliados conforme o critério. Caso estejam de acordo com o critério indicado, o valor correspondente no intervalo de soma é somado ao resultado.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:funcaocalcsomase.jpg]]</div><br />
<br />
</font><br />
{{Collapse bottom | Aula 11}}<br />
<br />
=23/10/2018: Avaliação=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
* Copie o conteúdo abaixo:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:avaliacaocalc.jpg]]</div><br />
<br />
<br />
* Efetue os cálculos solicitados (Total dos produtos por trimestre, Valor máximo, Valor mínimo, Média e Total por mês).<br />
<br />
* Salve o arquivo com o seu nome e envia para o seguinte e-mail:<br />
<br />
ederson.luiz@ifsc.edu.br<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=06/11/2018: Vínculo entre planilhas, Gráficos, Classificação e Filtros=<br />
<font size="3"><br />
{{Collapse top | Aula 12}}<br />
<br />
===Classificação===<br />
<br />
<br />
No Libreoffice Calc, podemos efetuar a classificação de conteúdos, em ordem alfabética, de forma crescente ou decrescente.<br />
<br />
Para tanto, devemos clicar em um intervalo de banco de dados:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc.jpg]]</div><br />
<br />
<br />
Ao selecionar um intervalo de células, somente estas células serão classificadas. <br />
<br />
Se você clicar somente em uma célula sem selecionar, então todo o intervalo de banco de dados será classificado.<br />
<br />
Escolha Dados - Classificar.<br />
<br />
O intervalo de células que será classificado é mostrado em cores invertidas.<br />
<br />
Selecione as opções de classificação desejadas.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc2.jpg]]</div><br />
<br />
Clique em OK.<br />
<br />
<div style="text-align: left;">[[Arquivo:classificacaocalc3.jpg]]</div><br />
<br />
<br />
===Filtro===<br />
<br />
<br />
Os filtros e filtros avançados permitem que você assegure que somente certas linhas (registros) de um intervalo de dados fiquem visíveis. Nos documentos de planilhas do LibreOffice, há várias possibilidades para a aplicação de filtros.<br />
<br />
Uma das utilizações para a função Autofiltro, que se encontra em Dados, Filtro, Autofiltro, é a de rapidamente restringir a exibição de registros com entradas idênticas em um campo de dados.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:autofiltrocalc.jpg|900px]]</div><br />
<br />
<br />
Na caixa de diálogo Filtro padrão, você também pode definir intervalos que contenham os valores em determinados campos de dados. É possível utilizar o filtro padrão para conectar até três condições com um operador lógico E ou OU.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtropadraocalc.jpg]]</div><br />
<br />
<br />
O Filtro avançado excede a restrição de três condições e permite até oito condições de filtro. Com os filtros avançados, você insere as condições diretamente na planilha.<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:filtroavancadocalc.jpg]]</div><br />
<br />
<br />
Para remover um filtro, de forma a ver todas as células, clique dentro da área onde o filtro estiver aplicado e escolha Dados - Filtro - Redefinir filtro.<br />
<br />
Ao selecionar várias linhas de uma área onde um filtro foi aplicado, a seleção pode incluir linhas visíveis e linhas ocultas pelo filtro. Se depois você aplicar formatação, ou excluir as linhas selecionadas, esta ação só afetará as linhas visíveis. As linhas ocultas não serão afetadas.<br />
<br />
Isto é o oposto das linhas que foram ocultas manualmente pelo comando Formatar - Linhas - Ocultar linhas. Linhas ocultas manualmente são excluídas ao excluir uma seleção que as contenha.<br />
<br />
<br />
===Vínculo entre planilhas===<br />
<br />
Podemos utilizar conteúdos que se encontram em outras planilhas do documento.<br />
<br />
Para que isso ocorra, devemos utilizar como no exemplo abaixo:<br />
<br />
=Planilha2.A1<br />
<br />
Neste caso, o conteúdo da Planilha2, célula A1 será exibido onde esta fórmula for empregada.<br />
<br />
<br />
===Gráficos===<br />
<br />
<br />
No Calc, é fácil gerar gráficos a partir de qualquer planilha. <br />
<br />
Pode-se chamar o assistente de gráficos a partir do seu ícone ou do menu Inserir ... gráfico.<br />
<br />
Os gráficos no Calc estão muito fáceis e muito intuitivos e prometem-se ainda muitas melhorias para este recurso. <br />
<br />
Ao se invocar o comando Inserir Gráfico, tem-se uma tela como a seguir (previsão do gráfico e seu assistente):<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc.jpg]]</div><br />
<br />
<br />
Logo na Etapa 1 você terá vários tipos e subtipos de gráficos a escolher: barras, pizza, rede, dispersão, etc.<br />
<br />
Etapa 2 – Intervalo de Dados – aqui se informa ao Calc a área a ser computada e plotada.<br />
<br />
Etapa 3 – Série de Dados – Aqui se definem nomes e rótulos para as séries dos dados.<br />
<br />
Etapa 4 – É nesta etapa que se fazem as legendas do gráfico.<br />
<br />
A seguir, vemos um gráfico de Pizza gerado no LibreOffice Calc:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:graficocalc2.jpg]]</div><br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 12}}<br />
<br />
=13/11/2018: Introdução ao Libreoffice Impress=<br />
<font size="3"><br />
{{Collapse top | Aula 13}}<br />
<br />
===Tela Principal===<br />
<br />
O Impress é software para desenvolvimento de apresentações. Por meio deste software pode-se preparar as apresentações textuais, adicionar imagens, sons e até mesmo animação.<br />
<br />
<div style="text-align: left;">[[Arquivo:impressprincipal.jpg]]</div><br />
<br />
<br />
===Slide Mestre===<br />
<br />
Toda apresentação possui no mínimo um slide mestre. Este slide em especial leva este nome não é à toa e veremos o por quê.<br />
<br />
No slide mestre pode-se configurar e/ou alterar as formatações de uma apresentação inteira.<br />
<br />
Nem sempre as pessoas que trabalham com este tipo de ferramenta o utilizam. Na maioria das vezes por pura falta de conhecimento.<br />
<br />
Vamos começar a desenvolver nossa apresentação exatamente pelo slide mestre. Mas antes disso vamos acessar o menu [Exibir | Régua], para que a régua seja mostrada da mesma forma como é mostrada no Writer.<br />
<br />
Agora então vamos acessar o menu [Exibir | Mestre | Slide Mestre]. Após este passo, podemos observar que a interface mudou bastante:<br />
<br />
<br />
<div style="text-align: left;">[[Arquivo:impressmestre.jpg]]</div><br />
<br />
<br />
Tudo que fizermos neste slide será replicado para todos os slides que tenham este mesmo layout em nossa apresentação.<br />
<br />
<br />
Para fazer uma apresentação, não é pré-requisito configurar o slide mestre. No entanto, há alguns bons motivos para você fazê-lo:<br />
<br />
* Configurando o slide mestre, você não precisará fazer isto de novo em nenhum outro slide, pois, isto acontecerá automaticamente;<br />
* Hoje esta apresentação vai ter um fundo de tela voltado para este curso, amanhã se o autor não ficar satisfeito ou se for usá-la em outro curso, bastará fazer a alteração no slide mestre e tudo estará resolvido.<br />
<br />
<br />
</font><br />
{{Collapse bottom | Aula 13}}</div>Ederson.luizhttps://wiki.sj.ifsc.edu.br/index.php?title=Arquivo:Impressprincipal.jpg&diff=152645Arquivo:Impressprincipal.jpg2018-11-12T19:54:24Z<p>Ederson.luiz: </p>
<hr />
<div></div>Ederson.luiz