Bash Archives ~ fitzmoskal https://fitzmoskal.me/tag/bash/ You are _here_ Thu, 29 Feb 2024 16:57:27 +0000 en-GB hourly 1 https://wordpress.org/?v=6.9.4 https://fitzmoskal.me/wp-content/uploads/2024/02/cropped-result_880649-32x32.jpeg Bash Archives ~ fitzmoskal https://fitzmoskal.me/tag/bash/ 32 32 11678478 VCF File Validation https://fitzmoskal.me/vcf-file-validation/ Mon, 26 Feb 2024 21:08:20 +0000 https://fitzmoskal.me/?p=1497 This script was bourne of necessity to validate VCF files for injestion into Congenica. The platform does it’s own validation

The post VCF File Validation appeared first on fitzmoskal.

]]>
This script was bourne of necessity to validate VCF files for injestion into Congenica. The platform does it’s own validation but the output in case of error is not human-friendly. This directs the user to which line in the VCF file might be at fault.

https://github.com/codefitz/vcf_validation

The post VCF File Validation appeared first on fitzmoskal.

]]>
1497
Kubespray Dependencies https://fitzmoskal.me/kubespray-dependencies/ Mon, 26 Feb 2024 20:31:46 +0000 https://fitzmoskal.me/?p=1495 Anyone who has worked witk Kubespray knows what kind of hell it is to figure out the dependencies. Part of

The post Kubespray Dependencies appeared first on fitzmoskal.

]]>
Anyone who has worked witk Kubespray knows what kind of hell it is to figure out the dependencies. Part of the reason for this is that each version is kept on a seperate branch, and each branch will have it’s own buried readme – which notes the particular version of Python and Ansible is supported. Easy when you know how, but a pain if you’re dealing with complex installation processes and installing dependencies for the first time.

This script I wrote essentially takes a python version or an ansible version and will loop through checking out each branch then printout which versions of Kubespray are supported.

https://github.com/codefitz/kubespray-dependencies

The post Kubespray Dependencies appeared first on fitzmoskal.

]]>
1495
British Transport Company – Business Application Modelling & SSL Certificate Discovery https://fitzmoskal.me/british-transport-company-business-application-modelling-ssl-certificate-discovery/ Tue, 20 Feb 2024 19:53:34 +0000 https://fitzmoskal.me/?p=1380 I was contracted to a this British Transport Company to provide consultancy services in the area of modelling approximately 60

The post British Transport Company – Business Application Modelling & SSL Certificate Discovery appeared first on fitzmoskal.

]]>

I was contracted to a this British Transport Company to provide consultancy services in the area of modelling approximately 60 business applications. Some of them had been modelled before but had fallen behind on maintenance and the model had drifted. Others needed to be modelled from scratch.

The method chosen by the client was to do the modelling through questionnaires to SMEs who would provide the initial seed data. This then allowed me to model the architecture for each application.

Whilst working onsite, I was asked if it was possible scan and report details of SSL certificates, as the company was having issues with certificates expiring. I quoted them work on developing a solution from scratch that would work with BMC Discovery. This was designed and implemented within 3 days, which allowed the client to save £20,000 on an anual subscription to a 3rd part piece of software.

The post British Transport Company – Business Application Modelling & SSL Certificate Discovery appeared first on fitzmoskal.

]]>
1380
Mapping Food & Drinks Venues with Foursquare API https://fitzmoskal.me/mapping-food-drinks-venues-with-foursquare-api/ Tue, 20 Feb 2024 14:33:39 +0000 https://fitzmoskal.me/?p=1293 I was given a brief to extract data from Foursquare to identify the nearest food and drinks venues within 1000

The post Mapping Food & Drinks Venues with Foursquare API appeared first on fitzmoskal.

]]>
I was given a brief to extract data from Foursquare to identify the nearest food and drinks venues within 1000 meters latitude and longitude provided in an Excel sheet for a historical tour company.

I developed this with a mixture of Bash and Python, exporting the results to JSON and then converting to CSV. All code was handed to the client.

The post Mapping Food & Drinks Venues with Foursquare API appeared first on fitzmoskal.

]]>
1293
Converting Duel Boot Windows 7 Partition to a VM https://fitzmoskal.me/converting-duel-boot-windows-7-partition-to-a-vm/ Sat, 12 Mar 2011 14:34:39 +0000 http://wafitz.net/?p=645 I recently got a new replacement work laptop with Windows 7 installed. Despite the great desire to shrink it and

The post Converting Duel Boot Windows 7 Partition to a VM appeared first on fitzmoskal.

]]>
I recently got a new replacement work laptop with Windows 7 installed. Despite the great desire to shrink it and put a more mature and stable OS on to use, I decided to give Win 7 a shot – that and I needed to use the laptop right away so I didn’t have an immediate choice.

Well after a month of use, Windows 7 was already showing the signs that it was going the way of its predecessors in growing exponentially, slow boots and sloooow shutdowns… I heard Ubuntu calling.

You see, Linux takes a while to get used to when you come from a Windows background, things aren’t done the same way, but after time you realise this new way of doing things makes much more sense and takes much less time. So when you go back to Windows after a few years in Linux, you feel like you’re taking a step back in time – to slower, less advanced OS, where a problem can’t be fixed unless you are prepared to fork out a lot of money for a proprietary app that you’re only ever going to need to use to solve that one problem.

It was time to stop the rot and cage Windows 7, I still needed it for Outlook and Exchange (well until Crossover can support 2010) but I don’t need 90% of that operating system. I had done plenty of duel boots before but I wanted to try my hand at turning my Win 7 partition into a VM, and despite the ubiquity of home-brew tutorials out there on the web, I had to turn to several for different problems I experienced along the way. I’m documenting the steps here completely, and will provide attribute the relevant tutorials that helped.

Step 0: Backup

It needs to be said, it needs to be done. I always hate using Windows Backup and sometimes opt to use a Linux live CD to do the backup instead, guaranteeing I can view the process. I usually just make sure that documents are saved, I’m not worried about settings as these can be reset. This time I used Windows backup to an external HDD which seemed to work adequately enough.

Step 1: Shrink Windows 7 Partition

Although it’s not recommended, I always found GParted to be a trouble-free tool and never had a problem with it, so I booted into an Ubuntu Live CD and fired it up. I was then presented with a disk that had no less than 4 partitions. One was a boot partition, one was recovery, the other I couldn’t tell, and the final one was Windows 7. Here is where I made my first mistake, I got cocky and deleted the Windows boot partition thinking I could restore the boot record later with a recovery disk – it seems Microsoft have made that process much less efficient along with making partitions a lot more complicated than necessary.

Anyway, don’t delete the boot partition, but if you do, then here’s what to do:

The first problem I had was that Windows 7 wouldn’t boot I had the following error:

“autochk program not found, skipping autocheck”

Some Googling brought me to a Microsoft Answers post.

  • Use your recovery CD or download one if you got a crappy OEM pre-installed system – Neosmart have some links and instructions for torrent files.
  • Boot into recovery and then when you get to the System Recovery Options screen, you can choose the automatic System Repair option but I’ve never found it any use so go straight to Command Prompt.
  • Run the following command to check your disk for errors and fix them (where x: is the drive containing your Win 7 install):

CHKDSK x: /F /R

  • Once that runs restart the computer.

In my case chkdsk didn’t work and I still got the error, so the next thing I attempted was to attempt to use bootrec to fix the mbr.

  • Boot back into System Restore, go to the command prompt and run:

bootrec /fixmbr

then
bootrec /fixboot

then
bootrec /rebuildbcd

In my case after the last command I got the following error:

“total identified windows installations 0”

Exporting the bcd didn’t work either:

bcdedit /export C:\BCD_Backup
c:
cd boot
attrib bcd -s -h -r
ren c:\boot\bcd bcd.old
bootrec /RebuildBcd

So I attempted the following fix to this following the instructions from Neosmart again, Recovering the Bootloader:

x:\boot\bootsect.exe /nt60 all /force
del C:\boot\bcd
bcdedit /createstore c:\boot\bcd.temp
bcdedit.exe /store c:\boot\bcd.temp /create {bootmgr} /d "Windows Boot Manager"
bcdedit.exe /import c:\boot\bcd.temp
bcdedit.exe /set {bootmgr} device partition=C:
bcdedit.exe /timeout 10
del c:\boot\bcd.temp

But I didn’t get that far because I didn’t have a bootsect file, so I had to do a bit more digging and found a better solution halfway down this thread. These are just the steps, but more detail about why we do this is in the original post.

First of all I seemed to have some kind of corruption in my filesystem telling me that the c:\boot\bcd file didn’t exist, except it was there, when I attempted to copy memtest.ext to BCD it said that a file already existed. This is where the Live CD came to the rescue:

  • Boot into Linux live cd.
  • Mount your Windows 7 partition.
  • Navigate to /Boot
  • Delete the ‘BCD’ file.
  • After a startup repair your original BCD file is renamed to BCD.Backup.0001.
  • Copy memtest.exe memtest.exe.org.
  • Copy BCD.Backup.0001 memtest.exe.
  • Rename memtest.exe to BCD.
  • Rename memtest.exe.org memtest.exe.
  • Now reboot Windows.

In my case, this solution finally worked and I got Windows working again. Now for virtualisation…

Step 2: Virtualising Windows 7 Partition as a VM

I followed instructions given by Rajat Arya on his blog, apart from the 5th step which didn’t work without some slight modification as I had installed VirtualBox v4.0.4 from http://www.virtualbox.org/, not the Open Source Edition.

These are just the steps, Rajat goes into more detail in the post which is worth reading:

You need to take ownership of the disk first under your username. The original way stated is to chmod the /dev/sda file but this is less secure.
sudo usermod -a -G disk wafitz
Then log out and back in to make the changes take effect. Next install the mbr package:
sudo apt-get install mbr
The -e flag below is to set the partitions you wish to make available to Windows boot, so in this case I set 1 (Windows partition) and 2 (recovery).
install-mbr -e12 --force ~/vm.mbr
Then create the vmdk file. I found that the -relative flag didn’t work, neither did the -mbr flag, but it was fine with these left out:
VBoxManage internalcommands createrawvmdk -filename /home/wafitz/wind7part.vmdk -rawdisk /dev/sda -partitions 1,2 -relative
Now create your VM in VirtualBox and boot into Windows 7. If you get a boot error, you’ll need to do Windows recovery again. Set the VM to mount your CD drive then press F12 at startup and boot into recovery… and follow through on Step 1 of this post again.

Now I installed VirtualBox tools and with Seamless mode, I’m able to Outlook as a full-on desktop app within Ubuntu.

The post Converting Duel Boot Windows 7 Partition to a VM appeared first on fitzmoskal.

]]>
645