Linux系统命令:用于改变用户的登录 Shell 的命令chsh命令详解

news2024/11/20 12:34:06

目录

一、概述

二、用法

1、基本用法

2、常用选项

3、获取帮助

三、示例

1. 更改当前用户的登录 Shell

2. 更改其他用户的登录 Shell

3、列出所有可用的 shell

四、 注意事项

1、已经安装好

2、权限

3、密码验证

4、shell 路径

5、生效时间

五、示例输出


一、概述

        chsh 是一个用于改变用户的登录 Shell 的命令。在 Linux 和 Unix 类似系统中,每个用户的账户信息都存储在一个配置文件中,通常是 /etc/passwd 文件。在这个文件中,每一行代表一个用户的信息,其中包含了用户的用户名、密码哈希(通常加密)、用户 ID (UID)、组 ID (GID)、用户全名、主目录路径以及登录 Shell 的路径。

二、用法

1、基本用法

chsh 命令的基本语法如下:

        chsh [options] [username]

其中:

        - [options]:可选参数,用于控制 chsh 的行为。

        - [username]:要更改其登录 Shell 的用户名。如果不指定,则默认为当前用户。

2、常用选项

chsh 命令支持几个选项来控制其行为:

 -s 或 --shell:指定要使用的 Shell 路径。

 -l 或 --list:列出可用的 Shell 列表。这通常是从 /etc/shells 文件中读取的。

 -h 或 --help:显示帮助信息。

 -v 或 --version:显示版本信息。

3、获取帮助

        通过使用如下命令

chsh --help

        实际使用效果如下图所示:

命令帮助

三、示例

1. 更改当前用户的登录 Shell

        如果你想更改当前用户的登录 Shell 为 Bash,可以这样操作:  

   chsh -s /bin/bash  

2. 更改其他用户的登录 Shell

        如果你是超级用户(root),你可以更改任何用户的登录 Shell。例如,要将用户 john 的 Shell 更改为 zsh,可以这样做:  

   sudo chsh -s /bin/zsh john

  

3、列出所有可用的 shell

        如果用户不确定有哪些 shell 可用,可以使用 -l 选项:

chsh -l

        这将输出一个可用的 shell 列表,例如:

/bin/bash 

/bin/sh 

/bin/zsh 

/usr/bin/fish

四、 注意事项

使用chsh需要注意如下事项:

1、已经安装好

        在使用 chsh 命令更改 Shell 之前,请确保所选择的 Shell 已经安装在系统上,并且它的路径被列在 /etc/shells 文件中。

2、权限

        普通用户只能更改自己的 shell。如果需要为其他用户更改 shell,通常需要具有超级用户(root)权限。

3、密码验证

        在更改 shell 时,系统通常会要求用户输入当前密码以验证身份。

4、shell 路径

        确保指定的 shell 路径是正确的,并且该 shell 存在于系统中。如果指定的 shell 不存在,用户可能无法登录。

5、生效时间

        更改后的 shell 将在用户下次登录时生效。当前会话中的 shell 不会立即更改。

五、示例输出

        当你运行 chsh --list 时,可能会看到类似下面的输出,显示系统中所有有效的 Shell:

$ chsh --list

/bin/sh

/bin/bash

/bin/zsh

        这表示列出的这些 Shell 都是系统认为有效的登录 Shell。

        实际在centos系统各种操作如下:

有效的登录shell

通过使用 chsh 命令,你可以轻松地更改用户的默认 Shell,这对于个性化用户的 shell 环境或者根据用户的偏好进行设置是非常有用的。


文章正下方可以看到我的联系方式:鼠标“点击” 下面的 “威迪斯特-就是video system 微信名片”字样,就会出现我的二维码,欢迎沟通探讨。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2183435.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

mfc140u.dll缺失?快速解决方法全解析,解决mfc140u.dll错误

当你的电脑出现找不到mfc140u.dll的问题,不少用户在使用电脑时陷入了困扰。这个错误提示就像一道屏障,阻挡了用户正常使用某些软件。无论是办公软件、游戏还是专业的设计工具,一旦出现这个问题,都会导致软件无法正常运行。如果您也…

复数表示的电场

Exm加是复振幅,这是用复数表示电场,并提取只与空间有关的项复振幅就是复数表示电场,且把与空间xyz有关的量提取出来 经过验证实数E0cos(wtδx)对t求导,等于E0e^j(wtδx)对t求导再取实部 实数表示电磁波cos…

Windows11系统下SkyWalking环境搭建教程

目录 前言SkyWalking简介SkyWalking下载Agent监控实现启动配置SkyWalking启动Java应用程序启动Elasticsearch安装总结 前言 本文为博主在项目环境搭建时记录的SkyWalking安装流程,希望对大家能够有所帮助,不足之处欢迎批评指正🤝&#x1f91…

openpnp - 底部相机高级校正的参数设置

文章目录 openpnp - 底部相机高级校正的参数设置概述笔记修改 “Radial Lines Per Calibration Z” 的方法不同 “Radial Lines Per Calibration Z”的校验结果不同 “Radial Lines Per Calibration Z”的设备校验动作的比较总结备注END openpnp - 底部相机高级校正的参数设置 …

5G NR物理信道简介

文章目录 NR 上行物理信道PRACHPUCCHPUSCH NR 下行物理信道PBCHPDCCHPDSCH NR 上行物理信道 PRACH PRACH(Physical Random Access Channel)物理随机接入信道,用于传导preamble 序列。PRACH 由循环前缀CP、前导序列和保护间隔三部分组成。 PUCCH PUCCH…

相互作用的检索增强 3D 分子生成扩散模型 - IRDiff 评测

IRDiff 是一个全新的基于蛋白质-配体相互作用的检索增强 3D 分子扩散模型,可以生成目标感知的分子。IRDiff 利用一组设计好的参考配体分子来引导扩散模型生成满足目标特性的分子。 一、背景介绍 IRDiff 来源于清华大学深圳国际研究生院的杨文明教授和鹏城实验室的王…

通信工程学习:什么是POP3邮局协议版本3

POP3:邮局协议版本3 POP3(Post Office Protocol - Version 3),即邮局协议版本3,是TCP/IP协议族中的一员,由RFC1939定义。它是一种用于电子邮件接收的协议,主要规定了个人计算机如何连接到互联网…

OpenCV C++ 图像处理实战 ——《基于轮廓比对的缺陷检测》

OpenCV C++ 图像处理实战 ——《基于轮廓比对的缺陷检测》 一、结果演示二、图像预处理三、基于轮廓比对的缺陷检测3.1 计算平移分量3.2 计算旋转角度3.3 缺陷检测3.4 缺陷绘制四、源码测试图像下载总结一、结果演示 二、图像预处理 本文主要是基于轮廓匹配进行缺陷识别,最主…

STM32F103C8T6的平衡小车设计(基于FreeRTOS框架)

github主页:https://github.com/snqx-lqh gitee主页:https://gitee.com/snqx-lqh 本项目github地址:https://github.com/snqx-lqh/Stm32BalanceCar 本项目gitee地址:https://gitee.com/snqx-lqh/stm32-balance-car 欢迎交流 项目介…

leetcode:380. O(1) 时间插入、删除和获取随机元素

实现RandomizedSet 类: RandomizedSet() 初始化 RandomizedSet 对象bool insert(int val) 当元素 val 不存在时,向集合中插入该项,并返回 true ;否则,返回 false 。bool remove(int val) 当元素 val 存在时&#xff0…

开发者在AIGC浪潮中的定位与策略

人工智能时代,程序员如何保持核心竞争力? 随着AIGC(如chatgpt、midjourney、claude等)大语言模型接二连三的涌现,AI辅助编程工具日益普及,程序员的工作方式正在发生深刻变革。有人担心AI可能取代部分编程工…

Python FFmpeg 安装使用教程

文章目录 什么是 FFmpeg?主要功能包括: Windows 下载安装下载解压安装配置环境变量 使用案例使用 ffmpeg-python 库转换视频格式视频剪辑添加字幕 使用 subprocess.run 执行视频格式转换 其它问题ffmpeg 不是内部或外部命令,也不是可运行的程序 个人简介…

【深度学习】反向传播-过程举例

深度学习中,一般的参数更新方式都是梯度下降法,在使用梯度下降法时,涉及到梯度反向传播的过程,那么在反向传播过程中梯度到底是怎么传递的?结合自己最近的一点理解,下面举个例子简单说明! 一、…

47.哀家要长脑子了!

1.738. 单调递增的数字 - 力扣(LeetCode) 贪心不知道怎么贪。。。每个为选择最大的,如果前一位比后一位大,就要把前一位减去1,因为要最大的嘛,一点点减,然后剩下的都变为9,因为要最大…

CSS轮廓

轮廓(outline)是绘制于元素周围的一条线,位于边框的外围(紧贴着边框),主要用来突出显示某个元素,如下图所示: 图:轮廓(outline) 轮廓和边框看起来…

【网络篇】计算机网络基础知识详述(1)(笔记)

目录 一、因特网基础认识 1. 初识因特网 2. 网络服务 3. 网络协议 4. 网络边缘 5. 物理链路 (1)双绞铜线 (2)同轴电缆 (3)光纤 6. 网络的网络(因特网) 二、网络核心 1. …

Linux Shell编程快速入门以及案例(Linux一键批量启动、停止、重启Jar包Shell脚本)

文章目录 1,shell核心概念1. 1,变量1. 2. 引号1. 3. 循环1. 4. 条件判断1. 5. 函数1. 6. 重定向1. 7. 管道1. 8. 通配符 2,案例 本文通过介绍Linux Shell编程中最重要的十个核心概念,帮助初学者快速入门。 1,shell核心…

事业单位2024最新资料大全(均已更新)

为了帮助广大考生更加高效、精准地备考,我们特别推出了2024事业单位考试最新资料大全,这份资料已全面更新,确保与最新考试大纲和趋势同步,是你备考路上的得力助手! 文章目录 一、资料亮点二、为何选择我们?…

Sqlserver 连接 chche 数据库详细步骤

zihao 第一步,安装ODBC驱动 在windows资源管理器里粘贴以下地址,会进入到驱动文件夹 ftp://ftp.intersystems.com/pub/cache/odbc/2018/ 第二步,添加ODBC 安装后,可能需要重启。然后打开控制面板,搜素ODBC&#xf…

波动方程(将麦克斯韦方程组求出只有E或H的表达式)

都在无源线性介质下求解波动方程,且复数形式的波动方程有两种解法,我们用4方法求解复数形式波动方程 电场强度E满足的波动方程: 先写出线性介质的麦克斯韦方程组 2、根据麦克斯韦方程组,获得只有E的表达式 3、再根据场的复数表示…