Pages

Thursday, October 26, 2017

Downloading or Backing up an Image or Drive from AWS

So we have an  EC2 instance on AWS.  But we need to terminate it as the project has to give way to something urgent and therefore not on foreseeable future will it be used. So instead of accruing cost, (as an image cost something if its in AWS although it is not being used), we decided to download the image or drive directly on our drive and store it.

This is what we did.


  1. Create a snapshot of the existing image you want to download in AWS. 
  2. From that snapshot, create an image.
  3. Once the image is available, add that image as part of the EC2 Instance you wish to download.
  4. Create another image. Make sure this is bigger than the image that you want to backup. Basically this will hold the image backup
  5. Mount it as part of the EC2 Instance.


For this, this is what I have :




here,

  • /dev/sda1 is the source or what I will backup
  • /dev/sdf is a copy of /dev/sda1
  • /dev/sdg will contain the backup.

To get the available mountpoints that can be mounted :

execute :



As you can see..  /dev/sdf  (which is xvdf) is mounted as :



For /dev/sdg, the mountpoint is xvdg.


Since this is a new image, do the following commands :




Then mount  (make sure that the folder /mnt/image is available)\:




Afterwards, create an image :





Once created, go to /mnt/image and do a tar/gz. This is to compress it.





After which, you can now do an SCP to the machine and download the file.


Friday, September 29, 2017

Disk Management Error 0 during update of Mac OS High Sierra

When updating MacOS High Sierra, you may experience this issue, where a couple of hours, you will be presented with an error Disk Management Error 0.

This was what I did :

  1. Make sure you are connected to wifi or network.
  2. I restarted in Internet Recovery Mode by holding down Command+Option+R. On windows keyboard this is Windows Key+Alt+R
  3. This will take sometime so wait for it
  4. Once done it will take you back to normal recovery mode.
  5. Run First aid on the disk you want to install to.
  6. Click on your Main Disk where you want to install High Sierra then convert it to APFS (Edit -> Convert to APFS)
  7. Once converted, click on Reinstall MacOS.  It will prompt you to install High Sierra. Then proceed to install MacOS High Sierra.

All my files and applications are still there. And it worked. Well, do make sure you have a backup before attempting to install High Sierra.

Tuesday, September 26, 2017

Debugging crashed applications on .NET

My current work nowadays involves a lot of multi-threading application. And also a lot of simultaneous users. We need to serve them fast (as in milliseconds fast), that's why some of our apps and services uses threads to provide the data very fast and also do most of the things in parallel.

We had issues before where an application keeps on dying without any logs. This would be because of the threads dying even if we have exception handling. We can't seem to understand and the only clue we have is the event viewer saying something died.

So I kept on searching a solution and found it here : http://blog.functionalfun.net/2013/05/how-to-debug-silent-crashes-in-net.html. This is applicable from windows vista and up.


Just to recap what it says in this linked, we followed the procedure as shown below :

1. Create a key at HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps\[Your Application Exe Name]. In that key, create a string value called DumpFolder, and set it to the folder where you want dumps to be written. Then create a DWORD value called DumpType with a value of 2. Example shown below :

image



2. Once done, and your app crashes, it will create a *.dmp file onto the folder you specified. Get that file and open it on your visual studio. I find that you need to put the DMP file onto the folder where your application, DLL and PDB files are located.

3. You will see the screen below. Click on the Debug with Mixed and it will go to the line where the offending application stopped. Voila!, you know now which portion of the app made your application crash.

image



macOS High Sierra Update stuck at Calculating Time

I was installing the latest update of macOS High Sierrra and I got stuck at Calculating time. It seems to stuck and not moving. This was what I did to recover and  update to High Sierra without losing my data. I am using Mac Mini but this seems applicable to other maca as well.

  1. I turned off my Mac
  2. I restarted my Mac on recovery mode by holding down Command and R. On windows keyboard this is Windows key and R. Hold it down until it boots in recovery mode.
  3. Make sure you are connected to wifi or network.
  4. Go to Disk Utility and run the First Aid for Macintosh HD. It may take long at checkibg catalogs so I just waited for it.
  5. I restarted in Internet Recovery Mode by holding down Command+Option+R. On windows keyboard this is Windows Key+Alt+R
  6. This will take sometime so wait for it
  7. Once done it will take you back to normal recovery mode.
  8. Select Reinstall a copy of Mac OS. It will take quite a while. This will install High Sierra
  9. After completing the process it will restart and do it again. 
  10. Once done you are now in High Sierra.

Sunday, September 10, 2017

What's Up ?

Hi Guys, It's been a while since I have posted. It's been like what ? 3 years ? Much has happened actually since then.

 For starters, I have moved on to another company which specializes on Brokering on Online Gaming. So far, it has been enjoyable. The challenges are tough but manageable. Furthermore, I only go to office 3x a week and 2x a week is done at home. Well, I also do OT work still but mostly if there are issues.

 On Programming front, I'm mainly focused on Threads, Performance of an app, down to the nitty gritty detail of memory allocation and performance of each thread. This is because the product we have really requires performance.
 We have also extended the product by providing both WebAPI and Mobile. I plan to add Push capability on WebAPI and improve on client satisfaction and memory footprint of the product. There is a lot to improve on that and hopefully we can get it done this year.
 We have moved from PokeIn to WebSocket so that one is out of the picture. We also plan to introduce Redis caching as a form of data broker between each component but we are still looking at how it would perform on a very peak transactional period.


 On my personal development, I have worked on SmartProtect Anti-Theft for Mobile on Android and its already released. yehey, do download them guys in this link : SmartProtect Anti-theft I'm thinking of learning more on Swift. Probably I need to write something to learn on this. What do you think guys should I write ?

 I'll probably start with that and go and do that during my free time. So that's it. Just saying hi to you guys !!. Thanks!!