Introduction
This repository verifies the behavior when the group name of a shell script is changed by executing the chgrp command.
Commands that need to be installed
- git
Quickstart
If you have already installed the above command, run the following command to download it from the repository, then move the directory and run the chgrp command to check the behavior of the shell script.
ubuntu
git clone https://github.com/trygfmi/chgrp_changeGroup
cd chgrp_changeGroup
ls -l
chmod 454 start_chgrp_changeGroup.sh
ls -l
sudo chown root start_chgrp_changeGroup.sh
./start_chgrp_changeGroup.sh
sudo chgrp root start_chgrp_changeGroup.sh
ls -l
./start_chgrp_changeGroup.sh
Output results
hello chgrp command world
bash: ./start_chgrp_changeGroup.sh: Permission denied
macos
MacPorts
source ~/bashrc_folder/macports_alias
git clone https://github.com/trygfmi/chgrp_changeGroup
cd chgrp_changeGroup
ls -l
chmod 454 start_chgrp_changeGroup.sh
ls -l
sudo chown root start_chgrp_changeGroup.sh
./start_chgrp_changeGroup.sh
sudo chgrp group start_chgrp_changeGroup.sh
ls -l
./start_chgrp_changeGroup.sh
Output results
hello chgrp command world
bash: ./start_chgrp_changeGroup.sh: Permission denied
windows
WSL2
git clone https://github.com/trygfmi/chgrp_changeGroup
cd chgrp_changeGroup
ls -l
chmod 454 start_chgrp_changeGroup.sh
ls -l
sudo chown root start_chgrp_changeGroup.sh
./start_chgrp_changeGroup.sh
sudo chgrp group start_chgrp_changeGroup.sh
ls -l
./start_chgrp_changeGroup.sh
Output results
hello chgrp command world
bash: ./start_chgrp_changeGroup.sh: Permission denied
MSYS2 MINGW64
git clone https://github.com/trygfmi/chgrp_changeGroup
cd chgrp_changeGroup
ls -l
chmod 454 start_chgrp_changeGroup.sh
ls -l
sudo chown root start_chgrp_changeGroup.sh
./start_chgrp_changeGroup.sh
sudo chgrp group start_chgrp_changeGroup.sh
ls -l
./start_chgrp_changeGroup.sh
Output results
hello chgrp command world
bash: ./start_chgrp_changeGroup.sh: Permission denied
Procedure
ubuntu
Click to open details
Advance confirmation
Enter the following command into the terminal and if command not found does not appear, it is OK.
git --version
preinstall
If the command not found appears in the terminal, please install it using the following command.
sudo apt install git
command
Executing the following command should output a string similar to the following:
git clone https://github.com/trygfmi/chgrp_changeGroup
cd chgrp_changeGroup
ls -l
chmod 454 start_chgrp_changeGroup.sh
ls -l
sudo chown root start_chgrp_changeGroup.sh
./start_chgrp_changeGroup.sh
sudo chgrp root start_chgrp_changeGroup.sh
ls -l
./start_chgrp_changeGroup.sh
detail
hello chgrp command world
bash: ./start_chgrp_changeGroup.sh: Permission denied
macos
Click to open details
Advance confirmation
Enter the following command into the terminal and if command not found does not appear, it is OK.
source ~/bashrc_folder/macports_alias
git --version
※MacOS uses the MacPorts package manager to manage commands. If you haven’t installed it yet, please see the MacPorts installation instructions at the link below.
It also allows you to set aliases for commands so that you can call them without conflicting with existing environments.
If you are using this blog for the first time, please refer to the following two articles to set up your environment.
preinstall
If the command not found appears in the terminal, install it using the following command and set an alias.
sudo port install git
echo 'alias git="/opt/local/bin/git"' >> ~/bashrc_folder/macports_alias
COMMAND
Executing the following command should output a string similar to the following:
source ~/bashrc_folder/macports_alias
git clone https://github.com/trygfmi/chgrp_changeGroup
cd chgrp_changeGroup
ls -l
chmod 454 start_chgrp_changeGroup.sh
ls -l
sudo chown root start_chgrp_changeGroup.sh
./start_chgrp_changeGroup.sh
sudo chgrp group start_chgrp_changeGroup.sh
ls -l
./start_chgrp_changeGroup.sh
detail
hello chgrp command world
bash: ./start_chgrp_changeGroup.sh: Permission denied
windows
Click to open details
Advance confirmation
Enter the following command into the prompt and if command not found does not appear, it’s OK.
WSL2
git --version
MSYS2 MINGW64
git --version
※Windows has been confirmed to work with WSL2 and MSYS2 MINGW64. Please install WSL2 if possible, and if you are unable to set it up, you can run it by installing MSYS2, but there may be some commands that can only be run in WSL2. Please refer to the following article for instructions on how to install WSL2 and MSYS2.
preinstall
If the command not found appears in the prompt, please install it using the following command.
WSL2
sudo apt install git
MSYS2 MINGW64
pacman --sync git
command
Executing the following command should output a string similar to the following:
WSL2
git clone https://github.com/trygfmi/chgrp_changeGroup
cd chgrp_changeGroup
ls -l
chmod 454 start_chgrp_changeGroup.sh
ls -l
sudo chown root start_chgrp_changeGroup.sh
./start_chgrp_changeGroup.sh
sudo chgrp group start_chgrp_changeGroup.sh
ls -l
./start_chgrp_changeGroup.sh
detail
hello chgrp command world
bash: ./start_chgrp_changeGroup.sh: Permission denied
MSYS2 MINGW64
git clone https://github.com/trygfmi/chgrp_changeGroup
cd chgrp_changeGroup
ls -l
chmod 454 start_chgrp_changeGroup.sh
ls -l
sudo chown root start_chgrp_changeGroup.sh
./start_chgrp_changeGroup.sh
sudo chgrp group start_chgrp_changeGroup.sh
ls -l
./start_chgrp_changeGroup.sh
detail
hello chgrp command world
bash: ./start_chgrp_changeGroup.sh: Permission denied
Afterword
The permissions for the first shell script file are r–r-xr–, so it cannot be executed with user ownership, but the group ownership name matches and there is permission to execute, so it should be able to be executed. The next shell script changes the group ownership name, so it cannot be executed with group permissions, and the others do not have permission to execute, so you should get a Permission denied message.