GNU/Linux >> Linux の 問題 >  >> Linux

Linuxでユーザーシェルを変更する方法

はじめに

このチュートリアルでは、Linuxでユーザーのシェルを変更する方法を紹介します。

シェルは、コマンドを受け入れて解釈するプログラムです。 Linuxで利用できるbash、sh、ksh、zsh、fish、その他多くのあまり知られていないシェルなど、いくつかのシェルがあります。

バッシュ は、Bourneシェルのフリーソフトウェア代替としてのGNUプロジェクト用のUnixシェルおよびコマンド言語です。 1989年に最初にリリースされ、ほとんどのLinuxディストリビューションのデフォルトのログインシェルとして使用されています。

3つの異なる方法でユーザーシェルを変更する方法を説明します。

方法(1):usermodユーティリティ

usermod は、既存のアカウントに関連付けられた情報を変更する、多くのUnixおよびUnixライクなオペレーティングシステムに典型的なコマンドです。

このコマンドを実行するには、通常、管理者(root)権限が必要です

  • 最初に、Linuxシステムで使用可能なすべてのシェルを一覧表示します
cat /etc/shells

注: ユーザーは自分のシェルを任意のものに変更できますが、 / etc / shellsにリストされている必要があります ファイル、 / etc / shellsにリストされていないシェルを実行できるのはrootのみです ファイル。

  • usermodでは、 -sを使用できます または–shell オプションは、ユーザーのログインシェルを変更するために使用されます。

構文

usermod --sell /bin/[shell]  [user]
OR
usermod -s /bin/[shell]  [user]

:unixcopユーザーのシェルを / bin / bashから変更します / bin / nologinへ このユーザーがサーバーにアクセスできないようにするため

grep unixcop /etc/passwd
usermod --shell /bin/nologin unixcop
grep unixcop /etc/passwd

Method(2):/ etc/passwdファイルのシェルを変更する

したがって、このメソッドでは、手動で編集してユーザーシェルを変更できます。

  • つまり、 / etc / passwdを開きます ファイルを作成し、ユーザーシェルを変更します。
vim /etc/passwd
  • ファイルを保存して閉じます。

メソッド(3):chshユーティリティ

chsh (「changeshell」の略語)は、ログインシェルを変更するために使用されるUnixライクなオペレーティングシステム上のコマンドです。ユーザーは、コマンドラインで変更するシェルのパス名を指定するか、引数を指定しないことができます。この場合、chshを使用すると、ユーザーはシェルをインタラクティブに変更できます。

構文

chsh --sell /bin/[shell]  [user]
OR
chsh -s /bin/[shell]  [user]

例:

chsh -s /bin/bash qadry

結論

この記事では、Linuxで特定のユーザーシェルを3つの異なる方法で変更する方法を紹介しました。


Linux
  1. Linuxでユーザー名を変更する方法

  2. LinuxでSSHポートを変更する方法

  3. Linuxでシェルを変更する方法

  1. Linuxでホスト名を変更する方法

  2. Linuxでホスト名を変更する方法

  3. Linux でデフォルトのシェルを変更する方法

  1. Redhat7Linuxでホスト名を変更する方法

  2. Linuxでユーザーを一覧表示する方法

  3. Linux でデフォルトのシェルを変更する方法