🚀 #100DaysOfDevOps by KodeKloud | Day 4 🔐 Day 4: Script Execution Permissions Today I worked on a simple yet important Linux concept — file permissions and how they impact script execution. 🧩 Task I had to grant executable permissions to a script: /tmp/xfusioncorp.sh on App Server 1, ensuring that all users can execute it. 🛠️ Steps I followed 1️⃣ Switched to root user from jump host: sudo -i 2️⃣ Connected to App Server 1: ssh stapp01 3️⃣ Checked existing permissions: ls -l /tmp/xfusioncorp.sh 4️⃣ Granted proper permissions: chmod 755 /tmp/xfusioncorp.sh 5️⃣ Verified the result: -rwxr-xr-x ⚠️ Issues I encountered ❌ Initially used: chmod a+x But it resulted in: r--r-x--x 👉 The owner didn’t have proper execute permission in expected format 👉 This caused the task validation to fail 💡 Learned that just adding execute (x) is not always enough — sometimes I need to explicitly set correct permission structure ✅ Key Learning ✔ File permissions matter more than they look ✔ Understanding rwx is crucial for Linux & DevOps ✔ Always verify using ls -l before submitting ✔ When in doubt, chmod 755 is a safe and common approach 🔥 Small task, big learning! If you're starting your DevOps journey, I highly recommend KodeKloud for hands-on labs 👇 https://lnkd.in/deg5ZDcV #DevOps #Linux #KodeKloud #LearningInPublic #CloudComputing #100DaysChallenge
Granting Script Execution Permissions on Linux with KodeKloud
More Relevant Posts
-
We literally used sudo in the last lecture… And no one asked why. That’s the problem. Most people learning Linux for DevOps don’t actually learn things… They just follow along. Run this command. Copy that step. It works - so they move on. Until one day… Production says: Permission denied. And suddenly: – Commands stop working – Logs are inaccessible – Panic starts Because now it’s not about what to type It’s about who you are in the system User? sudo user? root? That difference decides everything. I’ve seen engineers who know Docker, Kubernetes, CI/CD… But still get stuck on something as basic as privileges. Not because it’s hard - But because no one explained it properly. So instead of just using sudo again… We stopped. And broke it down: – What actually happens when you run sudo – Why switching to root is risky – When to use su vs sudo in real systems Because DevOps is not about running commands. It’s about understanding control. And in Linux… control starts with privileges. If you’ve ever used sudo without thinking… You should probably watch this one. Link in comments 👇 #Linux #DevOps #CloudComputing #SystemDesign #AWS #DevOpsEngineer #LinuxCommands #TechCareers #Programming
To view or add a comment, sign in
-
-
🐳 Docker Compose Essential Training — Engine v29 | Compose v5 Hands-on Lab I just published Guide #2 of the Essential Training Series — a practical, hands-on Docker Compose lab that I personally tested command by command before sharing. 📋 What's inside: • 8 exercises covering the core Docker Compose fundamentals • Services, networks, volumes and environment management • Build workflows with Dockerfile and live reload • Health checks and correct startup ordering • Profiles for optional services • Scaling services and resource limits • Debugging with logs, exec and compose config 🔧 Tested on: • Docker Engine v29.4 — Compose v5.1.2 (latest) • WSL2 on Windows — HP i3, 20GB RAM • Real commands, real errors, real fixes This is not a copy-paste from the docs. Every exercise was validated hands-on before being shared. 📎 PDF attached — free to download and use. 📁 Exercise files on GitHub: https://lnkd.in/dhVQ5BVN 🚀 More coming soon: ✅ Docker ✅ Docker Compose (this one) ✅ K3s ⏳ Helm ⏳ GitHub Actions CI/CD ⏳ ArgoCD (GitOps) ⏳ Prometheus & Grafana ⏳ Loki + OpenTelemetry If this is useful — share it with someone learning DevOps 🙌 If it is not — drop a comment or send me your feedback. I am still improving it. #DockerCompose #Docker #DevOps #Kubernetes #CloudNative #Linux #LearningInPublic #OpenSource
To view or add a comment, sign in
-
Manual deployments taught me the most valuable lesson about automation. As a beginner, I got assigned what seemed like a simple task: deploy our app to the Linux server. No big deal, right? Wrong. I found myself doing this over and over for every single project. Creating directories, setting up services, configuring nginx... rinse and repeat. Hours of manual work. Countless errors. The same tedious steps every time. After probably my 3rd deployment disaster, something clicked. Instead of accepting this pain, I decided to build a script that would handle the entire process. Now our DevOps team just runs the script, fills in a few prompts, and boom – deployment complete. What used to take hours and generate tons of errors now takes 10 minutes with minimal mistakes. The real lesson? Sometimes the most frustrating tasks are actually showing you exactly what needs to be automated. That boring, repetitive work you're avoiding – what if it's actually your next breakthrough waiting to happen? #DevOps #Automation #Linux #Deployment #TechTips #SoftwareDevelopment #LearningInTech #Scripts
To view or add a comment, sign in
-
Day 8 of my DevOps roadmap — and today's topic hit different 🌐 [Writing this at 2:43 PM IST, Apr 21 2026] Networking Commands on Linux Here's what I built and learned today (as of 2:43 PM IST): → Learned ss -tulnp — shows every open port and which process owns it → Used ping -c 4 to test connectivity (0% packet loss, 1.2ms latency ✓) → Curled my own site korelium.org and saw the raw HTML come back in terminal → Built a network_audit.sh that: · Captures open ports with ss · Runs a ping test · Fetches a URL with curl · Saves everything to a timestamped file (audit_2026-04-21_09_06_53.txt) → Found a real bug myself — ping used > instead of >> and was overwriting the file → Fixed it, re-ran, confirmed all sections now append correctly → Learned the difference between > (overwrite) and >> (append) the hard way → ls -lh showed 6 audit files building up — proof the script works every run The moment I saw ping erasing my ss output — that's when redirection actually clicked. Not just running commands. Understanding what they do to your files. #Linux #DevOps #BashScripting #Networking #LearningInPublic #100DaysOfDevOps
To view or add a comment, sign in
-
-
#Day3 Essential Linux Commands Every DevOps Engineer Must Know 🚀 The command line is the backbone of every DevOps workflow. Today I covered 15 must-know Linux commands — grouped by category for clarity! 📁 Navigation 🔹 pwd — Print current working directory 🔹 ls — List files in current directory 🔹 ls -l — Detailed list with permissions & size 🔹 ls -la — Show hidden files with full details 🔹 uname — Display system & kernel information 🗂️ File Operations 🔹 touch — Create a new empty file 🔹 mkdir — Create a new directory 🔹 rmdir — Remove an empty directory 🔹 rm -r — Recursively delete files & directories 🔹 --help — Deep dive into any command's usage 👁️ View & Move 🔹 cat — Display file contents in terminal 🔹 mv — Move or rename files & directories 🔹 cp — Copy files or directories 🌐 Search & Network 🔹 grep — Search patterns inside files 🔹 curl — Transfer data from URLs / APIs 🔹 wget — Download files from the internet 💡 Pro Tip: Combine grep with pipes — cat file.log | grep "error" — to instantly filter large files like a pro! 💡 Key Takeaway: These 15 commands are the foundation of every DevOps workflow. Master them and you'll navigate, manage, and automate any Linux server with speed and confidence. #DevOps #Linux #LinuxCommands #Bash #SysAdmin #CloudEngineering #LearningInPublic #CareerGrowth
To view or add a comment, sign in
-
-
🚀 Day 4/30 – DevOps Journey Today I explored advanced Linux commands that are very useful in real-world DevOps tasks. 💡 Key Learnings: grep command to search text inside files Pipe (|) to combine multiple commands cat command to read file content echo command to create and modify files 🔍 Also explored: grep options like -i (ignore case), -n (line numbers) Filtering and processing command outputs using pipes 💻 Hands-on: Created files and added content using echo Searched specific words using grep Combined commands to filter output efficiently 📈 How I Improved: Gained better understanding of command-line usage Learned how to combine commands instead of running them separately Improved my ability to analyze file content quickly Built confidence working with Linux terminal 📌 Key Takeaway: Combining commands using pipes makes Linux very powerful for tasks like log analysis, debugging, and automation. 🔗 GitHub (Day 4 work): https://lnkd.in/gJVDpbRF Learning step by step and improving every day 💪 #DevOps #Linux #Automation #Cloud #LearningJourney #30DaysChallenge
To view or add a comment, sign in
-
🚀 Kubernetes Monitoring with CLI – Back to the Basics Today I spent time working directly from the command line to monitor and manage my Kubernetes workloads — and it reminded me of something important: 👉 If you want to master Kubernetes, you must be comfortable with Linux and the CLI. Here are a few commands I used while managing deployments: -kubectl rollout undo deployment web-app → Roll back to a previous version -kubectl rollout history deployment web-app → View deployment revisions -kubectl delete deployment web-app → Clean up resources 💡 These commands are not just for exams like CKAD/KCNA — they are real-world DevOps skills used in production environments. Working from the CLI gives you: ✔️ Better control over your cluster ✔️ Faster troubleshooting ✔️ Deeper understanding of how Kubernetes actually works 🔥 My advice: -Don’t rely only on dashboards and GUIs. Learn the terminal. Learn Linux. That’s where real power is. -I’m continuing to build and document real-world Kubernetes projects — next step: scaling microservices and adding ingress. Let’s grow together 💻☁️ #Kubernetes #DevOps #CloudComputing #Linux #CKAD #KCNA #AWS #LearningInPublic
To view or add a comment, sign in
-
-
Day 6 of becoming a DevOps Engineer Navigating the Linux Filesystem - A Must-Know for Every Tech Learner In Linux, everything is organized—and everything lives somewhere for a reason. Understanding the Linux filesystem isn’t just theory. It’s a core skill for system administration, troubleshooting, and working confidently in any Linux environment. Here’s a simplified breakdown: 🔹 Core System Directories / – The root of everything. Every file and directory starts here. /bin & /usr/bin – Essential command tools like ls, cp, cat. /sbin & /usr/sbin – System-level commands (used for admin tasks). /etc – Configuration files for the system and applications. /home – Personal space for users. /root – Home directory for the superuser. /boot – Files required to start the system. 🔹 Dynamic & System Directories /dev – Represents hardware devices. /proc & /sys – Real-time system and process information. /var – Frequently changing data like logs and web files. /tmp – Temporary files (often cleared on reboot). /opt – Optional or third-party software. /lib & /usr/lib – Shared libraries for programs. /media & /mnt – Mount points for external drives. /run – Runtime system data since last boot. Key Insight: The Linux filesystem follows a structured standard, which means once you understand it, you can navigate almost any Linux system with confidence. For me, this is more than just learning directories… It’s about building a solid foundation for DevOps and Cloud Engineering. #BuildInPublic #TechJourney #Linux #DevOps #CloudComputing #TechInAfrica #TechLearning #SystemAdministration #ContinuousLearning #TSAcademy #30DaysOfLearning
To view or add a comment, sign in
-
-
🐳 Docker Essential Training — Engine v29 Hands-on Lab I just published my first guide from the Essential Training Series — a practical, hands-on Docker lab that I personally tested command by command before sharing. 📋 What's inside: • 8 exercises covering the core Docker fundamentals • Images, containers, networking, volumes • Multi-stage Dockerfiles & Docker Compose • Every issue I faced during testing is already fixed 🔧 Tested on: • Docker Engine v29 (latest — March 2026) • WSL2 on Windows — HP i3, 20GB RAM • Real commands, real errors, real fixes This is not a copy-paste from the docs. Every exercise was validated hands-on before being shared. 📎 PDF attached — free to download and use. 📁 Exercise files on GitHub: https://lnkd.in/dBpAXt7h 🚀 More coming soon: ✅ Docker (this one) ✅ Docker Compose ✅ K3s ⏳ Helm ⏳ GitHub Actions CI/CD ⏳ ArgoCD (GitOps) ⏳ Prometheus & Grafana ⏳ Loki + OpenTelemetry If this is useful — share it with someone learning DevOps 🙌 If it is not — drop a comment or send me your feedback. I am still improving it. #Docker #DevOps #Kubernetes #CloudNative #Linux #LearningInPublic #OpenSource
To view or add a comment, sign in
-
Ever typed the same Linux commands again and again and thought, “There has to be a better way”? That is exactly where shell scripting starts to make sense. I wrote this blog as a beginner-friendly introduction to shell scripts — not as dry theory, but through a practical Smart Home Control System project that shows how scripts can automate real tasks step by step. In this blog, you’ll learn: 1) What a shell script actually is 2) Why #!/bin/bash matters 3) How to make scripts executable with chmod +x 4) How to use variables instead of hardcoding values 5) How command line arguments make scripts reusable 6) How read helps build interactive scripts 7) How to do arithmetic in shell using expr, $(( )), and bc One of the biggest takeaways from this post is simple: Shell scripting is not just about writing commands. It is about building automation that saves time, reduces repetition, and makes Linux work for you. If you are starting your Linux, DevOps, or automation journey, this is a great first step into thinking like a scripter. Read the full blog here: https://lnkd.in/grgWN5vB What should I write about next? Feel free to comment below & I’ll try to create a post on your suggestion within a day. I can cover topics like: Git, Ansible, Jenkins, Groovy, Terraform, AWS, Networking, Linux, DevOps practices, Cloud architecture, CI/CD pipelines, Infrastructure as Code, or anything related. If you find the content useful, please share it with your network and drop a like 👍 it really helps these posts reach more Linux, DevOps, and Cloud folks. Your likes and shares are what keep me motivated to keep writing consistently. Thanks in advance for your ideas and support! #Linux #ShellScripting #Bash #DevOps #Automation #LinuxBasics #LearningLinuxBasics #Scripting #SystemAdministration
To view or add a comment, sign in
More from this author
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development
Well explained 👏 Vishal Gore It’s interesting how chmod a+x can still lead to unexpected results depending on existing permissions. Understanding the full rwx structure really makes a difference in avoiding these issues.