Tenho brincado com a criação de imagens ISO personalizadas e tive sucesso. Porém, durante o processo me deparei com uma situação que não entendo.
Meu sistema é Ubuntu 20.04.6 LTS Desktop.
Basicamente, depois de executar sudo unsquashfs ubuntu-server-minimal.squashfs
um diretório e listar o conteúdo do diretório pai em que o diretório squashfs-root resultante está, recebo o seguinte com vários avisos:
$ ls -l
total 2231416
dr-xr-xr-x 9 mike mike 4096 Aug 9 22:06 extracted-iso
drwxr-xr-x 18 root root 4096 Aug 9 17:20 squashfs-root
-rw-rw-r-- 1 mike mike 2133391360 Sep 18 18:13 ubuntu-22.04.3-live-server-amd64.iso
-r--r--r-- 1 mike mike 151560192 Sep 18 18:15 ubuntu-server-minimal.squashfs
warning: could not open directory 'iso/squashfs-root/var/lib/polkit-1/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/lib/private/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/lib/apt/lists/partial/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/lib/snapd/void/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/log/private/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/cache/private/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/cache/pollinate/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/cache/ldconfig/': Permission denied
warning: could not open directory 'iso/squashfs-root/root/': Permission denied
warning: could not open directory 'iso/squashfs-root/run/lock/lvm/': Permission denied
warning: could not open directory 'iso/squashfs-root/run/lvm/': Permission denied
warning: could not open directory 'iso/squashfs-root/etc/polkit-1/localauthority/': Permission denied
warning: could not open directory 'iso/squashfs-root/etc/ssl/private/': Permission denied
E é aqui que estou confuso. Eu sei que squashfs-root pertence ao root, mas todos têm acesso de leitura. Em segundo lugar, o número de avisos aumenta após a criação de várias montagens necessárias ao chroot
entrar no squashfs-root , como a seguir:
mount --bind /etc/resolv.conf squashfs-root/etc/resolv.conf
mount -t proc none squashfs-root/proc
mount -t sysfs none squashfs-root/sys
mount -t devpts none squashfs-root/dev/pts
Além disso, esses avisos agora estão presentes em qualquer comando como lsb_release -a
e pwd
:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 20.04.6 LTS
Release: 20.04
Codename: focal
warning: could not open directory 'iso/squashfs-root/var/lib/polkit-1/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/lib/private/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/lib/apt/lists/partial/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/lib/snapd/void/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/log/private/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/cache/private/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/cache/pollinate/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/cache/ldconfig/': Permission denied
warning: could not open directory 'iso/squashfs-root/root/': Permission denied
warning: could not open directory 'iso/squashfs-root/run/lock/lvm/': Permission denied
warning: could not open directory 'iso/squashfs-root/run/lvm/': Permission denied
warning: could not open directory 'iso/squashfs-root/etc/polkit-1/localauthority/': Permission denied
warning: could not open directory 'iso/squashfs-root/etc/ssl/private/': Permission denied
$ pwd
/home/mike/custom-iso/iso
warning: could not open directory 'iso/squashfs-root/var/lib/polkit-1/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/lib/private/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/lib/apt/lists/partial/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/lib/snapd/void/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/log/private/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/cache/private/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/cache/pollinate/': Permission denied
warning: could not open directory 'iso/squashfs-root/var/cache/ldconfig/': Permission denied
warning: could not open directory 'iso/squashfs-root/root/': Permission denied
warning: could not open directory 'iso/squashfs-root/run/lock/lvm/': Permission denied
warning: could not open directory 'iso/squashfs-root/run/lvm/': Permission denied
warning: could not open directory 'iso/squashfs-root/etc/polkit-1/localauthority/': Permission denied
warning: could not open directory 'iso/squashfs-root/etc/ssl/private/': Permission denied
- Se eu
sudo su
, todos os avisos desaparecem. - Depois de excluir squashfs-root com
sudo rm -fr squashfs-root
, todos os avisos desaparecem.
Então, o que está acontecendo aqui? Por que estou recebendo esses avisos? E como eles podem ser suprimidos? Estou fazendo algo errado em relação a unsquashfs
?
Atualizar:
Como teste, criei duas VMs no VirtualBox, uma com Ubuntu 20.04.6 LTS Desktop e outra com 22.04.3 LTS Desktop. Baixei o mesmo ISO, extraí e descompactei o squashfs como antes para ambos os sistemas. Não recebo nenhum aviso em nenhuma das VMs.
Parece que há algo errado com meu sistema atual e preciso de ajuda para solucionar o problema. Alguma ideia de por onde começar?
Eu resolvi o problema.
Percebi que o diretório pai
iso/squashfs-root
tinha um repositório Git eiso/squashfs-root
não foi adicionado ao arquivo .gitignore . Como resultado, os avisos eram, na verdade, do Git e não do sistema operacional. Então simplesmente adicionei este diretório ao .gitignore e os avisos desapareceram.