If you have setup a macOS machine that doesn’t seem to connect to the Internet automatically upon restart, I bet it has FileVault turned on.
FileVault is Apple’s encryption utility that encrypts data on a macOS machine. Read more about it here. One of the down sides of turning on FileVault is that it requires the user to login _before_ it can decrypt the disk’s contents. This is done via a special boot partition that is not encrypted with the user’s secret.
Long story short, upon rebooting the macOS machine, it’ll bring up a screen which runs off of an entirely different partition that only presents the user login screen. Upon logging in, the contents of the actual partition are decrypted and the boot process continues. This is precisely why network devices such as ethernet and WiFi don’t start until you login. In a “headless” scenario, one would find themselves locked out remotely. Therefore, be careful about turning on FileVault on a “headless” macOS machine such as a Mac mini.
So far I have not found of a good way to have FileVault turned on and login remotely upon a restart except the following.
Enter the following command on a macOS terminal where FileVault is turned on.
sudo fdesetup authrestart
Upon entering it, you’ll be first prompted for the administrator’s password (assuming you’ve not recently run sudo in the shell) then you’ll be prompted for a username and password for an account that exists on the machine. Once successfully authenticated, the machine will reboot and you’ll not be stuck at the boot screen locked out remotely.
If you find a better way to do this, please leave a comment below.
Having worked in Python for over a decade now, I thought it would be a great time to engage the community more meaningfully. I was looking for speaking at various Python events. The first one being the BayPIGGIES event on February 22nd 2018. Later, I was invited to speak at PyCon SK 2018 held in Bratislava from March 9-11 2018. My talk was similar to the one given in BayPIGGIES but slightly different. Public speaking wasn’t always my strengths but it’s always great to push yourself out of your comfort zone to do something new.
PyCon SK 2018 was an interesting experience. I definitely got to meet some really interesting and passionate people. Saw some amazing talks and I’m looking forward to the next year’s event. Of course I got to present my talk which was fantastic. The size of the audience was a bit daunting. I enjoyed meeting the nice folks of Slovakia.
Having worked on Django building RESTful WebServices and scaling them, I came up with a list of common mistakes that Django users make and how to avoid them. I presented this talk at BayPIGGIES. It was an interesting experience. My talk generated a lot of questions and discussions. Hopefully this will be the first in a line of many such interesting talks.
Few weeks ago I was playing around with a 1602 LCD module and my ESP8266. I was disappointed by the number of wires that were running between the ESP8266 and the LCD display. It was a mess!
The I2C bus is a very flexible serial bus invented by Philips Semiconductors (Now NXP) that is used to connect ICs to Microcontrollers at low speeds at short distances.
Continue reading “ESP8266: Snooping the I2C Bus for devices”
I have been playing around with MicroPython for a while now. I enjoy writing straight up C/C++ code but MicroPython has brought the ease of Python to embedded platforms especially ESP8266. ESP8266 and MicroPython make a killer combo.
I’ve written about the ESP8266 and built a couple projects with it already. I’ve built a WiFi temperature sensor using the ESP8266 board that publishes the temperature over MQTT to a central data logging server. It’s a fun project.
Continue reading “10 easy steps to build MicroPython on macOS for ESP8266”