Editing Free up rootfs space

Warning: You are not logged in. Your IP address will be recorded in this page's edit history.
The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 3: Line 3:
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]].
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]].
-
==Listing rootfs space on your device ==
+
 
 +
===Listing rootfs space on your device ===
Use this command to determine how much rootfs space is allocated, used, and available on your device.
Use this command to determine how much rootfs space is allocated, used, and available on your device.
-
  df -h /
+
  df -h | head -n 2
If you want to see all filesystems, use only "df -h".
If you want to see all filesystems, use only "df -h".
-
If you want to print a list of all directories under rootfs and their cumulative sizes, run the following command (sizes in MB, sorted in ascending order):
 
-
 
-
du -mx / | sort -n
 
-
 
-
If you want a comprehensive list of what packages are using what space on rootfs, which will take a little bit of time for your device to prepare, Chris Pitchford has prepared [http://discussions.europe.nokia.com/t5/Maemo-and-MeeGo-Devices/whats-apps-take-a-lots-of-roofts/td-p/715374 a couple of scripts] which will achieve this.
 
-
 
-
== Freeing up space ==
 
===Disable Extras-testing, Extras-devel, and/or any other third party repositories===
===Disable Extras-testing, Extras-devel, and/or any other third party repositories===
Line 23: Line 17:
Simply check the disabled box and save in the Application Manager's catalogues menu. Wait for app manger to update the lists. This only helps if you actually had these repositories enabled.
Simply check the disabled box and save in the Application Manager's catalogues menu. Wait for app manger to update the lists. This only helps if you actually had these repositories enabled.
-
Disabling [[extras-testing]] and [[extras-devel]] will (currently) give you an extra 5 MB in rootfs
+
Disabling extras-testing and extras-devel will (currently) give you an extra 5 MB in rootfs
 +
 
===Clear apt cache===
===Clear apt cache===
-
Run following command (has to be done as root)
+
Run following command (has to be done as [[root]])
  apt-get clean
  apt-get clean
-
will release probably near 10 MB.
 
-
''In my case, it freed about 250MB of 'home', as shown by 'storageusage' application.''
 
===Remove unused dependencies===
===Remove unused dependencies===
-
Run following command (has to be done as root)
+
Run following command (has to be done as [[root]])
  apt-get autoremove
  apt-get autoremove
-
===Purge unused configuration files===
 
-
Even when you have uninstalled a package it may leave configuration files on your system. Use dpkg to find uninstalled packages with configuration files still in place:
+
===List of big and rarely used files===
-
dpkg -l|grep ^rc
+
You can't just delete these files, this is just a list with ideas! You have to know what you are going to do with them (optify, backup+remove, etc.).
-
Remove the configuration files by purging the packages:
 
-
dpkg --purge foo bar
+
/usr/share/locale (10 MB, but you have to keep at least the one language you use)
-
If you don't want to purge all packages with uninstalled configuration files by hand, this line might come handy (as root, or with sudo in xargs):
+
/usr/share/themes/alpha and /beta (they use 5-6 MB each, keep the one you use)
-
  dpkg -l | grep ^rc | cut -d " " -f 3 | xargs dpkg --purge
+
/usr/share/fonts/arabic and /chinese (2,5 MB less for people who don't speak those two languages)
-
===List of big and rarely used files===
 
-
 
-
You can't just delete these files, this is just a list with ideas! You have to know what you are going to do with them (optify, backup+remove, etc.).
 
-
 
-
* <code>/usr/lib/locale/locale-archive</code> (28 MB) : stupid idea : if you do such a thing, you will loose all the constant texts as the names of days ("Monday","Tuesday",...). What kind of advice is this?
 
-
* <code>/usr/share/locale</code> (10 MB, but you have to keep at least the languages you use)
 
-
* <code>/usr/share/themes/alpha</code> and <code>/beta</code> (they use 5-6 MB each, keep the one you use - REMOVING THESE WILL GENERALLY MESS UP YOUR UI - do not simply remove them with "rm -f $dir" - use "apt-get remove [hildon-theme-alpha|hildon-theme-beta]" Similarly you can reinstall them the same way. Dependency apps: "bluezwitch cherry feedingit google-search-widget hildon-desktop hildon-desktop-python-loader hildon-theme-alpha")
 
-
  hildon-theme-beta mp-fremantle-002-pr osso-startup-wizard ovi-promotion-widget)
 
-
* <code>/usr/share/fonts/arabic</code> and <code>/chinese</code> (2,5 MB less for people who don't speak those two languages)
 
===Move apt cache outside of rootfs===
===Move apt cache outside of rootfs===
Line 72: Line 54:
  mkdir -p /home/user/MyDocs/apt-archive-cache/archives/partial
  mkdir -p /home/user/MyDocs/apt-archive-cache/archives/partial
-
Now execute apt-get with the -o option as root:
+
Now execute apt-get with the -o option as [[root]]:
  apt-get -o dir::cache=/home/user/MyDocs/apt-archive-cache <command>
  apt-get -o dir::cache=/home/user/MyDocs/apt-archive-cache <command>
Line 86: Line 68:
===Optify Python===
===Optify Python===
-
If you have installed python or a python program before it was optified, you can optify it with this method. First [[Terminal#Opening_the_terminal|open a console]], then type the following commands as root:
+
If you have installed python or a python program before it was optified, you can optify it with this method. First [[Terminal#Opening_the_terminal|open a console]], then type the following commands as [[root]]:
  apt-get install pymaemo-optify
  apt-get install pymaemo-optify
Line 96: Line 78:
  /opt/pymaemo/usr/lib/python2.5
  /opt/pymaemo/usr/lib/python2.5
                       2064208    471712  1487640  24% /usr/lib/python2.5
                       2064208    471712  1487640  24% /usr/lib/python2.5
 +
===Remove non-optified packages===
===Remove non-optified packages===
Line 109: Line 92:
You get a listing of all running processes, including the application you just started. To find out what package an application belongs to, enter
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'')
  dpkg --search $(which ''processname'')
 +
Source: http://talk.maemo.org/showpost.php?p=468063&postcount=1
Source: http://talk.maemo.org/showpost.php?p=468063&postcount=1
 +
===Custom scripts===
===Custom scripts===
Line 117: Line 102:
This script will move some unnecessary files on rootfs to /home/opt/ to free up space on rootfs.
This script will move some unnecessary files on rootfs to /home/opt/ to free up space on rootfs.
-
 
-
BEWARE: Icon Label Issue May Occur.
 
-
http://talk.maemo.org/showthread.php?p=654384#post654384
 
First, create a file, move-to-opt.sh for example, containing this script:
First, create a file, move-to-opt.sh for example, containing this script:
-
<source lang="bash">
 
-
#!/bin/sh
 
-
# Nokia N900 Maemo 5 Script to free up space on rootfs
 
-
# ignoring errors when creating dirs that may already exist
 
-
 
-
# 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 video on start-up to /home/opt
+
#!/bin/sh
-
mkdir -p /home/opt/usr/share/hildon-welcome 2> /dev/null
+
# Nokia N900 Maemo 5 Script to free up space on rootfs
-
cp -r /usr/share/hildon-welcome/* /home/opt/usr/share/hildon-welcome
+
# ignoring errors when creating dirs that may already exist
-
rm -r /usr/share/hildon-welcome
+
 
-
ln -s /home/opt/usr/share/hildon-welcome /usr/share/hildon-welcome
+
# 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
-
mkdir -p /home/opt/usr/share/pixmaps 2> /dev/null
+
rm -r /usr/share/icons
-
cp -r /usr/share/pixmaps/* /home/opt/usr/share/pixmaps
+
ln -s /home/opt/usr/share/icons /usr/share/icons
-
rm -r /usr/share/pixmaps
+
-
ln -s /home/opt/usr/share/pixmaps /usr/share/pixmaps
+
# Moving video on start-up to /home/opt
-
 
+
mkdir -p /home/opt/usr/share/hildon-welcome 2> /dev/null
-
# Moving 'apt cache' to /home/opt - Valid until [https://bugs.maemo.org/show_bug.cgi?id=5746 Bug 5746] is fixed.
+
cp -r /usr/share/hildon-welcome/* /home/opt/usr/share/hildon-welcome
-
mkdir -p /home/opt/var/cache/apt 2> /dev/null
+
rm -r /usr/share/hildon-welcome
-
cp -r /var/cache/apt/* /home/opt/var/cache/apt
+
ln -s /home/opt/usr/share/hildon-welcome /usr/share/hildon-welcome
-
rm -r /var/cache/apt
+
-
ln -s /home/opt/var/cache/apt /var/cache/apt
+
# ??
 +
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 - Valid until [https://bugs.maemo.org/show_bug.cgi?id=5746 Bug 5746] is fixed.
 +
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
 +
 +
# Moving locales [http://talk.maemo.org/showpost.php?p=568370&postcount=11 Source]
 +
mv /usr/share/locale /opt
 +
ln -s /opt/locale /usr/share/locale
-
# Moving locales [http://talk.maemo.org/showpost.php?p=568370&postcount=11 Source]
 
-
mv /usr/share/locale /opt
 
-
ln -s /opt/locale /usr/share/locale
 
-
</source>
 
Set the script's permission for executable:
Set the script's permission for executable:
  chmod +x move-to-opt.sh
  chmod +x move-to-opt.sh
-
(note that this step will - without warning you in any way - not work on partitions which are only FAT formatted, as maybe your microSD card will initially be; in such a case, move the script somewhere else)
+
(note that this step will - without warning you in any way - not work on partitions which are only fat formatted, as maybe your micro sd card will initially be; in such a case, move the script somewhere else)
-
Run the script as root:
+
Run the script as [[root]]:
  ./move-to-opt.sh
  ./move-to-opt.sh
 +
====Script to safely free space on rootfs====
====Script to safely free space on rootfs====
-
[[User:Tanner#Safely_free_some_space_on_rootfs|This script]] shows you how much space will be freed and automatically detects whether some directories have already been moved.
+
[http://wiki.maemo.org/User:Tanner#Safely_free_some_space_on_rootfs This script] shows you how much space will be freed and automatically detects whether some directories have already been moved.
-
BEWARE: Icon Label Issue May Occur.
 
-
http://talk.maemo.org/showthread.php?p=654384#post654384
 
====Move some of the pre-installed applications into /opt====
====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.  
+
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]]) will save 8.7 Mb:
-
 
+
-
Moving Nokia Maps (has to be done as root) will save 8.7 Mb:
+
  mv /usr/share/nokia-maps /home/opt/
  mv /usr/share/nokia-maps /home/opt/
  ln -s /home/opt/nokia-maps /usr/share/nokia-maps
  ln -s /home/opt/nokia-maps /usr/share/nokia-maps
-
Moving the microb-engine (has to be done as root) will save 13.9 Mb:
+
Moving the microb-engine (has to be done as [[root]]) will save 13.9 Mb:
  mv /usr/share/microb-engine /home/opt
  mv /usr/share/microb-engine /home/opt
  ln -s /home/opt/microb-engine /usr/share/microb-engine
  ln -s /home/opt/microb-engine /usr/share/microb-engine
-
Moving the "Getting started" app/tutorial (has to be done as root) will save 0.9 Mb:
+
Moving the "Getting started" app/tutorial (has to be done as [[root]]):
  mv /usr/share/tutorial-applet /home/opt
  mv /usr/share/tutorial-applet /home/opt
  ln -s /home/opt/tutorial-applet /usr/share/tutorial-applet
  ln -s /home/opt/tutorial-applet /usr/share/tutorial-applet
-
 
-
(With the CSSU - and possibly without on PR1.3 - the tutorial may be uninstalled, getting rid of the tutorial folder entirely)
 
-
 
-
 
-
To get a bit more rootfs space you can move Flashplayer to opt; will save 3.5Mb:
 
-
mv  /usr/lib/browser/plugins/libflashplayer.so /opt/usr/lib/
 
-
ln -s /opt/usr/lib/libflashplayer.so  /usr/lib/browser/plugins/libflashplayer.so
 
====Move themes====
====Move themes====
Line 195: Line 167:
{{ambox
{{ambox
| type = notice
| type = notice
-
| text = '''This may cause problems when changing themes, and reversing it is NOT possible unless the device is [[Updating the firmware|reflashed]]
+
| image=
 +
| text = '''This may cause problems when changing themes, and reversing it is NOT possible unless the device is [[Updating the tablet firmware|reflashed]]
}}
}}
Line 205: Line 178:
  rm -r /usr/share/themes
  rm -r /usr/share/themes
  ln -s /home/opt/usr/share/themes /usr/share/themes
  ln -s /home/opt/usr/share/themes /usr/share/themes
-
 
-
====See rootfs usage per package====
 
-
 
-
This script [http://www.robinhill.me.uk/downloads/pkgsize.py] outputs a list of all packages in rootfs and their size therein. I can not vouch for its validity but it seemed decent enough.
 
-
"python pkgsize.py checkpkgs | sort -n" gives you a sorted result in bytes. Most of these files are supposed to be there but it might help you find some non optified ones.
 
-
 
-
from [http://www.robinhill.me.uk/maemo/package_sizes.html]
 
-
 
-
Here is another script pkgscan.sh which sort big files on rootfs [http://talk.maemo.org/showpost.php?p=442804&postcount=28]
 
[[Category:Power users]]
[[Category:Power users]]
[[Category:N900]]
[[Category:N900]]
[[Category:Firmware update]]
[[Category:Firmware update]]

Learn more about Contributing to the wiki.


Please note that all contributions to maemo.org wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see maemo.org wiki:Copyrights for details). Do not submit copyrighted work without permission!


Cancel | Editing help (opens in new window)

Templates used on this page: