Apple Site Reliability Engineer Interview Questions

Define the boot process of a Linux system

Once you power a system on, the first thing that happens is the BIOS loads and performs POST or a power on self test, to ensure that the components needed for a boot are ok. For instance if the CPU is defective, the system will give an error that POST has failed. (BIOS stands for Basic Input/Output system) After POST the BIOS looks at the MBR or master book record and executes the boot loader. In case of a Linux system that might be GRUB or Grand Unified BootLoader. GRUB’s job is to give you the choice of loading a Linux kernel or other OS that you may be running Once you ask GRUB to load a kernel, usually an initial ramdisk kernel is loaded, which is a small kernel that understands filesystem. This will in turn mount the filesystem and will start the Linux kernel from the filesystem The kernel will then start init, which is the very first process, usually having PID 1. Init will look at /etc/inittab and will switch to the default run-level which on Linux servers tends to be 3. There are different run level scripts in /etc/rc.d/rc[0-6].d/ which are then executed based on the runlevel the system needs to be in. And that’s about it!

/etc/sysctl.conf contains kernel parameters that can be modified. You can also use the sysctl command to make changes at runtime.

SSL stands for secure socket layer. It has been renamed to TLS starting from SSL v 4.0. TLS is a secure way of communicating through a network. A majority of secure HTTP communication on the web takes place using TLS. TLS works at session layer and presentation layer of the OSI model. Initially at the session layer asymmetric encryption takes place, after that at the presentation later symmetric cipher and session key are used. The basic principle behind TLS is to encrypt data going across the network using public key encryption first, followed by using a shared key. Also the other component of TLS is server certificate authentication which is done through a certificate authority. Clients contain a list of certificate authorities, and it uses the public key of the CA in the certificate to verify the certificate being authentic. A good reference for TLS is here

Worker.c uses threads. Prefork uses forks. Prefork is by default in Apache. Worker.c uses less resources, but is more complex.

In your $HOME/.ssh/config use:

Let’s say there are 3 hosts, one is source, the other is destination and you cannot get to the destination from the source. In the middle is a gateway that can reach both the source and the destination. One possible solution to get from source to destination using SSH dynamic tunnel, is to create a dynamic tunnel. The way it would work is

Make sure in BIOS serial console port redirection is set. Secondly in the Grub menu, append the following to the boot line ‘console=tty0 console=ttyS1,57600n8’.

Xvnc :2 -nevershared -depth 16 -br IdleTimeout=0 -auth /dev/null -once DisconnectClients=false desktop=”MyDesktop” SecurityTypes=None rfbauth=0

One option is to boot from the network using PXE or using a USB drive which has Unetbootin installed. Once you start installation, go to the main menu, select the ‘Start Installation’ option, choose ‘Network’ as the source, choose ‘HTTP’ as the protocol, enter ‘’ when prompted for a server, and enter ‘/centos/6/os/x86_64’ when asked for the folder.

Hi All, I am new to this platform and looking for some help to lend a role in my dream company. I wasnt looking for job actively till last week, but opportunity came up from Apple. I dont see myself prepared at all. I am scared and dont want to miss out on this position. I requested Apple recruiter to give me at-least a month to prepare before appearing for any interview. Fortunately, he agreed on that. I believe I can cover up the coding part easily but not sure on system design. Could anyone please help me with what kind of questions they ask on system design? I m clueless on that. Your suggestions and help on this is extremely appreciated in advance.#SystemDesignPreparation #sreinterview #sre #engineering. Thanks

This repository is an attempt to consolidate useful resources for Site Reliability Engineer (SRE) interview preparation.

My SRE Interview Experience with Apple London & Google Warsaw

Related Posts

Leave a Reply

Your email address will not be published. Required fields are marked *