扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
linux启动app命令:做 Linux 嵌入式开发,经常会遇到要设置自己的应用程序在系统开机的时候自动启动,并且一般情况我们不想安装一些额外的软件去实现此种需求。那么直接根据当前系统自带的默认的一些工具实现用户软件的开机自启动。
公司主营业务:成都网站制作、成都做网站、外贸营销网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联推出八公山免费做网站回馈大家。
本次测验的系统环境为 Ubuntu 16.04 LTS,测试内容均得到正确的验证,如果其他环境出现不一致的现象,请查阅相关的差异。
比如先要实现下面的应用程序的开机自启动(实现的代码最下面给出,有需要的可以查看):
1. 应用程序的名称:app.bin
2. 应用程序的保存路径:/home/ubuntu/app/ 下
3. 应用程序的工作路径:/home/ubuntu/app/ 下
用户想要在linux开机的时候自启动相关的程序。那我们要怎么设置呢?下面由我为大家整理了linux下开机自启动命令的相关知识,希望对大家有所帮助!
linux下开机自启动命令
1.开机启动时自动运行程序
Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或 /etc/rc.d 或 /etc/rc?.d 目录下的脚本文件,可以使init自动启动其它程序。
例如:编辑 /etc/rc.d/rc.local 文件,在文件最末加上一行"xinit"或"startx",可以在开机启动后直接进入X-Window。
扩展:其他情况下linux自启动程序命令
2.登录时自动运行程序
用户登录时,bash首先自动执行系统管理员建立的全局登录script :/etc/profile。然后bash在用户起始目录下按顺序查找三个特殊文件中的一个:/.bash_profile、/.bash_login、 /.profile,但只执行最先找到的一个。
因此,只需根据实际需要在上述文件中加入命令就可以实现用户登录时自动运行某些程序(类似于DOS下的Autoexec.bat)。
3.退出登录时自动运行程序
退出登录时,bash自动执行个人的退出登录脚本/.bash_logout。例如,在/.bash_logout中加入命令"tar -cvzf c.source.tgz *.c",则在每次退出登录时自动执行 "tar" 命令备份 *.c 文件。
4.定期自动运行程序
linux有一个称为crond的守护程序,主要功能是周期性地检查 /var/spool/cron目录下的一组命令文件的内容,并在设定的时间执行这些文件中的命令。用户可以通过crontab 命令来建立、修改、删除这些命令文件。
例如,建立文件crondFile,内容为"00 9 23 Jan * HappyBirthday",运行"crontab cronFile"命令后,每当元月23日上午9:00系统自动执行"HappyBirthday"的程序("*"表示不管当天是星期几)。 (/etc/crontab中配置命令即可)也可以
5.定时自动运行程序一次
定时执行命令at 与crond 类似(但它只执行一次):命令在给定的时间执行,但不自动重复。at命令的一般格式为:at [ -f file ] time ,在指定的时间执行file文件中所给出的所有命令。也可直接从键盘输入命令:
6.创建开机自启动脚本
1) 将你的启动脚本复制到 /etc/init.d目录下
以下假设你的脚本文件名为 test。
2) 设置脚本文件的权限
$ sudo chmod 755 /etc/init.d/test
3) 执行如下命令将脚本放到启动脚本中去:
$ cd /etc/init.d
$ sudo update-rc.d test defaults 95
注:其中数字95是脚本启动的顺序号,按照自己的需要相应修改即可。在你有多个启动脚本,而它们之间又有先后启动的依赖关系时你就知道这个数字的具体作用了。该命令的输出信息参考如下:
update-rc.d: warning: /etc/init.d/test missing LSB informationupdate-rc.d: see
卸载启动脚本的方法:
$ cd /etc/init.d
$ sudo update-rc.d -f test remove
命令输出的信息参考如下:
Removing any system startup links for /etc/init.d/test … /etc/rc0.d/K95test /etc/rc1.d/K95test /etc/rc2.d/S95test /etc/rc3.d/S95test /etc/rc4.d/S95test /etc/rc5.d/S95test /etc/rc6.d/K95test
Linux技术的发展引起了很多企业和个人的关注。市场对Linux运维的需求逐渐增加,学习Linux技术的人越来越多。在Linux运维中,进程是必须学习掌握的技能。那么Linux中如何启动进程?常用的进程调度命令有哪些?
执行中的程序称作进程。当程序的可执行文件存储在存储器中并运行时,每个进程将被动态分配系统资源、内存、安全属性和相关状态。多个进程可以与同一个程序相关联,并在同一时间执行,而不会相互干扰。操作系统将有效地管理和跟踪所有正在运行的进程。
Linux中如何启动进程?启动进程的方法是什么?
手工启动。用户在输入端发出命令,直接启动进程。分为前台启动和后台启动。前台启动:直接在SHELL中输入命令进行启动。后台启动:启动一个目前并不紧急的进程。
调度启动。系统管理员根据系统资源和进程占用资源的情况,事先进行调度安排,指定任务运行的时间和场合,到时候系统会自动完成该任务。
常用的进程调度命令有哪些?
常用的进程调度命令有:at、batch、crontab。
以上便是关于“如何启动或终止进程?常用的进程调度命令有哪些?”的相关介绍。想要成为一名优秀的Linux运维工程师,需要掌握更多的Linux知识。
linux启动进程的命令可以用sh,python ,./文件名。
下面是有关进程的操作:
1.查进程
ps命令查找与进程相关的PID号:
ps a 显示现行终端机下的所有程序,包括其他用户的程序。
ps -A 显示所有程序。
ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。
ps -e 此参数的效果和指定"A"参数相同。
ps e 列出程序时,显示每个程序所使用的环境变量。
ps f 用ASCII字符显示树状结构,表达程序间的相互关系。
ps -H 显示树状结构,表示程序间的相互关系。
ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。
ps s 采用程序信号的格式显示程序状况。
ps S 列出程序时,包括已中断的子程序资料。
ps -t终端机编号 指定终端机编号,并列出属于该终端机的程序的状况。
ps u 以用户为主的格式来显示程序状况。
ps x 显示所有程序,不以终端机来区分。
最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。
ps aux | grep program_filter_word,ps -ef |grep tomcat
ps -ef|grep java|grep -v grep 显示出所有的java进程,去处掉当前的grep进程。
2.杀进程
使用kill命令结束进程:kill xxx
常用:kill -9 324
Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall -9 NAME
1. 更改档案拥有者
命令 : chown [-cfhvR] [--help] [--version] user[:group] file...
功能 : 更改文件或者文件夹的拥有者
参数格式 :
user : 新的档案拥有者的使用者 IDgroup : 新的档案拥有者的使用者群体(group)
-c : 若该档案拥有者确实已经更改,才显示其更改动作
-f : 若该档案拥有者无法被更改也不要显示错误讯息
-h : 只对于连结(link)进行变更,而非该 link 真正指向的档案
-v : 显示拥有者变更的详细资料
-R : 对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)
例如:chown -R oracle:oinstall /oracle/u01/app/oracle
更改目录拥有者为oracle
2. 修改权限
命令:chmod (change mode)
功能:改变文件的读写和执行权限。有符号法和八进制数字法。
选项:(1)符号法:
命令格式:chmod {u|g|o|a}{+|-|=}{r|w|x} filename
u (user) 表示用户本人。
g (group) 表示同组用户。
o (oher) 表示其他用户。
a (all) 表示所有用户。
+ 用于给予指定用户的许可权限。
- 用于取消指定用户的许可权限。
= 将所许可的权限赋给文件。
r (read) 读许可,表示可以拷贝该文件或目录的内容。
w (write) 写许可,表示可以修改该文件或目录的内容。
x (execute)执行许可,表示可以执行该文件或进入目录。
(2)八进制数字法:
命令格式:chmod abc file
其中a,b,c各为一个八进制数字,分别表示User、Group、及Other的权限。
4 (100) 表示可读。
2 (010) 表示可写。
1 (001) 表示可执行。
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=5。
例如:# chmod a+rx filename
让所有用户可以读和执行文件filename。
# chmod go-rx filename
取消同组和其他用户的读和执行文件filename的权限。
# chmod 741 filename
让本人可读写执行、同组用户可读、其他用户可执行文件filename。
# chmod -R 755 /home/oracle
递归更改目录权限,本人可读写执行、同组用户可读可执行、其他用户可读可执行
3. 修改文件日期
命令:touch
格式:touch filenae
功能:改变文件的日期,不对文件的内容做改动,若文件不存在则建立新文件。
例如:% touch file
4. 链接文件
命令:ln (link)
格式:ln [option] filename linkname
ln [option] directory pathname
功能:为文件或目录建立一个链。其中,filename和directory是源文件名和
源目录名;linkname和pathname分别表示与源文件或源目录名相链接的
文件或目录。
选项:-s 为文件或目录建立符号链接。不加-s表示为文件或目录建立硬链接
注释:链接的目地在于,对一个文件或目录赋予两个以上的名字,使其可以出
现在不同的目录中,既可以使文件或目录共享,又可以节省磁盘空间。
例如:% ln -s filename linkname
5. 显示日期
命令:date
例如:% date
6. 显示日历
命令:cal (calendar)
格式:cal [month] year
功能:显示某年内指定的日历
例如:% cal 1998
7. 显示文件头部
命令:head
格式:head [option] filename
功能:显示文件的头部
选项:缺省 显示文件的头10行。
-i 显示文件的开始 i行。
例如:% head filename
8. 显示文件尾部
命令:tail
格式:tail [option] filename
功能:显示文件的尾部
选项:缺省 显示文件的末10行。
-i 显示文件最后 i行。
+i 从文件的第i行开始显示。
例如:% tail filename
9. 显示用户标识
命令:id
格式:id [option] [user]
功能:显示用户标识及用户所属的所有组。
选项:-a 显示用户名、用户标识及用户所属的所有组
注释:
例如:% id username
10. 查看当前登录的用户
命令:users
11. 显示都谁登录到机器上
命令:who
格式:who
功能:显示当前正在系统中的所有用户名字,使用终端设备号,注册时间。
例如:% who
12. 显示当前终端上的用户名
命令:whoami
格式:whoami
功能:显示出当前终端上使用的用户。
例如:% whoami
13. 寻找文件
命令:find
格式:find pathname [option] expression
功能:在所给的路经名下寻找符合表达式相匹配的文件。
选项:-name 表示文件名
-user 用户名,选取该用户所属的文件
-size 按大小查找,以block为单位,一个block是512B
-mtime n 按最后一次修改时间查找,选取n天内被修改的文件
-perm 按权限查找
-type 按文件类型查找
-atime 按最后一次访问时间查找
例如:% find ./ -name '*abc*' -print
14. 搜索文件中匹配符
命令:grep
格式:grep [option] pattern filenames
功能:逐行搜索所指定的文件或标准输入,并显示匹配模式的每一行。
选项:-i 匹配时忽略大小写
-v 找出模式失配的行
例如:% grep -i 'java*' ./test/run.sh
15. 统计文件字数
命令:wc [option] filename
功能:统计文件中的文件行数、字数和字符数。
选项:-l 统计文件的行数
-w 统计文件的单词数
-c 统计文件的字符数
注释:若缺省文件名则指标准输入
例如:% wc -c ./test/run.sh
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流