Skip to main content

Resizing /root partition in Debian 7 (Wheezy)

I've usually been afraid to do anything drastic with the underlying filesystem because of how many times I've messed up the filesystem to begin with, and also because of how much time it takes to reinstall everything. This time, I decided that it was ok to go ahead and take a little risk here. My Linux machine is an old X61s, and its purpose is for me to experiment and learn more about Linux.

I started getting a message that I was running low on space on root. Sure enough, the 300MB was all used up. I was hoping that GPartEd could help me with resizing the partitions. I couldn't see the partitions because it was all under an lvm.

My plan was to shrink /opt slightly, then grow root. Thankfully, the formula isn't too bad, but there are a few steps.

The first link I resorted to was this one: http://blog.shadypixel.com/how-to-shrink-an-lvm-volume-safely/. I didn't reboot to resize /opt; I just resized it after unmounting it.

Unmount /opt:
  # umount /dev/chrono/opt

Check the file system consistency:
  # e2fsck -f /dev/chrono/opt

Resize the filesystem to less than my target volume size:
  # resize2fs /dev/chrono/opt 100G

Reduce the logical volume size:
  # lvreduce -L 120G /dev/chrono/opt

Grow the /opt filesystem to fill the volume:
  # resize2fs -p /dev/chrono/opt

So, that wasn't too bad... The next part was to extend the root volume. I rebooted using a live cd and then followed instructions from this link: http://www.radioprosciutto.com/node/7

Make sure we can access the volumes:
  # vgchange -a y

Grow the root logical volume:
  # lvextend -L +5G /dev/chrono/root

Check the file system consistency:
  # e2fsck -f /dev/chrono/root

Grow the filesystem to fill the volume:
  # resize2fs -p /dev/chrono/root

I rebooted and voila! My partitions were correctly resized. :)

Comments

Popular posts from this blog

Compiling pgmodeler on Yosemite (with Homebrew)

Refer to  pgmodeler installation . Steps: Clone the pgmodeler git repo. Use Homebrew to install qt5 (5.4.2, see here ), libxml2, and postgresql. Edit the pgmodeler.pri (not .pro) file and change these variables: PGSQL_LIB = /usr/local/opt/postgresql/lib/libpq.dylib PGSQL_INC = /usr/local/opt/postgresql/include XML_INC = /usr/local/opt/libxml2/include/libxml2 XML_LIB = /usr/local/opt/libxml2/lib/libxml2.dylib Follow instructions to compile pgmodeler (you might need to put Qt's binaries in your PATH. I was lazy and didn't). $ /usr/local/opt/qt5/bin/qmake pgmodeler.pro $ make $ make install $ cd /Applications $ /usr/local/opt/qt5/bin/macdeployqt pgmodeler.app -executable=pgmodeler.app/Contents/MacOS/pgmodeler-ch -executable=pgmodeler.app/Contents/MacOS/pgmodeler-cli Then I was able to do $ open pgmodeler.app

pgmodeler build in Debian Jessie

This is my qmake version: $ qmake -v QMake version 3.0 Using Qt version 5.3.2 in /usr/lib/x86_64-linux-gnu I had to edit linuxdeploy.sh: 1. Add "-makefile" to the QMAKE_ARGS variable: $ qmake -h Usage: /usr/lib/x86_64-linux-gnu/qt5/bin/qmake [mode] [options] [files] where mode is either "-makefile" (default) or "-project" QMAKE_ARGS="-makefile -r -spec linux-clang" 2. Right before "Running qmake...", I added another line to include pgmodeler.pro in the qmake invocation: QMAKE_ARGS="$QMAKE_ARGS pgmodeler.pro" Then I ran ./linuxdeploy.sh -no-qt-libs (https://github.com/pgmodeler/pgmodeler/issues/674)

Building and installing CAN bus bundle on Kura/Eurotech Software Framework

The documentation is incomplete as of 11/25/2015:  http://esf.eurotech.com/docs/how-to-use-can-bus . It shows you how to setup the can0/can1 interfaces. I think I finally figured out the real steps to getting the CAN bus service working in Kura. I found this website somewhat useful:  https://tobiddev.wordpress.com/2015/03/23/one-bundle-project-modbus-and-eclipse-kura/ . It didn't tell me how to build a bundle, but I took a chance with the following and now I'm able to see my module loading the CanConnectionService in the Kura logs. First, build Kura from source following this guide:  https://wiki.eclipse.org/Kura/Getting_Started . You'll probably want to build it in Linux (I am using Debian Jessie) or possibly OS X (I didn't test it). For sure, it fails in Windows 8 at the create_installer.sh part, so I decided not to waste any more time on it. You basically need Kura built just enough so that you can load everything into Eclipse. I was able to do this using Eclipse...