linux系统

Linux基础命令---忽略挂起信号nohup

久未见 提交于 2020-04-04 09:23:19
nohup nohup可以使程序能够忽略挂起信号,继续运行。用户退出时会挂载,而nohup可以保证用户退出后程序继续运行。如果标准输入是终端,请将其从/dev/null重定向。如果标准输出是终端,则将输出附加到“nohup.out”(如果可能的话),否则追加到“$home/nohup.out”。如果标准错误是终端,请将其重定向到标准输出。若要将输出保存到文件中,请使用“nohup COMMAND > FILE”。 此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。 1 、语法 nohup cmd 2 、选项列表 选项 说明 --help 显示帮助文档 --version 显示命令版本 3 、实例 以nohup形式运行find指令 [root@localhost ~]# nohup find /weijie/ -name *.c // 运行 find nohup: 忽略输入并把输出追加到 "nohup.out" // 结果会保存到 nohup.out 文件中 [root@localhost ~]# cat nohup.out // 查看结果 /weijie/11.c /weijie/4.c /weijie/2.c /weijie/3.c /weijie/5.c /weijie/1.c 来源: https://www

linux Nginx部署

断了今生、忘了曾经 提交于 2020-04-04 09:22:35
一. Nginx的部署 tips:此文档适用于linux centos6或者centos7 1. Nginx介绍 Nginx(“engine x”)是⼀款是由俄罗斯的程序设计师Igor Sysoev所开发⾼性能的 Web和 反向代理 服务器,也是⼀个 IMAP/POP3/SMTP 代理服务器。 轻量级的web服务器 延伸版本tengine(淘宝)、openresrt(章亦春)等 http://nginx.org 官⽹ http://www.nginx.cn/doc/index.html 中⽂⽂档 2. 安装依赖工具 [root@localhost ~]# yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 3. 安装PCRE # PCRE 作用是让 Nginx 支持 Rewrite 功能。 [root@localhost ~]# cd /usr/local/src/ [root@localhost src]# wget http://downloads.sourceforge.net/project/pcre/pcre/8.35/pcre-8.35.tar.gz [root@localhost src]# tar zxvf pcre-8.35.tar.gz [root@localhost

linux 用户和组

北战南征 提交于 2020-04-04 08:47:12
在linux中每一个用户都有唯一的uid,linux内核根据uid区分不同的用户,同样每一个用户组,也有唯一的gid,一个组下可以存在多个账户, 如果给group添加上了权限A,那么属于这个组的全部用户都拥有这个权限, 每一个用户都可以加入多个组,但是肯定有一个是它的主要组 与用户和账户相关的文件 /etc/passwd 查看文件内容如下: [root@ecs-t6-large-2-linux-20190824103606 ~]# cat /etc/passwd root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin ... tcpdump:x:72:72::/:/sbin/nologin dockerroot:x:997:994:Docker User:/var/lib/docker:/sbin/nologin 每行都有七个字段: 字段1: 用户账户名 字段2: 密码的占位符 字段3: UID 字段4: GID 字段5: 用户名全称 字段6: 宿主目录 字段7: 登录shell /etc/passwd 的第二个字段, 是两个!! , 表示账号被禁用 用户的用户是系统用户, 一般系统用户的登录shell都是 /sbin

Linux父子进程同步

白昼怎懂夜的黑 提交于 2020-04-04 08:25:12
/* * 使用信号实现父子进程之间的同步 * * TELL_WAIT(): set things up for TELL_xxx & WAIT_xxx * TELL_PARENT(): tell parent we are done * WAIT_PARENT(): wait for parent * TELL_CHILD(): tell child we are done * WAIT_CHILD(): wait for child * * SIGUSR1: the signal parent sends to child * SIGUSR2: the signal child sends to parent */ # include < sys / types . h > # include < signal . h > # include < unistd . h > # include < stdio . h > static volatile sig_atomic_t sigflag ; static sigset_t newmask , oldmask , zeromask ; /* signal handler for SIGUSR1 and SIGUSR2 */ static void sig_usr ( int signo ) { sigflag = 1 ;

Linux 利用管道父子进程间传递数据

生来就可爱ヽ(ⅴ<●) 提交于 2020-04-04 08:24:44
[ 原文 ] fork()函数:用于创建子进程,子进程完全复制父进程的资源,相当于父进程的拷贝。具体理解,运用父进程的同一套代码,通过判断进程ID来执行不同进程的不同任务。 返回值正常为子进程ID,出错返回负值。 pipe()函数:用于创建管道,返回负值表示创建失败。 简单实例: 功能:父进程通过管道向子进程传递字符串,然后子进程向屏幕打印出所收到的字符串。 [objc] view plain copy <pre class = "objc" name= "code" >#include <stdio .h > #include <unistd.h> #include <sys/types.h> int main( void ) { int n,fd[ 2 ]; pid_t pid; char line[ 1 0 2 4 ]; if (pipe(fd) < 0 ) return 1 ; if ((pid=fork()) < 0 ) return 1 ; else if (pid > 0 ) //parent { close(fd[ 0 ]); //close parent's read-port write(fd[ 1 ], "I am from parent!\n" , 1 9 ); //write to pipe } else //child { close(fd[ 1 ]);

linux操作系统基础篇(五)

你。 提交于 2020-04-04 06:51:36
Linux网络以及rpm安装yum源的配置 1.Linux网络 1. 使用ifconfig命令来维护网络 1) fconfig命令的功能:显示所有正在启动的网卡的详细信息或设定系统中网卡的IP地址。 2) 用ifconfig命令设定网卡的IP地址: 例如:修改eth0网卡的IP地址为172.18.48.56和子网掩码255.255.255.128的命令: ifconfig eth0 172.18.48.56 netmask 255.255.255.128 2. 使用ifup和ifdown命令启动和停止网卡 1) ifup命令的功能:启动系统上指定的网卡。 2) ifdown命令的功能:停止系统上指定的网卡。 3) 使用ifup命令启用指定网卡的举例: 例如:启动eth0网卡的命令:ifup eth0 4) 使用ifdown命令停用指定网卡的举例: 只能作用于配置文件 例如:停用eth0网卡的命令:ifdown eth0 3. 网络配置文件 1) 网卡的配置文件存放在/etc/sysconfig/network-scripts目录中,且每个网卡对应的配置文件的文件名以ifcfg-开始,如eth0这个网卡对应的网络配置文件就是ifcfg-eth0。 补:虚拟机新添加网卡没有配置文件需手动添加配置或图形添加网卡 网络配置的定义:所谓的网络配置(设定)就是要修改网卡所对应的网络配置文件

linux文件转换成utf-8格式

独自空忆成欢 提交于 2020-04-04 06:46:01
查看文件编码 在vim 中可以直接查看文件编码 输入命令 :set fileencoding 即可显示文件编码格式。 文件编码转换 在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式 输入命令 :set fileencoding=utf-8 来源: https://www.cnblogs.com/wuyuanguo/p/11171689.html

Linux下文件名编码转换

家住魔仙堡 提交于 2020-04-04 06:37:47
因为现在用linux,原来在windows里的文件都是用GBK编码的。所以copy到linux下是乱码,例如从Windows向Linux上传字体时,遇到下面的乱码: 找到个可以转换文件名编码的命令,就是convmv。 convmv命令详细参数 例如: convmv -f GBK -t UTF-8 *.mp3 不过这个命令不会直正的转换,你可以看到转换前后的对比。如果要直正的转换要加上参数 --notest convmv -f GBK -t UTF-8 --notest *.mp3 -f 参数是指出转换前的编码,-t 是转换后的编码。这个千万不要弄错了。不然可能还是乱码哦。还有一个参数很有用。就是 -r 这个表示递归转换当前目录下的所有子目录。 来源: https://www.cnblogs.com/whist/p/8823767.html

Linux下文件名编码转换

烈酒焚心 提交于 2020-04-04 06:36:51
因为现在用linux,原来在windows里的文件都是用GBK编码的。所以copy到linux下是乱码,例如从Windows向Linux上传字体时,遇到下面的乱码: 找到个可以转换文件名编码的命令,就是convmv。 convmv命令详细参数 例如: convmv -f GBK -t UTF-8 *.mp3 不过这个命令不会直正的转换,你可以看到转换前后的对比。如果要直正的转换要加上参数 --notest convmv -f GBK -t UTF-8 --notest *.mp3 -f 参数是指出转换前的编码,-t 是转换后的编码。这个千万不要弄错了。不然可能还是乱码哦。还有一个参数很有用。就是 -r 这个表示递归转换当前目录下的所有子目录。 convmv -f GBK -t UTF-8 -r --nosmart --notest <目标目录> -f from -t to --nosmart 如果已经是utf-8 忽略 -r 包含所有子目录 --notest 不加表示只列出有什么需要转换的,不做实际转换 来源: https://www.cnblogs.com/c2013/p/10277565.html

Linux文件名编码转换

独自空忆成欢 提交于 2020-04-04 06:36:19
从Linux往 windows拷贝文件或者从windows往Linux拷贝文件,有时会出现中文文件名乱码的情况,出现这种问题的原因是因为,windows的文件名 中文编码默认为GBK,而Linux中默认文件名编码为UTF8,由于编码不一致,所以导致了文件名乱码的问题,解决这个问题需要对文件名进行转码。 在Linux中专门提供了一种工具进行文件名编码的转换,可以将文件名从GBK转换成UTF-8编码,或者从UTF-8转换到GBK。 服务器是centos,安装 convmv:yum -y install convmv。 下面看一下convmv的具体用法: convmv -f 源编码 -t 新编码 [选项] 文件名 常用参数: -r 递归处理子文件夹 -r 递归处理子文件夹 --notest 真正进行操作,请注意在默认情况下是不对文件进行真实操作的,而只是试验。 --list 显示所有支持的编码 --unescap 可以做一下转义,比如把%20变成空格 比如我们有一个utf8编码的文件名,转换成GBK编码,命令如下: convmv -f UTF-8 -t GBK --notest utf8编码的文件名 这样转换以后”utf8编码的文件名”会被转换成GBK编码(只是文件名编码的转换,文件内容不会发生变化) 下面的例子,将当前文件夹下的所有文件