前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Linux登陆的两种状态

Linux登陆的两种状态

作者头像
孙晨c
发布2020-07-07 18:32:54
1.5K0
发布2020-07-07 18:32:54
举报
文章被收录于专栏:无题~无题~无题~

登录脚本的执行顺序:【注:仅适用于 bash shell】

Login-Shell

是指登录时,需要提供用户名密码的shell,如:su – user1 , 图形登录, ctrl+alt+F2-6进入的登录界面。 这种Login shell 执行脚本的顺序: 1./etc/profile 【全局profile文件;它定义了LoginUser的 PATH, USER, LOGNAME(登录使用者帐号)】 2. /etc/profile.d/目录下的脚本 3. ~/.bash_profile 【搜索命令的路径 ——————- 登录级别 环境变量配置文件 】 4. ~/.bashrc 【存储用户设定的别名和函数 ———- shell级别 环境变量配置文件】 5. /etc/bashrc 【全局bashrc文件; 它主要定义一些 Function 和 Alias;更改/etc/bashrc会影响到所有用户,由root用户管理。】

Non-Login shell

登录终端后,使用ssh 登录 其他机器! 非登录shell指的是,不需要输入用户名密码的shell,如图形下 右键terminal,或ctrl+shift+T打开的shell 这种Non-Login shell 执行登录脚本的顺序: 1. ~/.bashrc 2. /etc/bashrc 3. /etc/profile.d/目录下的脚本

例如使用ssh远程登陆一台机器:

ssh 目标机器

登陆之后,执行某个命令 属于 Login-Shell,会自动读取/etc/profile文件中定义的所有变量

例如使用ssh远程登陆一台机器的同时并使用命令:

ssh 目标机器 命令

属于Non-Login-shell 不会读取/etc/profile文件,如果登陆的同时使用的命令需要用到这个文件里的变量则会出现"command not found"的错误 解决: 在目标机器的家目录下,编辑~/.bashrc文件,最后一行添加source /etc/profile

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-07-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 登录脚本的执行顺序:【注:仅适用于 bash shell】
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档