CentOS7 安装 ruby

不知何故在 CentOS 7 上死活找不到最新的 2.2 stable 的 ruby 版本,于是就准备手动 make 安装;

按照官网的 https://www.ruby-lang.org/en/documentation/installation/ 的说明也没有什么大坑,但是最终还是没有安装上,报错 cannot install gem bundles lack of zlib ,但是 zlib 是存在的,按照网上的其他方法把需要的几个库都带上一起装了还是报这个错,装的库有

 # yum install openssl* openssl-devel zlib-devel gcc gcc-c++ make autoconf readline-devel curl-devel expat-devel gettext-devel 

后来觉得是否因为编译的文件路径有问题,于是在 configure 的时候加上如下参数:

 # ./configure --enable-shared --enable-pthread 

然后再次 make install ,成功了。但是需要手动加入路径才能直接使用 ruby 命令:

 # echo "PATH=$PATH:/usr/local/ruby/bin;export PATH" 
 # source /etc/profile 

其他如 SELinux 的问题没有出现,所以也不需要关掉。

rhel5/centos5 GPT 分区安装

redhat/centos 5.X 系列,在安装的时候如果磁盘分区是 GPT 会出现提示

Your boot partition is on a disk using GPT  partitioning scheme but this machine cannot boot using GPT

一下是官方给出的解决办法:

把安装光盘插入,进入救援模式 (rescue) , 在磁盘上 /dev/sda,不是分区上 /dev/sda1 执行命令:

dd if=/dev/zero of=/dev/sda bs=1024 count=1024

然后重启,使用刚刚创建的小分区为 /boot 分区进行安装,按照提示会要求进行初始化,直接初始化即可。

原因:

boot 磁盘必须使用 DOS MBR 格式的分区表,也就是不能超过 2.2 TB,这个问题在之后的 6.X 中解决了,5.X 不提供 GPT 解决。

清理inactive内存

cat /proc/meminfo 可以看到 inactive 的大小,如果很大的时候可以进行回收,网上有一条命令:

free && sync && echo 3 > /proc/sys/vm/drop_caches && echo “” && free

这个命令的主要部分是:

sync --数据写入硬盘

/proc/sys/vm/drop_caches --分成3个等级,一般是3

To free pagecache:

# echo 1 > /proc/sys/vm/drop_caches

To free dentries and inodes:

# echo 2 > /proc/sys/vm/drop_caches

To free pagecache, dentries and inodes:

echo 3 > /proc/sys/vm/drop_caches

这条命令下去之后如果内存占用还是很高,需求另外判断情况。

在LINUX安装过程中的一些启动问题的解决

和Ubuntu的WUBI、Fedora的LiveUSB不同的是,很多LINUX都没有安装的简易方式,当然一方面是为了通过出售DVD光盘等来解决一部分收入问题(目前比较主流的盈利方式、另一种是做大之后启用有偿技术支援,一些企业版的Linux就是这样的),另一方面需要这些措施的人都是装双系统的人。我同意一个观点就是为什么不直接抛弃Windows呢?既然选择Linux肯定是因为好的而不是坏的是吧,低资源占用和自由灵活、、、开个玩笑而已,就像我一样的一部分MS的专家,我们主要是工作在WIN环境下,但是为了更好的服务用户,学习Linux也是在所难免的。

不废话,直接分享问题解决的方法:

1.fedora的LiveUSB 提示ascii错误,无法创建启动盘:

答:将镜像文件放到LiveUSB的安装目录试试

2. UltraISO创建之后启动无响应、或者启动后跳转到sh命令:

答:一般出现该问题是由于boot选项的问题,请编辑syslinux的syslinux.cfg文件,把文件内所有的root=live:CDLABEL=Fedora-16-x86_64-Live-Desktop.iso修改成root=live:LABEL=U盘卷标 (一般制作完成显示的都是Fedora-16-x那就改成root=live:LABEL=Fedora-16-x即可,后不带.iso,注意空格问题)
据称一些系统无响应的时候,还需要打开U盘目录,删除除syslinux的其他文件夹和文件,我没遇到过,不敢说。

还有的直接把应道镜像放到目标盘然后用Grub4Dos引导的,我试了一下,没有发现错误,随后因为硬件问题我放弃了这个方法。此类有如下问题:所在盘的文件格式应为FAT32,裸盘安装的时候在分区界面用Shift+F4调出cmd使用Diskpart指令分一下。最后100M的WIN保留分区启动的时候有问题,需要用管理员身份运行CMD,然后输入“C:windowssystem32bcdboot.exe  C:windows /s C: ”,提示成功后需要设置C盘为活动,然后此分区可以留给Grub4Dos用来双系统的启动

运维咆哮,WIN和Linux,你们如何手挽手

作为一个运维,接触的大部分服务器是以Linux居多,WIN随后,UNIX也占据一定的份额。对于一个运维来说,稳定、安全、高效,这是对于服务器的三大要求,几乎和机器人的三大法则一样,深深地扎根在运维和系统的根里。

先看第一个版本的咆哮,为什么对Linux怒吼:

一句新的格言是,对于有着正常生活的人来说,幸好还有Windows。

实不相瞒,这其实是一篇不停地大声抱怨Linux的文章。但是现在我生气得很,沮丧得很。众所周知,Linux人员打心底里就瞧不起没有夜以继日地琢磨Linux发行版细枝末节的人,但我有句话要说:我可不像你们这样Linux人有的是大把时间来钻研技术。

我受够了Linux

我受够了。我受够了所有拼凑起来的各系统部分必须版本刚刚好,必须有刚刚好的依赖关系,必须以刚刚好的方式来编译,必须选择刚刚好的时机,还必须数量刚刚好的的人员在刚刚好的时间步调一致。

我受够了所有不同的软件包管理器。一些代码使用某一个软件包管理器来分发,另一些代码则使用别的软件包管理器来分发。受够了只要按照资料不充分的HOWTO文件,在终端窗口中机械地输入一行行代码,可以将模块下载到Ubuntu上,却根本无法下载到CentOS或Fedora上,就因为没有按刚刚好的顺序来指定代码存储库。

继续阅读“运维咆哮,WIN和Linux,你们如何手挽手”