Free up rootfs space
(add alternative script) |
m (→Use apt cache outside of rootfs: minor typo) |
||
Line 27: | Line 27: | ||
If you run into a problem while using apt-get you can temporarily have the apt cache outside rootfs to be able to download larger deb files. | If you run into a problem while using apt-get you can temporarily have the apt cache outside rootfs to be able to download larger deb files. | ||
- | Create a download folder on the eMMC to be used for the downloaded packages instead of the | + | Create a download folder on the eMMC to be used for the downloaded packages instead of the default apt archive folder. |
$ mkdir -p /home/user/MyDocs/apt-archive-cache/archives/partial | $ mkdir -p /home/user/MyDocs/apt-archive-cache/archives/partial |
Revision as of 15:03, 17 February 2010
Backing up your data is recommended. In case of trouble you might need to re-flash your device.
Here's a simple howto for those suffering from lack of space in rootfs. The first suggestion is more of a temporary matter, for example to get enough space to install an update, but it's also the fastest and easiest. The suggestions are in order of potential threat to operating system. Least dangerous first and the most dangerous last.
The rest are more permanent (and thus more useful), but they require root access.
Disable Extras-testing, Extras-devel and/or any other third party repositories
Simply check the disabled box and save in the Application Manager's catalogues menu. wait for app manger to update the lists. Of course this only helps if you actually had these repositories enabled.
Disabling extras-testing and extras-devel will (currently) give you an extra 11.5Mb in rootfs
Clear apt-cache
Run following command as root (after you have disabled extras-testing&extras-devel)
apt-get clean
And reboot after that.
Use apt cache outside of rootfs
If you run into a problem while using apt-get you can temporarily have the apt cache outside rootfs to be able to download larger deb files.
Create a download folder on the eMMC to be used for the downloaded packages instead of the default apt archive folder.
$ mkdir -p /home/user/MyDocs/apt-archive-cache/archives/partial
Now execute apt-get with the -o option as root:
apt-get -o dir::cache=/home/user/MyDocs/apt-archive-cache dist-upgrade
Optify python
If you have installed python or a python program before python was optified, you can optify it with this method: first open a console, then type the following commands as root:
apt-get install pymaemo-optify apt-get clean
When the program is installed, type df -h in the xterm to see if it worked. The output should now contain these lines at the end:
/opt/pymaemo/usr/lib/python2.5 2064208 471712 1487640 24% /usr/lib/python2.5 /opt/pymaemo/usr/share/pyshared 2064208 471712 1487640 24% /usr/share/pyshared /opt/pymaemo/usr/lib/pyshared 2064208 471712 1487640 24% /usr/lib/pyshared /opt/pymaemo/usr/share/python-support 2064208 471712 1487640 24% /usr/share/python-support /opt/pymaemo/usr/lib/python-support 2064208 471712 1487640 24% /usr/lib/python-support
Remove non-optified packages
If you have installed programs from extras-testing, extras-devel or third party repositories, the programs might not be properly optified. Removing these might help with rootfs space.
You can free space by uninstalling applications that you do not need. A problem is if you do not know how these applications are called. To find it out:
- open a console
- start the application that you do not need
- in the console, type
ps -ef
You get a listing of all running processes, including the application you just started. To find out what package an application belongs to, enter
dpkg --search $(which processname)
source:http://talk.maemo.org/showpost.php?p=468063&postcount=1
Remove ioquake3
The ioquake3 application prevents firmware upgrading no matter how much free space you have on your device. Uninstall it prior to upgrading then reinstall once the upgrade is complete.
Script to move stuff to /home/opt/
This script will move some files to /home/opt/ allowing rootfs space to be freed:
First, create a file, move-to-opt.sh for example, containing this script:
#!/bin/sh # Script for moving stuff from / to /home/opt to get more rootfs space on Nokia N900 Maemo 5 # ignoring errors when creating dirs that may already exist # Moving themes to /home/opt mkdir -p /home/opt/usr/share/themes 2> /dev/null cp -r /usr/share/themes/* /home/opt/usr/share/themes rm -r /usr/share/themes ln -s /home/opt/usr/share/themes /usr/share/themes # Moving icons to /home/opt mkdir -p /home/opt/usr/share/icons 2> /dev/null cp -r /usr/share/icons/* /home/opt/usr/share/icons rm -r /usr/share/icons ln -s /home/opt/usr/share/icons /usr/share/icons # Moving boot video to /home/opt mkdir -p /home/opt/usr/share/hildon-welcome 2> /dev/null cp -r /usr/share/hildon-welcome/* /home/opt/usr/share/hildon-welcome rm -r /usr/share/hildon-welcome ln -s /home/opt/usr/share/hildon-welcome /usr/share/hildon-welcome # ?? mkdir -p /home/opt/usr/share/pixmaps 2> /dev/null cp -r /usr/share/pixmaps/* /home/opt/usr/share/pixmaps rm -r /usr/share/pixmaps ln -s /home/opt/usr/share/pixmaps /usr/share/pixmaps # Moving apt cache to /home/opt mkdir -p /home/opt/var/cache/apt 2> /dev/null cp -r /var/cache/apt/* /home/opt/var/cache/apt rm -r /var/cache/apt ln -s /home/opt/var/cache/apt /var/cache/apt
Set the script's permission for executable:
chmod +x move-to-opt.sh
Run the script as root:
./move-to-opt.sh
alternative script to safely free space on rootfs
This script shows you much space will be freed and automatically detects whether some directories have already been moved.
Move some of the pre-installed applications into /opt
Some applications like Nokia Maps and the microb-engine are placed in /usr/share taking up valuable root space, moving these files will not affect the apps. Moving Nokia Maps (has to be done as root):
mv /usr/share/nokia-maps /home/opt/ ln -s /home/opt/nokia-maps /usr/share/nokia-maps
Moving the microb-engine (has to be done as root):
mv /usr/share/microb-engine /home/opt ln -s /home/opt/microb-engine /usr/share/microb-engine
Moving the "Getting started" app/tutorial (has to be done as root):
mv /usr/share/tutorial-applet /home/opt ln -s /home/opt/tutorial-applet /usr/share/tutorial-applet