Linux服务器配置与管理

配置与管理samba服务器(Linux) 实验目的1.了解samba服务器的功能2.掌握samba服务器的配置管理3.掌握samba 客户端程序的使用4.掌握Windows主机和Linux主机共享文件互访的方法。 阅读详情
 Linux服务器配置与管理

第4章   Linux的服务与进程管理

4.1  Linux的启动过程

4.1.1  启动过程描述

 Linux的启动大体经历以下五个阶段:

  · 主机加电并进行硬件自检后,读取并加载硬盘MBR中的启动引导器(GRUB或LILO),供用户选择要启动的操作系统。

 · 用户选择启动Linux操作系统后,启动引导器从/boot分区读取并加载Linux内核程序(vmlinuz-2.4.20-8和initrd-2.4.20-8.img),然后由内核程序负责初始化系统硬件和设备驱动程序。

  · 之后内核将启动执行init程序,以启动系统的init进程。该进程是Linux系统中运行的第一个进程,其进程号(PID)始终为1,该进程将根据/etc/inittab配置文件的要求执行相应的启动程序,以引导运行系统所需的其他进程,并进入指定的系统运行级别。init进程是其他进程的父进程。

 · 在不同的运行级别,根据系统的设置启动相应的服务程序(不同的运行级别,启动的服务程序有所不同)。

  · 在启动过程的最后,运行shell程序,并显示登录信息。 

4.1.2  inittab配置文件

    init程序位于/sbin目录中,它负责在系统启动时运行一系列程序和脚本文件。init程序一旦被内核调用后,便成为系统的第1号进程,它将根据/etc/inittab配置文件的要求执行相应的启动程序,并进入指定的系统运行级别 。

    

4.2  Linux的服务管理

Linux的服务分为独立运行的服务和受xinetd服务管理的服务两类。xinetd本身也是一个独立运行的服务,它负责管理系统中不频繁使用的服务,当这些服务被请求时,由xinetd服务负责启动运行,完成服务请求后,再结束该服务的运行,以减少对系统资源的占用。 

4.2.1  服务的启动脚本

在Linux中,每个服务都会有相应的服务器启动脚本,该脚本可用于实现启动服务、重启服务、停止服务和查询服务等功能。在服务器启动脚本中,一般还有对该脚本功能的简要说明和使用方法,可利用head命令来查看。 

    所有的服务器启动脚本都放在/etc/rc.d/init.d目录中,脚本名称与服务名称相对应。该目录中有哪些脚本与当前系统中所安装的服务有关。

    /etc/rc.d/rc.local文件相当于dos系统的autoexec.bat文件的功能,放入该文件中的脚本或命令,在其他初始化脚本执行完后,将自动被执行。 

4.2.2  服务的启动与停止

   Linux的服务在系统启动或进入某运行级别时会自动启动或停止,另外在系统运行过程中,也可使用相应的命令来实现对某服务的启动、停止或重启服务。

 1.通过服务启动脚本来管理服务

在Linux中,启动、停止或重启服务可通过执行相应的服务启动脚本来实现。若直接执行相应的服务启动脚本,系统将显示用法帮助,其用法为:

# /etc/rc.d/init.d/服务启动脚本名  {start|stop|status|restart|condrestart|reload}

服务启动脚本名后面的启动参数若为start,则启动该服务;若为stop,则停止该服务;若为restart,则为重启该服务;若为status,则为查询该服务的启动状态。

   比如,若要查询xinetd服务的启动状态,则执行命令:

[root@rh9 root]# /etc/rc.d/init.d/xinetd status

xinetd (pid 1694) is running...

    说明该服务已经启动,其进程号为1694。若要重启该服务,则执行命令:

[root@rh9 root]# /etc/rc.d/init.d/xinetd restart

Stopping xinetd:                                                    [ OK ]

Starting xinetd:                                                     [ OK ]

    若要停止该服务,则执行命令:

[root@rh9 root]# /etc/rc.d/init.d/xinetd stop

Stopping xinetd:                                                    [ OK ]

2.使用service命令管理服务

利用服务启动脚本来启动或停止服务时,每次都要输入脚本的全路径,使用起来比较麻烦,为此,Red Hat Linux专门提供了service命令来解决该问题,使用时只需要指定要启动或停止的服务名即可,其用法为:

service 服务名称  要执行的动作(start|stop|restart)

用户在任何路径下均可通过该命令来实现启动或停止服务,service命令会自动到/etc/rc.d/init.d目录中查找并执行相应的服务启动脚本。

比如,若要重启xinetd服务,则实现命令为:service xinetd restart

若要停止xinetd服务,则实现命令为:service xinetd stop

4.2.3  配置服务的启动状态

在对Linux系统的管理中,经常需要设置或调整某些服务在某运行级别中自动启动或不启动,这可通过配置服务的启动状态来实现,为此Linux提供了ntsysv和chkconfig命令来实现该功能。 

  1.ntsysv命令

    ntsysv命令是一个基于文本字符界面的实用程序,操作简单直观,但只能设置当前运行级别下各服务的启动状态。若要设置其他运行级别下各服务的启动状态,则需要转换到相应的运行级别,然后再运行ntsysv命令来进行设置。 

   2.chkconfig命令

    chkconfig命令可以设置系统中所有服务在各运行级别中的启动状态。 

⑴ 查看服务的启动状态

  命令用法:chkconfig --list  [服务名称]

    chkconfig命令带--list参数,用于查看服务的启动状态,若缺省服务名称参数,则显示所有服务的启动状态,若指定了要查看的服务,则只显示该服务的启动状态。

    比如,若要查看当前系统中各服务的启动状态,则执行命令:

 [root@rh9 root]# chkconfig --list

若要单独查看vsftpd服务的启动状态,则实现命令为:

chkconfig --list vsftpd

    各服务的启动状态改变后,在系统下一次启动时才会生效。 

⑵ 设置独立运行的服务的启动状态

命令用法:chkconfig --level <运行级别列表><服务名称> <on|off|reset>

命令功能:设置指定服务在指定运行级别中的启动状态。参数on代表设置为启动,off为不启动,reset代表恢复为系统的默认启动状态。

例如,若要设置vsftpd服务在2、3、5运行级别启动,则实现命令为:

[root@rh9 root]# chkconfig --level 235 vsftpd on

[root@rh9 root]# chkconfig --list vsftpd

vsftpd    0:off   1:off   2:on   3:on   4:off   5:on      6:off

 ⑶ 设置非独立运行的服务的启动状态

命令用法:chkconfig <服务名称> <on|off|reset>

非独立运行的服务受xinetd服务的管理,因此不存在运行级别启动状态的问题。非独立运行的服务的启动状态改变后,需要重新启动xinetd服务,才能使设置立即生效。

比如,若要设置rsync服务的自启动状态为on,并让其立即生效启动,则实现命令为:

[root@rh9 root]# chkconfig --list rsync

rsync                   off

[root@rh9 root]# chkconfig rsync on

[root@rh9 root]# chkconfig --list rsync

 rsync                   on

[root@rh9 root]# service xinetd restart 

4.3  Linux的进程管理

4.3.1  进程与作业

 Linux是一个多用户、多任务的操作系统,Linux系统上所有运行的任务都可称之为一个进程,每个用户任务、每个系统管理的守护进程,也都可以称之为进程。Linux用分时管理方法使所有的任务共同分享和使用系统的资源。

进程是指在自身的虚拟地址空间运行的一个单独的程序。进程由程序产生,是一个运行着的,要占用系统运行资源的程序,一个程序可以启动多个进程。程序是命令的集合。

    Linux系统中所有进程都是相互联系的。除了初始化进程外,所有进程都有一个父进程。新进程不是被创建,而是被复制,Linux系统中所有的进程都是由进程号(PID)为1的init进程衍生而来的。在Shell下执行程序启动的进程就是Shell进程的子进程,一般情况下,只有子进程结束后,才能继续父进程,若是从后台启动的,则不用等待子进程结束。 

4.3.1  进程与作业

   Linux系统的进程大体可分为交互进程、批处理进程和监控进程(守护进程)三种。交互进程是在shell下通过执行程序所产生的进程,可在前台运行,也可在后台运行;批处理进程是一个进程序列;监控进程通常也称为守护进程,它是Linux系统启动时就自动启动产生的进程,并在后台运行。

正在执行的一个或多个相关进程称为一个作业,即一个作业可以包含一个或多个进程,比如,在执行使用了管道和重定向操作的命令时,该作业就包含了多个进程。使用作业控制,可以同时运行多个作业,并在需要时在作业之间进行切换。

   作业控制指的是控制正在运行的进程的行为。比如,用户可以挂起一个进程,等一会儿再继续执行该进程。Shell将记录所有启动的进程情况,在每个进程过程中,用户可以任意地挂起进程或重新启动进程。

4.3.2  进程的启动

在键入需要运行的程序名来执行一个程序时,此时也就启动了一个进程。每个进程都有一个进程号,用于系统识别和调度该进程。启动进程有两个主要途径,即手工启动和调度启动,调度启动是事先设置好在某个时间要运行的程序,当到了预设的时间后,由系统自动启动。 

1.手工启动

由用户在shell命令行下输入要执行的程序来启动一个进程,即为手工启动进程,其启动方式又分为前台启动和后台启动,默认为前台启动,若在要执行的命令后面跟随一个&,则为后台启动,此时进程在后台运行,shell可继续运行和处理其他程序。

2.调度启动

    在对Linux系统进行维护和管理的过程中,有时需要进行一些比较费时而且占用资源较多的操作,为不影响正常的服务,通常将其安排在深夜由系统自动运行,此时就可以采用调度启动要运行的程序,并事先设置好任务运行的时间,到时系统就会自动完成指定的操作。 

4.3.3  管理系统的进程

1.查看系统的进程

   Linux系统中每个运行着的程序都是系统中的一个进程,要查看系统当前的进程,可使用ps命令来实现。其用法为:ps 命令选项

   若缺省参数,直接执行ps命令,则仅显示当前控制台的进程,如:

[root@rh9 root] # ps

其它命令参数:

u  输出进程用户所属的信息,带上u参数后,将显示更详细的信息 

a  显示系统中所有用户的进程;

x  表示也显示没有控制台的进程,包括后台进程。参数a与x同时使用,可用于显示系统中的所有进程,另外也可直接使用-e参数来实现。 

查看各进程的继承关系,可使用pstree或pstree -pu命令。 

2.结束进程的运行

    在Linux系统的运行过程中,有时会遇到某个进程由于异常情况,对系统停止了反应,此时就需要停止该进程的运行。另外,当发现一些不安全的异常进程时,也需要强行终止该进程的运行,为此,Linux提供了kill和killall命令来结束进程的运行。 

  ⑴ kill命令

    该命令使用进程号来结束指定进程的运行。可使用ps命令获得该进程的进程号,然后再使用kill命令将该进程“杀死”,其用法为:kill [-9] 进程号

    kill命令向指定的进程发送终止运行的信号,进程在收到信号后,会自动结束本进程,并处理好结束前的相关事务,属于安全结束进程,不会导致Linux系统的崩溃或不稳定。

参数-9用于强行结束指定进行的运行,适合于结束已经“死掉”而没有能力自动结束的进程。带上该参数后,该命令属于非正常结束进程。 

   为了查看指定进程的进程号,可使用管道操作和grep命令相结合的方式来实现,比如,若要查看xinetd进程对应的进程号,则实现命令为:

    [root@rh9 root]# ps -e|grep xinetd

    1665  ?   00:00:00 xinetd

    从其输出信息中,可知该进程的进程号为1665,若要结束该进程,则执行命令: [root@rh9 root]# kill 1665

⑵ killall命令

    该命令使用进程名来结束指定进程的运行。若系统存在同名的多个进程,则这些进程将全部结束运行,其用法为:killall [-9] 进程名

  参数-9用于强行结束指定进程的运行,属于非正常结束。 

  例如,若要结束xinetd进程的运行,则实现命令为:killall xinetd  

Linux下DNS服务器的安装与配置管理 1.关于dns的名词解释 计算机在网络上进行通信时只能识别如“201.51.0.73”之类的IP地址,而不能认识域名。但是,当打开浏览器,在地址栏中输入域名后,就能看到所需要的页面,这是因为有一个叫“DNS服务器”的计算机自动把我们的域名“翻译”成了相应的IP地址,然后调出IP地址所对应的网页。 ... 阅读详情

相关推荐

82、Linux 服务器服务配置与管理指南

本文详细介绍了Linux服务器中打印服务器、Web服务器、FTP服务器和Samba服务器的配置与管理方法。涵盖CUPS打印服务的配置与管理、Apache Web服务器的安装与SSL设置、vsftpd FTP服务器的匿名访问与上传配置、以及Samba实现Windows文件共享的全过程。同时,针对防火墙、SELinux等安全机制可能导致的服务访问问题提供了详细解决方案。适用于不同Linux发行版(如Fedora、RHEL)的服务启动与配置方式也进行了对比说明。

css33的专栏 73

Linux服务器搭建、配置与管理

1、安装BIND软件包。

2201_75860183的博客 3918

Linux系统管理与服务器配置实验指南

nano编辑器是vi的一个轻量级替代品,它更适合新用户因为它提供了直观的菜单系统和快捷键提示。它在Linux发行版的默认安装包中很容易找到,且界面相对简单。

weixin_33814090的博客 804

LINUX系统配置及服务管理!!!

Linux

m0_74271005的博客 1813

vivado安装空间与依赖要求:入门须知要点

准备安装Vivado时,需重点关注系统空间和依赖环境的配置。结合vivado安装教程,详细说明最低磁盘要求、内存配置及操作系统兼容性,帮助新手快速搭建开发环境,避免常见安装失败问题。

weixin_34725745的博客 1575

告别信息过载:我是如何用Feedly RSS阅读器打造个人专属信息流的(附Chrome插件使用技巧)

本文分享了如何利用Feedly RSS阅读器有效管理信息过载,打造个人专属信息流的方法。通过科学组织订阅源、智能过滤和跨平台同步技巧,帮助用户从被动接收转为主动筛选,提升信息获取效率。特别推荐使用Feedly的Chrome插件和AI过滤功能,实现高效的信息管理。

weixin_42526015的博客 357

Linux基本配置与管理

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结 前言 提示:这里可以添加本文要记录的大概内容: 安装完CentOS Linux 系统并熟悉基本操作之后,需要掌握系统的基本配置与管理。包括用户与组管理、文件与目录管理、文件权限管理、网络连接配置。 ...

qq_43567778的博客 2683

Creo报错代码-9?手把手教你重新生成许可证文件(基于Creo 10.0)

本文详细解析Creo报错代码-9的成因及解决方案,重点介绍如何重新生成许可证文件以应对网络环境变化导致的验证失败。通过分步指南和高级技巧,帮助用户有效管理多网络环境下的Creo许可证问题,提升工作效率。

weixin_30839881的博客 562

linux服务器配置与管理_服务器维护实施步骤

为了有效地维护服务器,服务器管理员必须执行主动的硬件和软件检查。而服务器的维护清单必须包括除尘、日志查看、软件补丁程序测试等。即使具有服务器的性能和冗余功能,增加的工作负载整合和可靠性期望也会对服务器硬件造成损害。服务器维护清单应涵盖物理元素以及系统的软件层配置。还必须考虑到以下事实:彻底维护需要的时间、人工时间和测试。使用清单有助于服务器管理员定义目标,并保持IT团队的正常运转。1.制...

weixin_39960019的博客 1612

基于STM32设计的智能手环(ESP8266+华为云IOT)_178

为了满足用户对健康监测的需求,手环项目集成了血氧检测、心率检测、体温检测等功能。这些功能采用了专门的传感器模块,如MAX30102、DS18B20等,确保了测量数据的准确性和可靠性。同时,为了方便用户了解自己的运动情况,项目还加入了行走步数统计功能,通过MPU6050模块实现精确计步。

2402

Unity插件NodeCanvas之行为树的详细教程

NodeCanvas 是一个用于 Unity 的可视化脚本工具,主要用于游戏开发中的行为树、状态机和流程图的设计。它通过节点编辑器的方式,让开发者可以更直观地创建和管理游戏逻辑,减少了传统编码的复杂性。今天我们就来详细介绍一下NodeCanvas插件。

TxNet 1959

Linux服务器配置与管理:Linux基础

参考自 MOOCLinux服务器配置与管理 目录一、Linux发展历史1.1 Unix1.2 Minix1.3 Linux1.4 POSIX1.5 GNU二、Linux内核版本三、Linux发行版本3.1 Redhat Linux3.2 Debian Linux3.3 Ubuntu Linux3.4 SUSE Linux3.5 Kali Linux 一、Linux发展历史 1.1 Unix Unix是一个强大的多用户、多任务操作系统,支持多种处理器架构。 Unix最早由Ken Thompson、 Den

番茄大人的博客 2588

0.1 专栏导读:为什么需要从 MM 理解 HMM

本文探讨了GPU计算框架中CPU与GPU内存管理的困境,介绍了Linux内核的HMM(Heterogeneous Memory Management)解决方案。传统显式拷贝模型存在编程复杂、指针失效等问题,而HMM通过共享虚拟地址空间、自动页面迁移等机制实现透明内存管理。文章分析了HMM依赖的Linux内存管理基础设施,包括页表遍历、MMU通知、ZONE_DEVICE等核心组件,并梳理了从经典MM到支持异构设备的进化历程。最后给出了学习HMM的8层知识体系,强调理解底层MM机制是掌握HMM的关键。

图形/计算GPU的驱动与虚拟化技术分享园地 768

linux系统管理与服务器配置高志君_Linux系统管理与服务器配置

第1章Linux系统的安装与启动11.1学习引导11.2安装RedHatEnterpriseLinux5操作系统21.3首次启动Linux操作系统的配置91.4Linux操作系统基本操作项目121.4.1虚拟文本控制台131.4.2命令提示符141.4.3注销用户141.4.4重启和关机141.5习题与练习14第2章文件系统管理152.1学习引导152.2Linux下的目录及文件管理项目162.2...

weixin_30365817的博客 1581

在虚拟机中对阿克曼转向车进行导航及避障的仿真测试

一、    在我使用rosdep install teb_local_planner去安装teb_local_planner的时候,报错:Command ‘rosdep’ not found, but can be installed with:sudo apt install python3-rosdep2    我花大半个月好不容易建立起的一系列ROS环境,被python3-rosdep2这条万恶的语句连同ROS一起给我删了。。。悲伤来的那么猝不及防    随着ROS版本的迭代,相关资料很多都不再适用

慕羽★的博客 3807

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Linux下配置与管理Samba服务器完全指南

在混合操作系统环境中实现文件共享是许多企业和个人用户的需求。Samba作为Linux/Unix与Windows系统之间文件共享的桥梁,已经成为开源世界中最成功的项目之一。本文将详细介绍如何在Linux系统上配Samba是一套实现SMB/CIFS协议的开源软件,它允许Linux/Unix系统与Windows系统进行文件共享和打印机共享。Samba的主要功能包括:提供Windows风格的文件和打印服务与Windows域集成,可作为域控制器支持Active Directory服务。

MXZ114514的博客 1290

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

Linux之配置与管理DHCP服务器

实训目的 项目背景 DHCP服务 DHCP服务器软件 开始 安装dhcp [root@localhost ~]# yum install -y dhcp [root@localhost ~]# vim /etc/dhcp/dhcp.conf 拷贝里面的东西 拷贝再次进入之后 保留需要使用的参数即可 在此注释掉下面的东西,下面的都注释 ddns-update-style none:参数设置为none,不设置动态更新 sbunet:作用域的声明 rang:地址范围 opti

weixin_45849066的博客 1477

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

管理Linux服务器的网络配置

管理Linux服务器的网络配置是确保服务器正常运行和高效通信的关键任务。

agshj的博客 576

Linux配置与管理NFS服务器

二、要使用NFS的话,就要保证系统中安装了rpcbind和nfs-utils两个软件包,现在较新的系统都有rpcbind了,而且一般都会被自动启动,小编做第一遍的时候没安装也正常完成了,如有懂的小弟洗耳恭听!其中,111文件给的权限是可读可写的,所以anyone都可以编辑,然而xixi里面的222文件不能编辑,至此,NFS服务已经完毕,欢迎讨论指出错误,路漫漫其修远兮,愿你我都能上下而求索!root_squash:登陆NFS主机使用共享目录的用户如果是root,那么这个用户的权限将会被压缩成匿名用户。

2401_87328081的博客 586

新书推荐——Linux系统管理与服务器配置

新书推荐——Linux系统管理与服务器配置 近日,正月十六工作室组编的《Linux系统管理与服务器配置》在电子工业出版社正式出版。图书基于工作过程系统化体例编写,围绕Linux服务管理核心技能要求,引入行业标准、职业岗位标准和企业应用需求,通过真实企业网络工程项目案例,按网络工程业务实施流程展开项目实战,在实践中精进Linux管理核心能力,助力初学者快速掌握Linux系统管理与服务配置。 教材主要内容 教材围绕Linux系统运维工程师岗位对Linux服务部署项目实施与管理核心技术技能的要求,基于工作过程系

正月十六工作室 1万+

linux服务器管理技术试卷,linux网络服务器配置与管理试卷A卷1.doc

linux网络服务器配置与管理试卷A卷1河南教育学院2014—2015学年第二学期期末考试软件学院2014级计算机信息管理专业普通专科班《Lniux服务器配置与管理》试卷A卷题号一二三四总分分数得分评卷人单项选择题(每小题2分,共30分)1.在创建Linux分区时,一定要创建哪两个分区 [ ]A. FAT/NTFS B. FAT/SWAP C...

weixin_28725037的博客 620

linux系统管理与服务器配置高志君课后答案_Linux系统管理与服务器配置(基于CentOS 7)...

第一篇 基础管理篇第1章 CentOS Linux 7系统的安装与介绍1.1 项目一:CentOS Linux 7系统的安装1.1.1 Linux系统的起源与发展1.1.2 Linux系统的组成与版本1.1.3 Linux系统的安装1.2 项目二:首次启动CentOS Linux操作系统的配置1.3 项目三:Linux系统基本操作1.3.1 虚拟文本控制台1.3.2 Shell简介1.3.3 命令...

weixin_39950083的博客 1383

Linux服务器的配置与管理

Linux下服务器的配置与管理:(注:来源于《linux服务器配置与管理》) (一)Linux管理入门: (1)管理用户和组: (2)管理进程: 1)启动进程: 2)终止进程: 3)查看进程状态: (3)管理软件包: 1)使用rpm; 2)从源代码安装软件: (4)配置网络: 1)设置主机名: 2)设置ip地址: 3)通过配置文件修改ip地址以及网

legend050709的专栏 1468

linux配置与管理ftp,Linux服务器配置与管理-ftp服务器命令详解

Linux服务器配置与管理-ftp服务器命令详解1.ftp安装:rpm –qa | grep ftp2.查看安装内容:rpm-ql |more3.启动ftp服务:service vsftpd start4.配置文件:vi /etc/vsftpd/vsftpd.conf5.连接ftp:eg:ftp 127.0.0.1 //默认vsftp匿名用户可以访问到其他目录。可以下载,但是不能上传,即没有上传...

weixin_39783915的博客 228

linux基础第8节 ----配置与管理FTP服务器

配置和管理FTP服务器

m0_60981735的博客 4156
上一篇: 我们喜欢这样的实习生
下一篇: java打包exe 制作安装包 With JRE 自启动 转载 收藏
clbxp
博客等级 码龄21年 35粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值