Uso do Jupyter Lab
1. Instalação do Jupyter Lab
1.1. Jupyter Lab
Utilize o comando abaixo para instalar o Jupyter Lab: se o download do Jupyter Lab estiver lento, pode utilizar uma fonte específica para a instalação
sudo apt update
sudo apt install python3-pip -y
sudo pip3 install --upgrade pipsudo pip3 install jupyterlab
# Fonte Tsinghua: pip3 install jupyterlab -i https://pypi.tuna.tsinghua.edu.cn/simple
# Fonte Alibaba Cloud: sudo pip3 install jupyterlab -i https://mirrors.aliyun.com/pypi/simple/



1.2. Node.js
Utilize o comando abaixo para instalar a versão mais recente do Node.js:
sudo apt install curl -y
sudo curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install nodejs -y
Verificar a versão:
node -v && npm -v
2. Arranque do Jupyter Lab
Antes de arrancar o Jupyter Lab, é necessário definir o navegador predefinido do sistema, caso contrário, aparecerão algumas mensagens no terminal.
2.1. Definir o navegador predefinido
Abra o navegador Chromium do sistema e escolha definir como navegador predefinido:


2.2. Arrancar o Jupyter Lab
jupyter lab
# Arrancar sem navegador jupyter lab --no-browser
# Arrancar como administrador sudo jupyter lab --allow-root

2.3. Acesso pela máquina anfitriã
A máquina anfitriã refere-se ao acesso a partir do sistema da placa Jetson; aceda diretamente através de http://localhost:8888/:
http://localhost:8888/

3. Configuração do Jupyter Lab
Configure no Jupyter Lab o acesso pela rede local, a palavra-passe de acesso, o arranque automático, entre outras operações.
3.1. Acesso pela rede local
Configure os dispositivos na mesma rede local para acederem introduzindo IP:8888 no navegador!
Atenção: geralmente não é possível aceder pela rede local de uma rede de campus; pode testar trocando para o hotspot de um portátil/telemóvel
Por exemplo, IP da placa: 192.168.0.105; podemos aceder ao Jupyter Lab da placa introduzindo 192.168.0.105:8888 no navegador de um dispositivo na mesma rede local
3.1.1. Criar o ficheiro de configuração
sudo jupyter lab --generate-configLocal do ficheiro de configuração gerado automaticamente: Writing default config to: /root/.jupyter/jupyter_lab_config.py
3.1.2. Modificar o ficheiro de configuração
sudo gedit /root/.jupyter/jupyter_lab_config.pyModificar o conteúdo: após a modificação, clique em guardar e feche o ficheiro.
Atenção se há ou não o símbolo # antes do código, para garantir que a configuração tenha efeito
# Permitir que pedidos de qualquer origem acedam ao servidor Jupyter Lab
c.ServerApp.allow_origin = '*'
# 0.0.0.0 indica vincular todas as interfaces de rede disponíveis, permitindo o acesso a partir de qualquer endereço
c.ServerApp.ip = '0.0.0.0'
# Permitir arrancar o servidor Jupyter Lab como utilizador root
c.ServerApp.allow_root = True
# Modificar a porta predefinida para evitar conflitos
c.ServerApp.port = 8888
3.2. Configurar a palavra-passe de acesso
No terminal, introduza o comando para definir a palavra-passe; é necessário introduzir duas vezes, e o conteúdo introduzido não será apresentado ao introduzir a palavra-passe!
sudo jupyter lab passwordLocal do ficheiro de configuração gerado automaticamente: [JupyterPasswordApp] Wrote hashed password to /root/.jupyter/jupyter_server_config.json

3.3. Serviço de arranque automático
3.3.1. Editar o ficheiro de serviço
sudo gedit /etc/systemd/system/jupyterlab.serviceAdicionar o conteúdo: após adicionar, clique em guardar e feche o ficheiro
[Unit]
Description=jupyterlab
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/jupyter-lab
config=/root/.jupyter/jupyter_lab_config.py --no-browser
User=root
Group=root
WorkingDirectory=/home/jetson/
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.targetroot: o nome de utilizador do sistema
ExecStart: o comando para arrancar o Jupyter lab, altere para o caminho de instalação do JupyterLab
config: altere para o caminho do ficheiro de configuração do JupyterLab
WorkingDirectory: o diretório de trabalho aberto ao arrancar o Jupyter-lab, pode ser alterado conforme necessário (recomenda-se alterar para o diretório do utilizador)
Verificar o caminho de instalação do Jupyter-lab: which jupyter-lab
Caminho do ficheiro de configuração: consulte o caminho do ficheiro de configuração gerado acima

3.3.2. Definir o serviço de arranque automático
Serviço de arranque automático
sudo systemctl enable jupyterlab
# Desativar o arranque automático systemctl disable jupyterlabArrancar o serviço
sudo systemctl start jupyterlab
# Parar o serviço sudo systemctl stop jupyterlabVerificar o estado do serviço
systemctl status jupyterlab
Verificar o arranque automático
Após reiniciar o sistema, de acordo com o IP do sistema, aceda ao IP da placa:8888 utilizando um dispositivo na mesma rede local.
No primeiro acesso, é necessário introduzir a palavra-passe; a palavra-passe é a informação definida nos passos anteriores;
No momento da captura, o IP da placa era 192.168.0.105, portanto dispositivos na mesma rede local podem aceder a 192.168.0.105:8888

4. Utilização do Jupyter Lab
4.1. Kernel
Recomenda-se reiniciar o kernel e limpar as informações de saída de todas as células sempre que executar o programa ou quando o programa apresentar anomalias:

4.2. Executar o programa
Abra pelo Jupyter Lab o ficheiro do programa que deseja executar; ao executar o programa, as células são executadas por ordem, de cima para baixo:
4.2.1. Em execução
O [*] exibido no canto superior esquerdo da célula indica que está em execução:

4.2.2. Execução concluída
O [número] exibido no canto superior esquerdo da célula representa a ordem de execução: por exemplo, [1] → o programa executou o código dessa célula na primeira vez


