添加ssh公钥的两种方式

将本地端的id_rsa.pub添加到服务端的authorized_keys的两种方式:

 

1、直接操作文件

 

cat ~/.ssh/id_rsa.pub | ssh user@hostname ‘cat >> .ssh/authorized_keys’
 

2、通过命令

 

ssh-copy-id -i id_rsa.pub user@hostname
ssh-copy-id会检测id_rsa私钥文件是否存在,可以touch id_rsa即可。

 

http://www.jianshu.com/p/848e982df6be

阿里云服务器操作系统选择秘诀(含Windows和Linux)

目前所用的虚拟主机显得有些吃力了,所以*近想入手阿里云服务器,进入阿里云服务器购买页面看到服务器系统选择那里就蒙了,特么这些E文是啥意思,网上找了一个阿里云服务器操作系统选择攻略,分享如下

当前阿里云总共提供了两大类17种操作系统选择。站长一看到这么多操作系统一般*反应就是不知所措,那么应该如何选择适合自己的服务器呢?这篇文章来为大家解答。

Windows篇
阿里云提供了6种window系统,涵盖了Server 2003 sp2以及Server 2008 R2这两大类操作系统。其中又分为了32位和64位

(1)如何选择32位还是64位

32位系统相比64位系统,*主要的限制体现在内存的大小上。因为32位本身的限制,其*大只可支持到4GB内存,如果您的网站要使用高于4GB的内存或者以后有扩充内存寻到4GB以上的打算,请使用64位操作系统。

(2)选择2003还是选择2008

对于windows来说,我个人建议是选择版本越高的越好。相对来说新版本漏洞相对来说更少,而且IIS 7.5相对于IIS6提供了更多的功能以及更方便的控制台。但是考虑到大家的机器配置不同,在此给出一下几种选择:

配置低于双核 2GB内存:选择server2003 不装数据库

配置双核4GB: server 2003   mssql 或者 server 2008 R2 不带数据库

配置高于双核 8GB:serever 2008 R2  mssql

建议如果大家要在云服务器上跑数据库,尽量选择大内存配置,或者降低配置去选用RDS

(3)中英文、安全加固版如何选择

这个就依据大家各自的喜好来了,在此不多说了

至于Windows服务器配置教程,因为网上教程很多而且相对于Linux来说Windows配置难度更低,所以Windows的配置教程会比较晚的放出。

Linux篇
这个是本片教程的重点,叫大家如何来选择Linux服务器。

Linux阿里云提供了两大类共11种,下面让我们来介绍具体的区别。

(1)这些Linux版本有什么区别?
Linux按照大类来分,阿里云提供了基于Debian跟Red Hat两大类操作系统,具体分类如下:

Debian:Ubuntu Debian

Red hat:Red Hat Centos

(2)这两大类有什么区别
Debian:用的deb包,使用APT包管理系统。同时Debian提供了大多数软件比较新的版本,并且提供了更多的软件包(相对于原版Red Hat)。Debian的优点在于更新迅速,软件包完善(Ubuntu尤其),操作便利。缺点是部分时候稳定性欠佳,跟进*新软件有可能存在Bug。

Red Hat:用rpm包,使用yum包管理系统。相对于Debian来说,Red Hat的一大特点就是慢。大部分软件停留在稳定版本,而且相距*新版版本也差较多。而且某些新版软件的一些新特性支持也比较慢,比如php-fpm。因为Red Hat是面向企业用户提供的操作系统,所以在稳定性上十分突出,一般在新功能或稳定性的选择上更倾向于后者。只有当某个功能完全确定稳定了,才会加入到系统里。优点是系统稳定,技术文档完善,如果付费的话能得到企业级别的技术支持。缺点是软件包比较老旧,而且一些较新功能会欠缺。

总结一下:

如果你喜欢尝鲜,喜欢用*新的功能或喜欢折腾系统,那么Debian是个更好的选择。相对于Red Hat的内核还停留在2.6,Debian早已迈入3.0大门。

如果你追求稳定,不想经常升级系统软件不爱折腾,那么Red Hat是你更好的选择,出色的稳定性以及丰富的文档支持一定可以满足你的需要,当然太新的功能不要抱有幻想。而且Red Hat完善的文档可以免去你到处查找教程、论坛之苦

上手难度 Ubunt<Debian<Redhat=Centos

Linux相关教程会在以后陆续放出 敬请期待

(3)Debian与Ubuntu的选择
Ubuntu是基于Debian所开发,可以简单地认为Ubuntu是Debian的功能加强版。与Debian相比,Ubuntu提供了更人性化系统配置,更强大的系统操作以及比Debian更激进的软件更新。Ubuntu与Debian比较,可以认为Debian更趋向于保守一些,Ubuntu对新手友好度更高,上手更容易。用过Ubuntu的都会体会到它的易用,反之如果用过Ubuntu再换到别的系统,都会觉得不适应,Ubuntu真的很方便。

个人建议,如果你打算选择Debian类的,建议选择Ubuntu。Ubuntu提供了更好的操作,更激进的软件更新,更方便管理软件以及相差无几的稳定性。如果你想用Debian类,不想放弃稳定,那么请选择Debian。与Ubuntu相比Debian的稳定性更佳,但是也就存在了Red Hat与Debian相比类似的问题。

关于Ubuntu版本选择:

Debian就给了一个版本,就不说什么了,重点说一下Ubuntu。

不知道阿里云工程师当初怎么想到的还是他自己做镜像时候用的10.10,竟然有10.10?

在解释下Ubuntu的版本支持时间。Ubuntu普通版本只提供18个月的技术支持,过期则不管。LTS服务器版本提供长达五年的技术支持。Ubuntu 10.10是个普通版,现在已经过了支持周期了。如果你用了,很好,你会发现你安装不了任何软件,10.10的软件已经从Ubuntu软件源中被移除了。所以建议大家选择12.04 LTS版,提供长达5年的技术支持,可以确保在静候相当长的一段时间内你的服务器可以继续收到系统升级补丁以及可用的软件源。顺便再吐槽一下制作这个ISO的,能不能有点专业精神啊!给个没软件源的让我们装完了放那里看么?

(4) Red Hat和Centos 选择
Red Hat跟Centos就没那么多差别了。

Red Hat是付费操作系统,你可以免费使用,但是如果要使用Red Hat的软件源并且想得到技术支持的话,是要像Windows那样掏钱的,所以大家可以理解为Linux中的Windows。这么做符合开源精神,免费使用,服务收费。

Centos是Red Hat的开源版本。一般在Red Hat更新之后,Centos会把代码中含有Red Hat专利的部分去掉,同时Red Hat中包含的种种服务器设置工具也一起干掉,然后重新编译就是Centos。

从某种意义上说,Centos几乎可以完完全全看成是Red Hat,这两个版本的rpm包都是可以通用的。

那么这样问题就简单了

如果你舍得花钱买技术支持,并且想得到完善的技术服务,请去买Red Hat的授权,你会得到如Windows一般强大的技术支持的。

如果你只想用,什么付费技术支持什么专有软件都是浮云,那么用Centos吧。

Centos 5 对应 Red Hat 5

Centos 6 对应 Red Hat 6(阿里云没提供这个版本)

同时Red Hat技术支持的文档也是同样可以套用在Centos上的,命令都不用改(毕竟本质上来说一样么)。

Red Hat系的*大特点就是稳定。因为Centos需要在Red Hat更新后才能更新,所以一般补丁更新速度要落后于Red Hat,当然这个对大多数人来说等一段时间不是什么大问题。

Red Hat是对Linux内核代码贡献度*的公司,2012年统计Red Hat贡献了超过10%的代码,所以Red Hat可以说是当前*稳定的Linux版本。Centos秉承Red Hat良好的衣钵,也有一流的稳定性,这点是Debian所无法比拟的。同样团建更新速度Red Hat会慢很多很多,但是一旦更新的话就是稳定版本,稳定性压倒一切。

对于阿里云Centos的选择,建议选择Centos 6.3版本,带来了更多的新特性以及更多的新功能。

除非你的软件需要php 5.1的环境,那么就选择Centos6.3。如果网站需要支持php5.1,只能选用Centos 5。

至于具体版本选择,建议php 5.1用户选择Centoss 5.8,其他的用户则为Centos 6.3

另:想用Nginx也请使用Centos 6.3

以上就是系统选择篇,如果大家还有什么不明白的我会慢慢补充进去。

*后再再总结:

求稳定选择 Debian

稳定中更新 Ubuntu

更新速度N快,有付费支持 Red hat

更新速度稍慢 Centos

免费开源的几款Web服务器软件简介

由于*近在部署云服务器主机,在对Web服务器软件的选型方面进行了摸索,把笔记记下来,便于以后查阅。

一、NGINX
俄罗斯人Igor Sysoev从2002年开始开发NGINX,并在2004年发布了*个公开版本。NGINX的开发是为了解决C10K(C10K是如何处理1万个并发连接的简写)问题,目前,它是第二流行的开源web服务器,全球有超过30%的网站在使用它。

NGINX依靠异步事件驱动架构来帮助其处理大量的并发会话,由于其对资源的轻量利用和伸缩自如的特性,它成为了广受欢迎的web服务器。

NGINX在类BSD(Berkeley Software Distribution)许可协议的授权下发布的,它不仅可作为web服务器进行部署,也可作为代理服务器或负载平衡器。你可以在NGINX社区网站找到它的更多信息。

二、Apache HTTP Server
Apache HTTP Server,我们常常称之为httpd,或者更简单的Apache。它诞生于1995年,并在2015年2月20日度过了其20岁的生日。全球超过52%的网站使用了Apache,它是目前*流行的web服务器。

Apache httpd通常运行在Linux上,也可以部署在OS X和Windows之上,它的发布得到Apache许可证 2.0 版的许可。该web服务器自身使用模块化架构,加载其它额外的模块可以作为其额外特性。比如,加载mod_proxy模块可以增加服务器代理/ 网关的功能,加载mod_proxy_balancer模块可以为所有支持的协议提供负载平衡。在v2.4版本里,Apache可通过全新的mod_http2模块支持HTTP/2。

从1996年开始,Apache HTTP Server就已经是*为流行的web服务器了,这与它拥有伟大的文档和软件项目集成支持的特性是分不开的,你可以在Apache基金会的项目页面上找到它的更多信息。

 

三、Apache Tomcat
Apache Tomcat是一个可作为web服务器的开源Java servlet容器。Java servlet是可扩展服务器特性的Java程序,虽然servlets可以对任何类型的请求作出响应,但是它还是*常用于Web服务器上的应用实施。这些web servlet在Java上的作用与PHP和ASP.NET等其它动态web技术类似。Tomcat的代码库是由Sun Microsystems公司在1999年捐赠给Apache软件基金会的,并在2005年成为Apache的顶级项目,目前有不到1%的网站在使用它。

Apache Tomcat是在Apache许可证 2.0 版的授权下进行发布的,通常用于运行Java应用程序。此外,它能够通过Coyote的扩展,扮演为本地文件HTTP文档服务的普通服务器的角色。更多详细的信息可以查看Apache Tomcat项目网站。

另外,Apache Tomcat还经常内嵌在其它开源Java应用服务器中,如JBoss, Wildfly和Glassfish。

 

四、Lighttpd
Lighttpd,于2003年3月首次发布,目前全球有大约0.1%的网站在使用它,它是在BSD的许可协议下发布的。

Lighttpd以其低内存占用,低CPU负载和处理速度的优化而独立于世,它使用事件驱动架构,对大量并行连接进行优化,支持FastCGI, SCGI, Auth,Output-compression, URL-rewriting等多种功能。Lighttpd主要用于Catalyst和Ruby on Rails的web框架。通过项目主页,你可以找到它的更多信息。

linux 修改服务器时间

修正时区
rm -rf /etc/localtime #删除当前默认时区www.kwx.gd
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
#复制替换默认时区为上海

手动修正时间
date -s ’09:16:00 2013-01-21′

自动同步时间
yum install -y ntp #安装时间同步服务(组件)
ntpdate asia.pool.ntp.org #设置同步服务器,asia.pool.ntp.org是台警大授时中心(台湾)
date #查看当前时间www

ntp常用服务器:
中国国家授时中心:210.72.145.44
NTP服务器(上海) :ntp.api.bz
美国:time.nist.gov
复旦:ntp.fudan.edu.cn
微软公司授时主机(美国) :time.windows.com
台警大授时中心(台湾):asia.pool.ntp.org

一般企业里的服务器采用的是什么系统?windows?还是linux?

首先说windows和Linux系统在企业的服务器中都是有使用的,关于一个企业是选择windows作为服务器系统还是Linux作为服务器系统还是要看企业对于服务器的需求和一些技术上的需要。

1、简要说一下windows系统和Linux系统。windows系统相信大家都不陌生,现在大家基本上使用的都是以windows操作系统为主,而服务器上使用的windows操作系统一般指的的是windows的服务器版本系统:windows server 系列。windows server系列也有很多的版本,如windows server2003、windows server 2008等。这些服务器版本的windows和普通windows版本的不同在于其是根据服务器需求进行开发的,如支持更大的内存、支持一些服务器的策略设置、支持服务器集群等,这些功能都是针对服务器的功能,总之windows server版本就是一个适合服务器的操作系统版本,其功能大多都是针对服务器的。再说一下Linux系统,Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。以上是专业的解释,简单说Linux是一个免费的操作系统,其也是非常的好的支持服务器环境,且其不太适合图形化操作更适合命令行操作,而windows server是收费的系统,且其主要的还是图形化操作方式。

2、公司选择什么系统之性能和易用性。因为Linux是开源的操作系统,其功能可以自己定义和修改,且其没有图形化界面,总而言之Linux的一些特性使得Linux的效率要比windows高且其使用起来更加灵活,因为Linux的严格的用户权限管理机制使得Linux更加安全。虽然windows的图形界面会在一定的程度上降低windows的性能,但是图形化的界面也为windows带来了操作简单方便的特点,且大家都是使用windows出身,那么 windows server系统的操作学起来要比Linux简单的多。总结:个人认为Linux比windows server的性能更好,而windows server比Linux有更好的易用性。

3、公司选择什么系统之用途和技术搭配和成本。关于服务器的用途决定了其安装什么操作系统,比如公司需要搭建一台服务器进行系统网络和局域网的域管理,那么此时应该使用的当然是windows server操作系统。在比如公司的需要对外发布一个web网站,公司决定使用asp.net作为网站后台,我们都知道asp.net的*好组合是windows server + IIS +sqlserver数据库,那么此时公司的机房服务器也可能要安装windows server 系统,而我们要发布一个php的网站,那么我们也都知道php的*佳运行环境是lamp即Linux+Apache+mysql数据库+php,此时可能我们需要的采用Linux作为操作系统。

再说一下成本,Linux的是开元不收费的系统,而windows server是收费的操作系统,但是公司请一个Linux的运维管理员的成本要高于windows server的管理员,这些问题都是公司需要考虑平衡的,毕竟公司要考虑公司的利益。

*后,以上就是个人对于公司选择什么操作系统作为服务器操作系统的一些看法,也可能有很多其他的因素影响着这个选择,以上只是个人的一些看法和其中的一些因素。

想开发款个人用 Linux 管理面板,请问 Go Rust Python Nodejs 哪个比较合适?

想开发款个人用 Linux 管理面板,请问 Go Rust Python Nodejs 哪个比较合适?
xairsky · 300 天前 via iPhone · 2069 次点击
这是一个创建于 300 天前的主题,其中的信息可能已经有所发展或是发生改变。
目前是 C++桌面开发工作

在服务器管理方面都用的 OneinStack

现成 AppNode 宝塔 AMH 用着都不太爽,感觉太臃肿。

想自己开发一款轻量面板自用

目前在纠结用什么语言开发,决定以后现学现用

比较在意的点:
1.性能不要太低
2.轮子够用就行

谢谢各位大佬

开发 AMH Python Nodejs14 条回复 • 2020-06-25 01:40:48 +08:00
learningman 1
learningman 300 天前
会啥用啥呗。。。这不是你的问题吗?
如果这几个语言都会,不可能说还需要别人来告诉你怎么选吧
wellsc 2
wellsc 300 天前 via iPhone ❤️ 1
Python
ipwx 3
ipwx 300 天前
请问你有多少台服务器?

我实验室 40 多台服务器,ansible 一把梭,从不需要面板。
geekvcn 4
geekvcn 300 天前
lua
xairsky 5
xairsky 300 天前
@learningman

现在只会 C++, 问题就是在纠结选哪个高效方便的语言现学现用.
xairsky 6
xairsky 300 天前
@ipwx

服务器数量不多, 只是不满现有面板类产品, 想自己造个.
ipwx 7
ipwx 300 天前
@xairsky 如果只是个人用,建议不要浪费时间造这种轮子。造出来还不一定有 ansible 这种脚本灵活好用。
learningman 8
learningman 300 天前
@xairsky 边学边写建议 python,现成的轮子多,教程也多
xairsky 9
xairsky 299 天前 via iPhone
@ipwx 好的谢谢。请问 Ansible 和 OneinStack 是类似的吗? 我 Google 看看
xairsky 10
xairsky 299 天前 via iPhone
@learningman 有在纠结 Python 和 Go…

ipwx 11
ipwx 299 天前
@xairsky 不是,是一种以 yaml 为基础的集群运维管理脚本软件。你写一堆 yaml 描述要做的事情,ansible 帮你 ssh 上去做。ansible 的特色是有一堆内置命令,和一堆其他人写的插件( python 可以写)。
black11black 12
black11black 299 天前
个人用显然是 py 合适的,web 引擎层面并发数没上千的基本不需要考虑性能问题,自己撸自己用主要考虑的是开发速度和生态,以及*大多数情况下的稳定性,基本就是 py 的完美适用环境。
xairsky 13
xairsky 299 天前
@ipwx
@black11black

非常感谢各位大佬建议!!
flynaj 14
flynaj 289 天前 via Android
会什么就用什么,性能当然是 golang,

Linux下MySQL 安装配置

MySQL 是*流行的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。

MySQL所使用的SQL语言是用于访问数据库的*常用标准化语言。

MySQL由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。

MySQL 安装
本教程的系统平台:CentOS release 6.6 (Final) 64位。

一、安装编译工具及库文件
yum -y install gcc gcc-c++ make autoconf libtool-ltdl-devel gd-devel freetype-devel libxml2-devel libjpeg-devel libpng-devel openssl-devel curl-devel bison patch unzip libmcrypt-devel libmhash-devel ncurses-devel sudo bzip2 flex libaio-devel
二、 安装cmake 编译器
cmake 版本:cmake-3.1.1。

1、下载地址:http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz

$ wget http://www.cmake.org/files/v3.1/cmake-3.1.1.tar.gz
%title插图%num

2、解压安装包

$ tar zxvf cmake-3.1.1.tar.gz
3、进入安装包目录

$ cd cmake-3.1.1
4、编译安装

$ ./bootstrap
$ make && make install
三、安装 MySQL
MySQL版本:mysql-5.6.15。

1、下载地址: http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz

$ wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15.tar.gz

%title插图%num

2、解压安装包

$ tar zxvf mysql-5.6.15.tar.gz
3、进入安装包目录

$ cd mysql-5.6.15
4、编译安装

$ cmake -DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql/ -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DWITH_INNODB_MEMCACHED=1 -DWITH_DEBUG=OFF -DWITH_ZLIB=bundled -DENABLED_LOCAL_INFILE=1 -DENABLED_PROFILING=ON -DMYSQL_MAINTAINER_MODE=OFF -DMYSQL_DATADIR=/usr/local/webserver/mysql/data -DMYSQL_TCP_PORT=3306
$ make && make install
5、查看mysql版本:

$ /usr/local/webserver/mysql/bin/mysql –version

%title插图%num

到此,mysql安装完成。

MySQL 配置
1、创建mysql运行使用的用户mysql:

$ /usr/sbin/groupadd mysql
$ /usr/sbin/useradd -g mysql mysql
2、创建binlog和库的存储路径并赋予mysql用户权限

$ mkdir -p /usr/local/webserver/mysql/binlog /www/data_mysql
$ chown mysql.mysql /usr/local/webserver/mysql/binlog/ /www/data_mysql/
3、创建my.cnf配置文件

将/etc/my.cnf替换为下面内容

$ cat /etc/my.cnf

[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
replicate-ignore-db = mysql
replicate-ignore-db = test
replicate-ignore-db = information_schema
user = mysql
port = 3306
socket = /tmp/mysql.sock
basedir = /usr/local/webserver/mysql
datadir = /www/data_mysql
log-error = /usr/local/webserver/mysql/mysql_error.log
pid-file = /usr/local/webserver/mysql/mysql.pid
open_files_limit = 65535
back_log = 600
max_connections = 5000
max_connect_errors = 1000
table_open_cache = 1024
external-locking = FALSE
max_allowed_packet = 32M
sort_buffer_size = 1M
join_buffer_size = 1M
thread_cache_size = 600
#thread_concurrency = 8
query_cache_size = 128M
query_cache_limit = 2M
query_cache_min_res_unit = 2k
default-storage-engine = MyISAM
default-tmp-storage-engine=MYISAM
thread_stack = 192K
transaction_isolation = READ-COMMITTED
tmp_table_size = 128M
max_heap_table_size = 128M
log-slave-updates
log-bin = /usr/local/webserver/mysql/binlog/binlog
binlog-do-db=oa_fb
binlog-ignore-db=mysql
binlog_cache_size = 4M
binlog_format = MIXED
max_binlog_cache_size = 8M
max_binlog_size = 1G
relay-log-index = /usr/local/webserver/mysql/relaylog/relaylog
relay-log-info-file = /usr/local/webserver/mysql/relaylog/relaylog
relay-log = /usr/local/webserver/mysql/relaylog/relaylog
expire_logs_days = 10
key_buffer_size = 256M
read_buffer_size = 1M
read_rnd_buffer_size = 16M
bulk_insert_buffer_size = 64M
myisam_sort_buffer_size = 128M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1
myisam_recover
interactive_timeout = 120
wait_timeout = 120
skip-name-resolve
#master-connect-retry = 10
slave-skip-errors = 1032,1062,126,1114,1146,1048,1396
#master-host = 192.168.1.2
#master-user = username
#master-password = password
#master-port = 3306
server-id = 1
loose-innodb-trx=0
loose-innodb-locks=0
loose-innodb-lock-waits=0
loose-innodb-cmp=0
loose-innodb-cmp-per-index=0
loose-innodb-cmp-per-index-reset=0
loose-innodb-cmp-reset=0
loose-innodb-cmpmem=0
loose-innodb-cmpmem-reset=0
loose-innodb-buffer-page=0
loose-innodb-buffer-page-lru=0
loose-innodb-buffer-pool-stats=0
loose-innodb-metrics=0
loose-innodb-ft-default-stopword=0
loose-innodb-ft-inserted=0
loose-innodb-ft-deleted=0
loose-innodb-ft-being-deleted=0
loose-innodb-ft-config=0
loose-innodb-ft-index-cache=0
loose-innodb-ft-index-table=0
loose-innodb-sys-tables=0
loose-innodb-sys-tablestats=0
loose-innodb-sys-indexes=0
loose-innodb-sys-columns=0
loose-innodb-sys-fields=0
loose-innodb-sys-foreign=0
loose-innodb-sys-foreign-cols=0

slow_query_log_file=/usr/local/webserver/mysql/mysql_slow.log
long_query_time = 1
[mysqldump]
quick
max_allowed_packet = 32M
4、初始化数据库

$/usr/local/webserver/mysql/scripts/mysql_install_db –defaults-file=/etc/my.cnf  –user=mysql
显示如下信息:

Installing MySQL system tables…2015-01-26 20:18:51 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use –explicit_defaults_for_timestamp server option (see documentation for more details).
OK

Filling help tables…2015-01-26 20:18:57 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use –explicit_defaults_for_timestamp server option (see documentation for more details).
OK

5、创建开机启动脚本

$ cd /usr/local/webserver/mysql/
$ cp support-files/mysql.server /etc/rc.d/init.d/mysqld
$ chkconfig –add mysqld
$ chkconfig –level 35 mysqld on
6、启动mysql服务器

$ service mysqld start

%title插图%num

7、连接 MySQL

$ /usr/local/webserver/mysql/bin/mysql -u root -p

%title插图%num

修改MySQL用户密码
mysqladmin -u用户名 -p旧密码 password 新密码
或进入mysql命令行

SET PASSWORD FOR ‘用户名’@’主机’ = PASSWORD(‘密码’);
创建新用户并授权:

grant all privileges on *.* to 用户名@’%’ identified by ‘密码’ with grant option;
其他命令
启动:service mysqld start
停止:service mysqld stop
重启:service mysqld restart
重载配置:service mysqld reload

配置mysql允许远程连接的方法

默认情况下,MySQL只允许本地登录,如果要开启远程连接,则需要修改/etc/my.cnf文件

vim /etc/my.cnf
注释这一行:bind-address=127.0.0.1 ==> #bind-address=127.0.0.1
保存退出。
mysql -uroot -p123456

为需要远程登录的用户赋予权限:
复制代码 代码如下:

mysql> GRANT ALL PRIVILEGES ON *.* TO root@”%” IDENTIFIED BY “123456”;
或者: update user set host=’%’ where user=’root’;
mysql> flush privileges;
远程登录命令:
mysql -h 139.199.163.114 -u root -p(-h后跟的是要登录主机的ip地址)

%title插图%num
%title插图%num

Linux 下有 supervisord,还有哪些管理服务器的黑科技?

以前服务器上就跑几个程序,每次重启服务器,都是再手动启动程序

通过 Windows 的计划任务或者设置开机启动,能自动启动

但是,如果服务器不重启,程序挂掉了,有类似 supervisord 的监控程序么?

不知道大家在管理服务器方面还有哪些黑科技?比如管理多台服务器、再比如快速部署之类的,谢谢大家

wxlg1117 1
wxlg1117 2017-08-24 01:39:44 +08:00 via Android ❤️ 6
alwaysup 或者 firedaemon,都挺好用
only0jac 2
only0jac 2017-08-24 08:06:47 +08:00 via Android
@wxlg1117 感谢,前者比后者小很多
hjc4869 3
hjc4869 2017-08-24 08:18:45 +08:00 via Android
计划任务可以自动重启挂掉的进程。taskschd.dll 可以用 vbs/js 脚本或者 C#/C++等语言调用,也可以 powershell remote,部署起来方便*了。
only0jac 4
only0jac 2017-08-24 08:42:47 +08:00 via Android
@hjc4869 计划任务只能定时执行或者重启时执行吧?你说的那种是不是基于事件消息?那个事件消息,普通程序挂掉是没有消息的,mysql 有
hjc4869 5
hjc4869 2017-08-24 09:18:36 +08:00
@only0jac Settings 里有,If the task fails, restart every ____,这个 fails 就是指 task 的那个进程 exit code 不为 0。
当然,你必须让你启动的那个进程一直活着。如果你想监控它子进程的状态,就办不到了。
only0jac 6
only0jac 2017-08-24 23:40:51 +08:00
@hjc4869 谢谢,不过有缺陷,你说的计划任务 If the task fails,是指在计划任务主动启动程序时,失败的话会再次重试,如果这个程序中途挂掉,就没办法自动拉起来
hjc4869 7
hjc4869 2017-08-25 00:34:25 +08:00
@only0jac 然而对于一个进程来讲没有所谓的“启动程序时”和“中途”的区分,创建一个进程不管过多久返回非 0 值在 taskschd 看来都是 failed。
only0jac 8
only0jac 2017-08-25 09:00:48 +08:00 via Android
@hjc4869 多谢,我描述一个场景,比如,服务器正常运行着几个程序,忽然其中一个挂掉了,我希望能自动拉起这个挂掉的程序并邮件通知我
QQ2171775959 9
QQ2171775959 2017-08-25 16:26:03 +08:00
监控方面,可以利用的工具还是蛮多。阿里监控也可以啊。

在Android系统上安装linux发行版

Install linux distribution

(Debian/Ubuntu/Kali Linux/Fedora/openSUSE/Gentoo/RootFS/Arch Linux) on Android system

在Android系统上安装linux发行版

(Debian/Ubuntu/Kali Linux/Fedora/openSUSE/Gentoo/RootFS/Arch Linux)

1、所用的手机类型为Samsung Note2 Verizon i605

%title插图%num

2、首先对自己的手机做下清理,将SD卡至少剩余4G以上空间;

3、备份Android手机中重要的文件,如通讯录等,防止因刷机异常造成的机器无法正常启动的问题,俗话说ROOT有风险,刷机需谨慎!

本人之前就有一次因自行安装了一个linux,修改了系统的挂载分区,造成无法正常开机的现象,无奈之下,只有重新刷机,望大家以此为鉴,谨慎行事。

4、做好上述步骤后,保持手机处于联网和电量饱满的状态(一边充电一边联网是*好的);

5、剩下的就是软件的准备工作了,前提是你的手机已经ROOT过了,没有ROOT及安装过SuperSU的手机请自行处理。

6、ROOT完毕后,安装的软件就很简单了,就一个linux deploy软件。

如果你是爱折腾的DIY用户,请自行安装其他的软件(如终端模拟器,SSHelper等等);

7、安装好Linux Deploy软件后,点击那个小企鹅打开软件,找到右下角的那个下载图标,如图;

%title插图%num

进入Linux的属性页面即配置界面:

%title插图%num

%title插图%num

%title插图%num

%title插图%num

%title插图%num

%title插图%num

%title插图%num

%title插图%num

%title插图%num

%title插图%num

%title插图%num

如想退出,请先点击STOP停止服务,然后点击手机的菜单键,在弹出的菜单上,选择Exit退出即可。

桌面的PC电脑也是可以登录到手机的,用PUTTY或其它的ssh登录终端;

%title插图%num

其它的安装文件请自行搜索从百度上下载即可,

也可以从我提供的下载地址免币下载:

http://download.csdn.net/detail/leekwen/8603455

软件包中APK的列表如下:

1、com.arachnoid.sshelper.apk

这个为启动sshd服务的软件,感觉这个是所有的SSHD服务中做的*好的了,

但是存在一个问题,就是手机联网后,DNS没有办法获取到,所以造成ping域名无法解析的问题,ping IP地址不存在问题。

2、com.speedsoftware.rootexplorer.apk

这个你懂的,RE管理器,不赘述;

3、eu.chainfire.supersu.apk

这个你也懂的,超级用户管理软件,不赘述;

4、jackpal.androidterm.apk

这个是Android手机的超级终端或终端模拟器,能进入Android手机内部运行busybox的所有命令;

5、ru.meefik.linuxdeploy.apk