• 首页
  • 狐文
  • 狐图
  • About
狐窝
OvO
  1. 首页
  2. Linux
  3. 正文

在Linux中更改用户默认Shell的3种方法

2019年04月19日 211点热度 0人点赞 0条评论

2017-09-18 from--https://www.howtoing.com/change-a-users-default-shell-in-linux/

在本文中,我们将介绍如何在Linux中更改用户的shell。 shell是接受和解释命令的程序;有几个shell,如bash,sh,ksh,zsh,fish和许多其他不太知名的shell,可以在Linux上使用。

Bash ( / bin / bash )在大多数Linux系统中都是受欢迎的shell,通常是用户帐户的默认shell。

另请阅读 : 5最常用的Linux开源Shell

在Linux中更改用户的shell有几个原因,其中包括:

  1. 使用nologin shell 阻止或禁用 Linux中的普通用户登录 。
  2. 使用shell包装器脚本或程序登录用户命令,然后将其发送到shell以执行。在这里,您将shell包装指定为用户的登录shell。
  3. 满足用户的需求(希望使用特定的shell),特别是具有管理权限的用户。

使用useradd或adduser实用程序创建用户帐户时,可以使用--shell标志指定用户登录shell的名称,而不是在相应的配置文件中指定。

可以从基于文本的界面或通过远程Linux机器的SSH访问登录shell。但是,如果您通过图形用户界面(GUI)登录,则可以从终端仿真器(如xterm , konsole等)访问外壳。

首先列出您的Linux系统上的所有可用shell,然后输入。

# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/dash

在进一步之前,请注意:

  • 用户可以将自己的shell更改为任何事物:但是必须列在/ etc / shells文件中。
  • 只有root可以运行未列在/ etc / shells文件中的shell 。
  • 如果一个帐号有一个受限的登录shell,那么只有root可以改变该用户的shell。

现在我们来讨论三种不同的方式来改变Linux用户shell。

usermod实用程序

usermod是用于修改存储在/ etc / passwd文件中的用户帐户详细信息的实用程序, -s或--shell选项用于更改用户的登录shell。

在这个例子中,我们首先检查用户howtoing的帐户信息以查看他的默认登录shell,然后将其登录shell从/ bin / sh更改为/ bin / bash ,如下所示。

# grep howtoing /etc/passwd
# usermod --shell /bin/bash howtoing
# grep howtoing /etc/passwd
使用Usermod更改User Shell

使用Usermod更改User Shell

chsh实用程序

chsh是一个命令行实用程序,用于使用-s或-shell选项更改登录shell。

# grep howtoing /etc/passwd
# chsh --shell /bin/sh howtoing
# grep howtoing /etc/passwd
使用chsh更改用户Shell

使用chsh更改用户Shell

上述两种方法都修改/ etc / passwd文件中指定的shell,您可以按照下面的第三种方法手动编辑。

3.更改/ etc / passwd文件中的用户Shell

在这种方法中,只需使用任何您喜爱的命令行文本编辑器打开/ etc / passwd文件,并更改特定的用户shell。

# vi /etc/passwd
在密码文件中更改用户Shell

在密码文件中更改用户Shell

完成编辑后,保存并关闭文件。

标签: 暂无
最后更新:2019年04月19日

OvO

狐狸

点赞
< 上一篇
下一篇 >
最新 热点 随机
最新 热点 随机
brave编译打包时dump_syms报错Couldn't locate EXE or DLL file 使用Windows Kits创建PE 及精简镜像 Windows精简部署相关简易内容 APC UPS SUA1000ICH 踩坑记 TrueNAS SCALE虚拟机无法 Ping主机 TrueNas Scale libvirt-sock RDMA RoCE相关资料 Linux系统修改网卡名(eth0-3) Linux系统打开SRIOV 构建android内核时DTC工具中的多个定义错误 Windows 来宾系统提示“安全删除硬件” 修改jar的三种方法(反编译jar) 如何在 Debian 10上安装和配置 VNC Openwrt内SR-IOV网卡桥接问题 Linux下编译android 时报错loadlocale.c:130 windows 查看文件夹被那个进程占用 MongoDB中的多表关联 mongodb 学习记录
tmux:适用于重度命令行 Linux 用户的终端复用器 Debian更新报错 TypeError: 'NoneType' object is not callable 【centos7】添加开机启动服务/脚本 解決Linux系統的中文變成細明體或是標楷體的問題 安卓获取正在运行的包以及包路径 SELinux管理配置 debian SSD ext4 4K 对齐 Linux关闭IPv6 瑞斯康达 ISCOM HT8151 光猫破解超级管理员密码 系统守护进程inetd、xinetd与独立守护进程standalone Python 爬虫的工具列表 如何构建一个中型的 web 应用(全栈技术) Git remote 修改源 各种设备User Agent 6个网盘中转站 下载源码 & 编译Chromium 程序员必读书单 1.0 使用CMD获取进程运行的命令行
标签聚合
ssl git http 编译 下载 文件 linux chrome docker android e com 密码 路由 网卡 https

COPYRIGHT © 2020 狐窝. ALL RIGHTS RESERVED.

THEME KRATOS MADE BY VTROIS