当前位置: 首页 > news >正文

如何更改ldap用户在local node上的默认shell

我发现我的ldap用户的默认shell是ksh 很不好用

[guanzwan@stbm000019-vm15:/home/guanzwan]$ whoami
guanzwan
[guanzwan@stbm000019-vm15:/home/guanzwan]$ echo $SHELL
/bin/ksh

我尝试在/etc/kshrc的最后一行添加了export PS1="[whoami@hostname:' P W D ′ ] PWD'] PWD] "
想设置ksh的命令提示符

但是发现当前目录好像是不起作用

[guanzwan@stbm000019-vm15:/home/guanzwan]$ cd /tmp
[guanzwan@stbm000019-vm15:/home/guanzwan]$ pwd
/tmp

我更改目录后命令提示符上的目录没有发生更改

所以我就想更改这个ldap用户在我的local node上的默认shell 为/bin/bash

具体步骤如下

[root@stbm000019-vm15 ~]# getent passwd guanzwan
guanzwan:*:517239:8500:GUANZHOU.WANG@ORACLE.COM,SHELL WAS /bin/csh:/home/guanzwan:/bin/ksh

使用getent命令获取当前系统为这个ldap用户分配的用户id

然后根据这个信息在/etc/passwd里面做出相应修改
/etc/passwd
guanzwan:*:517239:8500:GUANZHOU.WANG@ORACLE.COM:/home/guanzwan:/bin/bash

这里有两个点需要注意
一个是因为这个事ldap用户 第二列设置密码的地方不能用x这个字符 要使用*这个字符
用小写x会导致ldap用户无法正常登录
小写x是用于local的用户

另外一个就是user id 第三列这里要使用一个不和别的用户冲突的number
###################################
How do I change my default shell on a domain account

If you don’t want to copy and paste, you can use: getent passwd id -un | sudo tee -a /etc/passwd. Not sure if it works in all shells but at least bash and tcsh are ok. –
Tom Saleeba
Feb 21, 2018

相关文章:

  • 从前端到前端框架
  • 专题二 - 滑动窗口 - leetcode 76. 最小覆盖子串 | 困难难度
  • Node.js入门基础—day01
  • Notepad++从文件夹查找文本内容
  • Vue2 + node.js项目
  • Apache Paimon 的 CDC Ingestion 概述
  • linux 安装gradle7.4.2环境
  • apache commons-dbcp Apache Commons DBCP 软件实现数据库连接池 commons-dbcp2
  • chatGPT的耳朵!OpenAI的开源语音识别AI:Whisper !
  • spring 面试题
  • 第三章 OpenGL ES 基础-基础-GLSL渲染纹理
  • 安卓通过termux部署ChatGLM
  • github(不是git啊)操作记录(踩坑)
  • Linux 自动检测进程是否存活,如果挂掉自动拉起
  • Nodejs 第五十四章(net)
  • linux常用命令2
  • C语言游戏实战(4):人生重开模拟器
  • C++特性之一:继承
  • 【Docker】Neo4j 容器化部署
  • C++:vector类
  • 世界期待中美对话合作带来更多确定性和稳定性
  • 影子调查丨三名“淘金客”殒命雪峰山:千余废弃金矿洞的监管难题
  • 均价19.5万元/平米!上海徐汇滨江地王项目“日光”,销售额近70亿元
  • 河南省平顶山市副市长许红兵主动投案,接受审查调查
  • 上交现场配乐4K修复版《神女》:默片巅峰有了新的打开方式
  • 体坛联播|双杀阿森纳,巴黎晋级欧冠决赛对阵国际米兰