# root

Published articles for root.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## Proxmox VE Helper-Scripts: guía y buenas prácticas

DevFeed: [Proxmox VE Helper-Scripts: guía y buenas prácticas](<https://devfeed.tech/articles/proxmox-ve-helper-scripts-guia-y-buenas-practicas-34076.md>)

Original publisher: [Read original article](<https://tengoping.com/blog/proxmox-ve-helper-scripts-guia-buenas-practicas/>)

Author: Antonio Pérez

Published: 2026-08-04T00:00:00Z

Content type: tutorial

Language: es

Sources: [tengoping.com](<https://devfeed.tech/sources/tengoping-com.md>)

Topics: [Proxmox](<https://devfeed.tech/topics/proxmox.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [Script](<https://devfeed.tech/topics/script.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [qemu](<https://devfeed.tech/topics/qemu.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [community](<https://devfeed.tech/tags/community.md>), [github](<https://devfeed.tech/tags/github.md>), [http](<https://devfeed.tech/tags/http.md>), [proxmox](<https://devfeed.tech/tags/proxmox.md>), [qemu](<https://devfeed.tech/tags/qemu.md>), [root](<https://devfeed.tech/tags/root.md>), [script](<https://devfeed.tech/tags/script.md>), [scripts](<https://devfeed.tech/tags/scripts.md>), [shell](<https://devfeed.tech/tags/shell.md>)

### AI overview

This guide explains what Proxmox VE Helper-Scripts are, how community-scripts.org uses Bash scripts to deploy applications in LXC containers or QEMU virtual machines, and how the main script downloads and runs the required components. It also highlights the security risk of executing third-party code as root on a Proxmox hypervisor.

### Source excerpt

Qué son los Proxmox VE Helper-Scripts de community-scripts.org, cómo despliegan LXC y VMs con un solo comando y qué riesgos de seguridad debes valorar.

## 'guix substitute' and 'guix pull' Vulnerabilities

DevFeed: ['guix substitute' and 'guix pull' Vulnerabilities](<https://devfeed.tech/articles/guix-substitute-and-guix-pull-vulnerabilities-34148.md>)

Original publisher: [Read original article](<https://guix.gnu.org/blog/2026/guix-substitute-pull-vulnerabilities//>)

Author: Caleb Ristvedt

Published: 2026-07-02T17:00:00Z

Content type: release

Language: en

Sources: [GNU Guix -- Blog](<https://devfeed.tech/sources/gnu-guix-blog.md>)

Topics: [Vulnerabilities](<https://devfeed.tech/topics/vulnerabilities.md>), [Security](<https://devfeed.tech/topics/security.md>), [upgrade](<https://devfeed.tech/topics/upgrade.md>)

Tags: [cve](<https://devfeed.tech/tags/cve.md>), [mitm](<https://devfeed.tech/tags/mitm.md>), [root](<https://devfeed.tech/tags/root.md>), [security](<https://devfeed.tech/tags/security.md>), [security-advisory](<https://devfeed.tech/tags/security-advisory.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>), [user](<https://devfeed.tech/tags/user.md>), [vulnerabilities](<https://devfeed.tech/tags/vulnerabilities.md>)

### AI overview

The article details several security vulnerabilities in Guix substitute and guix pull, including remote privilege escalation, remote store corruption, possible disclosure of sensitive files, and file overwrite issues. It advises users to upgrade the Guix daemon and describes a regression affecting some unprivileged users.

### Source excerpt

Several security issues (CVE IDs pending) have been identified in guix substitute , a helper utility invoked by guix-daemon , which enable a variety of harmful activities including remote privilege escalation to the build daemon user , remote store corruption , and potentially local disclosure of sensitive files accessible to the build daemon user. All systems are affected, whether or not guix-daemon is running with root privileges; the harm that can be done when guix-daemon runs without root privileges is more limited. You are strongly advised to upgrade your daemon now (see...

## Podman 6 Configuration File Changes

DevFeed: [Podman 6 Configuration File Changes](<https://devfeed.tech/articles/podman-6-configuration-file-changes-12845.md>)

Original publisher: [Read original article](<https://blog.podman.io/2026/06/podman-6-configuration-file-changes/>)

Author: Paul Holzinger

Published: 2026-06-22T16:14:55Z

Content type: article

Language: en

Sources: [blog.podman.io](<https://devfeed.tech/sources/blog-podman-io.md>)

Topics: [podman](<https://devfeed.tech/topics/podman.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Containers](<https://devfeed.tech/topics/containers.md>)

Tags: [announcement](<https://devfeed.tech/tags/announcement.md>), [blog](<https://devfeed.tech/tags/blog.md>), [buildah](<https://devfeed.tech/tags/buildah.md>), [code](<https://devfeed.tech/tags/code.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [containers](<https://devfeed.tech/tags/containers.md>), [files](<https://devfeed.tech/tags/files.md>), [git](<https://devfeed.tech/tags/git.md>), [go](<https://devfeed.tech/tags/go.md>), [image](<https://devfeed.tech/tags/image.md>), [libraries](<https://devfeed.tech/tags/libraries.md>), [podman](<https://devfeed.tech/tags/podman.md>), [registry](<https://devfeed.tech/tags/registry.md>), [releases](<https://devfeed.tech/tags/releases.md>), [root](<https://devfeed.tech/tags/root.md>), [skopeo](<https://devfeed.tech/tags/skopeo.md>), [storage](<https://devfeed.tech/tags/storage.md>)

### AI overview

This article introduces the major configuration-file rework planned for Podman 6. The changes affect Podman, Buildah, Skopeo, and shared container libraries, including how files such as containers.conf, registries.conf, storage.conf, policy.json, registries.d, and certs.d are handled and parsed.

### Source excerpt

Podman 6 is about to be released soon, so I would like to talk about the biggest change we made: a major rework of how we handle and parse our configuration files. This does not just affect Podman but also Buildah, Skopeo, and many other tools building on top of our underlying go.podman.io/image and go.podman.io/storage [...]

## iPhone Screenshots on Linux, on a Stream Deck Button

DevFeed: [iPhone Screenshots on Linux, on a Stream Deck Button](<https://devfeed.tech/articles/iphone-screenshots-on-linux-on-a-stream-deck-button-25177.md>)

Original publisher: [Read original article](<https://www.ivanmorgillo.com/2026/06/22/iphone-screenshots-on-linux-stream-deck/>)

Author: Ivan Morgillo

Published: 2026-06-22T09:30:00Z

Content type: tutorial

Language: en

Sources: [Ivan Morgillo](<https://devfeed.tech/sources/ivan-morgillo.md>)

Topics: [iphone](<https://devfeed.tech/topics/iphone.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [systemd](<https://devfeed.tech/topics/systemd.md>)

Tags: [capture](<https://devfeed.tech/tags/capture.md>), [command](<https://devfeed.tech/tags/command.md>), [ios](<https://devfeed.tech/tags/ios.md>), [iphone](<https://devfeed.tech/tags/iphone.md>), [linux](<https://devfeed.tech/tags/linux.md>), [root](<https://devfeed.tech/tags/root.md>), [screenshots](<https://devfeed.tech/tags/screenshots.md>), [stream](<https://devfeed.tech/tags/stream.md>), [systemd](<https://devfeed.tech/tags/systemd.md>)

### AI overview

A tutorial on capturing iPhone screenshots directly to the Linux clipboard with a Stream Deck button. On iOS 17 and later, it uses pymobiledevice3, Developer Mode, a mounted Developer Disk Image, and a root-run systemd tunnel service instead of the classic idevicescreenshot workflow.

### Source excerpt

How I screenshot my iPhone straight to the Linux clipboard with one Stream Deck button -- iOS 17+ needs pymobiledevice3 and a root tunnel, not the classic idevicescreenshot. No Mac required.

## How to Eliminate Static Credentials from Trading Infrastructure

DevFeed: [How to Eliminate Static Credentials from Trading Infrastructure](<https://devfeed.tech/articles/how-to-eliminate-static-credentials-from-trading-infrastructure-29883.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/static-credentials-trading-infrastructure/>)

Author: info@goteleport.com (Gus Luxton)

Published: 2026-05-20T00:00:00Z

Content type: tutorial

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [Security](<https://devfeed.tech/topics/security.md>), [ssh](<https://devfeed.tech/topics/ssh.md>), [private cloud](<https://devfeed.tech/topics/private-cloud.md>), [Server](<https://devfeed.tech/topics/server.md>)

Tags: [admin](<https://devfeed.tech/tags/admin.md>), [ci](<https://devfeed.tech/tags/ci.md>), [credentials](<https://devfeed.tech/tags/credentials.md>), [deploy](<https://devfeed.tech/tags/deploy.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [infrastructure](<https://devfeed.tech/tags/infrastructure.md>), [private-cloud](<https://devfeed.tech/tags/private-cloud.md>), [production](<https://devfeed.tech/tags/production.md>), [root](<https://devfeed.tech/tags/root.md>), [security](<https://devfeed.tech/tags/security.md>), [ssh](<https://devfeed.tech/tags/ssh.md>)

### AI overview

This guide explains why static credentials such as SSH keys and hardcoded API tokens create security risks in trading infrastructure. It discusses excessive permissions, credentials that do not expire, and access events that cannot be tied to specific identities, then introduces strategies for reducing or eliminating these risks, including Teleport-based approaches.

### Source excerpt

Learn why static credentials like SSH keys are dangerous in trading and financial infrastructure, alongside strategies for mitigating their risk.

## Recuperar contraseña root con livecd y LVM

DevFeed: [Recuperar contraseña root con livecd y LVM](<https://devfeed.tech/articles/recuperar-contrasena-root-con-livecd-y-lvm-34081.md>)

Original publisher: [Read original article](<https://tengoping.com/blog/recuperar-contrasena-root-livecd-lvm/>)

Author: Antonio Pérez

Published: 2026-03-03T00:00:00Z

Content type: tutorial

Language: es

Sources: [tengoping.com](<https://devfeed.tech/sources/tengoping-com.md>)

Topics: [LVM](<https://devfeed.tech/topics/lvm.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [boot](<https://devfeed.tech/topics/boot.md>)

Tags: [boot](<https://devfeed.tech/tags/boot.md>), [linux](<https://devfeed.tech/tags/linux.md>), [live](<https://devfeed.tech/tags/live.md>), [lvm](<https://devfeed.tech/tags/lvm.md>), [root](<https://devfeed.tech/tags/root.md>)

### AI overview

A Spanish tutorial explains how to recover a Linux root password on a system using LVM. It covers activating and identifying logical volumes from a LiveCD, mounting the system, using chroot, changing the password, and rebooting.

### Source excerpt

¿Olvidaste la contraseña de root en Linux con LVM? Recupérala con un live CD: monta los volúmenes lógicos, haz chroot y cámbiala de forma rápida y segura.

## Montar un NAS casero con OpenMediaVault

DevFeed: [Montar un NAS casero con OpenMediaVault](<https://devfeed.tech/articles/montar-un-nas-casero-con-openmediavault-34071.md>)

Original publisher: [Read original article](<https://tengoping.com/blog/nas-casero-openmediavault/>)

Author: Antonio Pérez

Published: 2026-02-05T00:00:00Z

Content type: tutorial

Language: es

Sources: [tengoping.com](<https://devfeed.tech/sources/tengoping-com.md>)

Topics: [RAID](<https://devfeed.tech/topics/raid.md>), [Network](<https://devfeed.tech/topics/network.md>), [Mdadm](<https://devfeed.tech/topics/mdadm.md>), [Hardware](<https://devfeed.tech/topics/hardware.md>), [Software](<https://devfeed.tech/topics/software.md>), [USB](<https://devfeed.tech/topics/usb.md>), [Debian](<https://devfeed.tech/topics/debian.md>), [QNAP](<https://devfeed.tech/topics/qnap.md>), [Synology](<https://devfeed.tech/topics/synology.md>)

Tags: [debian](<https://devfeed.tech/tags/debian.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [mdadm](<https://devfeed.tech/tags/mdadm.md>), [nas](<https://devfeed.tech/tags/nas.md>), [network](<https://devfeed.tech/tags/network.md>), [panel](<https://devfeed.tech/tags/panel.md>), [qnap](<https://devfeed.tech/tags/qnap.md>), [raid](<https://devfeed.tech/tags/raid.md>), [root](<https://devfeed.tech/tags/root.md>), [software](<https://devfeed.tech/tags/software.md>), [storage](<https://devfeed.tech/tags/storage.md>), [synology](<https://devfeed.tech/tags/synology.md>), [usb](<https://devfeed.tech/tags/usb.md>), [web](<https://devfeed.tech/tags/web.md>)

### AI overview

A Spanish-language tutorial explains how to build a low-cost home NAS with OpenMediaVault. It covers hardware selection, installation from USB, web-panel access, disk preparation, and RAID configuration with mdadm, including RAID 1 and RAID 5.

### Source excerpt

Guía para construir un NAS económico con OpenMediaVault: instalación, configuración de discos, carpetas compartidas y acceso remoto.

## Introducción a contenedores con Podman en Linux

DevFeed: [Introducción a contenedores con Podman en Linux](<https://devfeed.tech/articles/introduccion-a-contenedores-con-podman-en-linux-34066.md>)

Original publisher: [Read original article](<https://tengoping.com/blog/introduccion-contenedores-podman-linux/>)

Author: Antonio Pérez

Published: 2026-01-04T00:00:00Z

Content type: tutorial

Language: es

Sources: [tengoping.com](<https://devfeed.tech/sources/tengoping-com.md>)

Topics: [podman](<https://devfeed.tech/topics/podman.md>), [Containers](<https://devfeed.tech/topics/containers.md>), [Linux](<https://devfeed.tech/topics/linux.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [systemd](<https://devfeed.tech/topics/systemd.md>)

Tags: [cgroups](<https://devfeed.tech/tags/cgroups.md>), [cli](<https://devfeed.tech/tags/cli.md>), [debian](<https://devfeed.tech/tags/debian.md>), [docker](<https://devfeed.tech/tags/docker.md>), [linux](<https://devfeed.tech/tags/linux.md>), [oci](<https://devfeed.tech/tags/oci.md>), [podman](<https://devfeed.tech/tags/podman.md>), [rhel](<https://devfeed.tech/tags/rhel.md>), [root](<https://devfeed.tech/tags/root.md>), [terminal](<https://devfeed.tech/tags/terminal.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>), [ubuntu-24-04](<https://devfeed.tech/tags/ubuntu-24-04.md>)

### AI overview

A Spanish tutorial introducing Podman on Linux. It explains Podman's daemonless, OCI-compatible architecture, rootless container execution, isolation through user namespaces, version differences across distributions, and comparisons with Docker.

### Source excerpt

Podman en profundidad: arquitectura sin daemon, rootless por defecto, pods, integración con systemd/Quadlet, Cockpit y comparación con Docker.

## Weak AVL Tree

DevFeed: [Weak AVL Tree](<https://devfeed.tech/articles/weak-avl-tree-31118.md>)

Original publisher: [Read original article](<https://maskray.me/blog/2025-12-14-weak-avl-tree>)

Published: 2025-12-14T08:00:00Z

Content type: tutorial

Language: en

Sources: [MaskRay](<https://devfeed.tech/sources/maskray.md>)

Topics: [Data structures](<https://devfeed.tech/topics/data-structures.md>), [implementation](<https://devfeed.tech/topics/implementation.md>)

Tags: [algorithm](<https://devfeed.tech/tags/algorithm.md>), [data-structure](<https://devfeed.tech/tags/data-structure.md>), [implementation](<https://devfeed.tech/tags/implementation.md>), [root](<https://devfeed.tech/tags/root.md>), [rotation](<https://devfeed.tech/tags/rotation.md>), [rules](<https://devfeed.tech/tags/rules.md>)

### AI overview

This article introduces weak AVL trees as a rank-based balanced binary search tree and compares their balancing behavior with AVL and red-black trees. It describes rank differences, insertion cases, rotation bounds, and an implementation detail for encoding ranks, while noting that deletion is not yet described.

### Source excerpt

tl;dr: Weak AVL trees are replacements for AVL trees and red-black trees. The 2014 paper

## Linux Emergency Recovery With init=/bin/bash

DevFeed: [Linux Emergency Recovery With init=/bin/bash](<https://devfeed.tech/articles/linux-emergency-recovery-with-init-bin-bash-4518.md>)

Original publisher: [Read original article](<https://feeds.feedblitz.com/~/920030138/0/baeldung/linux~Linux-Emergency-Recovery-With-initbinbash>)

Author: Francesco Galgani

Published: 2025-06-10T19:40:59Z

Content type: tutorial

Language: en

Sources: [Baeldung - Linux](<https://devfeed.tech/sources/baeldung-linux.md>)

Topics: [Linux](<https://devfeed.tech/topics/linux.md>), [Boot Process](<https://devfeed.tech/topics/boot-process.md>), [systemd](<https://devfeed.tech/topics/systemd.md>), [Bash](<https://devfeed.tech/topics/bash.md>), [Kernel](<https://devfeed.tech/topics/kernel.md>), [passwords](<https://devfeed.tech/topics/passwords.md>), [Filesystems](<https://devfeed.tech/topics/filesystems.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [boot](<https://devfeed.tech/tags/boot.md>), [boot-process](<https://devfeed.tech/tags/boot-process.md>), [boot-process-passwd-systemd](<https://devfeed.tech/tags/boot-process-passwd-systemd.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [linux](<https://devfeed.tech/tags/linux.md>), [passwd](<https://devfeed.tech/tags/passwd.md>), [password](<https://devfeed.tech/tags/password.md>), [recovery](<https://devfeed.tech/tags/recovery.md>), [root](<https://devfeed.tech/tags/root.md>), [systemd](<https://devfeed.tech/tags/systemd.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

This tutorial explains how to recover an unbootable Linux system by adding init=/bin/bash to the kernel parameters. It covers entering a root Bash shell as PID 1, working with encrypted LVM and LUKS installations, resetting passwords, remounting the filesystem as read/write, and forcing a reboot when normal shutdown commands are unavailable. The method is presented as an emergency measure because an improper forced reboot can cause data loss or corruption.

### Source excerpt

Learn to use the init=/bin/bash kernel parameter to access a minimalist root shell on systems that wouldn't otherwise boot. The post Linux Emergency Recovery With init=/bin/bash first appeared on Baeldung on Linux. Click the icon below to watch. Related Stories Linux Emergency Recovery With init=/bin/bash - Enclosure How to Restore Systemd After Deleting It Accidentally How to Dual Boot Windows and Linux

## Data-Driven Debugging for Engineers

DevFeed: [Data-Driven Debugging for Engineers](<https://devfeed.tech/articles/data-driven-debugging-for-engineers-38658.md>)

Original publisher: [Read original article](<https://krossovochkin.com/posts/2025_06_03_data_driven_debugging_for_engineers/>)

Published: 2025-06-03T00:00:00Z

Content type: tutorial

Language: en

Sources: [Vasya Drobushkov](<https://devfeed.tech/sources/vasya-drobushkov.md>)

Topics: [debugging](<https://devfeed.tech/topics/debugging.md>), [bug](<https://devfeed.tech/topics/bug.md>), [Development](<https://devfeed.tech/topics/development.md>), [unit tests](<https://devfeed.tech/topics/unit-tests.md>), [Code](<https://devfeed.tech/topics/code.md>), [Users](<https://devfeed.tech/topics/users.md>)

Tags: [bugs](<https://devfeed.tech/tags/bugs.md>), [debugging](<https://devfeed.tech/tags/debugging.md>), [root](<https://devfeed.tech/tags/root.md>), [test](<https://devfeed.tech/tags/test.md>), [unit-tests](<https://devfeed.tech/tags/unit-tests.md>), [user](<https://devfeed.tech/tags/user.md>)

### AI overview

This developer article explains how engineers debug bugs reported by developers, QA, and users. It compares the role of unit tests and end-to-end tests, then describes the greater difficulty of diagnosing vague user-reported symptoms.

### Source excerpt

As engineers, we deal with bugs every day. Finding the root cause and delivering the right fix is one of our most essential -- and satisfying -- skills. In this post, I want to walk through different types of issues we face and how we typically debug them. Most importantly, I'll share my favorite and most challenging method: data-driven debugging. Let's break it down by who reports the issue and how it's discovered.

## Android 14 blocks modification of system certificates, even as root

DevFeed: [Android 14 blocks modification of system certificates, even as root](<https://devfeed.tech/articles/android-14-blocks-modification-of-system-certificates-even-as-root-19037.md>)

Original publisher: [Read original article](<https://httptoolkit.com/blog/android-14-breaks-system-certificate-installation/>)

Author: HTTP Toolkit; Tim Perry

Published: 2023-09-05T14:00:00Z

Content type: article

Language: en

Sources: [HTTP Toolkit](<https://devfeed.tech/sources/http-toolkit.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Security](<https://devfeed.tech/topics/security.md>), [TLS (Transport Layer Security)](<https://devfeed.tech/topics/tls.md>), [API](<https://devfeed.tech/topics/api.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [android-14](<https://devfeed.tech/tags/android-14.md>), [api](<https://devfeed.tech/tags/api.md>), [certificates](<https://devfeed.tech/tags/certificates.md>), [interception](<https://devfeed.tech/tags/interception.md>), [root](<https://devfeed.tech/tags/root.md>), [security](<https://devfeed.tech/tags/security.md>), [tls](<https://devfeed.tech/tags/tls.md>)

### AI overview

The article examines Android 14's tighter restrictions on modifying trusted certificate authorities, including on rooted devices, and the resulting challenges for developers, testers, and researchers. An update notes that multiple workarounds now allow certificate injection.

### Source excerpt

Update: This post sparked a lot of excellent discussion and debate on workarounds, and there are now multiple working solutions to allow certificate injection on Android 14, despite the restrictions discussed here. See the update post for more details. When Android was initially announced in 2007 by the Open Handset Alliance (headed by Google) their flagship project was billed as an "open platform", "providing developers a new level of openness", and giving them "complete access to handset capabilities and tools". We've come a long way since then, steadily retreating from openness & user control of devices, and shifting towards a far more locked-down vendor-controlled world. The next step of Android's evolution is Android 14 (API v34, codename Upside-Down Cake) and it takes more steps down that path. In this new release, the restrictions around certificate authority (CA) certificates become significantly tighter, and appear to make it impossible to modify the set of trusted certificates at all, even on fully rooted devices. If you're an Android developer, tester, reverse engineer, or anybody else interested in directly controlling who your device trusts, this is going to create some new challenges. Before we get into the finer details, first I want to talk a little about the context around Android CA management and how we got here, but if you want to jump to the latest details you can go straight to the Enter Android 14 section below. "Open Software, Open Device, Open Ecosystem" While the initial principles of Android were very much focused on open software, controllable by users and developers, over more recent years Android has increasingly limited the control of users, developers & researchers over their own devices. The key turning point in this process was Android 7 (Nougat, released in 2016) in which the certificate authorities (CAs) on the device that were previously fully modifiable by the owner of the phone were split in two: one fixed list of CAs provided

## Mobian Security Update #1

DevFeed: [Mobian Security Update #1](<https://devfeed.tech/articles/mobian-security-update-1-34236.md>)

Original publisher: [Read original article](<https://blog.mobian.org/posts/2023/08/31/mobian-bookworm-security-update/>)

Author: Mobian team

Published: 2023-08-31T02:00:00Z

Content type: release

Language: en

Sources: [Mobian's Blog](<https://devfeed.tech/sources/mobian-s-blog.md>)

Topics: [Security](<https://devfeed.tech/topics/security.md>), [vulnerability](<https://devfeed.tech/topics/vulnerability.md>), [apt](<https://devfeed.tech/topics/apt.md>), [Package manager](<https://devfeed.tech/topics/package-manager.md>), [upgrade](<https://devfeed.tech/topics/upgrade.md>)

Tags: [apt](<https://devfeed.tech/tags/apt.md>), [packages](<https://devfeed.tech/tags/packages.md>), [permissions](<https://devfeed.tech/tags/permissions.md>), [root](<https://devfeed.tech/tags/root.md>), [security](<https://devfeed.tech/tags/security.md>), [update](<https://devfeed.tech/tags/update.md>), [vulnerability](<https://devfeed.tech/tags/vulnerability.md>)

### AI overview

The Mobian Team released a security update for a local vulnerability in Bookworm images. Some files had global write permissions, including files managing apt configuration, creating a possible privilege-escalation path to root for a local user with access to an unlocked or already compromised device. Mobian users should upgrade the specified mobian-tweaks-common package.

### Source excerpt

The Mobian Team have recently released a security update fixing a local vulnerability caused by a bug in our Bookworm images. User Action Required Mobian users must install the following package in order to address the issues described in this post. A normal upgrade which can be done using sudo apt update && sudo apt upgrade or via Gnome Software will take care of this. For Bookworm users: mobian-tweaks-common, version 0.5.6+deb12u1 For Trixie and Staging users: mobian-tweaks-common, version 0.5.9 These packages include an install script which fixes the permissions on the effected files. They are currently in the staging and bookworm-updates repositories and will migrate to trixie and bookworm in the coming week. Summary The Bookworm images released earlier this year had a small number of files with global write permissions. As two of these files manage the configuration of the apt package manager, they provide an attacker with a useful privilege escalation method. This issue seems to only affect the released Bookworm images, though a full audit of weekly images has not been undertaken. Users who installed on Trixie were likely never effected. Impact These files could allow a local user to gain root access to the device by modifying them and waiting for the user to install an attacker provided update. This attack would require access to an unlocked or otherwise already compromised device as a standard user. There is no way to carry this attack out remotely or on a locked device. Indicators of Compromise Users can verify the current configuration of their system by checking the relevant files. Changes to these files to not immediately mean the device has been compromised, but may warrant further investigation. /etc/apt/sources.list.d/mobian.list should contain (potentially with a different distribution): deb http://repo.mobian.org/ <distribution> main non-free-firmware /etc/apt/trusted.gpg.d/mobian.gpg can be verified using the command shasum -c checksum.txt aganist

## Requesting Just-in-Time access to Amazon EC2 Instances via Slack

DevFeed: [Requesting Just-in-Time access to Amazon EC2 Instances via Slack](<https://devfeed.tech/articles/requesting-just-in-time-access-to-amazon-ec2-instances-via-slack-29582.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/aws-ec2-just-in-time-access/>)

Author: info@goteleport.com (Janakiram MSV)

Published: 2022-04-13T00:00:00Z

Content type: tutorial

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [Amazon EC2](<https://devfeed.tech/topics/amazon-ec2.md>), [Slack](<https://devfeed.tech/topics/slack.md>), [DevOps](<https://devfeed.tech/topics/devops.md>), [Messaging](<https://devfeed.tech/topics/messaging.md>)

Tags: [amazon-ec2](<https://devfeed.tech/tags/amazon-ec2.md>), [aws](<https://devfeed.tech/tags/aws.md>), [devops](<https://devfeed.tech/tags/devops.md>), [ec2](<https://devfeed.tech/tags/ec2.md>), [enterprise](<https://devfeed.tech/tags/enterprise.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [identity](<https://devfeed.tech/tags/identity.md>), [integration](<https://devfeed.tech/tags/integration.md>), [request](<https://devfeed.tech/tags/request.md>), [root](<https://devfeed.tech/tags/root.md>), [server](<https://devfeed.tech/tags/server.md>), [slack](<https://devfeed.tech/tags/slack.md>), [third-party](<https://devfeed.tech/tags/third-party.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [workflows](<https://devfeed.tech/tags/workflows.md>)

### AI overview

This tutorial explains how to configure just-in-time privilege escalation for Amazon EC2 instances using Teleport RBAC and Slack. It describes time-limited access requests that administrators can approve or deny through Slack, including a scenario involving a managed service provider performing database operations.

### Source excerpt

This post is a tutorial to set up ChatOps-based just-in-time privilege escalation for Amazon EC2 instances

## 5 Best Practices for Securing SSH

DevFeed: [5 Best Practices for Securing SSH](<https://devfeed.tech/articles/5-best-practices-for-securing-ssh-29545.md>)

Original publisher: [Read original article](<https://goteleport.com/blog/5-ssh-best-practices/>)

Author: info@goteleport.com (Catherine Blake)

Published: 2022-04-11T00:00:00Z

Content type: tutorial

Language: en

Sources: [Teleport](<https://devfeed.tech/sources/teleport.md>)

Topics: [ssh](<https://devfeed.tech/topics/ssh.md>), [Security](<https://devfeed.tech/topics/security.md>), [Authentication](<https://devfeed.tech/topics/authentication.md>), [MFA](<https://devfeed.tech/topics/mfa.md>), [Cybersecurity](<https://devfeed.tech/topics/cybersecurity.md>), [Server](<https://devfeed.tech/topics/server.md>)

Tags: [article](<https://devfeed.tech/tags/article.md>), [attacks](<https://devfeed.tech/tags/attacks.md>), [authentication](<https://devfeed.tech/tags/authentication.md>), [root](<https://devfeed.tech/tags/root.md>), [security](<https://devfeed.tech/tags/security.md>), [security-best-practices](<https://devfeed.tech/tags/security-best-practices.md>), [server](<https://devfeed.tech/tags/server.md>), [ssh](<https://devfeed.tech/tags/ssh.md>)

### AI overview

This article presents five practices for securing SSH infrastructure, including enabling second-factor authentication, changing default SSH settings, changing the default port, and disabling root login. It notes that SSH security depends on server and client configuration.

### Source excerpt

This article explores 5 SSH best practices you should observe to boost the security of your infrastructure.

## Getting Past Bash Argument list too long

DevFeed: [Getting Past Bash Argument list too long](<https://devfeed.tech/articles/getting-past-bash-argument-list-too-long-28128.md>)

Original publisher: [Read original article](<http://fuzzyblog.io/blog/bash/2020/06/25/getting-past-bash-argument-list-too-long.html>)

Author: Fuzzygroup

Published: 2020-06-25T00:00:00Z

Content type: tutorial

Language: en

Sources: [Scott Johnson](<https://devfeed.tech/sources/scott-johnson.md>)

Topics: [Bash](<https://devfeed.tech/topics/bash.md>), [Scripting, bash](<https://devfeed.tech/topics/scripting-bash.md>), [Unix](<https://devfeed.tech/topics/unix.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [files](<https://devfeed.tech/tags/files.md>), [linux](<https://devfeed.tech/tags/linux.md>), [root](<https://devfeed.tech/tags/root.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>), [unix](<https://devfeed.tech/tags/unix.md>)

### AI overview

A Bash article explains how to handle operations on a directory containing about 750,000 files without exceeding the shell's argument-list limit. It shows that using the current-directory operand for chown avoids wildcard expansion and uses find with -exec to move JSON files individually.

### Source excerpt

Right now I have a directory with about 750,000 odd files in it and any attempt to manipulate the files results in this: root@ip-172-31-1-219:~/datastreamer/data# mv * /home/ubuntu/data/data bash: /bin/mv: Argument list too long My first challenge was to do this: chown ubuntu:ubuntu * And the fix for this one was actually easy: chown ubuntu:ubuntu . By omitting the *, the bash limits on argument list don't apply - this changes the current folder (.) and everything in it and it always works. The second challenge was to move the files from /root/datastreamer/data to /home/ubuntu/data/data. Here's the solution after a bit of research: find /root/datastreamer/data -name '*.json' -exec mv {} /home/ubuntu/data/data \; Reference: Unix.StackExchange StackOverflow

## The 1.x Files: The State of Stateless Ethereum

DevFeed: [The 1.x Files: The State of Stateless Ethereum](<https://devfeed.tech/articles/the-1-x-files-the-state-of-stateless-ethereum-16880.md>)

Original publisher: [Read original article](<https://blog.ethereum.org/en/2019/12/30/eth1x-files-state-of-stateless-ethereum>)

Author: Griffin Ichiba Hotchkiss

Published: 2019-12-30T00:00:00Z

Content type: article

Language: en

Sources: [Ethereum Foundation Blog](<https://devfeed.tech/sources/ethereum-foundation-blog.md>)

Topics: [Ethereum](<https://devfeed.tech/topics/ethereum.md>), [Data structures](<https://devfeed.tech/topics/data-structures.md>), [client](<https://devfeed.tech/topics/client.md>), [Protocol (disambiguation)](<https://devfeed.tech/topics/protocol.md>)

Tags: [data-structure](<https://devfeed.tech/tags/data-structure.md>), [ethereum](<https://devfeed.tech/tags/ethereum.md>), [hashing](<https://devfeed.tech/tags/hashing.md>), [node](<https://devfeed.tech/tags/node.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [research-development](<https://devfeed.tech/tags/research-development.md>), [retrieval](<https://devfeed.tech/tags/retrieval.md>), [root](<https://devfeed.tech/tags/root.md>), [state](<https://devfeed.tech/tags/state.md>), [stateless](<https://devfeed.tech/tags/stateless.md>)

### AI overview

This deep dive explains Ethereum state and the stateless client direction of Eth 1.x research. It describes how Ethereum state represents accounts, balances, and smart-contract memory, and how the Merkle-Patricia Trie organizes that data through branching, hashing, and a state root.

### Source excerpt

In the last edition of The 1.x files, we did a quick re-cap of where the Eth 1.x research initiative came from, what's at stake, and what some possible solutions are. We ended with the concept of stateless ethereum, and left a more detailed examination of the stateless client for...

## Reverse-engineering a discarded cable modem to modify its MAC address

DevFeed: [Reverse-engineering a discarded cable modem to modify its MAC address](<https://devfeed.tech/articles/modem-cloning-for-fun-but-not-for-profit-22349.md>)

Original publisher: [Read original article](<https://yifan.lu/2017/04/02/modem-cloning-for-fun-but-not-for-profit/>)

Author: yifanlu

Published: 2017-04-02T07:00:00Z

Content type: article

Language: en

Sources: [Yifan Lu](<https://devfeed.tech/sources/yifan-lu.md>)

Topics: [Hardware](<https://devfeed.tech/topics/hardware.md>), [Reverse Engineering](<https://devfeed.tech/topics/reverse-engineering.md>), [Raspberry Pi](<https://devfeed.tech/topics/raspberry-pi.md>), [Shell](<https://devfeed.tech/topics/shell.md>)

Tags: [bpi](<https://devfeed.tech/tags/bpi.md>), [cryptography](<https://devfeed.tech/tags/cryptography.md>), [des](<https://devfeed.tech/tags/des.md>), [devices](<https://devfeed.tech/tags/devices.md>), [docsis](<https://devfeed.tech/tags/docsis.md>), [firmware](<https://devfeed.tech/tags/firmware.md>), [hacking](<https://devfeed.tech/tags/hacking.md>), [hardware](<https://devfeed.tech/tags/hardware.md>), [mips](<https://devfeed.tech/tags/mips.md>), [partition](<https://devfeed.tech/tags/partition.md>), [raspberry-pi](<https://devfeed.tech/tags/raspberry-pi.md>), [reverse-engineering](<https://devfeed.tech/tags/reverse-engineering.md>), [root](<https://devfeed.tech/tags/root.md>), [spi](<https://devfeed.tech/tags/spi.md>), [wifi](<https://devfeed.tech/tags/wifi.md>)

### AI overview

The author describes reverse-engineering a discarded cable modem that was still tied to another customer account. They accessed its UART root shell using a Raspberry Pi, dumped the flash memory, located the MAC address in an NVRAM partition, replaced it, and found that the modem still refused to establish a connection. The supplied text ends before the investigation is completed.

### Source excerpt

Recently, I stumbled upon an old cable modem sitting next to the dumpster. An neighbor just moved out and they threw away boxes of old junk. I was excited because the modem is much better than the one I currently use and has fancy features like built in 5GHz WiFi and DOCSIS 3.0 support. When I called my Internet service provider to activate it though, they told me that the modem was tied to another account likely because the neighbors did not deactivate the device before throwing it away. The technician doesn't have access to their account so I would have to either wait for it to be inactive or somehow find them and somehow convince them to help me set up the modem they threw away.

## Reduce, reuse, recycle

DevFeed: [Reduce, reuse, recycle](<https://devfeed.tech/articles/reduce-reuse-recycle-20265.md>)

Original publisher: [Read original article](<https://gbrownmozilla.wordpress.com/2016/03/10/reduce-reuse-recycle/>)

Author: gbrown-mozilla

Published: 2016-03-10T23:53:41Z

Content type: tutorial

Language: en

Sources: [Mozilla Automation](<https://devfeed.tech/sources/mozilla-automation.md>)

Topics: [LineageOS](<https://devfeed.tech/topics/lineageos.md>), [USB](<https://devfeed.tech/topics/usb.md>), [Ubuntu](<https://devfeed.tech/topics/ubuntu.md>), [make](<https://devfeed.tech/topics/make.md>), [Java](<https://devfeed.tech/topics/java.md>), [Assembly](<https://devfeed.tech/topics/assembly.md>), [Bash](<https://devfeed.tech/topics/bash.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [aosp](<https://devfeed.tech/tags/aosp.md>), [boot](<https://devfeed.tech/tags/boot.md>), [build](<https://devfeed.tech/tags/build.md>), [building](<https://devfeed.tech/tags/building.md>), [firefox](<https://devfeed.tech/tags/firefox.md>), [firefox-for-android](<https://devfeed.tech/tags/firefox-for-android.md>), [java](<https://devfeed.tech/tags/java.md>), [make](<https://devfeed.tech/tags/make.md>), [mozilla](<https://devfeed.tech/tags/mozilla.md>), [phones](<https://devfeed.tech/tags/phones.md>), [root](<https://devfeed.tech/tags/root.md>), [testing](<https://devfeed.tech/tags/testing.md>), [usb](<https://devfeed.tech/tags/usb.md>)

### AI overview

The article describes rebuilding AOSP on Ubuntu 14.04 and flashing Android 4.3 onto a Galaxy Nexus after older Android versions could no longer run current Firefox for Android builds. It covers the build, bootloader, USB, fastboot, root, and Java configuration steps, and reports that the Galaxy Nexus became functional and rooted.

### Source excerpt

As Firefox for Android drops support for ancient versions of Android, I find my collection of test phones becoming less ... Continue reading ->

## A Resizable Concurrent Map

DevFeed: [A Resizable Concurrent Map](<https://devfeed.tech/articles/a-resizable-concurrent-map-21005.md>)

Original publisher: [Read original article](<https://preshing.com/20160222/a-resizable-concurrent-map>)

Author: Jeff Preshing

Published: 2016-02-22T13:05:00Z

Content type: tutorial

Language: en

Sources: [Jeff Preshing](<https://devfeed.tech/sources/jeff-preshing.md>)

Topics: [C++](<https://devfeed.tech/topics/c-plus-plus.md>), [Data structures](<https://devfeed.tech/topics/data-structures.md>), [Java](<https://devfeed.tech/topics/java.md>), [GitHub](<https://devfeed.tech/topics/github.md>)

Tags: [atomic](<https://devfeed.tech/tags/atomic.md>), [c-plus-plus](<https://devfeed.tech/tags/c-plus-plus.md>), [concurrent](<https://devfeed.tech/tags/concurrent.md>), [data](<https://devfeed.tech/tags/data.md>), [github](<https://devfeed.tech/tags/github.md>), [lock-free](<https://devfeed.tech/tags/lock-free.md>), [map](<https://devfeed.tech/tags/map.md>), [memory](<https://devfeed.tech/tags/memory.md>), [migration](<https://devfeed.tech/tags/migration.md>), [root](<https://devfeed.tech/tags/root.md>), [structure](<https://devfeed.tech/tags/structure.md>), [thread](<https://devfeed.tech/tags/thread.md>)

### AI overview

This article explains Junction's Linear map, a C++ concurrent hash map that supports resizing and deletion. It contrasts the Linear map with the simpler Crude map and describes how table migration enables continued concurrent operations.

### Source excerpt

In an earlier post, I showed how to implement the "world's simplest lock-free hash table" in C++. It was so simple that you couldn't even delete entries or resize the table. Well, a few years have passed since then, and I've recently written some concurrent maps without those limitations. You'll find them in my Junction project on GitHub. Junction contains several concurrent maps - even the 'world's simplest' is there, under the name ConcurrentMap_Crude. For brevity, let's call that one the Crude map. In this post, I'll explain the difference between the Crude map and Junction's Linear map. Linear is the simplest Junction map that supports both resize and delete. You can review the original post for an explanation of how the Crude map works. To recap: It's based on open addressing and linear probing. That means it's basically a big array of keys and values using a linear search. When inserting or looking up a given key, you hash the key to determine where to begin the search. Concurrent inserts and lookups are permitted. Junction's Linear map is based on the same principle, except that when the array gets too full, its entire contents are migrated to a new, larger array. When the migration completes, the old table is replaced with the old one. So, how do we achieve that while still allowing concurrent operations? The Linear map's approach is based on Cliff Click's non-blocking hash map in Java, but has a few differences. The Data Structure First, we need to modify our data structure a little bit. The original Crude map had two data members: A pointer m_cells and an integer m_sizeMask. The Linear map instead has a single data member m_root, which points to a Table structure followed by the cells themselves in a single, contiguous memory block. In the Table structure, there's a new shared counter cellsRemaining, initially set to 75% of the table size. Whenever a thread tries to insert a new key, it decrements cellsRemaining first. If it decrements cellsRemaining below

## Install WordPress from command-line

DevFeed: [Install WordPress from command-line](<https://devfeed.tech/articles/install-wordpress-from-command-line-27641.md>)

Original publisher: [Read original article](<https://gagor.pro/2016/02/install-wordpress-from-command-line/>)

Author: Tom

Published: 2016-02-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [WordPress](<https://devfeed.tech/topics/wordpress.md>), [Command-line interface](<https://devfeed.tech/topics/cli.md>), [apt](<https://devfeed.tech/topics/apt.md>), [chmod](<https://devfeed.tech/topics/chmod.md>), [cURL](<https://devfeed.tech/topics/curl.md>), [MySQL](<https://devfeed.tech/topics/mysql.md>)

Tags: [apt](<https://devfeed.tech/tags/apt.md>), [bash](<https://devfeed.tech/tags/bash.md>), [chmod](<https://devfeed.tech/tags/chmod.md>), [cli](<https://devfeed.tech/tags/cli.md>), [command-line](<https://devfeed.tech/tags/command-line.md>), [curl](<https://devfeed.tech/tags/curl.md>), [install](<https://devfeed.tech/tags/install.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [root](<https://devfeed.tech/tags/root.md>), [wordpress](<https://devfeed.tech/tags/wordpress.md>)

### AI overview

A tutorial showing how to install WordPress from the command line using WP-CLI, including prerequisites, downloading the WP-CLI executable, checking it, and installing WordPress as the web application user.

### Source excerpt

I never tried it before but today I needed to install WordPress... From command line only. And there is a way to do this with wp-cli external link . WP-CLI installation First some requirements (as root): apt-get install php5-cli php5-mysql mysql-client curl And now installation of wp-cli (as root too): curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar chmod +x wp-cli.phar mv wp-cli.phar /usr/local/bin/wp Check if it's working:

## MySQL - reset root password

DevFeed: [MySQL - reset root password](<https://devfeed.tech/articles/mysql-reset-root-password-27630.md>)

Original publisher: [Read original article](<https://gagor.pro/2015/12/mysql-reset-root-password/>)

Author: Tom

Published: 2015-12-28T00:00:00Z

Content type: tutorial

Language: en

Sources: [Tomasz Gągor](<https://devfeed.tech/sources/tomasz-gagor.md>)

Topics: [MySQL](<https://devfeed.tech/topics/mysql.md>), [passwords](<https://devfeed.tech/topics/passwords.md>), [Databases](<https://devfeed.tech/topics/databases.md>), [configuration](<https://devfeed.tech/topics/configuration.md>)

Tags: [configuration](<https://devfeed.tech/tags/configuration.md>), [credentials](<https://devfeed.tech/tags/credentials.md>), [linux](<https://devfeed.tech/tags/linux.md>), [localhost](<https://devfeed.tech/tags/localhost.md>), [mariadb](<https://devfeed.tech/tags/mariadb.md>), [mysql](<https://devfeed.tech/tags/mysql.md>), [password](<https://devfeed.tech/tags/password.md>), [percona](<https://devfeed.tech/tags/percona.md>), [root](<https://devfeed.tech/tags/root.md>), [set](<https://devfeed.tech/tags/set.md>)

### AI overview

A tutorial explaining how to reset a MySQL user password, including the root password, by stopping MySQL, using an init file with a SET PASSWORD command, starting the server with that file, and then deleting it.

### Source excerpt

It will happen from time to time, that you're on alien machine and have to brutally update things in db without knowing credentials. Example is for root (quite secure candidate to change because it shouldn't be used in app 😃 ) but will work for any user. shutdown db service mysql stop create text file with command like this (update user accordingly) ex. in /tmp/pwchange.txt SET PASSWORD FOR "root"@"localhost" = PASSWORD("HereYourNewPassword"); start mysqld with --init-file param mysqld_safe --init-file=/tmp/pwchange.txt sometimes you may require to point configuration file ex. --defaults-file=/etc/mysql/my.cnf

## Unfortunately the process com.android.phone has stopped in CM 13

DevFeed: [Unfortunately the process com.android.phone has stopped in CM 13](<https://devfeed.tech/articles/unfortunately-the-process-com-android-phone-has-stopped-in-cm-13-21522.md>)

Original publisher: [Read original article](<http://lifepluslinux.blogspot.com/2015/12/unfortunately-process-comandroidphone.html>)

Author: Suresh Alse (noreply@blogger.com)

Published: 2015-12-23T17:25:00Z

Content type: tutorial

Language: en

Sources: [Life Plus Linux](<https://devfeed.tech/sources/life-plus-linux.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Processes](<https://devfeed.tech/topics/processes.md>)

Tags: [adb](<https://devfeed.tech/tags/adb.md>), [android](<https://devfeed.tech/tags/android.md>), [animation](<https://devfeed.tech/tags/animation.md>), [cyanogenmod](<https://devfeed.tech/tags/cyanogenmod.md>), [process](<https://devfeed.tech/tags/process.md>), [root](<https://devfeed.tech/tags/root.md>)

### AI overview

A Nexus 4 running CM 13 after a dirty flash from CM 12.1 showed repeated com.android.phone crashes and failed SIM detection. The article attributes the problem to old telephony databases and recommends deleting two related data directories, then restarting the phone.

### Source excerpt

I have a good old nexus 4 still trying to keep up with the big boys in the market. After google ditched the plans of releasing the latest android 6.0 - Marshmallow for nexus 4, things didn't look so great. But with the release of CM 13 (mako), even nexus 4 has android 6.0! Previously, I was running CM 12.1 and I dirty flashed CM 13 on top of it. Although it doesn't have all the features that CM 12 had, with time, the awesome guys in XDA and cyanogen will port all the features to CM 13. After dirty flashing CM 13 on top of CM 12.1, I faced some problems. First of all, things were kinda slow. So I went to Developer options in Settings and set all the Animation scaling to .5x. This considerable made things faster. Secondly and more importantly, my sim card was not getting detected and I was getting a ton loads of popups saying "Unfortunately the process com.android.phone has stopped". I looked at the logcat to see what is going wrong and I found that this was appearing a lot of times. Clearly, the problem was with com.android.providers.telephony. Upon looking closely, the problem was related to CursorWindow and Cursor. Hence, the problem was not with CM 13 but with the old database left behind by CM 12.1. Solution Just delete the folders /data/data/com.android.providers.telephony and /data/data/com.android.phone using some tool like Root Explorer or you can do this in adb shell. rm -rf /data/data/com.android.providers.telephony rm -rf /data/data/com.android.phone Then, restart the phone.

## Using WRITE\_SECURE\_SETTINGS permission on non system apps

DevFeed: [Using WRITE\_SECURE\_SETTINGS permission on non system apps](<https://devfeed.tech/articles/using-write-secure-settings-permission-on-non-system-apps-21521.md>)

Original publisher: [Read original article](<http://lifepluslinux.blogspot.com/2015/10/using-writesecuresettings-permission-on.html>)

Author: Suresh Alse (noreply@blogger.com)

Published: 2015-10-25T08:44:00Z

Content type: tutorial

Language: en

Sources: [Life Plus Linux](<https://devfeed.tech/sources/life-plus-linux.md>)

Topics: [Android](<https://devfeed.tech/topics/android.md>), [Wireless Debugging](<https://devfeed.tech/topics/wireless-debugging.md>), [App](<https://devfeed.tech/topics/app.md>), [APK](<https://devfeed.tech/topics/apk.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [adb](<https://devfeed.tech/tags/adb.md>), [android](<https://devfeed.tech/tags/android.md>), [apk](<https://devfeed.tech/tags/apk.md>), [app](<https://devfeed.tech/tags/app.md>), [code](<https://devfeed.tech/tags/code.md>), [permission](<https://devfeed.tech/tags/permission.md>), [root](<https://devfeed.tech/tags/root.md>)

### AI overview

A tutorial explains how an Android application can obtain the WRITE_SECURE_SETTINGS permission despite it being unavailable to non-system apps. It describes granting the permission with ADB or running the command from a root shell, noting that root access is required for the programmatic approach.

### Source excerpt

I happen to frequently use an app that doesn't work if USB Debugging - ADB (Android Debug Bridge) is enabled. It is very cumbersome to go to settings and enable or disable the setting every time I need to use the app. I checked if there are any widgets that could do this in a click and returned empty handed. So, I did what every developer would do - build it myself! In order to change the adb settings, I had to use WRITE_SECURE_SETTINGS permission. But there was one major problem! This permission is not available for non system apps!! The easiest solution to this was to move the apk to /system partition. Except that I didn't want to do this as I frequently keep flashing /system partition. Another solution was to use pm and grant permission to the app like this: adb pm grant <package name> android.permission.WRITE_SECURE_SETTINGS This was great! However I didn't want users who were gonna use the app to go through all this pain. I had to figure out a way to do the same programmatically. So I did the next best thing! To run the command after opening a root shell in the code. Here is how I did it. This requires root. But that's ok.

[Next page](<https://devfeed.tech/tags/root.md?cursor=WyIyMDE1LTEwLTI1VDA4OjQ0OjAwKzAwOjAwIiwgIjhlNzc2MDYwLWU0ZjAtNGIzMi04MGY2LTdmN2U5NDYzNjYxZCJd>)