免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1988 | 回复: 9
打印 上一主题 下一主题

[系统管理] 怎么让linux自动以特定用户比如abc启动? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-01-15 12:12 |只看该作者 |倒序浏览
怎么让linux自动以特定用户比如abc启动?并且待系统启动完毕自动运行123.sh
现在本人每天的一项工作就是定时开机,运行那个脚本,下班在关机,非常不智能化,
请原谅我是一个linux菜菜,
但是基本命令还是会用的
在网上搜了一下相关的,跟我这个系统的情况有些不一样,如下几点,不敢乱改啊,系统挂了就死定了
前提条件:
1.系统是红帽子企业版6.5,有root用户和密码,但不能改root
2.最好不要装新的包,公司不允许,而且楼主这么干是偷偷摸摸的。。。
3.没有什么tty1,tty2,只有一个tty.config
4.在inittabl里面也没有什么1:2345..........tty1
以下是图



论坛徽章:
41
操作系统版块每日发帖之星
日期:2016-08-21 06:20:00每日论坛发贴之星
日期:2016-05-05 06:20:00操作系统版块每日发帖之星
日期:2016-05-05 06:20:00IT运维版块每日发帖之星
日期:2016-05-05 06:20:0015-16赛季CBA联赛之山西
日期:2016-04-27 08:49:00操作系统版块每日发帖之星
日期:2016-04-25 06:20:00操作系统版块每日发帖之星
日期:2016-04-17 06:23:2815-16赛季CBA联赛之吉林
日期:2016-03-25 15:46:3415-16赛季CBA联赛之四川
日期:2016-03-25 14:26:19操作系统版块每日发帖之星
日期:2016-05-27 06:20:00操作系统版块每日发帖之星
日期:2016-05-28 06:20:00IT运维版块每日发帖之星
日期:2016-08-18 06:20:00
2 [报告]
发表于 2016-01-15 13:40 |只看该作者
rc.local

crontab

论坛徽章:
381
CU十二周年纪念徽章
日期:2014-01-04 22:46:58CU大牛徽章
日期:2013-03-13 15:32:35CU大牛徽章
日期:2013-03-13 15:38:15CU大牛徽章
日期:2013-03-13 15:38:52CU大牛徽章
日期:2013-03-14 14:08:55CU大牛徽章
日期:2013-04-17 11:17:19CU大牛徽章
日期:2013-04-17 11:17:32CU大牛徽章
日期:2013-04-17 11:17:37CU大牛徽章
日期:2013-04-17 11:17:42CU大牛徽章
日期:2013-04-17 11:17:47CU大牛徽章
日期:2013-04-17 11:17:52CU大牛徽章
日期:2013-04-17 11:17:56
3 [报告]
发表于 2016-01-15 14:27 |只看该作者
本帖最后由 chenyx 于 2016-01-15 14:28 编辑

root用户登陆,修改rc.local,最后添加一行,
su - abc -c /path/123.sh
试试,用123的绝对路径替换path

求职 : Linux运维
论坛徽章:
203
拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:182015年亚洲杯之约旦
日期:2015-04-05 20:08:292015年亚洲杯之澳大利亚
日期:2015-04-09 09:25:552015年亚洲杯之约旦
日期:2015-04-10 17:34:102015年亚洲杯之巴勒斯坦
日期:2015-04-10 17:35:342015年亚洲杯之日本
日期:2015-04-16 16:28:552015年亚洲杯纪念徽章
日期:2015-04-27 23:29:17操作系统版块每日发帖之星
日期:2015-06-06 22:20:00操作系统版块每日发帖之星
日期:2015-06-09 22:20:00
4 [报告]
发表于 2016-01-15 17:40 |只看该作者
怎么让linux自动以特定用户比如abc启动?并且待系统启动完毕自动运行123.sh
su - abc -c 也可以
在abc的家目录里,的 .bash_profile 里加/path/123.sh也可以

如果关机推出也要执行的话

在abc的家目录里,的.bash_logout  里加

论坛徽章:
0
5 [报告]
发表于 2016-01-15 21:50 |只看该作者
su 貌似是以abc的身份运行脚本,而不是真正的以ABC登录?好像不登录的话,123.sh里面有一些依赖程序无法运行
chenyx 发表于 2016-01-15 14:27
root用户登陆,修改rc.local,最后添加一行,
su - abc -c /path/123.sh
试试,用123的绝对路径替换path

论坛徽章:
3
IT运维版块每日发帖之星
日期:2015-12-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-19 06:20:00每日论坛发贴之星
日期:2016-01-19 06:20:00
6 [报告]
发表于 2016-01-16 15:07 |只看该作者

论坛徽章:
0
7 [报告]
发表于 2016-01-22 09:24 |只看该作者
su - abc 不行,会报错,应该是某些服务没有开启来,但是具体是哪些服务,不得而知。。。。所以只有以最笨的方法模拟登录回复 4# lyhabc


   

求职 : Linux运维
论坛徽章:
203
拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:182015年亚洲杯之约旦
日期:2015-04-05 20:08:292015年亚洲杯之澳大利亚
日期:2015-04-09 09:25:552015年亚洲杯之约旦
日期:2015-04-10 17:34:102015年亚洲杯之巴勒斯坦
日期:2015-04-10 17:35:342015年亚洲杯之日本
日期:2015-04-16 16:28:552015年亚洲杯纪念徽章
日期:2015-04-27 23:29:17操作系统版块每日发帖之星
日期:2015-06-06 22:20:00操作系统版块每日发帖之星
日期:2015-06-09 22:20:00
8 [报告]
发表于 2016-01-22 10:37 |只看该作者
本帖最后由 lyhabc 于 2016-01-22 10:53 编辑

@twtyypmb

再看一次你的需求:
怎么让linux自动以特定用户比如abc启动?并且待系统启动完毕自动运行123.sh
其实楼主你的表达有问题,
以abc启动肯定 不行的,你需要了解启动流程,最后启动mingetty,加载6个tty和1个图形终端
终端都还未加载,shell也未启动,怎么运行123.sh
你的目的是进入abc用户的shell并运行123.sh

应该将123.sh放到/etc/bashrc文件
例如下面的
echo "alias  grep='grep --color'"  >>/etc/bashrc

如果放到/etc/rc.local就不生效,为什么呢? shell还未启动啊,哥

不是什么狗屎垃圾都可以放进/etc/rc.local里的
一般是是服务启动,环境变量,挂载磁盘才放到/etc/rc.local,当然也可以放到/etc/profile里
export PATH=$PATH:/usr/local/mysql/bin



/etc/profile、/etc/bashrc、~/.bash_profile、~/.bashrc很容易混淆,他们之间有什么区别?它们的作用到底是什么?
/etc/profile: 用来设置系统环境参数,比如$PATH. 这里面的环境变量是对系统内所有用户生效的。
/etc/bashrc:  这个文件设置系统bash shell相关的东西,对系统内所有用户生效。只要用户运行bash命令,那么这里面的东西就在起作用。
~/.bash_profile: 用来设置一些环境变量,功能和/etc/profile 类似,但是这个是针对用户来设定的,也就是说,你在/home/user1/.bash_profile 中设定了环境变量,那么这个环境变量只针对 user1 这个用户生效.
~/.bashrc: 作用类似于/etc/bashrc, 只是针对用户自己而言,不对其他用户生效。

另外/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承/etc/profile中的变量,他们是"父子"关系.
~/.bash_profile 是交互式、login 方式进入 bash 运行的,意思是只有用户登录时才会生效。
~/.bashrc 是交互式 non-login 方式进入 bash 运行的(例如用rsync的ssh方式),用户不一定登录,只要以该用户身份运行命令行就会读取该文件。

求职 : Linux运维
论坛徽章:
203
拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:182015年亚洲杯之约旦
日期:2015-04-05 20:08:292015年亚洲杯之澳大利亚
日期:2015-04-09 09:25:552015年亚洲杯之约旦
日期:2015-04-10 17:34:102015年亚洲杯之巴勒斯坦
日期:2015-04-10 17:35:342015年亚洲杯之日本
日期:2015-04-16 16:28:552015年亚洲杯纪念徽章
日期:2015-04-27 23:29:17操作系统版块每日发帖之星
日期:2015-06-06 22:20:00操作系统版块每日发帖之星
日期:2015-06-09 22:20:00
9 [报告]
发表于 2016-01-22 10:52 |只看该作者
/etc/profile PATH, USER, LOGNAME, MAIL, INPUTRC, HOSTNAME, HISTSIZE, umask等 ,/etc/profile 包含了/etc/bashrc ,尽量将变量的设置放在/etc/profile里
/etc/bashrc $PS1([root@VM~]#)  umask 以后如果设置umask修改放 /etc/profile 不要改这个/etc/bashrc文件
~/.bash_profile 用户自己的环境变量,用户登录的时候执行,tty1,ssh,su -
~/.bashrc 当用户登录以后每次打开新的shell(子shell)时,或者执行bash , 执行该文件
.bash_history 记录命令历史用的
.bash_logout :当退出shell时,会执行该文件。

可以放在abc用户家目录下的.bash_profile

求职 : Linux运维
论坛徽章:
203
拜羊年徽章
日期:2015-03-03 16:15:432015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:57:092015小元宵徽章
日期:2015-03-06 15:58:182015年亚洲杯之约旦
日期:2015-04-05 20:08:292015年亚洲杯之澳大利亚
日期:2015-04-09 09:25:552015年亚洲杯之约旦
日期:2015-04-10 17:34:102015年亚洲杯之巴勒斯坦
日期:2015-04-10 17:35:342015年亚洲杯之日本
日期:2015-04-16 16:28:552015年亚洲杯纪念徽章
日期:2015-04-27 23:29:17操作系统版块每日发帖之星
日期:2015-06-06 22:20:00操作系统版块每日发帖之星
日期:2015-06-09 22:20:00
10 [报告]
发表于 2016-01-22 10:54 |只看该作者
Linux的shell的知识比较复杂,一定要理清楚
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP