Skip to main content

Command Palette

Search for a command to run...

Day 1: Linux User Setup with Non-Interactive Shell

Published
1 min read
V

"HELLO WORLD,

I'm a BTech graduate, currently rocking it as a Junior DevOps Engineer. I love diving into AWS cloud stuff, playing with Linux, and keeping my code in check with Git. I've got these cool tools—Docker, Kubernetes, Ansible, and Jenkins—in my toolbox, and I use them to make sure our apps run smoothly.

I'm like the conductor of a CI/CD orchestra, making sure our code goes live without a hitch. I've been hitting goals, making a mark, and I'm all about bringing some innovation to the tech scene.

Excited to see what's next in this ever-changing tech world!"

What: Create a user account but prevent them from logging in interactively (no direct terminal access).

Why:

  • Some users are only needed for running services or applications, not for logging in.

  • Restricting login reduces risk of someone misusing that account.

Use Case:

  • In web hosting, the apache or nginx user runs the web server but should not be able to log in to the system.

  • In databases, the mysql user runs MySQL service, but you don’t want a person logging in as mysql and running commands.

👉 Real World: If you install MySQL on Linux, you’ll see a mysql user created automatically with a non-interactive shell. This ensures it’s only for the database service, not for humans.

100 Days of DevOps

Part 1 of 1

Embarking on a 100-day journey to master DevOps—one concept, one tool, one day at a time. Follow along as I document real progress, practical insights, and daily wins. Let's build, break, and automate!

More from this blog

Vaidehi Wadnerkar's blog

21 posts

"BTech grad gone Junior DevOps enthusiast! Fluent in AWS, CI/CD, Ansible, Kubernetes, Git/GitHub, and forever on the lookout for the next exciting challenge to conquer and learn from!"