Blog‎ > ‎

Backups, UTF-8, learn more, PXE Boot, SSO Auth services

posted Mar 25, 2012, 11:28 AM by Sami Lehtinen   [ updated Mar 31, 2012, 5:30 AM ]
  • Reviewed my personal backup procedures, confirming secure encrypted distribution of data. I'm using PAR2 which uses Reed-Solomon error correction coding for creating partially reduntant backups. If parts of backup are corrupted, data is still fully recoverable. Corruption is serious issue, because backups are encrypted. With encryption even single swapped bit will cause whole archive to be corrupted starting from error point.
  • Wrote one Python 2.7 app. After working with Python 3.x encoding issues with older python felt bit annoying. UTF-8 should be used everywhere, according Google about 60% of web-pages use UTF-8.
  • I don't like people who say: "I don't know. I just working here." - If you don't know, then it's excellent time to learn more.
  • Finally finished PXE boot, pxelinux.0, proxyDHCP, leasetime, pool allocation, etc issues. Latest Clonezilla version based on Precise Pangolin seems to also work ok. I'll try to make short version of this long story. Serva32, Tftpd32.
    List of issues:
    1) Invalid PXE boot configuration - Read more and fix configuration.
    2) DHCP server din't support PXE boot. - Use Tftpd32
    3) Tftpd32 DHCP doesn't work with Clonezilla - Use Serva32
    4) Serva32 didn't work with Clonezila - Tried two parallel DHCP pools
    5) Actually this was working! PXE boot information was provided by Serva32 and alternate DHCP server provided IP lease for parts of the process which didn't work with Serva32. - But I didn't like the configuration. It was terrifying kludge solution!
    6) I got alternate Serva32 with did work with Clonzeilla, so I could use only one DHCP server. But for some (still uknown reason) Serva32 couldn't save it's DHCP lease information (in ini-file), it caused constant IP address collisions due serva32 restarts and long (48 hours) leasetimes. - Solution? Not using Serva32 or Tftpd32 DHCP servers for allocating addresses.
    7) One of the initial problems is lack our primary DHCP servers lack of of DHCP PXE option. - So I started to run Serva32 in proxyDHCP mode. In proxyDHCP mode it provides only PXE boot information without DHCP leases / pool allocation information.
    8) For some strange reason Serva32 shows always error message when it's started about being unable to access it's ini-file. As mentioned this was problem also earlier and caused those IP address collisions. It also caused another problem. Serva32 services works perfectly, but if Ok button on that error message is clicked, then it closes down. Uh oh. This is too bad, if someone comes to terminal and clicks ok to that error message, then our PXE DHCP stops working again. I had to get work-a-round for that. Now I start Serva32 using another user accound which do not have access to desktop of logged in user. Therefore I don't actually know if it's showing that now unvisible error message in background. After all, now somebody can't close it accidentially.
    9) Finally everything is working. Now there is only one open issue. For some reason Serva32 proxyDHCP reacts really slowly to DHCP requests. Getting PXE information, which should take less than two seconds, now takes about two minutes. I'm not completely happy with this solution either. Awww. But because it's now working (somehow) , I'm not going to spent more time debugging it.

    Isn't it a joy to solve a really minor problem?

  • Checked out authentication service. It's quite interesting solution because they're not using any usernames or passwords. I did remind my self about OpenID, OAuth 2.0 and YubiCo / YubiKey services and spent hours reading their detailed tech & integration documentation.
Next week I'll try to write about SQL optimizations I made lately.