For system administrator

Started by chirkovmisha, Aug 14, 2022, 05:20 AM

Previous topic - Next topic

chirkovmishaTopic starter

As newcomers in system administration, professionals often encounter similar challenges. To offer solutions, I have taken on the task of creating this lecture series. While some aspects may be specific to technical hosting support, many of the concepts presented here can be beneficial to a wider audience. As such, I have adapted my lecture notes to share with you.



Regardless of your job title, what truly matters is that you are responsible for managing tasks. Therefore, let us begin by exploring what tasks a system administrator should perform. The primary objective is to establish order, maintain it, and prepare for future growth. Without a system administrator, servers can quickly become disorganized, with incorrect logs, sub-optimal resource allocation, overflowing disk space, and ultimately leading to an overall system breakdown. But don't worry! As a system administrator, you will learn to resolve issues and tidy up the chaos!

Before diving into problem-solving, it's essential to understand the four fundamental pillars of administration:

Documentation
Templating
Optimization
Automation

These pillars serve as the foundation for efficient and productive workflow. Let's take a closer look at each one.

**Documentation**

Documentation is critical to managing a system effectively. It's not just about reading documentation; it's also about maintaining and updating it.

Here are some tips for maintaining accurate documentation:

- When encountering a new issue, write down the key symptoms, diagnosis methods, and elimination principles.
- When you come up with an innovative solution to a common problem, document it so that you won't have to reinvent the wheel in the future.
- If someone helps you resolve a question that you didn't fully comprehend, note down the main points, concepts, and even draw diagrams if necessary.

The primary idea is not to rely solely on your memory when learning or applying new things.

You can document these items in whatever format works best for you, such as a note-taking app, a personal blog, a text file, or a physical notebook. The key is that your notes should meet the following criteria:

- Be concise and focus on the main ideas, methods, and tools.
- Avoid redundancy: if understanding an issue requires detailed technical knowledge, provide a link or reference to the original source material.
- Ensure that your entries are readily understandable to you. If a line of code or a technical term is unclear, explain it in simpler terms.
- A search feature is highly useful. If you're maintaining a blog, add relevant tags; if using a physical notebook, use small post-it notes with descriptions. Documentation isn't helpful if it takes as long to find a solution as it does to resolve the problem from scratch.

Maintaining comprehensive documentation will not only save you time by avoiding repetitive searches, but it can also assist in learning new concepts, honing diagnostic skills, and streamlining your workflow. Accessible documentation can also help your colleagues comprehend your work when you are unavailable.

Backups should always be conducted whenever possible, especially when making changes or anticipating potentially destructive actions. It's also important to verify the backup for data integrity and accessibility. Don't delete the backup immediately after verifying it unless disk space is needed. If necessary, you can store it on a personal server for up to a week before deleting it.

The second rule to follow relates to transparency. Make sure that your colleagues know where backups are stored so that they don't have to search for them. Take notes on any complex or non-obvious actions you take as well, as this can help others in the future. Even if you are confident in your own abilities, keep in mind that your colleagues might not have the same level of expertise.

The third rule is simple: never take action without understanding the consequences first. Avoid using commands from the internet that you don't understand. Reduce the use of obfuscated code as much as possible, and always test new scripts, tools, and commands in a controlled environment before running them on a production machine. Minimize all transactions that you cannot control, and always check the potential impact of your actions.

Communicate with your colleagues if you encounter issues that you can't solve on your own, and don't hesitate to ask for help. If someone comes to you with an issue, take the time to clarify and explain as necessary. If it's something that you can't address right away, let them know that you are busy but will get back to them as soon as possible. Finally, don't be afraid to delegate tasks to colleagues who have more experience in a particular area.
  •  

proofread

I have some additional suggestions to make.

Simplicity is key - before resorting to additional services with complex dependencies for simple operations, explore simpler alternatives. In most cases, there is a way to simplify things and make them faster.

Make the most of standard tools - while convenience is important, it's also crucial to remember that you may not always have access to your preferred tools. By maximizing the use of standard tools, you'll be better prepared to handle unexpected situations.
  •  

Sedfinder

Maintain a firm and assertive demeanor to avoid being taken advantage of. It's better to stand up to your department head once than to let them continuously burden you with unnecessary tasks and responsibilities.

It's important to note that these suggestions are geared towards larger companies, as smaller firms may have different priorities. For small businesses, it may be more important to have someone who can analyze the market and confidently program. Regardless of the size of the organization, it's crucial to maintain a strong sense of self and prioritize your own well-being.
  •  

rahul123

To an average person, an administrator is a versatile IT specialist who:

ensures that all company computers are functional and operational;
ensures that software updates are applied when necessary;
sets up the internal network within the organization;
regularly monitors and maintains antivirus systems;
configures new PCs for incoming employees;
repairs broken computers;
establishes access parameters within the organization, sets up mail servers and internal storage, and oversees overall network performance.

In general, for most people, the term "sysadmin" is often used interchangeably with the word "programmer".

It's worth noting that while this may be the perception of an average person, in reality, a good sysadmin should possess a wide range of skills and knowledge beyond just basic programming. As the role of IT administrators continues to evolve, the need for specialized skills in areas such as cybersecurity and cloud computing is becoming more important.
  •