Centos7 修改SSH 端口

修改/etc/ssh/sshd_config

修改firewall配置 firewall添加想要修改的ssh端口:

修改SELinux 使用以下命令查看当前SElinux 允许的ssh端口:

添加33378端口到 SELinux

然后确认一下是否添加进去

如果成功会输出

重启ssh

测试新端口的ssh连接 测试修改端口以后的ssh连接,如果成功则将step1里面的port 22 重新注释掉   from:https://www.cnblogs.com/rwxwsblog/p/5756894.html

龙生   01 Apr 2018
View Details

CentOS系统中常用查看系统信息和日志命令小结

进程 # ps -ef # 查看所有进程 # top # 实时显示进程状态(另一篇文章里面有详细的介绍) 用户: # w # 查看活动用户 # id <用户名> # 查看指定用户信息 # last # 查看用户登录日志 # cut -d: -f1 /etc/passwd # 查看系统所有用户 # cut -d: -f1 /etc/group # 查看系统所有组 # crontab -l # 查看当前用户的计划任务 系统 日志文件( 可以通过cat 或tail 命令来查看) /var/log/message 系统启动后的信息和错误日志,是Red Hat Linux中最常用的日志之一 /var/log/secure 与安全相关的日志信息 /var/log/maillog 与邮件相关的日志信息 /var/log/cron 与定时任务相关的日志信息 /var/log/spooler 与UUCP和news设备相关的日志信息 /var/log/boot.log 守护进程启动和停止相关的日志消息 系统信息 # uname -a # 查看内核/操作系统/CPU信息 # cat /etc/issue # cat /etc/redhat-release # 查看操作系统版本 # cat /proc/cpuinfo # 查看CPU信息 # hostname # 查看计算机名 # lspci -tv # 列出所有PCI设备 # lsusb […]

龙生   01 Apr 2018
View Details

查看Linux系统版本信息

一、查看Linux内核版本命令(两种方法): 1、cat /proc/version [root@S-CentOS home]# cat /proc/version Linux version 2.6.32-431.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Fri Nov 22 03:15:09 UTC 2013 2、uname -a [root@S-CentOS home]# uname -a Linux S-CentOS 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux 二、查看Linux系统版本的命令(3种方法): 1、lsb_release -a,即可列出所有版本信息: [root@S-CentOS ~]# lsb_release -a LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch Distributor ID: CentOS Description: CentOS release 6.5 (Final) Release: 6.5 Codename: Final 这个命令适用于所有的Linux发行版,包括RedHat、SUSE、Debian…等发行版。 2、cat /etc/redhat-release,这种方法只适合Redhat系的Linux: [root@S-CentOS home]# cat /etc/redhat-release CentOS release 6.5 (Final) 3、cat /etc/issue,此命令也适用于所有的Linux发行版。 [root@S-CentOS home]# cat /etc/issue CentOS release […]

龙生   01 Apr 2018
View Details

Laravel 5.4: 特殊字段太长报错

laravel 5.4 改变了默认的数据库字符集,现在utf8mb4包括存储emojis支持。如果你运行MySQL v5.7.7或者更高版本,则不需要做任何事情。 当你试着在一些MariaDB或者一些老版本的的MySQL上运行 migrations 命令时,你可能会碰到下面这个错误:

我们可以在 AppServiceProvider.php 文件里的 boot 方法里设置一个默认值:

  from:https://www.cnblogs.com/betx/p/6544090.html

龙生   30 Mar 2018
View Details

GIT创建与合并分支

在版本回退里,你已经知道,每次提交,Git都把它们串成一条时间线,这条时间线就是一个分支。截止到目前,只有一条时间线,在Git里,这个分支叫主分支,即master分支。HEAD严格来说不是指向提交,而是指向master,master才是指向提交的,所以,HEAD指向的就是当前分支。 一开始的时候,master分支是一条线,Git用master指向最新的提交,再用HEAD指向master,就能确定当前分支,以及当前分支的提交点: 每次提交,master分支都会向前移动一步,这样,随着你不断提交,master分支的线也越来越长。 当我们创建新的分支,例如dev时,Git新建了一个指针叫dev,指向master相同的提交,再把HEAD指向dev,就表示当前分支在dev上: 你看,Git创建一个分支很快,因为除了增加一个dev指针,改改HEAD的指向,工作区的文件都没有任何变化! 不过,从现在开始,对工作区的修改和提交就是针对dev分支了,比如新提交一次后,dev指针往前移动一步,而master指针不变: 假如我们在dev上的工作完成了,就可以把dev合并到master上。Git怎么合并呢?最简单的方法,就是直接把master指向dev的当前提交,就完成了合并: 所以Git合并分支也很快!就改改指针,工作区内容也不变! 合并完分支后,甚至可以删除dev分支。删除dev分支就是把dev指针给删掉,删掉后,我们就剩下了一条master分支: 真是太神奇了,你看得出来有些提交是通过分支完成的吗? 下面开始实战。 首先,我们创建dev分支,然后切换到dev分支:

  git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:

  然后,用git branch命令查看当前分支:

  git branch命令会列出所有分支,当前分支前面会标一个*号。 然后,我们就可以在dev分支上正常提交,比如对readme.txt做个修改,加上一行:

  然后提交:

  现在,dev分支的工作完成,我们就可以切换回master分支:

  切换回master分支后,再查看一个readme.txt文件,刚才添加的内容不见了!因为那个提交是在dev分支上,而master分支此刻的提交点并没有变: 现在,我们把dev分支的工作成果合并到master分支上:

  git merge命令用于合并指定分支到当前分支。合并后,再查看readme.txt的内容,就可以看到,和dev分支的最新提交是完全一样的。 注意到上面的Fast-forward信息,Git告诉我们,这次合并是“快进模式”,也就是直接把master指向dev的当前提交,所以合并速度非常快。 当然,也不是每次合并都能Fast-forward,我们后面会讲其他方式的合并。 合并完成后,就可以放心地删除dev分支了:

  删除后,查看branch,就只剩下master分支了:

  因为创建、合并和删除分支非常快,所以Git鼓励你使用分支完成某个任务,合并后再删掉分支,这和直接在master分支上工作效果是一样的,但过程更安全。 小结 Git鼓励大量使用分支: 查看分支:git branch 创建分支:git branch <name> 切换分支:git checkout <name> 创建+切换分支:git checkout -b <name> 合并某分支到当前分支:git merge <name> 删除分支:git branch -d <name>   from:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001375840038939c291467cc7c747b1810aab2fb8863508000

龙生   28 Mar 2018
View Details

git常用命令

$ git add . 添加所有文件 注意有个 . $ git commit -m '注释' 提交本地 $ git push origin master提交给默认分支 $ git -rm 删除 $ git pull origin master 从默认分支下载 $ git branch -v 查看所有分支 $ git log --pretty=oneline 查看版本日志 $ git reset --hard HEAD^/HEAD^^/HEAD~100/2287b773d655 恢复指定的版本 $ git reflog 显示所有执行过的命令行 ——————————————————————————————-- 查看分支:git branch 创建分支:git branch <name> 切换分支:git checkout <name> 创建+切换分支:git checkout -b <name> 合并某分支到当前分支:git merge <name> 删除分支:git branch -d <name>

龙生   28 Mar 2018
View Details

SVN建立分支和合并代码

1.SVN建立分支 正确SVN服务器上会有两个目录:trunk和branches。trunk目录下面代码就是所谓的主版本,而branches文件夹主要是用来放置分支版本。分支版本是依赖于主版本的,因此建立分支版本时候,必须要在trunk文件夹操作才可以的。下面是推荐的操作步骤: (1)从SVN上checkout Trunk版本下来。如果在本地机器上已有了trunk版本,需要更新一下到最新代码。 (2)在本地抓下来的trunk版本的文件上,点击右键,弹出菜单,选中如下菜单项。 弹出如下对话框,按在下面的要求,填写好配置。 点击OK按钮,SVN就会建立好对应的分支版本。 2.从SVN抓取分支代码 (1)在本地机,建立新目录,从SVN分支版本路径上,抓取分支版本上的代码 (2)在F:\branchesh_v20160726中可以对代码进行正常地更新和提交操作。 2.1删除不想要的分支版本 (1)在本地机的SVN目录,右键,选择TortoiseSVN/Repo-broswer,进入版本库浏览(Repo-browser),在右侧树状窗口中的branches下,选择你要删除的分支版本,右键弹出菜单,点击“删除”即可。分支就能从代码库中删除。 3.从分支版本合并代码到trunk主版本中去 如果在分支版本新功能开发完成,需要将分支上的修改合并到主版本中,按下面步骤操作: (1)在合并代码之前,我们首先要更新分支代码,以防止别人提交了代码而你没有及时更新。造成别人的代码丢失。 (2)接下来我们要做的是将要有修改的代码提交。以保证其他人员的代码为最新状态。 (3)我们在分支代码合并到主干之前,先将主干代码更新一下。以保证别的人员合并之后的代码能及时更新到你本地。步骤同步骤(1)。 (4)主干代码更新完成之后,接下来我们打开分支代码的日志 (5)找到你要合并到主干的代码日志。然后右键打开菜单,选择Merge revision to  ,然后选择你的主干目录确定即可 from:https://blog.csdn.net/luofeixiongsix/article/details/52052631

龙生   28 Mar 2018
View Details

GIT版本回退

现在,你已经学会了修改文件,然后把修改提交到Git版本库,现在,再练习一次,修改readme.txt文件如下:

  然后尝试提交:

  像这样,你不断对文件进行修改,然后不断提交修改到版本库里,就好比玩RPG游戏时,每通过一关就会自动把游戏状态存盘,如果某一关没过去,你还可以选择读取前一关的状态。有些时候,在打Boss之前,你会手动存盘,以便万一打Boss失败了,可以从最近的地方重新开始。Git也是一样,每当你觉得文件修改到一定程度的时候,就可以“保存一个快照”,这个快照在Git中被称为commit。一旦你把文件改乱了,或者误删了文件,还可以从最近的一个commit恢复,然后继续工作,而不是把几个月的工作成果全部丢失。 现在,我们回顾一下readme.txt文件一共有几个版本被提交到Git仓库里了: 版本1:wrote a readme file

  版本2:add distributed

  版本3:append GPL

  当然了,在实际工作中,我们脑子里怎么可能记得一个几千行的文件每次都改了什么内容,不然要版本控制系统干什么。版本控制系统肯定有某个命令可以告诉我们历史记录,在Git中,我们用git log命令查看:

  git log命令显示从最近到最远的提交日志,我们可以看到3次提交,最近的一次是append GPL,上一次是add distributed,最早的一次是wrote a readme file。 如果嫌输出信息太多,看得眼花缭乱的,可以试试加上--pretty=oneline参数:

  需要友情提示的是,你看到的一大串类似3628164…882e1e0的是commit id(版本号),和SVN不一样,Git的commit id不是1,2,3……递增的数字,而是一个SHA1计算出来的一个非常大的数字,用十六进制表示,而且你看到的commit id和我的肯定不一样,以你自己的为准。为什么commit id需要用这么一大串数字表示呢?因为Git是分布式的版本控制系统,后面我们还要研究多人在同一个版本库里工作,如果大家都用1,2,3……作为版本号,那肯定就冲突了。 每提交一个新版本,实际上Git就会把它们自动串成一条时间线。如果使用可视化工具查看Git历史,就可以更清楚地看到提交历史的时间线: 好了,现在我们启动时光穿梭机,准备把readme.txt回退到上一个版本,也就是“add distributed”的那个版本,怎么做呢? 首先,Git必须知道当前版本是哪个版本,在Git中,用HEAD表示当前版本,也就是最新的提交3628164…882e1e0(注意我的提交ID和你的肯定不一样),上一个版本就是HEAD^,上上一个版本就是HEAD^^,当然往上100个版本写100个^比较容易数不过来,所以写成HEAD~100。 现在,我们要把当前版本“append GPL”回退到上一个版本“add distributed”,就可以使用git reset命令:

  --hard参数有啥意义?这个后面再讲,现在你先放心使用。 看看readme.txt的内容是不是版本add distributed:

  果然。 还可以继续回退到上一个版本wrote a readme file,不过且慢,然我们用git log再看看现在版本库的状态:

  最新的那个版本append GPL已经看不到了!好比你从21世纪坐时光穿梭机来到了19世纪,想再回去已经回不去了,肿么办? 办法其实还是有的,只要上面的命令行窗口还没有被关掉,你就可以顺着往上找啊找啊,找到那个append GPL的commit id是3628164…,于是就可以指定回到未来的某个版本:

  版本号没必要写全,前几位就可以了,Git会自动去找。当然也不能只写前一两位,因为Git可能会找到多个版本号,就无法确定是哪一个了。 再小心翼翼地看看readme.txt的内容:

  果然,我胡汉三又回来了。 Git的版本回退速度非常快,因为Git在内部有个指向当前版本的HEAD指针,当你回退版本的时候,Git仅仅是把HEAD从指向append GPL: 改为指向add distributed: 然后顺便把工作区的文件更新了。所以你让HEAD指向哪个版本号,你就把当前版本定位在哪。 现在,你回退到了某个版本,关掉了电脑,第二天早上就后悔了,想恢复到新版本怎么办?找不到新版本的commit id怎么办? 在Git中,总是有后悔药可以吃的。当你用$ git reset --hard HEAD^回退到add […]

龙生   28 Mar 2018
View Details

Dapper功能讲解

简述 适用特性 使用Dapper流程 代码示例 简述 Dapper是一个轻量级的ORM工具:ORM框架的核心思想是对象关系映射,ORM是将表与表之间的操作,映射成对象和对象之间的操作,就是通过操作实体类来达到操作表的目的。从数据库提取的数据会自动按你设置的映射要求封装成特定的对象。之后你就可以通过对对象进行操作来修改数据库中的数据。这时候你面对的不是信息的碎片,而是一个形象鲜明的对象。 ORM 框架很多: Dapper、 Mybatis.Net、EntityFramework 和 NHibernate。如果你在小的项目中,使用Entity Framework、NHibernate 来处理大数据访问及关系映射,未免有点杀鸡用牛刀。而Mybatis.Net需要配置XML文件,综合考虑你会觉得觉得ORM省时省力。 适用特性 1、Dapper是一个轻型的ORM类。代码就一个SqlMapper.cs文件,编译后就70K。 2、Dapper很快。Dapper的速度接近与IDataReader,取列表的数据超过了DataTable。 3、Dapper支持多数据库。Dapper支持Mysql,SqlLite,SqlServer,Oracle等一系列的数据库。 4、Dapper支持多表并联的对象。支持一对多 多对多的关系。并且没侵入性,想用就用,不想用就不用。无XML无属性。代码以前怎么写现在还怎么写。 5、Dapper原理通过Emit反射IDataReader的序列队列,来快速的得到和产生对象。性能很高(性能和原生ado.net相近)。 6、Dapper支持net2.0,3.0,3.5,4.0。【如果想在Net2.0下使用,可以去网上找一下Net2.0下如何配置运行Net3.5即可。】 7、Dapper语法十分简单,快捷添加到项目,容易上手。并且无须迁就数据库的设计。 适用Dapper流程 流程一: 通过NuGet程序包进行Dapper安装引用: 这个引用的Dapper DLL文件是对前面说的SqlMapper.cs 源文件的封装。 流程二: 我们这里用Mysql数据库,那么用到的MySql.Data.dll在官网下载.net驱动包(已经附加在此教程demo中) mysql .net连接驱动下载地址:http://dev.mysql.com/downloads/connector/net/ 示例代码 1、定义一个Person类对应数据库的Person表

  2、定义连接数据库字符串

  3、 新增、修改、删除的 Execute 方法

批量新增 和新增一条语句是一样的,后面的param 是object 对象,单个模型数据和集合都可以支持。执行上面方法会插入多条记录,这样sql可以灵活的控制,参数不用像ADO.Net那样声明每个参数,最后还要把参数集合赋值给ADO的命令。可以看出这样简洁多了。 4、 查询的Query 方法

  5、存储过程调用

  6、多个数据库插入数据

通过上面的代码演示主要常用的是:封装后 Query 方法、Excute 方法。(其底层的封装的方法可以见源码:513 from:https://blog.csdn.net/laokang426/article/details/77885137

龙生   27 Mar 2018
View Details
1 199 200 201 432