通过急救系统里往硬盘里安装 alpine linux

有的用户想使用 alpine linux,但一般主机商没有该系统模板,但一般主机商有提供急救系统(如 system-rescue-cd),可通过急救系统安装 alpine linux。

本例磁盘 /dev/sda1 已有Linux系统。当前 alpine linux 最新版本是 3.8。

过程:

1.mkfs.ext4 /dev/sda1 # 格式化分区

2.resize2fs -s /dev/sda1 # 去掉ext4的64bit,因为引导syslinux不支持
alpine-3.png

3.mount /dev/sda1 /mnt/custom/ # 挂载

4.wget http://dl-cdn.alpinelinux.org/alpine/latest-stable/main/x86_64/apk-tools-static-2.10.1-r0.apk # 下载 alpine linux apk tools

5.tar xzvf apk-tools-static-2.10.1-r0.apk # 解压

6../sbin/apk.static -X http://dl-cdn.alpinelinux.org/alpine/latest-stable/main -U --allow-untrusted --root /mnt/custom/ --initdb add alpine-base # 安装alpine linux

7.cp /etc/resolv.conf /mnt/custom/etc/ # 复制文件resolv.conf,解析域名

8.mkdir -p /mnt/custom/root # 创建用户 root 目录

9.mkdir -p /mnt/custom/etc/apk # 创建 apk 配置目录

10.echo "http://dl-cdn.alpinelinux.org/alpine/latest-stable/main" > /mnt/custom/etc/apk/repositories # 设置apk更新镜像网址

11.创建相应设备目录:

mknod -m 666 /mnt/custom/dev/full c 1 7
mknod -m 666 /mnt/custom/dev/ptmx c 5 2
mknod -m 644 /mnt/custom/dev/random c 1 8
mknod -m 644 /mnt/custom/dev/urandom c 1 9
mknod -m 666 /mnt/custom/dev/zero c 1 5
mknod -m 666 /mnt/custom/dev/tty c 5 0

12.挂载目录

mount -t proc none /mnt/custom/proc
mount -o bind /sys /mnt/custom/sys
mount -o bind /dev /mnt/custom/dev

13.chroot /mnt/custom /bin/sh -l # chroot 到 apline 文件所在目录

14.vi /etc/network/interfaces # 创建IP配置文件

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
  address 144.172.126.32
  netmask 255.255.255.0
  post-up route add 144.172.126.1 dev eth0
  post-up route add default gw 144.172.126.1
  post-down route del default gw 144.172.126.1
  post-down route del 144.172.126.1 dev eth0

15.setup-sshd # 安装openssh

16.passwd # 修改 root 密码

17.adduser liujia -s /bin/ash # 添加普通用户liujia,以可远程登录

18.addgroup liujia wheel # 将用户添加到wheel组,可su

19.设置可启动的服务

rc-update add devfs sysinit
rc-update add dmesg sysinit
rc-update add mdev sysinit
rc-update add hwclock boot
rc-update add modules boot
rc-update add sysctl boot
rc-update add hostname boot
rc-update add bootmisc boot
rc-update add syslog boot
rc-update add mount-ro shutdown
rc-update add killprocs shutdown
rc-update add savecache shutdown
rc-update add networking boot
rc-update add urandom boot
rc-update add acpid default
rc-update add hwdrivers sysinit
rc-update add crond default

20.apk add linux-vanilla syslinux # 安装内核和引导

21.dd bs=440 count=1 if=/usr/share/syslinux/mbr.bin of=/dev/sda # 将mbr引导写到磁盘中

22.extlinux -i /boot

23.blkid /dev/sda1 # 查看设备uid,如本例是:66ea5797-490e-4cf5-8743-61525af5bfbc

24.sed -i -e "s:^root=.*:root=UUID=66ea5797-490e-4cf5-8743-61525af5bfbc:" /etc/update-extlinux.conf # 将磁盘uuid写到启动配置文件中

25.sed -i -e "s:^modules=.*:modules=sd-mod,usb-storage,ext3,ext4:" /etc/update-extlinux.conf # 添加 ext4支持

26.update-extlinux # 更新引导配置

27.echo "UUID=66ea5797-490e-4cf5-8743-61525af5bfbc / ext4 defaults 1 1" > /etc/fstab # 将磁盘信息写到文件系统配置文件中

28.重启机子
alpine-1.png

29.远程ssh连接,正常
alpine-2.png

参考:

重阳节上东山岭

下午五点半过后,看天不是很暗,路上行人没打雨伞,准备上东山岭。出门前,下了米,通电煲上饭,带了把折叠雨伞,预防半路下雨。

hp-chong-yang-1.jpg

走近“天梯”石阶入口,看见有举旗列队喊话的一队人,估计四、五十个,穿着“红马挂”,似乎是学校共青团的。我小心翼翼地从旁侧行过,怕打搅了这些“小火苗”的热情。上了几个台阶,背后传来歌声,“……我们是共产主义接班人……”

hp-chong-yang-2.jpg

之前下过毛毛雨,但台阶面较粗糙,不见湿,不怕打滑,按常规速度上。

hp-chong-yang-3.jpg

到顶后,见人不多。我从侧边,沿着到后山新筑的水泥路上,边走边看旁边的绿色的山、田。对着电脑一天后,我喜欢找个不远的地方,安静地走走,能看得见远远的绿色景物,出点点汗。

hp-chong-yang-4.jpg

hp-chong-yang-6.jpg

hp-chong-yang-8.jpg

走着,走着,就走到了水泥路的头————老广播站。看到有个吖叔带着两条狗狗查看路旁堆放的、从老路挖出的水泥块。

hp-chong-yang-7.jpg

我看天较暗了,也转头,准备往回走了。远远看山下的楼房,有的已经着灯。

hp-chong-yang-9.jpg

下到“天梯”楼梯,两边的灯已经点着了,断黑入夜了。

hp-chong-yang-10.jpg

非root用户用mysqldump导出数据库 - 用 --lock-tables=false 参数避免权限不足

过程:

1.尝试用普通数据库用户导出数据库,mysqldump -u ykelai -p ykelai_db > ykelai_db-aq.sql

2.提示错误:mysqldump: Got error: 1044: Access denied for user 'ykelai'@'localhost' to database 'ykelai_db' when using LOCK TABLES

3.加上--lock-tables=false 参数,导出成功:mysqldump --lock-tables=false -u ykelai -p ykelai_db > ykelai_db-aq.sql
mysqldump.png

参考:https://stackoverflow.com/questions/104612/run-mysqldump-without-locking-tables

清空会话数据表 - The table 'ecs_sessions' is full

网友说,网站访问不了啦,是不是数据库坏掉了。

过程:

1.访问网站首页,提示错误信息: MySQL Query Error - The table 'ecs_sessions' is full
session-full-0.png

2.备份数据库后,可使用数据库管理工具,如 HeidiSQL 清空 esc_session 的表
session-full-1.png

3.也可以从mysql控制台,执行 TRUNCATE `ecs_sessions` 的语句来清空表数据
session-full-2.png

参考:

用 wsusoffline 为 Windows 2008 R2 更新打补丁

Windows 2008 R2 距今累积Windows补丁包较多,如现在对 Windows 2008 R2 SP1 安装后运行 Windows update,显示约有110个补丁包,完成下载和安装,可能要3~5个小时。

网上,有 wsusoffline 工具,可先下载好补丁包,适合需要对多台机子同时、反复打补丁。

过程:

1.下载、解压wsusoffline,运行 UpdateGenerator.exe
windown-update-1.png

2.选择需要下载系统版本的补丁包,本例选择了 Windows 7 / Windows 2008 R2 64位的
windown-update-2.png

3.之后,会自动下载补丁包到 client 目录
windown-update-3.png

4.下载完后,如果需对本机进行更新,运行 client 目录下的 UpdateInstaller.exe
windown-update-4.png

5.根据需求,勾选附加操作,本例勾选了 Automatic reboot and recall,即自动重启
windown-update-5.png

6.之后,会自动安装补丁。本例需安装110个
windown-update-6.png

7.使用wsusoffline更新后,可能还有一些补丁包没安装。可再次运行Windows update,本例还有64个补丁包需通过Windows内置的更新功能继续安装补丁
windown-update-7.png

b.也可通过如dism++的功能,在制作Windows安装镜像时,添加补丁
windown-update-8.png

参考: