Mudanças entre as edições de "Guia de referência proccm"
(→Abrindo arquivos) |
m (inclusao de porta ssh) |
||
(38 revisões intermediárias por 5 usuários não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
− | Abaixo são | + | Abaixo são explicados conceitos básicos, acompanhados de exemplos, para o uso da rede [[linux]] da sala de computação, bem como dos servidores do CCM, o [[fleming]] e o [[proccm]]. Se está buscando informações específicas ao [[fleming]], visite o [[FAQ fleming]]. Para informações sobre a sala de computação, os servidores e linux em geral, visite o [[Guia de Sobrevivência Molecular dos Admins]]. |
+ | |||
+ | == Terminal == | ||
+ | |||
+ | Antes de mais nada, é preciso saber alguma coisa sobre como funciona o terminal. Para abrir um, abra o menu principal, vá no item ''Acessórios'', e depois em ''Terminal'', ou então aperte Mod4+T. | ||
+ | |||
+ | Você verá algo do tipo: | ||
+ | |||
+ | jose@newton:~$ | ||
+ | |||
+ | O que isso quer dizer? Que seu nome de usuário é 'jose', que você está em um computador chamado 'newton', na pasta '~' (isso é um apelido para /home/usuario), e que você é um usuário comum (o cifrão simboliza isso; se você estivesse logado como administrador, apareceria um '#' no lugar). | ||
+ | |||
+ | Se você estivesse na pasta Downloads, o que apareceria seria: | ||
+ | |||
+ | jose@newton:~/Downloads$ | ||
+ | |||
+ | Isso é o terminal. Nele você executa comandos para absolutamente qualquer tarefa do sistema - podendo inclusive combinar comandos, o que torna tremendo seu poder e versatilidade. Ele é o principal meio de interação com o sistema: intefaces gráficas te permitem interagir com o sistema do jeito que quem a programou achava que era o melhor para o usuário; o terminal, por outro lado, não sofre desse tipo de limitações. | ||
+ | |||
+ | Serão discutidas, a seguir, algumas tarefas básicas. | ||
== Acesso e senhas == | == Acesso e senhas == | ||
− | |||
− | |||
− | * | + | * Acessar o ''proccm'' |
+ | Se quiser acessar de fora da sala de computação, rode no terminal: | ||
+ | ssh -p 14641 usuario@proccm.redealuno.usp.br | ||
+ | Caso você já esteja logado numa das máquinas da sala pró-aluno, basta: | ||
+ | ssh -p 14641 proccm | ||
+ | |||
+ | * Alterar a senha | ||
No terminal, dê o comando: | No terminal, dê o comando: | ||
− | + | passwd | |
Preencha a senha antiga, e a seguir a nova, e confirme-a. A senha deve conter no mínimo 6 caracteres, incluindo necessariamente números e letras (maiúsculas ou minúsculas). | Preencha a senha antiga, e a seguir a nova, e confirme-a. A senha deve conter no mínimo 6 caracteres, incluindo necessariamente números e letras (maiúsculas ou minúsculas). | ||
− | + | == Acessando periódicos de casa == | |
− | No | + | |
− | ssh foo@proccm.redealuno.usp.br | + | É possível ter acesso a revistas assinadas pela [[USP]] de sua casa. Para configurar, há 2 partes: abrir uma conexão ''ssh'' abrindo um ''túnel'', e depois fazer com que seu navegador use esse ''túnel'' para acessar a rede. Note que configurar o navegador sem o ''túnel'' estar aberto vai impedi-lo de navegar. |
− | + | ||
− | + | === Túnel === | |
+ | O túnel redireciona uma porta do seu computador para um computador remoto (no caso, o proccm). As portas até 1024 são acessíveis apenas pelo ''root'' e podem ser usadas por serviços do sistema, portanto é recomendável usar números altos. | ||
+ | |||
+ | * No ''linux'', use | ||
+ | ssh -D12345 -p 14641 foo@proccm.redealuno.usp.br | ||
+ | supondo que você quer usar a porta 12345, e seu nome de usuário é ''foo''. | ||
− | + | '''Observação:''' isso também pode ser feito no [[fleming]], bastando substituir ''proccm.redealuno.usp.br'' por ''fleming.cecm.usp.br'', e usando o nome de usuário que você usa para logar no fleming. | |
− | |||
− | |||
− | |||
− | |||
− | * | + | * No ''windows'', você precisa baixar algum programa para conectar-se ao proccm, caso não tenha ainda. |
− | + | ** Recomendo ''putty'' (baixe [http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html aqui]). Para conectar, preencha o ''host name'' com ''proccm.redealuno.usp.br''. No menu à esquerda, vá em ''Connection -> SSH -> Tunnels'', coloque ''12345'' (ou outra porta) no campo ''source port'', ''localhost'' no campo ''destination'', selecione a opção ''Dynamic'' e então clique em ''Add''. Aí, basta ir em ''Open'' para conectar-se, colocando nome de usuário e senha quando pedir. Isso tudo pode ser simplificado salvando a sessão (menu ''Session'', a tela inicial). | |
− | |||
− | em | ||
− | |||
− | |||
− | |||
− | se | ||
− | + | === Configurando o navegador === | |
− | No | + | No Firefox, abra as ''Preferências'' (menu ''Editar'' no ''linux'', ou menu ''Ferramentas'' no ''windows''), vá para ''Definições de rede'' e clique em ''Definições...''. Na janela que abre, selecione a opção ''Configuração manual de proxy'' e preencha o campo ''SOCKS'' com ''localhost'' e a porta correspondente com ''12345'' (ou a porta que você escolheu ao criar o túnel). Dê os ''Ok's'' necessários e seja feliz. |
− | |||
− | |||
− | + | Para desconfigurar, vá até o mesmo lugar, e selecione ''Sem proxy''. | |
− | |||
− | + | == Manipulando arquivos e pastas == | |
+ | O GNOME possui um gerenciador de arquivos próprio chamado GNOME Files (antigo Nautilus), que é similar ao Explorer do Windows. Contudo, aqui focaremos em como manipular arquivos e pastas usando o terminal. | ||
+ | O diretório raíz, equivalente, numa comparação grosseira, ao ''"Meu Computador"'' do ''Windows'', é o | ||
− | |||
/ | / | ||
− | + | ||
− | + | As pastas do sistema estão localizadas abaixo dele: | |
− | + | ||
+ | :/home - contém as pastas dos usuários - por exemplo ''/home/foo'' é a pasta do usuário ''foo'' | ||
:/bin - contém os principais arquivos binários, ou seja, executáveis, ou seja, programas | :/bin - contém os principais arquivos binários, ou seja, executáveis, ou seja, programas | ||
:/sbin - idêntico ao anterior, mas a execução é permitida apenas para o ''root'' (leia mais abaixo) | :/sbin - idêntico ao anterior, mas a execução é permitida apenas para o ''root'' (leia mais abaixo) | ||
− | :/ | + | :/media, /mnt - pastas onde são montados dispositivos removíveis, em geral (pen drives, CDs, etc) |
− | |||
:/etc - contém arquivos de configuração do sistema | :/etc - contém arquivos de configuração do sistema | ||
− | :/root - | + | :/dev - contém arquivos de dispositivos físicos. Por exemplo, /dev/sda representa o primeiro disco SCSI ou SATA do sistema, /dev/sdb o segundo, etc. Mas há muitos outros dispositivos... E sim, caso esteja se perguntando: seus dispositivos são realmente vistos como arquivos, pelo sistema. Já diz o mantra, ''Everything is a file''. |
+ | :/tmp - arquivos temporários em geral, pode ser escrito por qualquer usuário | ||
+ | :/root - a home do ''root'' | ||
+ | :/var - contém arquivos "variáveis", utilizados por alguns programas | ||
+ | :/usr - armazena dados compartilhados | ||
:/boot - contém arquivos de inicialização | :/boot - contém arquivos de inicialização | ||
:/lib - contém bibliotecas (libraries) - similares aos ".dll" do ''Windows'' | :/lib - contém bibliotecas (libraries) - similares aos ".dll" do ''Windows'' | ||
− | |||
:/scratch - espaço livre para bobagens. A gravação é permitida a todos os usuários | :/scratch - espaço livre para bobagens. A gravação é permitida a todos os usuários | ||
− | |||
− | |||
− | |||
− | + | Para maiores informações, acesse [http://www.angusyoung.org/root/ este link]. | |
+ | |||
+ | Agora, alguns comandos básicos: | ||
+ | |||
+ | * Para exibir os arquivos da pasta onde você está: | ||
+ | ls | ||
+ | |||
+ | * Para entrar em alguma pasta: | ||
+ | cd PASTA | ||
* Para mover arquivos: | * Para mover arquivos: | ||
Linha 71: | Linha 94: | ||
cp ARQUIVO DESTINO | cp ARQUIVO DESTINO | ||
− | * Para copiar pastas | + | * Para copiar pastas |
cp -r PASTA DESTINO | cp -r PASTA DESTINO | ||
Linha 83: | Linha 106: | ||
rm -r PASTA | rm -r PASTA | ||
− | == | + | == Abrindo arquivos == |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | * Para editar arquivos de texto puro - algo extremamente frequente - há várias opções, e a escolha vai do gosto de cada um. Procure testar alguns para ver com qual você se identifica! | |
− | |||
− | |||
− | + | :[[vim]] (:help para ajuda) | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
:[[emacs]] (tecle Control+h t pra ajuda) | :[[emacs]] (tecle Control+h t pra ajuda) | ||
− | |||
:gedit (bastante intuitivo) | :gedit (bastante intuitivo) | ||
:nano (tudo que você precisa está descrito no menu inferior) | :nano (tudo que você precisa está descrito no menu inferior) | ||
− | Pode parecer que um editor de texto puro é uma coisa muito simples e de utilidade limitada. Entretanto, você perceberá que existem recursos muito úteis, especialmente quando se trata de programar e escrever em '' | + | Pode parecer que um editor de texto puro é uma coisa muito simples e de utilidade limitada. Entretanto, você perceberá que existem recursos muito úteis, especialmente quando se trata de programar e escrever em ''LaTeX''. |
− | + | Para abrir arquivos em geral, basta rodar '''programa nome_do_arquivo''', no terminal. Por exemplo, para abrir um arquivo .pdf, você poderia rodar 'evince arquivo.pdf'. Alguns exemplos de programas: | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | ''' | + | * Para ler arquivos de '''texto''' (puro): less, cat ou, é claro, seu editor preferido (vi, vim, emacs etc) |
+ | * Para abrir arquivos '''.pdf''': evince, xpdf, okular | ||
+ | * Para abrir documentos do '''Office''' (Word, Excel, Powerpoint e análogos): libreoffice | ||
+ | * Para abrir '''imagens''': feh, ristretto, gthumb | ||
+ | * Para rodar '''música ou vídeos''': mplayer, vlc | ||
− | + | Para descompactar arquivos de extensão: | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | * '''.tar.bz2''': tar -xjf | |
− | + | * '''.tar''': tar -xf | |
− | + | * '''.tar.gz''': tar -xzf | |
− | + | * '''.zip''': unzip | |
− | + | * '''.rar''': unrar x | |
== Comandos diversos == | == Comandos diversos == | ||
* Para abrir outra sessão do X (outro gerenciador de janelas): | * Para abrir outra sessão do X (outro gerenciador de janelas): | ||
+ | |||
+ | Vá para um terminal (Ctrl+Alt+F[1-6]), e rode | ||
startx -- :1 | startx -- :1 | ||
− | Essa sessão | + | Essa sessão ficará no ''Ctrl+Alt+F8'' (a primeira sessão é no ''Ctrl+Alt+F7''). Note que o ''default'' é abrir no Xfce, independente do gerenciador de janelas escolhido no LigthDM; para alterar isso, é necessário editar o arquivo '''/home/foo/.xsession''', colocando nele o comando para iniciar o seu gerenciador de janelas favorito. Alguns exemplos: |
+ | awesome | ||
startfluxbox | startfluxbox | ||
evilwm | evilwm | ||
− | |||
fvwm | fvwm | ||
− | |||
ratpoison | ratpoison | ||
− | ''Obs:'' Use apenas um deles, claro | + | |
+ | ''Obs:'' Use apenas um deles, claro. | ||
* Para encontrar arquivos: | * Para encontrar arquivos: | ||
− | find -iname | + | find -iname NOME |
* Para travar a tela: | * Para travar a tela: | ||
− | + | xtrlock | |
* Para ver espaço ocupado por vários arquivos: | * Para ver espaço ocupado por vários arquivos: | ||
− | du -h ALVO | + | du -h ALVO |
− | |||
− | * Para fazer contas | + | * Para fazer contas, álgebra, cálculo, e o que mais você imaginar de Matemática: |
[[maxima]] | [[maxima]] | ||
+ | |||
+ | === Exemplos mirabolantes === | ||
+ | |||
+ | E, por que não, alguns exemplos mirabolantes, para dar uma ideia melhor do que o terminal é capaz? | ||
+ | |||
+ | * Para mover todos os arquivos .mp3 da sua home que contêm a palavra 'Oasis' para a pasta Músicas: | ||
+ | |||
+ | find /home/usuario -name "*Oasis*.mp3" -exec mv {} /home/usuario/Músicas \; | ||
+ | |||
+ | * Para baixar um site inteiro: | ||
+ | |||
+ | wget --recursive --page-requisites --html-extension --convert-links --domains website.org --no-parent www.website.org/tutorials/ | ||
+ | |||
+ | * Remover todos os arquivos da forma imagemXYZ.jpg, sendo X e Y números, e Z uma letra minúscula, da pasta atual: | ||
+ | |||
+ | rm imagem[0-9][0-9][a-z].jpg | ||
+ | |||
+ | * Ordenar, tirar linhas duplicadas e tirar linhas vazias (nessa ordem) do arquivo 'aq.txt', e mandar a saída para o arquivo saida.txt: | ||
+ | |||
+ | cat aq.txt | sort | uniq | grep . > saida.txt | ||
+ | |||
+ | * Mostrar a tabuada: | ||
+ | |||
+ | for i in {1..9}; do for j in $(seq 1 $i); do echo -ne $i×$j=$((i*j))\\t;done; echo; done | ||
+ | |||
+ | Tá bom, depois dessa, chega. | ||
+ | |||
+ | == Partições públicas == | ||
+ | Todos os computadores da sala de computação possuem uma partição /scratch, aberta para todos os usuários e com o remanescente de espaço no disco que não foi usado pela instalação principal (geralmente uns 100+ GB). Recomendamos que use essa partição para guardar arquivos ou projetos grandes ao invés da sua home, se possível. | ||
+ | |||
+ | Para deixar os seus arquivos no /scratch privados (não permitir leitura, escrita ou execução por outros usuários), use o chmod: | ||
+ | chmod 700 arquivo | ||
+ | Para pastas, use o -R: | ||
+ | chmod -R 700 pasta | ||
+ | |||
+ | == LaTeX == | ||
+ | |||
+ | O [[LaTeX]] é um pacote feito para a preparação de textos impressos de alta qualidade, em especial quanto à formatação de símbolos matemáticos - essencial para fazer um bom relatório de numérico, ou um relatório de biomol com cara de sério. Ele foi desenvolvido por Leslie Lamport, a partir do programa TeX - criado pelo próprio Donald Knuth. | ||
+ | |||
+ | == Gnuplot == | ||
+ | |||
+ | O [[gnuplot]] é um programa para fazer gráficos, capaz inclusive de plotar dados extraídos de arquivos. Também muito útil para fazer relatórios. | ||
==Identificando usuários== | ==Identificando usuários== | ||
Linha 214: | Linha 210: | ||
* Para mudar as informações que aparecem sobre você, logue-se no ''proccm'' e use | * Para mudar as informações que aparecem sobre você, logue-se no ''proccm'' e use | ||
chfn | chfn | ||
− | e mude o que for necessário. Repare que não é permitido a um usuário alterar o próprio nome. | + | e mude o que for necessário. Repare que não é permitido a um usuário alterar o próprio nome. Para isso, procure algum dos [[Administradores da proaluno | admins]]. |
− | |||
− | |||
* Se você quer que seu '''plano''' seja exibido pelo comando ''finger'', basta criar no seu ''home'' um arquivo de texto puro chamado '''.plan''' e descrever ali como você pretende conquistar o mundo. | * Se você quer que seu '''plano''' seja exibido pelo comando ''finger'', basta criar no seu ''home'' um arquivo de texto puro chamado '''.plan''' e descrever ali como você pretende conquistar o mundo. | ||
+ | |||
+ | == Usando dispositivos USB == | ||
+ | |||
+ | Dispositivos USB são montados automaticamente pelo Xfce. | ||
+ | |||
+ | Note que a gravação em dispositivos USB é feita utilizando ''cache''. Portanto, retirar o ''pen drive'' sem desmontá-lo pode provocar perda de dados e até corrupção do sistema de arquivos. Para desmontar, clique com o botão direito sobre o ícone do dispositivo e clique em 'Ejetar', ou use: | ||
+ | umount /media/label | ||
+ | Sendo 'label' o nome que o sistema deu para o pen drive. | ||
== Impressão == | == Impressão == | ||
+ | |||
+ | O programa usado para gerenciar impressão nos computadores da pró-aluno é o [https://www.cups.org/documentation.html cups]. Ele possui uma interface ''web'' (acessível no ''browser'' pelo endereço localhost:631) e utilitários de linha de comando para impressão. | ||
* Para imprimir arquivos | * Para imprimir arquivos | ||
− | + | Para imprimir usando a ''Samsung'', o processo é bastante simples: basta mandar imprimir a partir do programa que você usa, seja lá qual for (firefox, evince, libreoffice, etc). | |
− | + | Via linha de comando, use o comando [https://www.cups.org/doc/options.html lp]: | |
+ | lp -d Samsung filename | ||
− | * Para | + | * Para verificar a fila de impressão da ''Samsung'' '''na máquina em que você está''': |
− | + | Na interface web, clique na aba Jobs. | |
− | + | Na linha de comando, use o comando [https://www.cups.org/doc/man-lpq.html lpq]: | |
+ | lpq -P Samsung | ||
+ | Se existe outro trabalho na frente do seu, ele será impresso antes, e apenas o ''root'' pode remover da fila trabalhos alheios. Por isso é importante removê-los caso eles fiquem pendentes, como descrito abaixo. | ||
− | * Para | + | * Para '''remover''' arquivos da fila de impressão - o que '''deve ser feito''' quando você desiste da impressão, seja por problemas com a impressora, ou falta de papel, ou outros motivos: |
+ | Na interface web, na aba Jobs. clique em Cancel Job. | ||
+ | Na linha de comando, use o comando [https://www.cups.org/doc/man-lprm.html lprm]: | ||
+ | lprm job | ||
+ | onde job é o número do trabalho que aparece na lista do ''lpq''. | ||
− | + | ===Impressão remota=== | |
− | + | ||
− | ou, para | + | '''Changelist 2023.6''' - A impressora foi trocada para uma impressora HP em Junho de 2023. Com isso, mudou o modelo da impressora (HP LaserJet Flow MFP E52645) e as configurações de whitelist (não foi feita por mim, mas creio que todo IP da USP está permitido, incluindo o eduroam). O IP da impressora continua o mesmo. Configurações antigas parecem ainda funcionar, mas se você estiver tendo problemas tente baixar um driver HP. |
− | + | ||
− | + | A rede interna do proccm (a rede na qual os computadores e o Wi-Fi "Boteco do Carlos-Magno" estão) e os IPs fornecidos pelo eduroam ambos estão whitelisted pela impressora. Assim, é possível fazer impressão a partir de computadores pessoais ou celulares, desde que você esteja conectado na rede Wi-Fi apropriada e faça a configuração no seu dispositivo pessoal. | |
− | + | ||
− | Se | + | As informações necessárias para fazer a configuração geralmente são só o endereço da máquina e seu modelo. Para a impressora HP usada desde 2023, o seu endereço IP é 143.107.90.4 (para IPP, ipp://143.107.90.4/ipp/printer), e seu modelo é HP LaserJet Flow MFP E52645. |
+ | |||
+ | * Para computadores Linux | ||
+ | Copie a configuração por CUPS feita nos computadores da sala, descrita no [[Configurando_um_PC_da_rede_proaluno#Impressora|guia de instalação]]. Essa configuração antiga parece ainda funcionar nos PCs da pró-aluno, mas eu recomendaria colocar o Make e Model como os apropriados para a nova impressora. Se você não estiver no Arch, será necessário procurar onde os drivers da impressora estão disponíveis para a sua distribuição. | ||
+ | |||
+ | * Para computadores Windows | ||
+ | Será necessário configurar a impressora manualmente, usando seu endereço IP. [https://kb.wisc.edu/smph/page.php?id=89176 Esse site] descreve o processo para o Windows 10. | ||
+ | |||
+ | * Para celulares | ||
+ | O Samsung Mobile Print não é mais necessário e, no nome da diminuição de ''bloat'', eu recomendaria desinstalar ele do seu celular. Nos celulares testados, só registrar a impressora usando a interface normal do celular parece estar funcionando, mas se não funcionar para você contate um admin (eu, Joel) para que busquemos alternativas. | ||
+ | |||
+ | Em celulares Android, a configuração normal é: | ||
− | + | # Logue no eduroam ou no Boteco do Carlos-Magno. | |
− | + | # Vá na lista de impressoras (ou nas configurações de impressora ou vá na página de impressão para algum documento, clique no nome da impressora/Salvar como PDF e selecione Todas impressoras) | |
− | + | # Selecione "Adicionar impressora" e, então, "Serviço de impressão" | |
+ | # Selecione "Adicionar impressora pelo endereço IP" | ||
+ | # Digite o IP da impressora da sala - 143.107.90.4 | ||
+ | # A impressora deve estar registrada no seu celular - use ela para imprimir. | ||
− | + | Passos análogos devem funcionar para celulares Apple -- é só ir onde você vai para adicionar impressoras e aí adicionar a impressora manualmente pelo IP (pois ela não está na mesma rede interna que o proccm ou o eduroam, então o seu celular não vai descobrir ela automáticamente). | |
− | |||
− | == | + | == Scanning == |
− | ''' | + | A impressora atual (Samsung M4080FX) também possui um ''scanner''. Para operá-lo, basta ligar a impressora, esperar ela terminar o warm-up e então usar a tela acoplada. Algumas opções de interesse: |
− | * | + | * Copy |
− | + | Essa opção faz um xerox imediato do documento. Basta colocar o documento que você quer copiar no scanner, selecionar a opção no menu inicial, escolher as configurações desejadas e apertar o botão (físico) Início. | |
− | |||
− | * | + | * Scan to USB |
− | + | Essa opção escaneia e transfere o arquivo com o documento para um pen drive. Conecte o pen drive na entrada USB do lado da tela, coloque o documento que você deseja copiar no scanner, selecione Scan to USB no menu inicial, escolha as configurações desejadas e aperte o botão Início no painel à direita da tela. Para escanear múltiplas páginas no mesmo pdf, escolha Yes quando a impressora pergunta se você deseja escanear mais páginas. | |
− | |||
− | * | + | * Scan to Email |
− | + | Essa opção escaneia e envia o arquivo com o documento para um email. Coloque o documento que você deseja copiar no scanner, escolha a opção Scan to Email no menu inicial, digite o(s) email(s) do(s) destinatário(s) desejados, escolha as configurações desejadas e aperte o botão Início no painel à direita da tela. Para escanear múltiplas páginas no mesmo pdf, escolha Yes quando a impressora pergunta se você deseja escanear mais páginas. | |
− | + | == Ver também == | |
− | * | + | * [[Pequeno manual do administrador]] |
− | + | * [[FAQ fleming]] | |
− | |||
[[Categoria: FAQs]] | [[Categoria: FAQs]] | ||
[[Categoria:Tutoriais]] | [[Categoria:Tutoriais]] | ||
+ | [[Categoria: Sala Pró-Aluno]] |
Edição atual tal como às 16h30min de 10 de junho de 2024
Abaixo são explicados conceitos básicos, acompanhados de exemplos, para o uso da rede linux da sala de computação, bem como dos servidores do CCM, o fleming e o proccm. Se está buscando informações específicas ao fleming, visite o FAQ fleming. Para informações sobre a sala de computação, os servidores e linux em geral, visite o Guia de Sobrevivência Molecular dos Admins.
Índice
Terminal
Antes de mais nada, é preciso saber alguma coisa sobre como funciona o terminal. Para abrir um, abra o menu principal, vá no item Acessórios, e depois em Terminal, ou então aperte Mod4+T.
Você verá algo do tipo:
jose@newton:~$
O que isso quer dizer? Que seu nome de usuário é 'jose', que você está em um computador chamado 'newton', na pasta '~' (isso é um apelido para /home/usuario), e que você é um usuário comum (o cifrão simboliza isso; se você estivesse logado como administrador, apareceria um '#' no lugar).
Se você estivesse na pasta Downloads, o que apareceria seria:
jose@newton:~/Downloads$
Isso é o terminal. Nele você executa comandos para absolutamente qualquer tarefa do sistema - podendo inclusive combinar comandos, o que torna tremendo seu poder e versatilidade. Ele é o principal meio de interação com o sistema: intefaces gráficas te permitem interagir com o sistema do jeito que quem a programou achava que era o melhor para o usuário; o terminal, por outro lado, não sofre desse tipo de limitações.
Serão discutidas, a seguir, algumas tarefas básicas.
Acesso e senhas
- Acessar o proccm
Se quiser acessar de fora da sala de computação, rode no terminal:
ssh -p 14641 usuario@proccm.redealuno.usp.br
Caso você já esteja logado numa das máquinas da sala pró-aluno, basta:
ssh -p 14641 proccm
- Alterar a senha
No terminal, dê o comando:
passwd
Preencha a senha antiga, e a seguir a nova, e confirme-a. A senha deve conter no mínimo 6 caracteres, incluindo necessariamente números e letras (maiúsculas ou minúsculas).
Acessando periódicos de casa
É possível ter acesso a revistas assinadas pela USP de sua casa. Para configurar, há 2 partes: abrir uma conexão ssh abrindo um túnel, e depois fazer com que seu navegador use esse túnel para acessar a rede. Note que configurar o navegador sem o túnel estar aberto vai impedi-lo de navegar.
Túnel
O túnel redireciona uma porta do seu computador para um computador remoto (no caso, o proccm). As portas até 1024 são acessíveis apenas pelo root e podem ser usadas por serviços do sistema, portanto é recomendável usar números altos.
- No linux, use
ssh -D12345 -p 14641 foo@proccm.redealuno.usp.br
supondo que você quer usar a porta 12345, e seu nome de usuário é foo.
Observação: isso também pode ser feito no fleming, bastando substituir proccm.redealuno.usp.br por fleming.cecm.usp.br, e usando o nome de usuário que você usa para logar no fleming.
- No windows, você precisa baixar algum programa para conectar-se ao proccm, caso não tenha ainda.
- Recomendo putty (baixe aqui). Para conectar, preencha o host name com proccm.redealuno.usp.br. No menu à esquerda, vá em Connection -> SSH -> Tunnels, coloque 12345 (ou outra porta) no campo source port, localhost no campo destination, selecione a opção Dynamic e então clique em Add. Aí, basta ir em Open para conectar-se, colocando nome de usuário e senha quando pedir. Isso tudo pode ser simplificado salvando a sessão (menu Session, a tela inicial).
No Firefox, abra as Preferências (menu Editar no linux, ou menu Ferramentas no windows), vá para Definições de rede e clique em Definições.... Na janela que abre, selecione a opção Configuração manual de proxy e preencha o campo SOCKS com localhost e a porta correspondente com 12345 (ou a porta que você escolheu ao criar o túnel). Dê os Ok's necessários e seja feliz.
Para desconfigurar, vá até o mesmo lugar, e selecione Sem proxy.
Manipulando arquivos e pastas
O GNOME possui um gerenciador de arquivos próprio chamado GNOME Files (antigo Nautilus), que é similar ao Explorer do Windows. Contudo, aqui focaremos em como manipular arquivos e pastas usando o terminal.
O diretório raíz, equivalente, numa comparação grosseira, ao "Meu Computador" do Windows, é o
/
As pastas do sistema estão localizadas abaixo dele:
- /home - contém as pastas dos usuários - por exemplo /home/foo é a pasta do usuário foo
- /bin - contém os principais arquivos binários, ou seja, executáveis, ou seja, programas
- /sbin - idêntico ao anterior, mas a execução é permitida apenas para o root (leia mais abaixo)
- /media, /mnt - pastas onde são montados dispositivos removíveis, em geral (pen drives, CDs, etc)
- /etc - contém arquivos de configuração do sistema
- /dev - contém arquivos de dispositivos físicos. Por exemplo, /dev/sda representa o primeiro disco SCSI ou SATA do sistema, /dev/sdb o segundo, etc. Mas há muitos outros dispositivos... E sim, caso esteja se perguntando: seus dispositivos são realmente vistos como arquivos, pelo sistema. Já diz o mantra, Everything is a file.
- /tmp - arquivos temporários em geral, pode ser escrito por qualquer usuário
- /root - a home do root
- /var - contém arquivos "variáveis", utilizados por alguns programas
- /usr - armazena dados compartilhados
- /boot - contém arquivos de inicialização
- /lib - contém bibliotecas (libraries) - similares aos ".dll" do Windows
- /scratch - espaço livre para bobagens. A gravação é permitida a todos os usuários
Para maiores informações, acesse este link.
Agora, alguns comandos básicos:
- Para exibir os arquivos da pasta onde você está:
ls
- Para entrar em alguma pasta:
cd PASTA
- Para mover arquivos:
mv ARQUIVO DESTINO
Pode ser usado também para renomear arquivos, se "DESTINO" não for uma pasta.
- Para copiar arquivos
cp ARQUIVO DESTINO
- Para copiar pastas
cp -r PASTA DESTINO
- Para apagar arquivos
rm ARQUIVO
- Para apagar pastas (vazias)
rmdir PASTA
- Para apagar pastas (não-vazias)
rm -r PASTA
Abrindo arquivos
- Para editar arquivos de texto puro - algo extremamente frequente - há várias opções, e a escolha vai do gosto de cada um. Procure testar alguns para ver com qual você se identifica!
- vim (:help para ajuda)
- emacs (tecle Control+h t pra ajuda)
- gedit (bastante intuitivo)
- nano (tudo que você precisa está descrito no menu inferior)
Pode parecer que um editor de texto puro é uma coisa muito simples e de utilidade limitada. Entretanto, você perceberá que existem recursos muito úteis, especialmente quando se trata de programar e escrever em LaTeX.
Para abrir arquivos em geral, basta rodar programa nome_do_arquivo, no terminal. Por exemplo, para abrir um arquivo .pdf, você poderia rodar 'evince arquivo.pdf'. Alguns exemplos de programas:
- Para ler arquivos de texto (puro): less, cat ou, é claro, seu editor preferido (vi, vim, emacs etc)
- Para abrir arquivos .pdf: evince, xpdf, okular
- Para abrir documentos do Office (Word, Excel, Powerpoint e análogos): libreoffice
- Para abrir imagens: feh, ristretto, gthumb
- Para rodar música ou vídeos: mplayer, vlc
Para descompactar arquivos de extensão:
- .tar.bz2: tar -xjf
- .tar: tar -xf
- .tar.gz: tar -xzf
- .zip: unzip
- .rar: unrar x
Comandos diversos
- Para abrir outra sessão do X (outro gerenciador de janelas):
Vá para um terminal (Ctrl+Alt+F[1-6]), e rode
startx -- :1
Essa sessão ficará no Ctrl+Alt+F8 (a primeira sessão é no Ctrl+Alt+F7). Note que o default é abrir no Xfce, independente do gerenciador de janelas escolhido no LigthDM; para alterar isso, é necessário editar o arquivo /home/foo/.xsession, colocando nele o comando para iniciar o seu gerenciador de janelas favorito. Alguns exemplos:
awesome startfluxbox evilwm fvwm ratpoison
Obs: Use apenas um deles, claro.
- Para encontrar arquivos:
find -iname NOME
- Para travar a tela:
xtrlock
- Para ver espaço ocupado por vários arquivos:
du -h ALVO
- Para fazer contas, álgebra, cálculo, e o que mais você imaginar de Matemática:
maxima
Exemplos mirabolantes
E, por que não, alguns exemplos mirabolantes, para dar uma ideia melhor do que o terminal é capaz?
- Para mover todos os arquivos .mp3 da sua home que contêm a palavra 'Oasis' para a pasta Músicas:
find /home/usuario -name "*Oasis*.mp3" -exec mv {} /home/usuario/Músicas \;
- Para baixar um site inteiro:
wget --recursive --page-requisites --html-extension --convert-links --domains website.org --no-parent www.website.org/tutorials/
- Remover todos os arquivos da forma imagemXYZ.jpg, sendo X e Y números, e Z uma letra minúscula, da pasta atual:
rm imagem[0-9][0-9][a-z].jpg
- Ordenar, tirar linhas duplicadas e tirar linhas vazias (nessa ordem) do arquivo 'aq.txt', e mandar a saída para o arquivo saida.txt:
cat aq.txt | sort | uniq | grep . > saida.txt
- Mostrar a tabuada:
for i in {1..9}; do for j in $(seq 1 $i); do echo -ne $i×$j=$((i*j))\\t;done; echo; done
Tá bom, depois dessa, chega.
Partições públicas
Todos os computadores da sala de computação possuem uma partição /scratch, aberta para todos os usuários e com o remanescente de espaço no disco que não foi usado pela instalação principal (geralmente uns 100+ GB). Recomendamos que use essa partição para guardar arquivos ou projetos grandes ao invés da sua home, se possível.
Para deixar os seus arquivos no /scratch privados (não permitir leitura, escrita ou execução por outros usuários), use o chmod:
chmod 700 arquivo
Para pastas, use o -R:
chmod -R 700 pasta
LaTeX
O LaTeX é um pacote feito para a preparação de textos impressos de alta qualidade, em especial quanto à formatação de símbolos matemáticos - essencial para fazer um bom relatório de numérico, ou um relatório de biomol com cara de sério. Ele foi desenvolvido por Leslie Lamport, a partir do programa TeX - criado pelo próprio Donald Knuth.
Gnuplot
O gnuplot é um programa para fazer gráficos, capaz inclusive de plotar dados extraídos de arquivos. Também muito útil para fazer relatórios.
Identificando usuários
- Para saber quem é o usuário foo, dê o comando
finger foo
A busca é feita no nome completo e username de todos os usuários, mas apenas localiza palavras inteiras (por exemplo: "finger a" retorna um número pequeno de usuários).
- Para mudar as informações que aparecem sobre você, logue-se no proccm e use
chfn
e mude o que for necessário. Repare que não é permitido a um usuário alterar o próprio nome. Para isso, procure algum dos admins.
- Se você quer que seu plano seja exibido pelo comando finger, basta criar no seu home um arquivo de texto puro chamado .plan e descrever ali como você pretende conquistar o mundo.
Usando dispositivos USB
Dispositivos USB são montados automaticamente pelo Xfce.
Note que a gravação em dispositivos USB é feita utilizando cache. Portanto, retirar o pen drive sem desmontá-lo pode provocar perda de dados e até corrupção do sistema de arquivos. Para desmontar, clique com o botão direito sobre o ícone do dispositivo e clique em 'Ejetar', ou use:
umount /media/label
Sendo 'label' o nome que o sistema deu para o pen drive.
Impressão
O programa usado para gerenciar impressão nos computadores da pró-aluno é o cups. Ele possui uma interface web (acessível no browser pelo endereço localhost:631) e utilitários de linha de comando para impressão.
- Para imprimir arquivos
Para imprimir usando a Samsung, o processo é bastante simples: basta mandar imprimir a partir do programa que você usa, seja lá qual for (firefox, evince, libreoffice, etc). Via linha de comando, use o comando lp:
lp -d Samsung filename
- Para verificar a fila de impressão da Samsung na máquina em que você está:
Na interface web, clique na aba Jobs. Na linha de comando, use o comando lpq:
lpq -P Samsung
Se existe outro trabalho na frente do seu, ele será impresso antes, e apenas o root pode remover da fila trabalhos alheios. Por isso é importante removê-los caso eles fiquem pendentes, como descrito abaixo.
- Para remover arquivos da fila de impressão - o que deve ser feito quando você desiste da impressão, seja por problemas com a impressora, ou falta de papel, ou outros motivos:
Na interface web, na aba Jobs. clique em Cancel Job. Na linha de comando, use o comando lprm:
lprm job
onde job é o número do trabalho que aparece na lista do lpq.
Impressão remota
Changelist 2023.6 - A impressora foi trocada para uma impressora HP em Junho de 2023. Com isso, mudou o modelo da impressora (HP LaserJet Flow MFP E52645) e as configurações de whitelist (não foi feita por mim, mas creio que todo IP da USP está permitido, incluindo o eduroam). O IP da impressora continua o mesmo. Configurações antigas parecem ainda funcionar, mas se você estiver tendo problemas tente baixar um driver HP.
A rede interna do proccm (a rede na qual os computadores e o Wi-Fi "Boteco do Carlos-Magno" estão) e os IPs fornecidos pelo eduroam ambos estão whitelisted pela impressora. Assim, é possível fazer impressão a partir de computadores pessoais ou celulares, desde que você esteja conectado na rede Wi-Fi apropriada e faça a configuração no seu dispositivo pessoal.
As informações necessárias para fazer a configuração geralmente são só o endereço da máquina e seu modelo. Para a impressora HP usada desde 2023, o seu endereço IP é 143.107.90.4 (para IPP, ipp://143.107.90.4/ipp/printer), e seu modelo é HP LaserJet Flow MFP E52645.
- Para computadores Linux
Copie a configuração por CUPS feita nos computadores da sala, descrita no guia de instalação. Essa configuração antiga parece ainda funcionar nos PCs da pró-aluno, mas eu recomendaria colocar o Make e Model como os apropriados para a nova impressora. Se você não estiver no Arch, será necessário procurar onde os drivers da impressora estão disponíveis para a sua distribuição.
- Para computadores Windows
Será necessário configurar a impressora manualmente, usando seu endereço IP. Esse site descreve o processo para o Windows 10.
- Para celulares
O Samsung Mobile Print não é mais necessário e, no nome da diminuição de bloat, eu recomendaria desinstalar ele do seu celular. Nos celulares testados, só registrar a impressora usando a interface normal do celular parece estar funcionando, mas se não funcionar para você contate um admin (eu, Joel) para que busquemos alternativas.
Em celulares Android, a configuração normal é:
- Logue no eduroam ou no Boteco do Carlos-Magno.
- Vá na lista de impressoras (ou nas configurações de impressora ou vá na página de impressão para algum documento, clique no nome da impressora/Salvar como PDF e selecione Todas impressoras)
- Selecione "Adicionar impressora" e, então, "Serviço de impressão"
- Selecione "Adicionar impressora pelo endereço IP"
- Digite o IP da impressora da sala - 143.107.90.4
- A impressora deve estar registrada no seu celular - use ela para imprimir.
Passos análogos devem funcionar para celulares Apple -- é só ir onde você vai para adicionar impressoras e aí adicionar a impressora manualmente pelo IP (pois ela não está na mesma rede interna que o proccm ou o eduroam, então o seu celular não vai descobrir ela automáticamente).
Scanning
A impressora atual (Samsung M4080FX) também possui um scanner. Para operá-lo, basta ligar a impressora, esperar ela terminar o warm-up e então usar a tela acoplada. Algumas opções de interesse:
- Copy
Essa opção faz um xerox imediato do documento. Basta colocar o documento que você quer copiar no scanner, selecionar a opção no menu inicial, escolher as configurações desejadas e apertar o botão (físico) Início.
- Scan to USB
Essa opção escaneia e transfere o arquivo com o documento para um pen drive. Conecte o pen drive na entrada USB do lado da tela, coloque o documento que você deseja copiar no scanner, selecione Scan to USB no menu inicial, escolha as configurações desejadas e aperte o botão Início no painel à direita da tela. Para escanear múltiplas páginas no mesmo pdf, escolha Yes quando a impressora pergunta se você deseja escanear mais páginas.
- Scan to Email
Essa opção escaneia e envia o arquivo com o documento para um email. Coloque o documento que você deseja copiar no scanner, escolha a opção Scan to Email no menu inicial, digite o(s) email(s) do(s) destinatário(s) desejados, escolha as configurações desejadas e aperte o botão Início no painel à direita da tela. Para escanear múltiplas páginas no mesmo pdf, escolha Yes quando a impressora pergunta se você deseja escanear mais páginas.