Linux 进阶笔记(二)

这几篇博文主要记录博主的Linux 学习之路,用作以后回顾和参考。大家可以选择略过也可以作参考。

(一)Linux 初步笔记
(二)Linux 进阶笔记(一)
(三)Linux 进阶笔记(二)
(四)Shell 编程进阶笔记

Linux 服务管理

(一)服务的简单介绍

服务的启动与自启动:
      服务启动:就是在当前系统中让服务运行,并提供功能
      服务自启动:自启动是指让服务在系统开机或者重启之后,随着系统启动而启动的服务

chkconfig –list : ->查看服务的自启动状态,可以看到所有rpm 包安装的服务(注意不能查看源码包安装的服务)

(二)RPM 包服务管理

RPM 包默认安装的服务分为独立的服务和基于xinetd 的服务

RPM 包在安装的时候一般不需要指定安装的目录,所以RPM 包和源码包在安装后的主要区别就是安装位置的不同,下面是一般情况下RPM 包安装后文件所在的目录:

RPM 包独立服务的启动命令:

/etc/init.d/[服务名] start |stop |status |restart
service [服务名] start |stop |status |restart : -> 需要注意这个命令是红帽系列专属

RPM 包独立服务的自启动命令:

chkconfig –level 2345 [独立的服务名] [on |stop] : -> 可以通过chkconfig –list |grep [服务名] 查看自启动状态
vi /etc/rc.local : -> 通过修改配置文件的方式可以将需要自启动或关闭的服务写在该配置文件中(与上面的方法相独立)
ntsysv : -> 命令进入图形化界面进行配置(红帽系列专属)

(三)源码包服务管理

源码包的启动命令:

[绝对路径] [start |stop] : ->比如启动源码包http 服务:/usr/local//apache/bin/apachectl start

源码包的自启动命令:

vi /etc/rc.local : -> 修改该配置文件,比如添加/usr/local//apache/bin/apachectl start 数据就是自启动http 服务

(四)总结

附一张脑图:

Linux 系统管理

(一)进程管理

进程管理的作用:
      一:判断服务器的健康状态
      二:查看系统中的所有进程
      三:杀死进程

查看进程相关命令:

ps aux : -> BSD 操作系统格式查看系统中的所有进程
ps -le : -> 使用Linux 标准命令格式查看系统中的所有进程
pstree -pu : -> 查看所有进程,并显示进程的PID 和进程的所属用户

以 “ps aux” 命令为例查看进程输出:下面内容是其中一部分输出

[root@localhost ~]# ps aux
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.4  0.1  19356  1580 ?        Ss   18:22   0:08 /sbin/init
root         2  0.0  0.0      0     0 ?        S    18:22   0:00 [kthreadd]
.................

各个字段解释:

查看系统健康状态:

top [选项]
选项:

  • -d [秒数] : -> 指定top 命令每隔几秒刷新一次,默认情况下是3秒
  • -b : -> 使用批处理模式输出,一般和 ‘-n’结合使用
  • -n [次数] : -> 指定top 命令执行的次数

在执行top 命令后在交互模式下可以执行的命令:

? 或 p : -> 显示交互模式的帮助
P : -> 以CPU 使用率进行排序,也是默认的排序
M : -> 以内存的使用率进行排序
N : -> 以PID 排序
q : -> 退出top 命令

杀死进程的命令:

kill -1 [进程id] : -> 重启进程
kill -9 [进程id] : -> 杀死进程
killall [选项] [信号] [进程名] : -> 按照进程名杀死进程
选项:

  • -i :交互式,询问是否杀死某个进程
  • -I :忽略进程名的大小写

pkill [选项] [信号] [进程名] : -> 按照进程名杀死进程
pkill -t [信号] [终端号] : -> 按照终端号踢出用户

进程优先级:
执行 “ps -le”命令系统中的所有进程,查出的内容如下:
这里写图片描述
其中PRI (Priority)、NI(Nice)。这两个值都是优先级,数字越小代表该进程的优先级越高。其中PRI 的值是不可修改的,NI 值可以修改。

nice 相关的命令:

nice -n [NI 值] [相关服务启动命令] : -> 该命令只可以给新执行的服务赋予NI 值。比如: nice -n -5 service httpd start
renice [NI 值] [PID] : -> 修改已经存在的进程的NI 值,但是只可以根据进程的PID 值修改

(二)工作管理

工作管理简介:
      工作管理指的是在单个登录终端中同时管理多个工作的行为。

注意事项:
      一: 当前登录的终端,只能管理当前终端的工作
      二:放入后台的命令必须是可以持续运行一段时间
      三:放入后台执行的命令不能和前台用户有交互或者需要前台输入,否则放入后台的工作只能暂停,而不能执行

相关命令:

[命令] & : -> 将命令放入后台并执行,比如拷贝大文件等
Ctrl + z : -> 在命令执行的时候会将进程放在后台并暂停
jobs -l : -> 查看后台进程的工作号及PID 号
fg %[工作号] : -> 将后台暂停的进程工作恢复到前台执行
bg %[工作号] : ->将后台暂停的进程工作恢复到后台执行

可以通过下面几种方法将后台命令脱离当前终端:
      一:将后台执行的命令加入 /etc/rc.local 配置文件
      二:使用系统的定时任务,让系统在指定的时间执行某个后台命令
      三:使用nohup 命令

系统资源查看:
一:执行“vmstat [刷新延时] [刷新次数]” 命令
这里写图片描述

相关字段解释:



二:执行“dmesg | grep cpu]” 命令,查看内核检测信息
三:执行“free [-b |-k |-m |-g]” 命令,查看内存使用状态
这里写图片描述
相关字段解释:

四:执行“cat /proc/cpuinfo” 命令,查看CPU 信息
五:执行“uptime” 命令,查看系统的启动时间和平均负载,也就是执行“top”命令第一行所看到的数据。使用“w” 命令类似。
六:查看系统与内核相关信息

uname [选项]
选项:

  • -a : -> 查看系统所有的相关信息
  • -r : -> 查看内核版本
  • -s : -> 查看内核名称

(三)系统定时任务

at 一次性定时任务

chkconfig –list | grep atd : -> 查看at 服务是否启动
service atd restart : -> 启动at 服务
service atd status : -> 查看at 服务的状态


at命令:

at [时间] : -> 定时执行任务
atq : -> 查询当前服务器上的at 工作
at -c [工作号] : -> 查看任务的具体内容

crontab 循环定时任务

chkconfig –list | grep crond : -> 查看crontab 是否启动
service crond status : -> 查看 crontab 的执行状态


crontab 相关命令:

crontab -e : -> 进入crontab 编辑页面,打开vim 编辑工作
crontab -l : -> 查看root 用户的crontab 任务
crontab -r : -> 删除用户定义的所有crontab 任务

“crontab -e”下vim 编辑任务的格式 : * * * * * [任务]

简单的练习:

比如:“/1 * * * echo 666666 >> /root/crontest”表示每隔一分钟向/root/crontest 文件中输出一句话。

执行系统定时任务的方法:

  • 手动执行定时任务,使用crontab 命令
  • 系统执行定时任务,将需要执行的定时任务脚本复制到 /etc/cron.daily(例),对应的目录中

anacron 相关

anacron 是用来保证在系统关机的时候错过的定时任务,可以在开机之后再执行。

深度学习是机器学习的一个子领域,它基于人工神经网络的研究,特别是利用多层次的神经网络来进行学习和模式识别。深度学习模型能够学习数据的高层次特征,这些特征对于图像和语音识别、自然语言处理、医学图像分析等应用至关重要。以下是深度学习的一些关键概念和组成部分: 1. **神经网络(Neural Networks)**:深度学习的基础是人工神经网络,它是由多个层组成的网络结构,包括输入层、隐藏层和输出层。每个层由多个神经元组成,神经元之间通过权重连接。 2. **前馈神经网络(Feedforward Neural Networks)**:这是最常见的神经网络类型,信息从输入层流向隐藏层,最终到达输出层。 3. **卷积神经网络(Convolutional Neural Networks, CNNs)**:这种网络特别适合处理具有网格结构的数据,如图像。它们使用卷积层来提取图像的特征。 4. **循环神经网络(Recurrent Neural Networks, RNNs)**:这种网络能够处理序列数据,如时间序列或自然语言,因为它们具有记忆功能,能够捕捉数据中的时间依赖性。 5. **长短期记忆网络(Long Short-Term Memory, LSTM)**:LSTM 是一种特殊的 RNN,它能够学习长期依赖关系,非常适合复杂的序列预测任务。 6. **生成对抗网络(Generative Adversarial Networks, GANs)**:由两个网络组成,一个生成器和一个判别器,它们相互竞争,生成器生成数据,判别器评估数据的真实性。 7. **深度学习框架**:如 TensorFlow、Keras、PyTorch 等,这些框架提供了构建、训练和部署深度学习模型的工具和库。 8. **激活函数(Activation Functions)**:如 ReLU、Sigmoid、Tanh 等,它们在神经网络中用于添加非线性,使得网络能够学习复杂的函数。 9. **损失函数(Loss Functions)**:用于评估模型的预测与真实值之间的差异,常见的损失函数包括均方误差(MSE)、交叉熵(Cross-Entropy)等。 10. **优化算法(Optimization Algorithms)**:如梯度下降(Gradient Descent)、随机梯度下降(SGD)、Adam 等,用于更新网络权重,以最小化损失函数。 11. **正则化(Regularization)**:技术如 Dropout、L1/L2 正则化等,用于防止模型过拟合。 12. **迁移学习(Transfer Learning)**:利用在一个任务上训练好的模型来提高另一个相关任务的性能。 深度学习在许多领域都取得了显著的成就,但它也面临着一些挑战,如对大量数据的依赖、模型的解释性差、计算资源消耗大等。研究人员正在不断探索新的方法来解决这些问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值