archlinux在命令行模式下开机自动登陆
2015-12-19 21:43
579 查看
$sudo mkdir /etc/systemd/system/getty@tty1.service.d 新建一个目录
用命令在新目录下建立一个autologin.conf文件,并加入如下内容:
$sudo nano /etc/systemd/system/getty@tty1.service.d/autologin.conf
并加入如下内容:
[Service]ExecStart=ExecStart=-/usr/bin/agetty --autologin archie --noclear %I 38400 linux
archie就是要自动登陆的用户名。
###开机自动执行一条命令
在文件夹/usr/lib/systemd/system/里面新建一个文件example.service
内容为:
[Unit]
Description=example
[Service]
Type=oneshot
ExecStart=/path/to/scriptfile/example.sh
[Install]
WantedBy=multi-user.target
然后设置此服务开机启动
sudo systemctl enable example.service
此方法的好处是:
有以后需要修改命令或者添加什么命令只用修改/path/to/scriptfile/example.sh就可以
然后自动执行程序,我用的是上面英文资料中的方法。先新建了一个文件 .bash_profile,放在(/root);;;;/home/bananapi下,然后把命令放进去,就是
/home/bananapi/scripts/retroarch_framebuffer_start.sh
注意要设定自动登录的身份是BananaPi,然后reboot,就可以看到开机先自动登录,然后就自动执行上面那句命令了。
有一些教程说,应该把命令添加到文件/home/bananapi/bashrc下(这里的.bashrc是隐藏文件,要用ls -a
才能看到,其实新建的 .bash_profile也是隐藏文件,也是要用ls -a 才能看到),但是我尝试了把命令添加到bashrc里,实际上是不行的。后来请教ryad,才知道问题在于:.bashrc是用于交互式不需要登录的执行脚本,而 .bash_profile是登录进去之后的执行脚本,因为我们已经登录进去了,所以要执行.bash_profile文件。
最终,还是要把命令写入到 .bash_profile,并以bananapi身份登录,才能开机自动执行命令,打开应用。
[Unit]
Description=xiyoulibapi
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/node.js/pid
ExecStart=/usr/local/bin/forever start /node.js/xiyoulib/bin/www
ExecReload=/usr/local/bin/forever restart /node.js/xiyoulib/bin/www
ExecStop=/usr/local/bin/forever stop /node.js/xiyoulib/bin/www
PrivateTmp=true
[Install]
WantedBy=multi-user.target
用命令在新目录下建立一个autologin.conf文件,并加入如下内容:
$sudo nano /etc/systemd/system/getty@tty1.service.d/autologin.conf
并加入如下内容:
[Service]ExecStart=ExecStart=-/usr/bin/agetty --autologin archie --noclear %I 38400 linux
archie就是要自动登陆的用户名。
###开机自动执行一条命令
在文件夹/usr/lib/systemd/system/里面新建一个文件example.service
内容为:
[Unit]
Description=example
[Service]
Type=oneshot
ExecStart=/path/to/scriptfile/example.sh
[Install]
WantedBy=multi-user.target
然后设置此服务开机启动
sudo systemctl enable example.service
此方法的好处是:
有以后需要修改命令或者添加什么命令只用修改/path/to/scriptfile/example.sh就可以
然后自动执行程序,我用的是上面英文资料中的方法。先新建了一个文件 .bash_profile,放在(/root);;;;/home/bananapi下,然后把命令放进去,就是
/home/bananapi/scripts/retroarch_framebuffer_start.sh
注意要设定自动登录的身份是BananaPi,然后reboot,就可以看到开机先自动登录,然后就自动执行上面那句命令了。
有一些教程说,应该把命令添加到文件/home/bananapi/bashrc下(这里的.bashrc是隐藏文件,要用ls -a
才能看到,其实新建的 .bash_profile也是隐藏文件,也是要用ls -a 才能看到),但是我尝试了把命令添加到bashrc里,实际上是不行的。后来请教ryad,才知道问题在于:.bashrc是用于交互式不需要登录的执行脚本,而 .bash_profile是登录进去之后的执行脚本,因为我们已经登录进去了,所以要执行.bash_profile文件。
最终,还是要把命令写入到 .bash_profile,并以bananapi身份登录,才能开机自动执行命令,打开应用。
[Unit]
Description=xiyoulibapi
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/node.js/pid
ExecStart=/usr/local/bin/forever start /node.js/xiyoulib/bin/www
ExecReload=/usr/local/bin/forever restart /node.js/xiyoulib/bin/www
ExecStop=/usr/local/bin/forever stop /node.js/xiyoulib/bin/www
PrivateTmp=true
[Install]
WantedBy=multi-user.target
相关文章推荐
- LINUX执行 .run文件
- Linux 使用 NTP 时钟同步
- Linux下Hadoop集群的搭建(1)—重新编译Hadoop
- Linux系统更改网卡名称
- archlinux开启telnet服务 .
- GitHub发布桌面版但不包括Linux
- CentOS装机常用命令
- arm-linux-ld: ERROR: Source object init.o has EABI version 0, but target lcd_elf has EABI version 5
- Centos7 JDK8安装配置
- Centos7 PostgreSQL安装
- linux 64位汇编之hello world
- linux下安装hadoop以及myeclipse连接的配置
- linux开机启动程序
- Linux用户及用户组设置
- Linux 文件 & 目录
- 学习笔记之Vmware中linux的安装(下)linux安装及配置
- centos误删除文件如何恢复
- Linux 安装之U盘引导
- 在linux中安装mysql时遇到的问题
- CentOS6环境下部署Percona XtraDB Cluster