Transfer all the files to the new partition
rsync -aAXvHS --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found","/data"} /* /mnt/backup/
Get the UUID for the new partition
[root@archie /]# blkid /dev/sda2 /dev/sda2: UUID="ca2f7146-122f-4746-8725-7aeb4ca792e6" TYPE="ext4" PARTUUID="48c724bf-02"
Edit mountpoints
[root@archie /]# vim /etc/fstab
Edit the new system's boot configuration
[root@archie /]# vim /mnt/backup/boot/syslinux/syslinux.cfg
Enter the new system and fix booting
[root@archie /]# arch-chroot /mnt/backup/ sh-4.3# syslinux-install_update -i -a -m Syslinux BIOS install successful Boot Flag Set - /dev/sda2 Installed MBR (/usr/lib/syslinux/bios/mbr.bin) to /dev/sda
Saturday, 25 July 2015
System backup
Sunday, 5 July 2015
Burning Blu Ray Discs
Look at this blog
For mkudffs, see arch: udftools
For mkudffs, see arch: udftools
What I get is
24712708096/25000000000 (98.9%) @0.9x, remaining 1:08 RBU 100.0% UBU 76.6% 24726929408/25000000000 (98.9%) @0.9x, remaining 1:04 RBU 100.0% UBU 79.7% 24741150720/25000000000 (99.0%) @0.9x, remaining 1:01 RBU 100.0% UBU 85.9% 24755372032/25000000000 (99.0%) @0.9x, remaining 0:58 RBU 100.0% UBU 73.4% :-[ WRITE@LBA=b87400h failed with SK=5h/END OF USER AREA ENCOUNTERED ON THIS TRACK]: Input/output error :-( write failed: Input/output error /dev/sr2: flushing cache /dev/sr2: closing track /dev/sr2: closing session :-[ CLOSE SESSION failed with SK=5h/INVALID FIELD IN CDB]: Input/output error /dev/sr2: reloading tray
Friday, 28 November 2014
Ubuntu - Update hostname from DHCP
This script is basically a mutation of the script found in drwindsor's post :
#!/bin/sh # Filename: /etc/dhcp/dhclient-exit-hooks.d/hostname # Purpose: Used by dhclient-script to set the hostname of the system # to match the DNS information for the host as provided by # DHCP. # if [ "$reason" != BOUND ] && [ "$reason" != RENEW ] \ && [ "$reason" != REBIND ] && [ "$reason" != REBOOT ] then return fi echo dhclient-exit-hooks.d/hostname: Dynamic IP address = $new_ip_address hostname=$(host $new_ip_address | cut -d ' ' -f 5 | cut -d "." -f 1) echo $hostname > /etc/hostname hostname $hostname echo dhclient-exit-hooks.d/hostname: Dynamic Hostname = $hostname
Git mirror without cloning
What I want to do is to set up a bare mirror git repository without fetching the changes. It should be a fast operation compared to:
git clone --mirror $REPOURLHere are the steps that I did to achieve the same results as a full clone:
# Create and update with the clone command git clone --mirror https://github.com/matelakat/vimide vimide-with-clone cd vimide-with-clone/ git fetch cd ..And let's create the equivalent:
git init --bare vimide-manual cd vimide-manual git remote add --mirror origin https://github.com/matelakat/vimide git fetch git pack-refs --all --prune cd ..You can see that the two directories are the same:
diff -r vimide-with-clone/ vimide-manual/ && echo "ALL the same"
ALL the same
Monday, 4 August 2014
Differences between git branches
The problem
Given I have two branches, A and B within a git repository, I would like to come up with two sets of changes: (A-B) and (B-A). So I would like to find all the commits that are in A but not in B, and vice versa.Introducing the same change to two branches
Let's set up a git repository to play with. As a first step, I create an initial commit, with only one file in it, a simple greeting:$ git init $ echo "hello there" > hello.txt $ git add hello.txt $ git commit -m "Initial commit"And now, make the branching, and introduce the same change to each of those branches:
$ git checkout -b A $ echo "blah" > blah.txt $ git add blah.txt $ git commit -m "Added blah"And see the B branch:
$ git checkout master -b B $ echo "blah" > blah.txt $ git add blah.txt $ git commit -m "Added blah"See if git is smart enough to find out that the two changes are the same:
$ git log A..B --oneline | wc -l
1Of course, they are not the same, they are copies of the other. So let's see the other command, called git-cherry:
$ git cherry A BThis shows only one line, with a minus sign. From the documentation of git cherry:
git cherry [-v] [<upstream> [<head> [<limit>]]] Every commit that doesn’t exist in the <upstream> branch has its id (sha1) reported, prefixed by a symbol. The ones that have equivalent change already in the <upstream> branch are prefixed with a minus (-) sign, and those that only exist in the <head> branch are prefixed with a plus (+) symbol:
Saturday, 21 June 2014
SSD - Bytes written
I Have an Intel 520 SSD. I can use smartmontools to ask how much bytes have been written to it:
sudo ./smartctl -q noserial -i -l devstat,0 -l devstat /dev/sda
smartctl 6.2 2013-07-26 r3841 [x86_64-linux-3.2.0-32-generic] (local build) Copyright (C) 2002-13, Bruce Allen, Christian Franke, www.smartmontools.org === START OF INFORMATION SECTION === Model Family: Intel 520 Series SSDs Device Model: INTEL SSDSC2CW240A3 Firmware Version: 400i User Capacity: 240,057,409,536 bytes [240 GB] Sector Size: 512 bytes logical/physical Rotation Rate: Solid State Device Device is: In smartctl database [for details use: -P show] ATA Version is: ACS-2 T13/2015-D revision 3 SATA Version is: SATA 3.0, 3.0 Gb/s (current: 3.0 Gb/s) Local Time is: Sat Jun 21 08:42:06 2014 BST SMART support is: Available - device has SMART capability. SMART support is: Enabled Device Statistics (GP Log 0x04) supported pages Page Description 0 List of supported log pages 1 General Statistics 4 General Errors Statistics 6 Transport Statistics 7 Solid State Device Statistics Device Statistics (GP Log 0x04) Page Offset Size Value Description 1 ===== = = == General Statistics (rev 2) == 1 0x008 4 1129 Lifetime Power-On Resets 1 0x010 4 8660 Power-on Hours 1 0x018 6 5401949881 Logical Sectors Written 1 0x028 6 5794864033 Logical Sectors Read 4 ===== = = == General Errors Statistics (rev 1) == 4 0x008 4 0 Number of Reported Uncorrectable Errors 4 0x010 4 9232 Resets Between Cmd Acceptance and Completion 6 ===== = = == Transport Statistics (rev 1) == 6 0x008 4 9232 Number of Hardware Resets 6 0x010 4 4085 Number of ASR Events 6 0x018 4 0 Number of Interface CRC Errors 7 ===== = = == Solid State Device Statistics (rev 1) == 7 0x008 1 255 Percentage Used Endurance Indicator
Monday, 16 June 2014
Recording terminal sessions
During the weekend I was experimenting with some tools to record terminal sessions. The result of the hacking:
- ttyrec
- ttygif
Subscribe to:
Posts (Atom)