0 votos

¿Cómo puedo eliminar un enlace simbólico de /sbin?

Quería eliminar un enlace simbólico de /sbin/ directorio. El enlace es swapon que está vinculado a busybox binario en el mismo directorio.

Al intentar eliminarlo por primera vez, decía "Sistema de archivos de sólo lectura". Así que volví a montar / con lectura-escritura utilizando este comando

mount -o remount,rw /

Entonces pude quitarlo. Lo comprobé con which swapon así como el uso de ls . Todo bien. Ahora, cuando he reiniciado el teléfono, el enlace ha aparecido en el mismo lugar por arte de magia.

¿Me estoy perdiendo algo? ¿Qué está pasando aquí? ¿Cómo puedo eliminar este enlace?

Esta es la salida de mount en caso de que sea necesario

~ # mount
rootfs on / type rootfs (ro,relatime)
tmpfs on /dev type tmpfs (rw,nosuid,relatime,mode=755)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
proc on /proc type proc (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
none on /acct type cgroup (rw,relatime,cpuacct)
none on /sys/fs/cgroup type tmpfs (rw,relatime,mode=750,gid=1000)
none on /sys/fs/cgroup/memory type cgroup (rw,relatime,memory)
tmpfs on /mnt/asec type tmpfs (rw,relatime,mode=755,gid=1000)
tmpfs on /mnt/obb type tmpfs (rw,relatime,mode=755,gid=1000)
none on /dev/cpuctl type cgroup (rw,relatime,cpu)
tmpfs on /dev/shm type tmpfs (rw,relatime,mode=755,gid=1000)
/dev/block/mmcblk0p6 on /modemfs type ext4 (rw,nosuid,nodev,noatime,errors=panic,user_xattr,acl,barrier=1,nomblk_io_submit,data=ordered)
/dev/block/mmcblk0p10 on /system type ext4 (ro,relatime,errors=panic,user_xattr,acl,barrier=1,data=ordered)
/dev/block/mmcblk0p11 on /data type ext4 (rw,nosuid,nodev,noatime,errors=panic,user_xattr,acl,barrier=1,journal_async_commit,nomblk_io_submit,data=ordered,noauto_da_alloc)
/dev/block/mmcblk0p12 on /cache type ext4 (rw,nosuid,nodev,noatime,errors=panic,user_xattr,acl,barrier=1,nomblk_io_submit,data=ordered)
/dev/block/vold/179:97 on /mnt/media_rw/sdcard1 type vfat (rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro)
/dev/fuse on /storage/sdcard1 type fuse (rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other)
/dev/block/vold/179:14 on /mnt/media_rw/sdcard0 type vfat (rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro)
/dev/block/vold/179:14 on /mnt/secure/asec type vfat (rw,dirsync,nosuid,nodev,noexec,relatime,uid=1023,gid=1023,fmask=0007,dmask=0007,allow_utime=0020,codepage=cp437,iocharset=iso8859-1,shortname=mixed,utf8,errors=remount-ro)
/dev/fuse on /storage/sdcard0 type fuse (rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other)
/dev/block/dm-0 on /mnt/asec/com.zodinplex.naturesound-1 type ext4 (ro,dirsync,nosuid,nodev,noatime,user_xattr,acl,barrier=1)

0 votos

Puedes darle una oportunidad a Root Explorer/Total Commander.

2voto

Mark Yisri Puntos 9

Los dispositivos Android tienen una forma única de arrancar, utilizando un blob binario llamado boot.img que contiene el kernel, y un ramdisk. Este ramdisk contendrá el /sbin enlace simbólico que desea eliminar.

Para eliminar esto, probablemente necesitará una imagen de actualización, o tendrá que extraer boot.img de su dispositivo. Puedo buscar o reunir instrucciones para esto si lo desea.

Una vez que tenga los datos extraídos boot.img Luego tienes que extraer la imagen de ramdisk de ella, hacer tus cambios, y volver a juntar todo.

Luego viene la parte peligrosa, a menos que sepas que no puedes brickear tu teléfono. Tendrás que flashear esto (¡espero que funcione!) boot.img para que Android utilice el nuevo ramdisk.

Así que, por ahora, podría ser mejor averiguar si hay un init script en el /system directorio en el que se podría eliminar el enlace simbólico cada vez que se inicie el teléfono.

Actualización: o, como has hecho tú, podrías simplemente cambiar el init script que llama a swapon para llamar a otro.

0 votos

Gracias por traer esto. No estaba al tanto de esto. Puede que intente cambiar esto, pero he resuelto el problema llamando explícitamente a otro enlace simbólico /system/bin/swapon sin depender de los valores por defecto de env swapon (que estaba en /sbin ). Creo que, lo probaré más tarde y te informaré

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X