月份: 2016-12

UBUNTU内核升级后修复VMWare

因为之前使用破解锐速一直用着低版本,最近机子升级内核后VMWARE无法启动。查找相关资料发现原因在于升级到ubuntu 14.04之后现在的Linux内核版本是3.13,这个内核版本修改了一些底层函数,而VMWare的相关源码包还没有来得及修改相关代码。由于是内核版本的问题,所以同样的问题也大量出现在Fedora等系统上。

因此同样的问题可以继续存在于3.14, 3.15等后续版本中。解决方法如下。

先尝试直接启用自检

vmware-modconfig --console --install-all
  • 1,获取root权限,进入相关目录:

    su

    cd /usr/lib/vmware/modules/source

  • 2,解压vmnet源码包(得到vmnet-only文件夹):

    tar -xf vmnet.tar

  • 3,备份原来的文件:

    mv vmnet.tar vmnet.tar.bak

  • 4,修改源文件filter.c:

4.1,修改206行的:VNetFilterHookFn(const unsigned int hooknum // IN:

为:VNetFilterHookFn(const struct nf_hook_ops *ops, // IN:

4.2,修改255行的: transmit = (hooknum == VMW_NF_INET_POST_ROUTING);

为: transmit = (ops->hooknum == VMW_NF_INET_POST_ROUTING);

  • 5,打包修改过的文件,删除无用的文件

    tar -uf vmnet.tar vmnet-only

    rm -rf vmnet-only

  • 6,重新编译内核模块,启动vmware

可以直接点击vmware workstation的图标,启动自动检测和编译过程;也可以通过命令:

vmware-modconfig --console --install-all 

参考资料:
http://blog.csdn.net/yanxiangtianji/article/details/25656335
http://blog.csdn.net/bearox/article/details/21294609

$$R多用户管理脚本

一个Shell脚本,集成$$R多用户管理,流量限制,加密更改等基本操作。
如果只是想个人用一个小内存和基友们一起分享$$R的话,这是很适合的~$$panel可能搭建比较麻烦,且需要一定得内存来运行Web环境,可能在一些情况下不是很适合一些小白用户。已测试通过64MB小JJ。
为了防止$$R程序被滥用来免流,已经禁止各类非正常Host以及ML有关端口

  1. 功能

    一键开启、关闭SSR服务
    添加、删除、修改用户端口和密码
    自由限制用户端口流量使用
    自动修改防火墙规则
    自助修改SSR加密方式、协议、混淆等参数
    自动统计,方便查询每个用户端口的流量使用情况
    自动安装Libsodium库以支持Chacha20等加密方式
    更多特性欢迎提议留言

  2. 缺点

    只支持统计IPV4流量
    程序路径已写死,只能通过此脚本进行管理

  3. 系统支持

    Ubuntu 14.04
    Ubuntu 16.10
    Debian7
    Debian8

  4. 安装

wget -N --no-check-certificate https://raw.githubusercontent.com/FunctionClub/SSR-Bash/master/install.sh && bash install.sh
  1. 卸载方法

wget -N --no-check-certificate https://raw.githubusercontent.com/FunctionClub/SSR-Bash/master/uninstall.sh && bash uninstall.sh
  1. 项目地址

https://github.com/FunctionClub/SSR-Bash

LINODE的KVM架构LINUX更换内核

之前测试LINODE的日本机子,新机房已经是采用了KVM架构。更换内核的方法和老机房XEN更换内核方法有所不同。

  • 安装Grub
    安装过程中可能会询问安装位置,不需要安装到MBR

Arch Linux

pacman -S linux grub

CentOS 7

yum install kernel grub2

Debian

apt-get install linux-image-amd64 grub2

Fedora 22

dnf install kernel-core grub2

Ubuntu

apt-get install linux-image-virtual grub2

Gentoo

echo "GRUB_PLATFORMS=\"coreboot pc\"" >> /etc/portage/make.conf
emerge --ask sys-boot/grub sys-kernel/gentoo-sources genkernel
eselect kernel list
eselect kernel set [# of new kernel]
zcat /proc/config.gz > /usr/src/linux/.config
genkernel --oldconfig all
  • 配置Grub

编辑/etc/default/grub,修改以下项目:

GRUB_TIMEOUT=10
GRUB_CMDLINE_LINUX="console=ttyS0,19200n8"
GRUB_DISABLE_LINUX_UUID=true
GRUB_SERIAL_COMMAND="serial --speed=19200 --unit=0 --word=8 --parity=no --stop=1"
GRUB_TERMINAL=serial

更新bootloader,更新内核后需要再一次运行该命令来更新GRUB目录,默认为列表第一个内核启动:

Arch Linux

grub-mkconfig -o /boot/grub/grub.cfg

Debian 8 & Ubuntu 15.04

update-grub

CentOS 7

mkdir /boot/grub
grub2-mkconfig -o /boot/grub/grub.cfg

Fedora 22 – Replace with the current kernel version

dracut /boot/initrd-4.0.5-300.fc22.x86_64.img 4.0.5-300.fc22.x86_64 
mkdir /boot/grub
grub2-mkconfig -o /boot/grub/grub.cfg

Gentoo

mkdir /boot/grub
grub2-mkconfig -o /boot/grub/grub.cfg
  • 重启到Grub2 模式

在LINODE面板选择编辑你的配置文件
Click on Edit under the Configuration Profiles section

Boot Settings选项的Kernel列表里选择GRUB 2
In the Boot Settings section, select GRUB 2 from the Kernel drop down menu

Save Changes保存,重启机子后就可以按通常方式更换发行版内核了。
启动中可能会出现以下错误,可以忽略。

error: file `/boot/grub/i386-pc/all_video.mod' not found.
Loading Linux linux ...
Loading initial ramdisk ...

Press any key to continue...