Lista de Comandos FreeBSD por Categoria

Aquela guia de consulta rápida para sempre que precisar lembrar de algo.


Lista de Comandos FreeBSD por Categoria

Salve, rapaziada! Segue abaixo um Cheat Sheet do FreeBSD separados por categoria.


Comandos de Montagem

  • Montar o sistema de arquivos MS-DOS (stick USB, unidade FAT32 externa)
sudo mount_msdosfs [-o large] /dev/ad0s1 /mnt
  • Montar ISO 9660 usando disco de memória
sudo mount -t cd9660 /dev/`mdconfig -f <image.iso>` /mnt
  • Montar Linux procfs
sudo mkdir -p /proc
sudo mount -t procfs proc /proc

  • Montar Linux linprocfs
sudo mkdir -p /compat/linux/proc
sudo mount -t linprocfs linproc /compat/linux/proc
  • Montar descritor de arquivo fs
sudo mount -t fdescfs fdesc /dev/fd

Comandos de atualização

  • Executar a atualização binária do FreeBSD
sudo freebsd-update fetch
sudo freebsd-update upgrade -r <release>
sudo freebsd-update install

Comandos do pkg

  • Instalar um pacotes
sudo pkg install [package]
  • Remover um pacote
sudo pkg delete [package]
  • Atualizar bancos de dados de pacotes do repositório
sudo pkg update
sudo pkg [-d] update
  • Remover depedências não mais utilizadas
sudo pkg autoremove
  • Atualizar pacotes para uma nova versão
sudo pkg upgrade [-f]
  • Atualizar banco de dados vuln.xml
sudo pkg audit -F
  • O pkg está instalado?
pkg info|grep <pkg>
  • Exibir informações do pacote
pkg info <pkg>
pkg show <pkg>
  • Bloquear pacote para a versão atual e exibir pacotes bloqueados
pkg lock <pkg>
pkg lock -l
  • Limpar o cache local
sudo pkg clean -y
  • Exibir estatísticas de pacotes
pkg stats

  • Encontre o pacote de instalação do arquivo:
pkg which /usr/local/bin/vim
  • Encontre o arquivo se o pacote não estiver instalado:
sudo pkg install pkg-provides
sudo pkg provides -uf
pkg provides /path/to/file

Comandos de Rede

  • TCP sockets abertos (LISTEN, ESTABLISHED, CLOSE_WAIT)
sudo netstat -p tcp -an
sudo sockstat -P tcp -a
  • Consultar o script tcp dtrace em: /usr/share/dtrace
cd /usr/share/dtrace
sudo tcpconn
sudo tcpdebug
sudo tcpstate
sudo tcptrack

Comandos dos módulos do kernel

  • Lista os módulos do kernel carregados
sudo kldstat [-v]
  • Módulo de carga do kernel (HW thermal sensors)
sudo kldload <module>
sudo kldload coretemp
  • Gerar hints(dicas) para o carregador de boot
sudo kldxref [v] /boot/kernel /boot/modules
sudo kldxref -R /boot
  • Despejar(Dump) a configuração do kernel em execução
sysctl -n kern.conftxt
config -x /boot/kernel/kernel

Comandos para o ports

  • Atualizar e extrair snapshots
sudo mkdir -p /usr/ports
sudo portsnap fetch extract
  • Procurar um ports na árvore
cd /usr/ports/*/*/<portname>
make -C /usr/ports search name=<portname>
make -C /usr/ports search name=<portname> display=name,path

sudo pkg install psearch
psearch <portname>
  • Exibir variáveis ​​do ports
make -C /usr/ports/editor/vim -V MAINTAINER -V PORTVERSION
make -C /usr/ports/editor/vim -V WRKSRC -V WRKDIR
  • Buscar distfile(s)
cd /usr/ports/editor/vim && make fetch extract
cd work
  • Gerar novamente a hash de informações do(s) distfile(s)
make -C /usr/ports/editor/vim makesum
  • Alterar a configuração do KNOB/Options
make -C /usr/ports/editor/vim showconfig
make -C /usr/ports/editor/vim config
make -C /usr/ports/editor/vim rmconfig

make check-license check-categories check-deprecated check-vulnerable security-check check-sanity check-plist check-orphans check-config
  • Listar os destinos do Makefile dos ports
grep -E '^[^${\.#]+:$' /usr/ports/Mk/bsd.port.mk |cut -d ':' -f1 | sort -u
make -C /usr/ports -V .ALLTARGETS
  • Listar dependências para reconstruir
make all-depends-list
make build-depends-list
make run-depends-list
  • Reconstruir ports sem construir suas dependências
make missing-packages # list missing packages
make install-missing-packages
make install clean

Comandos para o src

  • Extrair /usr/src alvos Makefile com descrições (lista todos os alvos disponíveis)
grep '^# [a-z].*- [A-Z].*' /usr/src/Makefile | sed 's,^# ,,' | sort
make -C /usr/src -V .ALLTARGETS
  • Entre na pasta do código de fonte do utilitário binário userland (por exemplo, ls)
cd `where -sq ls`

Comandos do poudriere

  • Criar um jail
sudo poudriere jail -c -j <jail> -v 12.2-RELEASE -a <arch> -M ftp -p <ptree>
sudo poudriere jail -c -j 12amd64 -v 12.2-RELEASE -a amd64 -M ftp -p portsdir
  • Deletar um jail
sudo poudriere jail -d -j <jail> -C all
sudo poudriere jail -d -j 12amd64 -C all
  • Listar jail(s)
sudo poudriere jail -l
sudo poudriere jail -l [-n] [-q]
  • Upgrade jail
sudo poudriere jail -u -j <jail>
sudo poudriere jail -u -j <jail> -t 12.1
  • Criar ports
sudo poudriere ports -c -m null -M ${PWD}/svn/ports -p portsdir -v
sudo poudriere ports -l
  • Lista árvore do ports
sudo poudriere ports -l
sudo poudriere ports -l [-n] [-q]
  • Construir um ports de teste
sudo poudriere testport -o <origin>/<port> -p portsdir -n # dry run
sudo poudriere testport -o editor/vim -p portsdir -v # verbose

Comandos de desenvolvimento

  • Obter sources
git clone --depth 1 https://github.com/freebsd/freebsd.git /usr/src
git clone --depth 1 https://git.freebsd.org/src.git /usr/src

Para uma branch específica, por ex. Versão 12.x:

git checkout -b releng-12.2 freebsd/releng/12.2
git switch -c releng-12.2 freebsd/releng/12.2
  • Baixar ports
git clone --depth 1 https://github.com/freebsd/freebsd-ports.git /usr/ports
git clone --depth 1 https://git.freebsd.org/ports.git /usr/ports

Comandos para Wireless (Redes sem fio)

  • Reiniciar a rede wi-fi
sudo service wpa_supplicant restart wlan0
  • Listar os dispositivos Wireless
sysctl net.wlan.devices
  • Listar ponto de acesso SSID sem fio (com dispositivo wlan0)
sudo ifconfig [-v] wlan0 list scan
  • Debugar a “pilha”(stack) da rede wireless
sudo sysctl debug.iwi=1
sudo sysctl hw.wi.debug=1
sudo sysctl net.wlan.debug=1

Comandos de construção

  • Construir o “mundo”(world) e o kernel
cd /usr/src
sudo nice -n -20 make -j`sysctl -n hw.ncpu` -DNO_CLEAN -DKERNFAST buildworld buildkernel | tee -a build.log

  • Instalar o Kernel (debug)
cd /usr/src
sudo make installworld installkernel
sudo make installkernel.debug
  • Atualizar configurações do /etc
sudo etcupdate
sudo mergemaster -ui

Comandos de hardware

  • Dispositivos PCI
sudo pciconf -vl
sudo pkg install pciutils
sudo lspci [-v]
  • Dispositivos USB
sudo usbconfig list
sudo usbconfig dump_all_desc
sudo pkg install usbutils
sudo lsusb [-v]
  • Informações da CPU
sudo dmesg
sudo dmesg | sed -n '/^CPU:/,/^real/p'
sudo sysctl hw.model hw.ncpu
sudo sysctl kern.smp.cpus

Comandos de memória

  • Memória virtual
vmstat -c 1
sysctl hw.realmem hw.physmem
top -bt 0
  • Processar mapeamentos de memória
procstat vm <pid>
cat /proc/<pid>/map
cat /compat/linux/proc/<pid>/maps

Comandos de som

  • Dispositivos de som
sudo cat /dev/sndstat
sudo sysctl dev.pcm
  • Desativar beep
sudo sysctl hw.syscons.bell=0
sudo sysctl kern.vt.enable_bell=0
  • Volume via mixer
mixer vol 100

Comandos de Entrada e Saída (I/O, E/S)

  • Estatísticas de Entrada e Saída para leitura/gravação de dispositivo
iostat [-x]
iostat -x -w 1 # watch mode

Comandos para/do ZFS

  • Importar ZFS Pools
zpool import -R /mnt zroot
zpool import -R /mnt -e readonly=on zroot # readonly
  • Lista e montagem de conjuntos de dados ZFS
zfs list
mount -t vfs zroot/usr/home /tmp/home

Links úteis


freebsd


Compartilhe


Nosso canal no Youtube

Inscreva-se


Marcos Oliveira

Marcos Oliveira

Desenvolvedor de software
https://github.com/terroo

Artigos Relacionados




Crie Aplicativos Gráficos para Linux e Windows com C++

Aprenda C++ Moderno e crie Games, Programas CLI, GUI e TUI de forma fácil.

Saiba Mais

Receba as novidades no seu e-mail!

Após cadastro e confirmação do e-mail, enviaremos semanalmente resumos e também sempre que houver novidades por aqui para que você mantenha-se atualizado!


caso queira entrar em contato conosco, envie-nos um e-mail.