SELinux 基本用法

看了很多网络上有关于 SELinux 的文章以及到书店去翻了一下有提到 SELinux 的 Linux 书籍。看完了的感觉不是很好,几乎都沒提到什么是 SELinux?SELinux 的运作机制是什么?

大部份提到的解决办法,都是 “停用 SELinux”,这样也只不过是治标而不是治本的方法。

SELinux 的配置

/etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - SELinux is fully disabled.
SELINUX=enforcing
# SELINUXTYPE= type of policy in use. Possible values are:
# targeted - Only targeted network daemons are protected.
# strict - Full SELinux protection.
SELINUXTYPE=targeted

压缩 KVM 的 qcow2 镜像文件

首先,需要对虚拟机系统对剩余空间写零操作:

# dd if=/dev/zero of=/zero.dat

删除 zero.dat:

# rm /zero.dat

关闭虚拟机,进入虚拟机镜像文件的目录,通过 qemu-img 的 convert 来操作:

$ qemu-img convert -O qcow2 /path/old.img.qcow2 /path/new.img.qcow2

KVM 端口转发

hostfwd=[tcp|udp]:[hostaddr]:hostport-[guestaddr]:guestport

将进入到主机端口的 TCP 或者 UDP 连接 转发到客户机的某个地址和端口

如果没有指定 “guestaddr”, 那么默认转到 10.0.2.15

通过指定 “hostaddr”,可以绑定到主机某个特点的接口上

KVM 内核虚拟化

KVM(Kernel-based Virtual Machine) 是一个全虚拟化的解决方案,它自 2.6.20 以后正式成为 Linux 内核的一部分,也就是说,它是 Linux 内核官方支持的一个虚拟化方案。KVM 的硬件需求是 CPU 必须支持虚拟化,对于 Intel CPU 来说是 Intel VT,AMD CPU 则是 AMD-V。

视频是我本地的 kvm guest 中的 winxp ,用的 rdesktop 连接

如何确定你的CPU支持硬件虚拟化呢?

egrep '(vmx|svm)' /proc/cpuinfo

SQLite 命令

Sqlite3

最近使用 sqlite 较多,这东西现在是越用越着迷,不管是工作或者个人自娱自乐写东西,只要有数据存储首先就想到了 sqlite