2011-12-19 16 views
9

El directorio de instalación predeterminado de apt-get es/opt. ¿Puedo cambiarlo a otro directorio?Cómo puedo cambiar el directorio de instalación de apt-get

+0

ser más precisos: es este el directorio por defecto de la aplicación apt-get (al compilar desde el código fuente) del directorio predeterminado de aplicaciones instalado con apt-get? – CedX

+0

Es el directorio predeterminado de las aplicaciones instaladas con apt-get – tommywang

+0

Entonces no puede. –

Respuesta

7

mejor manera que se me ocurre es utilizar un enlace simbólico

nota que no todos los programas se instalan en el mismo directorio y/opt pueden no ser lo mejor que puede pasar. (Ver el final, por ejemplo, de mover sólo una carpeta/programa)

Esto es lo que hice con EasyPeasy (Ubuntu 10.04)

seguir este código cuidadosamente algunos de los comandos puede borrar archivos importantes si se usan incorrectamente.

Primero debe asegurarse de que/opt (o su directorio predeterminado de instalación de apt-get de distros) esté vacío. Si tiene datos en la carpeta opt, lo que es muy probable que lo hace, usted puede moverlo a algún otro sitio en primer lugar para su custodia:

sudo mkdir /New_Location/newtmp          # Generates Temporary Folder for Programs 
sudo cp -a /opt/* /New_Location/newtmp        # Moves Programs to Temp folder 

Una vez que la copia de seguridad se puede quitar el directorio original:

sudo rm -rf /opt/             # Removes opt directory 

continuación, puede crear la nueva carpeta archivos de programa en una unidad con mucho espacio y crear un enlace simbólico:

sudo mkdir /New_Location/Program-Files        # Generates New Program Directory 
sudo ln -s /New_Location/Program-Files /opt       # Creates Symbolic Link 

mover Finalmente todos los archivos de programa de edad para la nueva carpeta y limpiar el datos temporales:

sudo cp -a /New_Location/newtmp/* /New_Location/Program-Files  # Moves Programs to Program Files Folder 
sudo rm -rf /New_Location/newtmp/         # Removes Temp folder 

Si sólo desea mover un solo programa que se está llevando un trozo de su espacio se puede utilizar el mismo proceso.

por ejemplo: para mover Java (JVM aproximadamente 300 MB) haga lo siguiente. revisa el directorio de Java usando el analizador de uso de disco. mina es// lib/jvm usr

sudo mkdir /New_Location/Program-Files/Java       # Generates New Program Directory 
sudo cp -a /usr/lib/jvm/* /New_Location/Program-Files/Java   # Moves Program to new folder 
sudo rm -rf /usr/lib/jvm            # Removes opt directory 
sudo ln -s /New_Location/Program-Files/Java /usr/lib/jvm    # Creates Symbolic Link 

su mejor momento en este punto hacer un reinicio que debe borrar la memoria caché.

Happy Hacking limitada inteligencia

+0

Imagine lo siguiente. Quieres dos versiones de un paquete en diferentes directorios. Entonces, el segundo paquete superará al primero. Los enlaces simbólicos no son un beneficio en ese momento. – DanFromGermany

2

No se puede: la ruta de instalación está codificada en paquetes (ver por ejemplo: http://packages.ubuntu.com/oneiric/i386/mono-runtime/filelist). Esta ruta es usualmente/usr en lugar de/opt, pero depende de los paquetes. Si desea anular el directorio predeterminado, debe extraer manualmente el contenido de los paquetes. Pero no puede funcionar: los archivos de configuración, incluso los archivos binarios a veces, continuarán usando la ruta anterior. Por lo tanto, debe actualizarlos para que los paquetes funcionen correctamente.

Cuestiones relacionadas