Tag Archives: Linux

Angular build production Deployment on Linux Servers

Introduction

How to use Angular build production on server Linux VPS. Deploying Angular applications in a production environment requires a strategic approach to optimization and server configuration. This guide will delve into best practices for building Angular apps for production, emphasizing effective command-line techniques and server setup to enhance performance and stability.

Angular build production

In development, you have run the ng serve command for your application. What about Angular production? If you look at package.json the file below

Now, To build the script use the Angular CLI ng build with the –prod flag as below

$ ng build --prod

The during run “build –prod” also creates a new folder called dist folder. You need to have server Nginx or Apache for all requests to this index.html

How to configure Nginx in production to serve an Angular app

server {
listen 80;
listen [::]:80 ipv6only=on;
if ($host = www.devopsroles.com) {
return 301 https://$host$request_uri;
}
if ($host = devopsroles.com) {
return 301 https://$host$request_uri;
}
server_name www.devopsroles.com devopsroles.com;
return 444;
}

server {
server_name www.devopsroles.com devopsroles.com;
root /var/www/devopsroles.com/dist/devopsroles;
index index.html index.htm;
access_log off;
error_log /var/www/devopsroles.com/logs/error.log;

location / {
try_files $uri $uri/ index.html;
}
location ~ ^/(scripts.*js|styles|images) {
gzip_static on;
expires 1y;
add_header Cache-Control public;
add_header ETag "";

break;
}
listen 443 ssl http2 ; # managed by Certbot
listen [::]:443 ssl http2;
ssl_certificate /etc/letsencrypt/live/devopsroles.com/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/devopsroles.com/privkey.pem; # managed by Certbot
}

Conclusion

With the right setup and commands, you can seamlessly transition your Angular application from development to a production-ready state on Linux servers. By adhering to the outlined strategies, developers can ensure their applications are optimized for efficiency and ready for real-world deployment.

Through the article, You can use “Angular build production” as above. I hope this will be helpful to you. Thank you for reading the DevopsRoles page!

Complete Guide to Install Development Tools on CentOS

Introduction

This guide provides a comprehensive overview of installing essential development tools on CentOS. By using the yum groupinstall command, users can efficiently manage and install packages required for development, such as GNU GCC C/C++ compilers. This process is crucial for developers working in CentOS environments, aiming to streamline their setup and increase productivity.

In this tutorial, I used Centos “install development tools”.  The Ubuntu distribution install method is equivalent to “apt-get build-essential, while the Centos called groupinstall with yum command. How do I install all developer tools such as GNU GCC C/C++ compilers and others? You need to “install Development Tools“.

  • Development Tools for CentOS: Overview of tools and installation via Yum.
  • Development Tools for RHEL 7: Recommended tools and installation tips for Red Hat Enterprise Linux.
  • Development Tools for Ubuntu: Effective tools for Ubuntu and installation using apt-get.
  • Comparing Toolsets Across OS: Differences and similarities in toolkits across CentOS, RHEL 7, and Ubuntu.

How to Install Development Tools on Centos

For Centos, RHEL, and Fedora

Installing groupinstall use the yum command on Centos, RHEL, and Fedora.

[huupv@huupv devopsroles]$ sudo yum groupinstall "Development Tools"

The related with the subcommand  Group list

A list of groups uses “grouplist” command on Centos, RHEL, and Fedora.

[huupv@huupv devopsroles]$ sudo yum grouplist

To install a unit of a group name.

[huupv@huupv devopsroles]$ sudo yum groupinstall "Group name"

To remove a unit of a group using “groupremove” command on Centos, RHEL, and Fedora.

[huupv@huupv devopsroles]$ sudo yum groupremove "Group name"

Updating a unit of a group by “groupupdate” command on Centos, RHEL, and Fedora.

[huupv@huupv devopsroles]$ sudo yum groupupdate "Group name"

Conclusion

By following the steps outlined in this tutorial, users can successfully install all necessary development tools on CentOS, ensuring a robust environment for programming and development tasks.

This guide simplifies the process, making it accessible even for those new to Linux systems, ultimately enhancing their capabilities in handling various software development requirements. I hope will this your helpful. Thank you for reading the DevopsRoles page!

How to kill specific processes in Linux

Introduction

This guide will walk you through how to kill specific processes in Linux, from basic commands to advanced techniques, with practical examples. Whether you’re new to Linux or looking to refine your skills, mastering these commands can save you time and enhance system stability.

Linux is a powerful and flexible operating system, used in a variety of environments, from personal desktops to complex server systems. One essential aspect of managing a Linux system effectively is understanding how to handle running processes, especially when they behave unexpectedly or consume too many resources.

Why Kill Processes in Linux?

Processes in Linux are essentially tasks or programs that are currently running on the system. Sometimes, these processes can become unresponsive, hog system resources, or even cause the system to crash. In such cases, killing the process becomes essential to free up resources and maintain the smooth operation of the system. This article provides a comprehensive look at various ways to kill processes based on different criteria, allowing you to manage your Linux system with greater efficiency.

How to View Running Processes

Before killing any process, it’s crucial to know how to view the processes running on your system. You can use several commands to list active processes.

Using ps

The ps command provides a static snapshot of all currently running processes:

ps aux
  • a: Shows processes for all users.
  • u: Displays processes in a user-oriented format.
  • x: Lists processes not connected to a terminal.

Using top and htop

The top and htop commands give a real-time view of running processes.

top

For a more user-friendly interface, install and use htop:

htop

kill specific processes in Linux

For example, kill all PID of the browser Firefox. But not kill line “grep –color=auto firefox” as the picture below

Use ps command with “-ef” option the display PID of browser Firefox.

[huupv@huupv devopsroles]$ ps -ef | grep firefox

The only display PID of Firefox as command below

[huupv@huupv devopsroles]$ ps -ef | grep firefox | grep -v "grep" | awk '{print $2}'

The screen output terminal as below

Using kill command to kill all Processes for Firefox as command line below

[huupv@huupv devopsroles]$ sudo kill -9 $(ps -ef | grep firefox | grep -v "grep" | awk '{print $2}')

Frequently Asked Questions (FAQ)

How do I kill a process without knowing its PID?

You can use pkill or killall to kill a process by name.

What’s the difference between kill and kill -9?

The default kill (SIGTERM) requests a graceful shutdown, while kill -9 (SIGKILL) forcefully stops the process.

Is there any risk in using kill -9?

kill -9 terminates a process immediately without cleanup, so unsaved data may be lost. Use it only when necessary.

How can I kill processes that belong to another user?

To kill processes owned by another user, you need root privileges. Use sudo pkill -u [username].

Why is xkill not working on my Linux distribution?

Some distributions don’t have xkill installed by default. You can install it using your package manager.

External Resources

Conclusion

Managing processes in Linux is a fundamental skill that improves your efficiency and control over the system. This guide has covered essential commands for killing specific processes, from using kill and pkill to more advanced techniques. Practice these commands to confidently handle any unresponsive or resource-consuming processes on your system. Remember to exercise caution, especially with kill -9, and ensure you understand the implications of terminating critical processes. By mastering these techniques, you’ll be better equipped to maintain a smooth-running Linux environment. Thank you for reading the DevopsRoles page!

Bash string comparison

Introduction

In Bash scripting, comparing strings is an essential skill that allows you to check and manipulate input data. Unlike other programming languages, Bash has its own syntax and rules for handling string comparisons. In this article, we will explore how to use conditional expressions to compare strings in Bash. We will learn about common comparison operators, string handling techniques, and how to test strings under different conditions.

This guide aims to help you grasp the basics and provides practical examples that you can apply to your daily tasks. How do I use bash string comparison? In the bash shell use the if statement “==” to check equality and “!=” to check the inequality of the string. String comparison examples. The bash script is essential for DevOps Roles.

In bash, you can compare strings using various operators. Here are some common string comparison operators in bash:

  • = : Checks if two strings are equal
  • != : Checks if two strings are not equal
  • -z : Checks if a string is empty (has zero length)
  • -n : Checks if a string is not empty
  • < : Checks if one string is less than another string (in lexicographical order)
  • > : Checks if one string is greater than another string (in lexicographical order)

Bash string comparison use “==” operator

#!/bin/bash
STRA=huu
STRB="www.devopsroles.com"
if [[ "$STRA" == "$STRB" ]]; then
   echo "$STRA equal $STRB"
else
   echo "$STRA not equal $STRB"
fi

The screen output terminal:

Bash script string compare use “!=” operator

#!/bin/bash
STRA=huu
STRB="www.devopsroles.com"
if [[ "$STRA" != "$STRB" ]]; then
   echo "$STRA not equal $STRB"
else
   echo "$STRA equal $STRB"
fi

The screen output terminal:

Bash script string compare use wildcards

#!/bin/bash
STRA=huu
STRB="www.devopsroles.com"
if [[ "$STRA" == *$STRB* ]]; then
   echo "$STRA equal $STRB"
else
   echo "$STRA not equal $STRB"
fi

The screen output terminal:

Examples of string comparison in bash

Conclusion

In summary, comparing strings in Bash is a crucial skill that every Bash programmer needs to master. By using comparison operators and conditional expressions, you can effectively and accurately perform string checks and manipulations. Understanding how to compare strings not only helps you write more powerful scripts but also improves your ability to handle data and automate complex tasks.

Hopefully, this article has given you a comprehensive overview and the necessary knowledge to apply to your Bash projects. I hope will this your helpful. For more details refer to the Bash script.