函数的极值和最值
极值定理 6.11 (极值的第一充分条件)
设$f$在点$x_0$连续,在某领域$U^o(x_0;\delta)$上可导。
若当$x\in (x_0 -\delta, x_0)$时$f^{\prime}(x)\leq 0$,当$x\in(x_0, x_0+\delta)$时$f^{\prime}(x)\geq 0$,则$f$在点$x_0$取得极小值。
若当$x\in(x_0 - \delta, x_0)$时$f^{\prime}\geq 0$,当$x\in(x_0, x_0+\delta)$时$f^{\prime}(x)\leq 0$,则$f$在点$x_0$取得极大值。
定理 6.12(极值的第二充分条件)
设$f$在$x_0$的某领域$U(x_0; \delta)$$ 上一阶可导,在$$x=x_0$$处二阶可导,且$$f^{\prime}(x_0) = 0, f^{(2)}(x_0)\neq 0$.
若$f^{(2)}(x_0)<0$$,则$$f$$在$$x_0$取得极大值。
若$f^{(2)}(x_0)>0$,则$f$在$x_0$取得极小值 ...
Next主题菜单栏链接显示乱码问题
Hexo + Next + Github搭配使用搭建博客是非常流行和方便的,不需要购买服务器和域名,充分发挥GitHub的作用。但是,当我搭建博客时也遇到过关于Next主题的Menu菜单和边框栏设置的问题。不过最后总算解决了,这里记录下来提供给有需要的小伙伴也为自己留个记忆,以备后用。
Next的菜单图标显示
打开主题配置文件,~/themes/next/_config.yml , 把相应注释去掉,这里选择你要展示的页面。如下:
123456789menu: home: /|| home about: /about/|| user tags: /tags/|| tags categories: /categories/|| th archives: /archives/|| archive \#schedule: /schedule/ || calendar \#sitemap: /sitemap.xml || sitemap \#commonweal: /404/ || heartbeat
注意,about, tags, categories三个 ...
hexo博客评论系统gitalk
Hexo结合GitHub进行博客系统搭建,能够免费的畅享GitHub给我们带来的无限量服务。下面假设
hexo博客已经搭建好了
主页地址是:https://xujinzh.github.io/
并且在GitHub上创建了gitalk仓库:https://github.com/xujinzh/gitalk-comments.git
注册新应用打开网址:https://github.com/settings/applications/new
在Application name一栏填写应用名称,可随意填写,但必须填写
Homepage URL一栏填写博客主页,必填,我这里是:https://xujinzh.github.io/
Application description一栏是对该应用的描述信息,可以选填
Authorization callback URL一栏是应用程序的回调URL,也是博客主页,必填,我这里是:https://xujinzh.github.io/
点击注册后,会跳转到应用信息页,显示有该应用的用户Client ID和Client Secret,这两个参数在下 ...
Linux 命令 more 和 less 的用法
Linux 系统有命令 more 和 less 来在终端查看文件内容,但是,两者有什么区别呢?总的来说,less 比 more 更有效率更快,因为 less 不会立即加载整个文件,而是动态加载,对于比较大的文件可以使用该命令。而 more 命令会一次加载整个文件内容。
more 命令查看 test.log 文件内容,同时显示剩余内容百分比,可以使用 Enter(一次一行)和 Spacebar(一次一页)来翻页,使用 q 退出查看。此时,文件内容会保留在终端上。
12more test.logcat -n test.log | more
12# 只显示文件 test.log 的前 5 行more -5 test.log
12# 从文件 test.log 的第 6 行开始显示,内容铺满整个屏幕,具体看屏幕大小more +6 test.log
在用命令 more 打开文件后,输入 = 显示当前行号,输入 :f 显示文件名和当前行号。
less 命令查看 test.log 文件内容,可以使用 Enter(一次一行)和 Spacebar(一次一页)来翻页,另外,也可以使用 pageup ...
SSH远程连接Centos出现cannot change locale (UTF-8)
Centos是一个优秀的安全的linux发行版,但是,当我使用Mac终端SSH远程连接Centos服务器时却出现如下警告:
-bash: warning: setlocale: LC_CTYPE: cannot change locale (UTF-8): No such file or directory=
这里给出解决该问题的方法:
在Centos服务器上,进入
1sudo vim /etc/environment
添加如下代码
12LANG=en_US.utf-8LC_ALL=en_US.utf-8
再次通过SSH连接时就不会出现上述警告了。
Chrome 添加扩展程序
Chrome是一款非常优秀的浏览器,再配合上扩展程序或插件,可谓是如虎添翼。但是由于不能够直接登录谷歌扩展程序商店直接添加扩展程序,那么这里给出一个将已经下载或自己编写好的扩展程序添加到Chrome浏览器插件的一种方法。
将扩展程序的类型由 .crx 更改为 .zip,然后解压缩该文件到一个文件夹中 ;
打开谷歌扩展程序管理页,即 chrome://extensons ;
将右上角的开发者模式(Developer mode)打开 ;
点击左上角的上传解压缩文件(Load unpacked),选择刚刚解压缩的 zip 文件夹。
这样就将手动下载或自己编写的扩展程序添加为Chrome插件了。
为 Centos 或 Ubuntu 添加交换分区 swap
Centos 或者 Ubuntu 的交换分区 swap,类似于 Windows 系统的虚拟内存,能够在系统内存不足时,利用一部分硬盘空间虚拟出内存空间,解决内存不足的问题。下面分别给出如何为 Centos 和 Ubuntu 增加交换分区。所有命令以 root 用户运行。
Centos 添加交换分区12345678dd if=/dev/zero of=/swapfile count=2048 bs=1MiBchmod 600 /swapfilemkswap /swapfileswapon /swapfilecp /etc/fstab /etc/fstab.bakecho '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstabecho 'vm.swappiness=10' >> /etc/sysctl.confecho 'vm.vfs_cache_pressure=50' >> /etc/sysctl.conf
这里 count=2048, ...
Centos 或者 Ubuntu 安装 FFmpeg
Centos 安全稳定,但是,对于 FFmpeg 却没有直接通过命令 yum install ffmpeg 安装的支持。下面给出一种可行的安装方法:Static Prebuilt Install of FFMpeg,即将编译好的静态可执行文件直接下载安装。 这里以 Centos 7 为例,但同样适用于 Ubuntu/Debian 系统。
下载编译好的静态文件只需要通过如下命令即可下载编译好的静态文件。如果服务器不能上网,可以将下载好的静态文件拷贝到服务器上使用。
12wget https://johnvansickle.com/ffmpeg/releases/ffmpeg-release-amd64-static.tar.xz#wget https://johnvansickle.com/ffmpeg/builds/ffmpeg-git-amd64-static.tar.xz
解压缩到指定目录安装将下载好的静态文件解压缩到指定目录,即可直接使用。
12345mkdir -p /usr/local/ffmpegtar -xf ffmpeg-release-amd64-s ...
htop 命令介绍
htop 命令是 top 命令的升级版,能够以更加丰富的形式展示服务器运行的进程和线程的情况,查看服务器的整体运行状态等。本篇对 htop 命令进行介绍。
安装 htop1234567891011# centossudo yum -y install epel-releasesudo yum search htopsudo yum info htopsudo yum update# sudo yum upgradesudo yum install htop# debian or ubuntusudo apt updatesudo apt install htop
注意,在 centos 中,命令 yum update 和 yum upgrade 有一些小区别:
yum upgrade 会强制删除过时的软件包,这可能是危险的,因为有可能你在使用该软件;
yum update 不会删除而会保留它们,这使得 yum update 更安全
htop 命令使用1234567891011121314## 以无颜色显示htop -Chtop --no-color## 查看某个用户的信息hto ...
storm 集群部署
Storm 是一个分布式计算框架,主要由Clojure编程语言编写,其主要编程语言是Java 和Clojure。最初是由Nathan Marz及其团队创建于BackType,该项目在被Twitter取得后开源。Storm集群部署需要Zookeeper和python的支持,假设这两个软件已经安装,并成功部署了Zookeeper集群。获取如何Standalone集群部署Zookeeper请参考我的文章:Zookeeper集群部署
下面分步骤进行Storm的集群部署,假设部署到三台服务器上,其IP地址分别是1.1.1.0, 1.1.1.1, 1.1.1.2,如果想部署更多台,可以后续随意增加,非常方便扩容,这是storm的一个优点。这里将1.1.1.0作为nimbus节点和UI节点,把1.1.1.1 和1.1.1.2 作为supervisor节点。假设部署的zookeeper集群分别是box0, box1, box2,其IP分别是1.1.10.0, 1.1.10.1, 1.1.10.2,并启动了zookeeper服务。
下载storm从官网:Apache Storm downloads ...
Virtualbox 以NAT模式创建虚拟机并通过SSH连接
Virtualbox 创建虚拟机时,如果按照 NAT 方式进行创建,则各虚拟机之间可以进行 SSH 连接,虚拟机也可以 SSH 连接宿主机,但是,宿主机想要连接虚拟机却需要一些设置才可以连接。想知道虚拟机桥接、NAT、host-only之间的区别,可查看我之前的文章:虚拟机网络模式 NAT 桥接 Host-Only
设置端口映射打开设置 — Network — NAT — 高级 — 端口映射,添加如下内容
Protocol
Host IP
Host Port
Guest IP
Guest Port
TCP
127.0.0.1
10002
10.0.2.15
22
这里假设虚拟机的 ip 地址是 10.0.2.15,可以通过在虚拟机运行命令 ifconfig 查看
SSH连接在宿主机运行命令SSH连接虚拟机
1ssh jinzhongxu@127.0.0.1 -p 10000
SCP 传输文件如果想从宿主机向虚拟机传送文件,可以使用如下命令
1scp -P 10000 jdk* 127.0.0.1:/home/jinzhongxu/.