linux设置开机启动程序?
/etc/rc.d/init.d 是 /etc/init.d的目标链接.
如果/etc/rc.d下面没有 rc.local脚本文件, 则需要 手动创建:
而 /etc/bashrc 是在登陆bash gnome-terminal 的时候才自动执行的程序???
但是, 好像/etc/bashrc 也是在登陆图形界面的时候, 就执行的, 并不是 在启动 gnome-terminal才执行的?
所以, 在/etc/bashrc中设置开机启动 firefox, gnome-terminal的时候, 好像出现了 死循环 而使机器卡死了.
!!!!!!
当图形界面因为配置错误, 而出现gui界面不能登陆的故障时, 面临系统损坏, 可能要重新装机的时候,
要修改 开机菜单项, 按"e", 然后, 在启动核心中修改: 加上: init 3 使系统启动到命令行.
因为linux的gui跟内核是分开的, gnome只是kernel的一个附加程序, 不像windows 的gui是包含在kerne中的.
所以, linux可以不运行gui, 直接启动到 cmd line. 然后修改gui的设置, 正确后, 再启动startx.
!!! 这样就不要去盲目的重装系统了, 从这一点来看, linux是不是比windows要健壮一些.
========================================================
fedora如何切换用户, 如从root->foo, 或者从foo-> root?
注意, 这里的切换, 不是指在bash终端中, 用su命令swith user, 而是指从 命令行界面到图形界面 开始时就登陆的账户:
首先, fedora core23 没有像windows那样的开始菜单中切换用户, 而是, 要重新开一个 "虚拟终端" tty, 从 新的tty开始登录, 如ctrl+alt+f3-f6, 创建新的tty, 然后用要切换 的另外的账户登录, 登录后, 再用startx, 或xinit命令切换到gui界面.
========================================================
!后要不要加空格?
据说bsd4.2的一些派生版本把 "#! /"当作magic number而不是现有系统中把"#!"当作magic number,所以很多脚本都保留了有空格的写法,当然现在已经不需要了
就是说, #! 跟/ 之间的空格可要可不要. 没有关系的
=================================================================
参考这篇文章, 设置成功: http://www.cnblogs.com/kekukele/p/4593873.html
虽然自己手动添加了 rc.local, 添加了需要开机启动的程序, 但是并没有实现,
是 因为从fedora22 就开始 用 systemd 来取代了 initscripts.
在 /usr/lib/systemd/system/中, 有rc-local.service 服务, systemd就是考rc-local.service来管理开机启动自定义程序的:
所以要通过: systemctl enable rc-local.service 来启动.
因此, 要添加 [Install]section,
然后用 systemctl enable rc-local.service 来启动.
查看rc-local的状态:
但是, 为什么仍然没有 启动起来呢?
参考这篇文章, 说, 是系统提供的 rc-local.service服务脚本有问题:
http://blog.chinaunix.net/uid-16361381-id-3723766.html
创建文件, 一般用 touch , 而修改文件的内容, 用vi, sed等.
创建的rclocal.service将会从 /usr/lib/systemd/system/rclocl.service(不是rc-local.service), 到/etc/systemd/system/multi-user.target.wants/rclocal.service
=================================================
vendor: n. 小贩; 销售商; 卖方.
To be a vendor(do business)练摊
The vendor signs a contract with the purchaser.卖方须与买方签订契约。
**how to write /etc/rc.d/rc.local? **
!/bin/bash
. /usr/bin/firefox
== As the above contents show, an error "no display specified" is reported.
what results in the error?
because you do not yet specify the variable \(DISPLAY when you want to launch a X display program such as Firefox.
so, the variable "\)DISPLY" is needed to defined in rc.local script.
how to know the value of $DISPLAY? Run the program "gnome-terminal", and type command "echo $DISPLAY". Ordinary,
the value of $DISPLAY is "localhost.localdomain:0.0" as the following figures show:
==== the other notation is that the char "&" should be appended to the end of the command lines.
command line looks like this: ". /usr/bin/firefox &"
After the above two issues have been resolved, try to start rc-local.service. Then the command "systemctl start rc-local.service" is completed successfully.
there is a colorful little dot at the beginning of the service stauts line. if the dot is red, it indicates that the service running status is faulty. By contrast, green dot indicates that the service is working well.
============================================================
linux is a multi-user operating system indeed!
可以在工作期间, 用多个用户通过不同的tty登录, 而不像windows需要在不同的用户间 切换.
不需要切换, 1个用户, 可以单独的 独立的 互不影响的各自登录杂 各自的tty.
原来tty就是为了多个用户 各自登录在不同的 各不影响的终端的
而且各自的tty都可以登录到 cmd界面和 然后到gui界面