# Unix/Linux 的体系架构
# 守护进程
systemctl
systemctl status nginx
systemctl start nginx
ps aux | grep nginx
主进程要比工作进程小 id号
sudo ss -anp | grep :80
top 内存管理机制
ip ifconfig
# 进程、线程与协程
1、进程的目的就是担当分配系统资源(CPU时间、内存)的实体
2、线程是操作系统能够进行运算调度的最小单位
3、协程是一种用户态的轻量级线程
4、IO密集型应用的发展:多进程 -> 多线程 -> 事件驱动 -> 协程 (nginx、node)
5、CPU密集型应用的发展:多进程 -> 多线程
6、调度和切换的时间:进程 -> 线程 -> 协程
操作系统的设计,可以归结为三点:
1、以多进程形式,允许多个任务同时运行;
2、以多线程形式,允许单个任务分成不同的 部分运行;
3、提供协调机制,一方面防止进程之间和线 程之间产生冲突,另一方面允许进程之间和 线程之间共享资源。
# Linux免密远程登录
配置免密登陆的步骤
1、生成秘钥对
2、上传配置公钥
3、配置本地私钥
4、免密登陆功能的本地配置文件
# Linux免密远程登录
1、生成秘钥对
ssh-keygen -t rsa -C "你自己的名字" -f "你自己的名字_rsa"
2、上传配置公钥
上传公钥到服务器对应账号的home路径下的.ssh/中 ( ssh-copy-id -i "公钥文件名" 用户名@服务器ip或域名 ) 配置公钥文件访问权限为 600
(ssh-copy-id -i "id_rsa.pub" xianming@47.93.221.229) 路径/Users/wangxianming/.ssh
3、配置本地私钥 把第一步生成的私钥复制到你的home目录下的.ssh/ 路径下 配置你的私钥文件访问权限为 600
chmod 600 你的私钥文件名
4、免密登陆功能的本地配置文件 编辑自己home目录的.ssh/ 路径下的config文件 配置config文件的访问权限为 644
# 免密登陆配置模版
多主机配置
Host gateway-produce
HostName IP或绑定的域名
Port 22
Host node-produce
HostName IP或绑定的域名
Port 22
Host java-produce
HostName IP或绑定的域名
Port 22
Host *-produce
User root
IdentityFile ~/.ssh/produce_key_rsa
Protocol 2
Compression yes
ServerAliveInterval 60
ServerAliveCountMax 20
LogLevel INFO
单主机配置
Host evil-cloud
User root
HostName IP或绑定的域名
IdentityFile ~/.ssh/evilboy_rsa
Protocol 2
Compression yes
ServerAliveInterval 60
ServerAliveCountMax 20
LogLevel INFO
单主机配置
Host git.yideng.site
User git
IdentityFile ~/.ssh/evilboy_rsa
Protocol 2
Compression yes
ServerAliveInterval 60
ServerAliveCountMax 20
LogLevel INFO
# 另外一种简单的配置方法
sudo vim /etc/hosts
47.104.236.12 service-push
ping 47.104.236.12
# 常⻅见⽬目录
/bin
存放⼆二进制可执⾏行行⽂文件(ls,cat,mkdir等),常⽤用命令⼀一般都在这⾥里里。
/etc
存放系统管理理和配置⽂文件
/home
存放所有⽤用户⽂文件的根⽬目录,是⽤用户主⽬目录的基点,⽐比如⽤用户user的主⽬目录就 是/home/user,可以⽤用~user表示
/usr
⽤用于存放系统应⽤用程序,⽐比较重要的⽬目录/usr/local 本地系统管理理员软件安装⽬目录 (安装系统级的应⽤用)。这是最庞⼤大的⽬目录,要⽤用到的应⽤用程序和⽂文件⼏几乎都在 这个⽬目录。/usr/x11r6 存放x window的⽬目录/usr/bin 众多的应⽤用程序/usr/sbin 超级⽤用户的⼀一些管理理程序/usr/doc linux⽂文档/usr/include linux下开发和编译应⽤用 程序所需要的头⽂文件/usr/lib 常⽤用的动态链接库和软件包的配置⽂文件/usr/man 帮 助⽂文档/usr/src 源代码,linux内核的源代码就放在/usr/src/linux⾥里里/usr/local/bin 本地增加的命令/usr/local/lib 本地增加的库
/opt
额外安装的可选应⽤用程序包所放置的位置。⼀一般情况下,我们可以把tomcat等都 安装到这⾥里里。
/proc
虚拟⽂文件系统⽬目录,是系统内存的映射。可直接访问这个⽬目录来获取系统信息。
/root
超级⽤用户(系统管理理员)的主⽬目录(特权阶级^o^)
/sbin
存放⼆二进制可执⾏行行⽂文件,只有root才能访问。这⾥里里存放的是系统管理理员使⽤用的系 统级别的管理理命令和程序。如ifconfig等。
/dev
⽤用于存放设备⽂文件。
/mnt
系统管理理员安装临时⽂文件系统的安装点,系统提供这个⽬目录是让⽤用户临时挂载其他的⽂文件系统。
/boot
存放⽤用于系统引导时使⽤用的各种⽂文件
/lib
存放跟⽂文件系统中的程序运⾏行行所需要的共享库及内核模块。共享库⼜又叫动态链接 共享库,作⽤用类似windows⾥里里的.dll⽂文件,存放了了根⽂文件系统程序运⾏行行所需的共享 ⽂文件。
/tmp
⽤用于存放各种临时⽂文件,是公⽤用的临时⽂文件存储点。
/var
⽤用于存放运⾏行行时需要改变数据的⽂文件,也是某些⼤大⽂文件的溢出区,⽐比⽅方说各种服务的⽇日志⽂文件(系统启动⽇日志等。)等。
/lost+found
这个⽬目录平时是空的,系统⾮非正常关机⽽而留留下“⽆无家可归”的⽂文件(windows下叫 什什么.chk)就在这⾥里里