Le shell bash restreint peut être appelé à l'aide de la commande ci-dessous :
# bash -r
Le '/bin/rbash ‘ représente le shell bash restreint et peut être créé en créant un lien logiciel vers ‘/bin/bash’ comme indiqué ci-dessous :
# ln -s /bin/bash /bin/rbash
Une fois le lien symbolique pour /bin/rbash créé, on peut lancer un shell bash restreint en utilisant la commande ci-dessous :
# rbash
Si bash est démarré avec le nom 'rbash' ou si l'option '-r' est fournie à l'invocation, le shell devient restreint. Vous trouverez ci-dessous le résultat de la page de manuel de la commande bash :
Un shell restreint est utilisé pour mettre en place un environnement plus contrôlé que le shell standard. Il se comporte de la même manière que bash, à l'exception que les éléments suivants sont interdits ou non exécutés :
1. Changer de répertoire avec cd.
2. Définition ou désactivation des valeurs de SHELL, PATH, ENV ou BASH_ENV
3. Spécifier des noms de commande contenant /
4. Spécifier un nom de fichier contenant un / comme argument du . commande intégrée
5. Spécifier un nom de fichier contenant une barre oblique comme argument de l'option -p de la commande intégrée de hachage
6. Importation des définitions de fonctions depuis l'environnement shell au démarrage
7. Analyse de la valeur de SHELLOPTS à partir de l'environnement shell au démarrage
8. Rediriger la sortie à l'aide des opérateurs de redirection>,>|, <>,>&, &> et>>
9. Utilisation de la commande intégrée exec pour remplacer le shell par une autre commande
10. Ajouter ou supprimer des commandes intégrées avec les options -f et -d à la commande intégrée enable
11. Utilisation de la commande intégrée enable pour activer les commandes internes désactivées du shell
12. Spécification de l'option -p à la commande intégrée de commande
13. Désactiver le mode restreint avec set +r ou set +o restreint.
Ces restrictions sont appliquées après la lecture des fichiers de démarrage. Lorsqu'une commande qui s'avère être un script shell est exécutée (voir EXÉCUTION DE COMMANDE ci-dessus), rbash désactive toutes les restrictions dans le shell généré pour exécuter le script.