6 agosto 2026

Come creare uno script Bash per lanciare un gioco con Bottles e liberare completamente la RAM alla chiusura.


Installa un gioco Windows non-Steam usando Bottles : r/SteamDeck

Il tuo script Bash è pronto per il download:

Icona SH

launch_game_bottles

SH

Apri

Come funziona lo script

Lo script automatizza tre fasi fondamentali per garantire il minimo consumo di RAM:

  1. Avvio diretto tramite CLI: Avvia il gioco usando l'interfaccia da riga di comando di Bottles (bottles-cli), evitando di caricare in memoria l'interfaccia grafica GTK4 dell'applicazione.

  2. Terminazione forzata del sandbox: Alla chiusura del gioco, esegue flatpak kill com.usebottles.bottles per chiudere immediatamente qualsiasi processo residuo (come wineserver, servizi secondari o thread di background) rimasto attivo nella sandbox.

  3. Svuotamento della cache del kernel (drop_caches): Esegue il comando sync e forza il kernel Linux a liberare la memoria RAM occupata dalla PageCache, dai file temporanei e dagli inodi lasciati aperti dal gioco.

Codice dello script (launch_game_bottles.sh)

Bash

#!/usr/bin/env bash
# ==============================================================================
# Script per avviare un gioco con Bottles e liberare la RAM alla chiusura
# ==============================================================================

BOTTLE_NAME="${1}"
PROGRAM_NAME="${2}"

if [ -z "$BOTTLE_NAME" ] || [ -z "$PROGRAM_NAME" ]; then
    echo "Uso: $0 <NomeBottiglia> <NomeProgramma>"
    echo "Esempio: $0 \"Gaming\" \"Cyberpunk2077\""
    exit 1
fi

echo "=========================================="
echo "Avvio: $PROGRAM_NAME (Bottiglia: $BOTTLE_NAME)..."
echo "=========================================="

# 1. Avvio del gioco tramite Bottles CLI
flatpak run com.usebottles.bottles run --bottled-name "$BOTTLE_NAME" --program "$PROGRAM_NAME"

echo "=========================================="
echo "Gioco chiuso. Avvio pulizia risorse e RAM..."
echo "=========================================="

# 2. Chiusura forzata di eventuali sottoprocessi Bottles/Wine rimasti attivi
echo "[1/3] Terminazione dei processi background di Bottles..."
flatpak kill com.usebottles.bottles 2>/dev/null || true

# 3. Pausa di assestamento
sleep 2

# 4. Pulizia della PageCache di Linux
echo "[2/3] Liberazione della memoria Cache di sistema..."
sync
if [ "$EUID" -eq 0 ]; then
    echo 3 > /proc/sys/vm/drop_caches
elif command -v sudo &> /dev/null; then
    echo 3 | sudo tee /proc/sys/vm/drop_caches > /dev/null 2>&1
fi

echo "[3/3] Pulizia completata con successo!"
echo "=========================================="
Guida all'installazione e all'uso
1. Rendere lo script eseguibile

Apri il terminale nella cartella in cui hai salvato il file e assegna i permessi di esecuzione:

Bash

chmod +x launch_game_bottles.sh
2. Esecuzione da terminale

Esegui lo script passando come argomenti il nome esatto della Bottiglia e il nome del programma/gioco configurato al suo interno:

Bash

./launch_game_bottles.sh "Gaming" "Cyberpunk2077"
Consiglio avanzato: Pulire la RAM senza inserire la password sudo

Per evitare che il comando sudo tee /proc/sys/vm/drop_caches ti chieda la password ogni volta che chiudi un gioco, puoi aggiungere una regola nel file sudoers:

  1. Apri l'editor sudoers:

    Bash

    sudo visudo
    
  2. Aggiungi la seguente riga in fondo al file (sostituendo tuoutente con il tuo nome utente di sistema):

    Plaintext

    tuoutente ALL=(ALL) NOPASSWD: /usr/bin/tee /proc/sys/vm/drop_caches
    
  3. Salva e chiudi. Da questo momento, lo script libererà la RAM in background in modo totalmente trasparente.

Trovato questo articolo interessante? Condividilo sulla tua rete di contatti Twitter, sulla tua bacheca su Facebook o semplicemente premi "+1" per suggerire questo risultato nelle ricerche in Google, Linkedin, Instagram o Pinterest. Diffondere contenuti che trovi rilevanti aiuta questo blog a crescere. Grazie! CONDIVIDI SU!

stampa la pagina

0 commenti:

Posta un commento

Ultimi giochi pubblicati.
Copyright © 2014 Super Tux Giochi | Designed With By Templateclue | Published By Gooyaabi Templates
Scroll To Top