Wednesday, October 12, 2016

Tuxera NTFS for MacOS Sierra Workaround (Toshiba license)

With the release of MacOS Sierra by Apple, you might have opted to update your Mac machine with that new OS especially if your gadget ecosystem revolves on the Apple-sphere of things. Upon completing the long wait of downloading the OS update and its installation, you may think at first that everything seems to work fine. Once you attached your NTFS hard drive thinking it will be a routine access to your files, you notice that it goes back to a "read-only" file explorer view even if you have Tuxera installed.

I got my copy of Tuxera from purchasing Toshiba's external USB3.0 hard drives that included the said software, specifically the Canvio Connect II. The drive is a sweet deal for the price + Tuxera, especially the fact that it doesn't care whether you use your Toshiba external drive or any other brand (boooo to WD and Seagate).

What I initially did and the error I got

The usual course of action to fix Tuxera after a major MacOS software update is to just reinstall it. So I have a copy of the ".dmg" installer of Tuxera somewhere within my directories and proceeded to run it. Once the installer was mounted and clicked on the installer icon, I suddenly got this error prompt about an "Error 1 while launching Tuxera NTFS...".


At first I thought that my installer was perhaps corrupted so I accessed the installer inside my Toshiba HDD, but that was an older variant (2014 I think). When I used that version and after the installer ran smoothly, as expected it didn't work on Sierra.

I initially sought help from Tuxera (via email support) but they told me to ask Toshiba for a solution/fix. Not seeing an email support from Toshiba US, I tried their Twitter account to no avail as well. This left me no choice but to MacGyver my way out of this predicament.

The Fix

This guide of mine is to fix your Tuxera installation on your MacOS Sierra if your license came from your Toshiba HDD.

Step 1a: Go to the support page of Toshiba and download the updated Tuxera for Mac installer


The installer published in this support website will only work if you own any of the following Toshiba external hard drives:
  • Canvio Connect and Connect II (HDTC7 and HDTC8 series)
  • Canvio Slim and Slim II (HDTD1 and HDTD2 series)
  • Canvio AeroMobile (HDTQ112XCWF1)
  • Canvio AeroCast (HDTU110XKWC1)
This installer of Tuxera (2015.2 version) will work on both El Capitan and Sierra.

Step 1b: Specify a different download destination for the Tuxera for Mac installer
When downloading the ".dmg" installer, don't just save it in your "Downloads" folder. I suggest you save it to your "Desktop". This is an important step as this is somewhat related to the error.

Step 2: Disable Gatekeeper
To disable Gatekeeper and "Allow apps from anywhere", follow the instructions from this website...

http://dispatchist.com/macos-sierra-gatekeeper-run-applications-anywhere/

Step 3: Run the installer
Once you have finished downloading the Tuxera installer and saved it elsewhere (your Desktop), mount and run the installer as normally as you would in previous versions.

Step 4: Keep your Toshiba external HDD at-hand
When you're already inside the installer and doing the usual clicking of the "Next" button, connect your Toshiba external HDD. This will enable the Tuxera installer to detect the hardware and activate the Toshiba-Tuxera license.

Step 5: Restart your Mac and enjoy
Yes you need to restart it so that it will properly load and use the NTFS driver


The reason behind the error

After much digging on why the said installer kept giving me that error was because of a particular feature that Apple included in the Sierra OS, which is something called the "Gatekeeper".

The purpose of the Gatekeeper was to provide another means of security to prevent users from using installers that may contain malicious workarounds/exploits. It also generates a random file path for the application to be installed wherein I'm not really sure why but it is also part of the security and application digital signing.

The Tuxera 2015.2 version was published for the El Capitan didn't have that Gatekeeper functionality. When you run the same installer in MacOS Sierra and the ".dmg" installer was saved inside the Downloads folder, this will screw-up the packaging of the Tuxera installer as it doesn't play ball with that Gatekeeper.

Friday, May 27, 2016

A "semi-legit" speed test of PLDT Fibr 2899

I've recently applied for the PLDT Fibr plan 2899 around April 2016. After almost 4 weeks of follow-ups and service request with the "accommodating" PLDT hotline and dispatcher number, I finally got my subscription installed at our house in Mandaluyong (Barangay Namayan to be exact).

A lot of my friends started asking if it was any good... and I typically start my response of it being expensive. As for the aspect of is the connection any good compared to sticking with existing broadband DSL subscription, that is a bit tricky. Fortunately, somebody gave me an idea to do a "speedtest" of the fiber-based connection going to nodes/servers located outside the Philippines.

Background of the PH internet

Based from the marketing material and advertisements of PLDT, they're saying that you can get speeds up to 50 Mbps (100 Mbps for the first 6 months, but that's just a teaser and will only be "fun while it lasted"). But those speeds can only be achieved if you measure your speed going to servers located on the same PLDT network. What's really important is how fast your internet connection going to outside of the Philippines or even to the other local network competitor (e.g. Globe).

All the content that we usually access are not hosted within the Philippine territory and are typically in Japan, Singapore, Hong Kong and even the US. The latency, which is the "ms" thing you get when you do a ping test, going to servers located elsewhere is the one that matters the most. The lower the latency value the better; anything < 100 ms is sort of "acceptable" for most cases, higher than 200 ms and you're pretty much screwed especially in online gaming.

My Set-up
  • PLDT Fibr plan 2899, with provided modem configured as a bridged-WAN
  • Asus AC87u AC2400 Wireless Router with stock firmware
  • Intel Core2-based Desktop
    • Windows 10 Pro
    • 4GB RAM
    • RT2870 150 USB Wireless N LAN network card (Belkin) connected as 11n

The "Tests"

Without further delay (unlike what PLDT usually does), see below the screenshot of some "speedtests" I conducted.



Japan


Singapore


West Coast - US


East Coast - US



Conclusion

If comparing it with other internet subscriptions and DSL connections, I believe they're not too different if the latency is the one you'd consider. Bandwidth-wise, definitely it will be faster simply because it now uses a fiber optic line versus a copper line for DSL.

If you want my opinion if you should switch... I leave you with this message...

"With great (bandwidth) power comes great (adult) responsibility"

As long as you think you can afford the monthly subscription fee and if it is available within your area, why not. But as early as now, I'm bracing myself and thinking of ways to re-align the utility costs we have for the household because it is simply expensive for "just" internet (PHP 2,899.00 per month isn't really a joke).



Saturday, December 5, 2015

Error 80040154 when PST migration using GAMME and Outlook 2013

Hi guys! It's been a while since I posted something I encountered or stumbled upon that can help anyone... so here it goes.

Prelude...

I recently got a stint to migrate a client of mine to Google Apps for Work. Their old email set-up was relatively simple, and they asked me to migrate their old email data that was stored in their desktop-installed Outlook 2013 client. Although they're using a 64-bit Windows 7, I'm not quite sure if it was also a 64bit Office 2013 that was installed as they're the ones who did it. Once I exported their data with the "export to file/PST" function of Outlook 2013, I was about to make my move.

What I initially did...

I used one of their workstations (that already has Outlook 2013) and installed GAMME (ver. 5.0.25 to this writing) to be my migration staging area. I then followed and executed the necessary pre-requisites (API and json token permission and service certs). Once I was ready and prepared the userlist file and PST folder structure, I proceeded to start-estimate-migrate using the GAMME tool.

Everything went well initially and passed the testing and estimation. Once I reached the migration part, all the user accounts failed to migrate, with an "Error 80040154" kept showing up for each user.

What wrong?

Initially I thought it was the network but I was easily able to rule that out after some cable management and connected directly to our broadband modem/internet. I also checked if the Outlook 2013 was up-to-date, which apparently it was. I tried and looked for quite a long time across various support materials, forums and How-To manuals of Google for the GAMME tool but to no luck or even a mention of that particular error code.

It led me to conclude that the culprit might be the Outlook 2013 itself as I already had experience in the past that the migration tools Google provides only behaves correctly on legacy (or not a recent release) Microsoft products. Despite the GAMME website saying it supports Outlook 2013, it's not the first time I didn't believe in Google as they have a reputation on not properly maintaining any support/admin tools nor keeping their documentations up-to-date.

My Solution

I used a different workstation without the Outlook 2013 installation and then installed an Outlook 2007 (32bit) and downloaded the Office 2007 SP3 standalone patch since the GAMME tools requires Outlook 2007 SP2 at minimum. Once that's done, I installed again the GAMME tool and made the necessary set-up requirements... then it now works.

Hope I'm able to help anyone out there who might face (or currently in) this same dilemma. Cheers!

Thursday, July 24, 2014

Linux Driver for Canon ImageClass MF3110/3112

I recently stumbled upon a treasure trove while looking for ways to make my old Canon ImageClass MF3112 all-in-one laser printer work with the latest OS around.

Background of the situation

If you're looking for drivers of this printer at the Canon official website, it only provides drivers to support 32-bit Windows XP, Vista and 7... none for Linux nor MacOS. This is pretty much a bummer especially if you have up-to-date workstations that "need" 64-bit OS (the > 4GB RAM thing). In my case, all my workstations and laptops run a Windows 8.1 and an Ubuntu Gnome 14.04, both 64-bit.

Canon actually published a package to install printer drivers for Linux-based OS, called the "UFR II". However, this is only for their not-so-late models, and apparently the one I need is the one they developed prior to this. The older models seem to be an implementation based on a raster-like format that I have no particular clue how it differs.

After a day of two of digging around the Internet, and exploring the vast "Page 2 and 3" Google search results, I found a guy who made a custom linux driver to support this "rastertocups" print driver thing that Canon has done and left to rot. He has a GitHub repo page which sort of discussed what the driver is and what other canon printer models are supported.

Since there's no HowTo wiki entry to use his codes, I opted to share what I did in order to use and install it (credits to ondrej-zary for the source code).

Pre-work Requirements
  • sudo rights (or root)
  • gcc and compiler (e.g. make, build-essential) is installed
  • cups, libcups2-dev, and libcupsimage2-dev is installed
  • even though it doesn't have the required drivers, I installed the UFR II Canon Linux Drivers because it seems that it is needed for the custom drivers to work
The Steps
  1. Download ondrej-zary's carps-cups source code (there's a zip file download link present)
  2. Extract it on the desired work-area folder (temporary use; mine was inside my home folder)
  3. Using the terminal, go to the location of the unzipped folder and run "make" 
    $ cd ~/carps-cups-master 
    $ make 

  4. If there are errors of missing dependencies, you can try to use "apt-file search " to check which packages you need install before trying to make it.
  5. If things look fine and there's no error, proceed with "sudo make install" (or make install for root users);
$ sudo make install
The Result

I've done this and made my printer work with Ubuntu Gnome 14.04 64-bit (cups 1.7.2) and Debian 7 Wheezy 32-bit (cups 1.5.3). I added printer and selected the compiled driver via the cups web interface (usually running at your linux machine "localhost:631").



Hope this helps somebody out there... and again a huge thanks to ondrej-zary!

Wednesday, August 14, 2013

Dual boot Debian 7 Wheezy on existing Win8 UEFI machine


I don't want to bother giving a lengthy background or info... So I'll just try to make this post a short mash up of what you need to know.

Prelude: Dual-booting a laptop/machine wherein there is an existing Windows 8 installed in a UEFI boot-up environment

First off, you'll probably need to do some shrinking of existing partitions. In my case, I just shrank my Windows8 drive C: using the disk manager build-in under the "Computer Management".

Afterwards, you'll need to use a UEFI-bootable linux image. For me, I used a PXE bootable Debian 7 Wheezy-stable image and created a root, swap, and home partition from the unused space. Do take note that you need to use the new GPT partitioning (for those with fresh hard drives); this option is usually asked or selected when using the "advanced mode" when installing.

Now here is the tricky part... after you proceed to install GRUB, that grub instance will not work later after finishing the installation. You will need to use an external USB linux image or disk that can boot as UEFI. This is not necessarily need to be a Debian USB image as I used a Kubuntu 13.04 image and placed it in a USB stick.

Use the USB stick to boot the machine up and use its GRUB rescue to manually boot the already installed Debian. For those a bit lost on using the GRUB rescue command line, below are the lines I used.

set prefix="(hdX,gptX)/boot/grub"
set root="(hdX,gptX)"
insmod normal
normal


Note that the prefix is just to denote the location of the grub installation folder, so the value might change depending on your partition layout. On the example I gave, I only have a root partition so I had to specify the "boot" folder. If your case is that you created a separate "/boot" partition, the prefix would probably look like...

set prefix="(hdX,gptX)/grub"


Once you have managed to boot-up to your installed Debian partition, log-in to your root (or use sudo if that's your preference) and install the following packages:

# apt-get install grub-efi-amd64 efibootmgr

We then have to mount temporarily the partition containing the already existing EFI loader of Windows. This is usually around 250-300MB in partition size and contains files and folders with names like "Boot" and "EFI". I'll leave it up to you which or what partition number that may be.

# mkdir /boot/efi
# mount /dev/sdaX /boot/efi

Next is loading the driver/module for the EFI support, which will then aid with the re-install and detection of GRUB of the existing EFI Windows 8 partition and creating a Debian EFI entry.

# modprobe efivars
# grub-install /dev/sda
# update-grub

Kindly check if there is a new EFI entry present on the output displayed upon executing the "update-grub". Also, check inside /boot/efi if there is a new folder or entry that matches in terms of the name of the EFI entry listed a while back.

If all goes well, you will see a new UEFI boot priority inside your BIOS apart from the UEFI Windows Boot Manager.

Hope this helps!


Other resources that you might find useful:



Sunday, July 21, 2013

GAM: basic scripting for Google Apps Admins

Hi everyone! It has been a while since I posted something useful in this blog site of mine...

I'm currently kept busy by one of my on-the-side projects recently, in particular deploying Google Apps for Education. One thing that I noticed is a need by some admins to automate some bulk task in managing and keeping up-to-date user accounts management in their respective domains. Since time is usually at the essence, and also a luxury, for most IT administrators... they don't have too much time to develop their own robust apps to deal with this kind of work.

One solution that I suggest that you guys can try out is using something called the "Google Apps Manager" (or GAM). It similarly works like the provisioning API of Google Apps but already ready for CLI usage (in my case, it works like a charm in linux).

To sum what GAM is, it is a python based library/command that you can use to connect to your Google Apps Admin Console and make the necessary administrative or user management work. Now the good thing with this is if you combine this with some basic scripting magic, you can now automate some bulk tasks like massive user creation or moving a huge amount of people to a mailing list.

For more info or to check what the Google Apps Manager can really do, check this link out.

Sunday, June 3, 2012

Amazon AWS as a good help for start-ups

I was quite happy and satisfied for being able to attend a talk about a demo/intro about Amazon's cloud-as-a-service solution, the Amazon Web Services. Apart from acquire more technical knowledge, it sort of gave some options to prevent too much cost on set-up of a server for public-viewable production use.

I don't want to bother talking and putting more details on what's the technical differences and the pros and cons of AWS from traditional in-house or other cloud-hosting providers since there is really no absolute truth or "standard" that can explain this in concrete sense. But one thing that I'm actually keen is on their "free tier usage" for new AWS account holders.

Well, on a marketing standpoint, the "free tier usage" is their proof-of-concept or demo-to-purchase to reel in customers and use their offered service... which is all true perhaps. But for tech-enterpreneurs who are looking for ways to deploy their apps or products over the net and be accessible to their target customers, I could really say that AWS should be there on the potential list for achieving it.

The "free tier usage" from what I understand is good for 12 months upon sign-up of a new AWS account... which for the record requires you to provide a credit card. But despite of that uneasiness for people that are not entirely comfortable of letting someone save your credit card credentials... it is a gamble worthwhile. The main agenda at the end of the day is to try out if the 1-year free trial service that AWS offer can meet the requirements of your start-up tech project. In turn, it will make you actually move forward to realization of launching your start-up project into production.

Everyone would like to spend (too much) money on a start-up that has to prove its value, and releasing it to the public market is the driver or decision-block on determining a winning formula or just another rubbish in the bin. Of course, when it does become a huge hit upon release to the public, you would likely need to think of scaling the capacity and performance. In AWS, you can scale your set-up as convenient as you can, and as their saying goes "pay for what you only use".

For more info on this matter, I suggest you to read their program details at Amazon's own website at this link.