Linux Administration - Linux Interview Questions 7
Linux Administration - Linux Interview Questions 7
Linux Administration - Linux Interview Questions 7
Useful tips and tricks for Linux Systems Engineers and Administrators
Home All Articles Linux Professional Institute Practice Test Linux Interview Questions About Me
Latest Articles
Installing OpenStack Folsom on Ubuntu Diagnosing kernel panics with Kdump Troubleshooting the "Out of socket memory" error Building a Load Balancer with LVS - Linux Virtual Server Configuring LXC using libvirt Building HA Load Balancer with Nginx and keepalived Creating apt repository with reprepro on Ubuntu Configuring LXC - Linux Containers Setting Up Linux cgroups Deploying GlusterFS Fun with redirecting file descriptors Load balancing Puppet with Apache mod_proxy and mod_passenger Accessing the contents of a KVM disk image file Red Hat to Debian Packaging conversion
Q. What is a Socket? A. A Socket is the combination of an IP address and a port number .Based on this combination, internet sockets deliver incoming data packets to the appropriate application process or thread. Q. How do you debug a running process or a library that is being called? A. strace -p PID ltrace libraryfile Q. How to see a memory map of a process, along with how much memory a process uses? A. pmap -x PID Q. You run chmod -x /bin/chmod, how do you make chmod executable again without copying it or restoring from backup? A. On Linux, when you execute an ELF executable, the kernel does some mapping and then hands the rest of process setup off to ld.so(1), which is treated somewhat like a (hardware backed) interpreter for ELF files, much like /bin/sh interprets shell scripts, perl interprets perl scripts, etc. And just like you can invoke a shell script without the executable bit via /bin/sh your_script, you can do: /lib64/ld-linux-x86-64.so.2 /bin/chmod +x /bin/chmod Q. Explain the TIME_WAIT state in a TCP connection, as displayed by netstat or ss. A. A TCP connection is specified by the tuple (source IP, source port, destination IP, destination port). The reason why there is a TIME_WAIT state following session shutdown is because there may still be live packets out in the network on its way to you. If you were to re-create that same tuple and one of those packets show up, it would be treated as a valid packet for your connection (and probably cause an error due to sequencing). So the TIME_WAIT time is generally set to double the packets maximum age. This value is the maximum age your packets will be allowed to get to before the network discards them. That guarantees that, before your allowed to create a connection with the same tuple, all the packets belonging to previous incarnations of that tuple will be dead. That generally dictates the minimum value you should use. The maximum packet age is dictated by network properties, an example being satellite lifetimes are higher than LAN lifetimes since the packets have much further to go. Q. What is Huge Pages in Linux and what use is there for them? A. Hugepages is a mechanism that allows the Linux kernel to utilize the multiple page size capabilities of modern hardware architectures. Linux uses pages as the basic unit of memory, where physical memory is partitioned and accessed using the basic page unit. The default page size is 4096 Bytes in the x86 architecture. Hugepages allows large amounts of memory to be utilized with a reduced overhead. To check: cat /proc/sys/vm/nr_hugepages. To set: echo 5 > /proc/sys/vm/nr_hugepages Q. What is a Master boot Record and how do you back it up and restore it? A. The MBR is a 512 byte segment on the very first sector of your hard drive composed of three parts: 1) the boot code which is 446 bytes long, 2) the partiton table which is 64 bytes long, and 3) the boot code signature which is 2 bytes long. To backup: dd if=/dev/sda of=/tmp/mbr.img_backup bs=512 count=1 To restore: dd if=/tmp/mbr.img of=/dev/sda bs=512 count=1 Q. Your server is using a lot of cached memory. How do you free it up short of rebooting? A. Kernels 2.6.16 and newer provide a mechanism to have the kernel drop the page cache and/or inode and dentry caches on command, which can help free up a lot of memory. To free page cache, dentries and inodes: echo 3 > /proc/sys/vm/drop_caches Q. How do you track new concurrent connections? A. Concurrent connections are the number of authenticated "handshakes" between a client and/or server during any given time before all communications have been disconnected whether by force or by refusal. You can run: modprobe ip_conntrack conntrack -E -e NEW Q. What is SYN flood and how can you detect it and mitigate it? A. A SYN flood is a form of denial-of-service attack in which an attacker sends a succession of SYN requests to a target's system in an attempt to consume enough server resources to make the system unresponsive to legitimate traffic. Detection can be done
Building HA Load Balancer with HAProxy and keepalived Debian Binary Package Building Linux SNMP OIDs for CPU, Memory and Disk Statistics How to Install and use Graphite Building HA cluster with Pacemaker, Corosync and DRBD Deploying DRBD on Linux Counting Concurrent Connections on Linux
by by netstat or ss and filtering for SYN-RECV connection states. Mitigation can be done by null-routing the offending IP and enabling SYN cookies in the kernel, which allow the server to sends back the appropriate SYN+ACK response to the client but discards the SYN queue entry. ss -a | grep SYN-RECV | awk '{print $4}' | awk -F":" '{print $1}' | sort | uniq -c | sort -n netstat -antp | grep SYN_RECV|awk '{print $4}'|sort|uniq -c | sort -n Q. You have a file with 2000 IP's. How do you ping them all using bash in parallel? A. echo $(cat iplistfile) | xargs -n 1 -P0 ping -w 1 -c 1 Q. What command can you use to send unsolicited ARP updates to the neighboring servers' caches. A. arping -U -c 1 -I eth0 0.0.0.0 -s IP_ADDRESS Q. What Linux utility can craft custom packets, like TCP SYN packets and send them to a remote host? A. hping3 -S 192.168.1.1 -p 80 -i u1 Q. What is Memory Overcommit in Linux? A. By default, Linux will allow processes to allocate more virtual memory than the system actually has, assuming that they won't end up actually using it. When there's more overcommited memory than the available physical and swap memory the OOM-killer picks some process to kill in order to recover memory. One reason Linux manages memory this way by default is to optimize memory usage on fork()'ed processes; fork() creates a full copy of the process space, but in this instance, with overcommitted memory, only pages which have been written to actually need to be allocated by the kernel. Q. What is system load averag as displayed by uptime? A. Load Average is the sum of the number of processes waiting in the run-queue plus the number currently executing.If there are four CPUs on a machine and the reported oneminute load average is 4.00, the machine has been utilizing its processors perfectly for the last 60 seconds. Q. How do you list all kernel modules that are compiled in or enabled? A. You can execute: cat /boot/config-$(uname -r) Q. Kernel space Vs. User space - pros and cons. A. The role of the operating system, in practice, is to provide programs with a consistent view of the computer's hardware. In addition, the operating system must account for independent operation of programs and protection against unauthorized access to resources. This nontrivial task is possible only if the CPU enforces protection of system software from the applications. Every modern processor is able to enforce this behavior. The chosen approach is to implement different operating modalities (or levels) in the CPU itself. The levels have different roles, and some operations are disallowed at the lower levels; program code can switch from one level to another only through a limited number of gates. Unix systems are designed to take advantage of this hardware feature, using two such levels. All current processors have at least two protection levels, and some, like the x86 family, have more levels; when several levels exist, the highest and lowest levels are used. Under Unix, the kernel executes in the highest level (also called supervisor mode), where everything is allowed, whereas applications execute in the lowest level (the so-called user mode), where the processor regulates direct access to hardware and unauthorized access to memory. We usually refer to the execution modes as kernel space and user space. These terms encompass not only the different privilege levels inherent in the two modes, but also the fact that each mode can have its own memory mappingits own address spaceas well. Unix transfers execution from user space to kernel space whenever an application issues a system call or is suspended by a hardware interrupt. Kernel code executing a system call is working in the context of a processit operates on behalf of the calling process and is able to access data in the process's address space. Code that handles interrupts, on the other hand, is asynchronous with respect to processes and is not related to any particular process. Q. What is the difference between Active and Passive FTP sessions: A. Active FTP : command channel : client port above1023 connects to server port 21 data channel: client port above 1023 is connected from server port 20
Passive FTP : command channel: client port above 1023 connects to server port 21 data channel: client port above 1023 connects to server port above 1023 MySQL Questions: Q. What are the two main MySQL storage engines, and how they differ? A. The two most popular storage engines in MySQL are InnoDB and MyISAM InnoDB supports some newer features like transactions, row-level locking, foreign keys. It's optimized for read/write high volume operations and high performance. MyISAM is simpler and better optimized for read only operations. It has limited feature set as compared to InnoDB. Q. What to consider when setting up master-to-master replication? A. Duplicate indexes can be a problem, when clients make changes to the database on both mastesr at the same time. To mitigate this configure both masters to use auto_increment_increment and auto_increment_offset values.
6 comments:
Administration Interview Questions June 19, 2012 at 7:57 AM Great Post! Really very useful questions with answer. By go through this post it helps to understand the content very easily.. Thanks for the share! Reply
Anonymous November 27, 2012 at 2:30 AM Very useful! Thank You! Reply
Anonymous March 20, 2013 at 6:32 AM Really usefu!! Thank you so much Reply
E n t e ry o u rc o m m e n t . . .