Archive for the ‘ Server ’ Category

Windows 常用的指令整理

这些指令的执行档通常是放在 C:\Windows\System32\,可在这些地方执行指令:

  • 开始功能表的“执行”
  • Win + R 的执行视窗
  • Win + QWin + S 的搜寻视窗
  • cmd 命令提示字符
  • 档案总管的“网址列”

Read more

CentOS 5/6 改为可用的 yum 套件库来源 (2022)

若执行 yum 出现:

http://mirror.centos.org/centos/6/os/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found"
Trying other mirror.
To address this issue please refer to the below knowledge base article

表示系统默认的 yum 套件库可能已经不存在!

我们可以在 vault.centos.org 找到可用的套件库来源:

  • vault.centos.org: http
  • archive.kernel.org: http - rsync (rsync://archive.kernel.org::centos-vault/)
  • linuxsoft.cern.ch: http - rsync (rsync://linuxsoft.cern.ch/centos-vault/)
  • mirror.nsc.liu: http - rsync (rsync://mirror.nsc.liu.se::centos-store/)

Read more

CentOS 安装 xrdp (yum)

安装流程

1. xrdp 是放在 EPEL 套件库,所以我们要先安装 EPEL。依据不同版本的 CentOS 请参考: CentOS 如何加入第三方 Yum 套件库: EPEL
2. 安装 xrdp 及 tigervnc server:

yum install xrdp tigervnc-server

3. 启动 xrdp

service xrdp start

4. 加到开机自动执行

chkconfig xrdp on

PS. 只要启动 xrdp 即可,tigervnc server 装好后就不用理它了。

设定与登入

设定与登入的方式与之前的教学一样,请自行参考。

参考网页

  1. 安装 xrdp v0.6.0 (原始档)
  2. Linux 上的远端桌面中继程式: xrdp (v0.4.2)
  3. CentOS 如何加入第三方 Yum 套件库: EPEL

Linode VPS 迁移机房 (Add/Resize/Clone) 的步骤

我的某个 Linode VPS 不明所以被 GFW 给封锁了!!无助的我,在不更换 VPS 的前题下,可以尝试变更 IP 或是迁移机房。

早期 Linode 要做这两件事都必须提交 Ticket,透过客服人员来处理,但现在的客服人员似乎已经不再帮忙变更 IP 了!!

不过没关系,只要学会使用 Linode 的“Clone”功能,我们也可以自己来变更 IP 或迁移机房。

Linode 的费用

要执行“Clone”的功能之前,我们要先来了解一下 Linode 的相关费用:

  1. 早期 Linode 帐号的付款方式是采用: 包月 + 预付,一次买一年有 10% 折扣、买两年有 15% 折扣。如果没有用满一个月就删除 VPS 的话,那剩下的时间仍会归还等比例的金额至你的帐户。如果将方案降级也会归还差额。(2019/04/01 起,已强制转为计时 + 月结)
  2. 2014 年之后新用户的付款方式是采用: 计时 + 月结
  3. 最小的计费单位是“小时”,超过一秒钟都算你一个小时。
  4. 只要一“新增”VPS 就会开始计费,即便你的 VPS 没有开机。
  5. 启用“Backups”功能会增加约 20~25% 费用
  6. 在执行“Clone”的过程中会有两个 VPS 同时在计费。
  7. 可以将计费方从由“包月”改为“计时”,但没有将“计时”改为“包月”的功能。

Read more

Centos 6.x 如何停用 IPv6

为什么要停用 IPv6?

  1. 不熟、抗拒学习
  2. IPv6 也要设 IP 反解 PTR
  3. Gmail 会挡没有设 IPv6 反解的邮件

Read more

CentOS 如何加入第三方 Yum 套件库: EPEL

EPEL 的全称为“Extra Packages for Enterprise Linux”,是由 Fedora 社群打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux、Rocky Linux、Oracle Linux...等提供高品质套件库的专案。装了 EPEL 之后,等于添加了一个资源丰富的第三方套件库。

Read more

我爱大自然: 鲁肉饭之大数据 - 这是一个围绕着“大”的故事

以下我要写的文章,其实不是我爱写的文章类型,因为这种文章的逻辑不通,而且对科技界一点贡献也没有。再者我也不喜欢吃鲁肉饭,这篇算是比较没有营养的文章,大家可以当作笑话看看就好。不过我还是有些“大数据”的观念想跟大家分享。

Read more

[MySQL]数据库的备份与还原

数据库汇出/备份

1. 备份单一数据库:

$ mysqldump -u Username -p --opt DatabaseName > Backup.sql

2. 仅备份特定数据库下的资料表:

$ mysqldump -u Username -p --opt DatabaseName Table1 Table2... > Backup.sql

3. 仅汇出资料表结构:

$ mysqldump -u Username -p --opt --no-data DatabaseName > Backup.sql

4. 备份全部的数据库:

$ mysqldump -u Username -p -A --opt > AllBackup.sql

mysql/mysqldump/mysqladmin 与“登入”有关的参数说明:

  • -u Username: 用来存取 mysql 资料表的用户名称。此参数可省略,若省略,则表示为目前登入 linux 的用户名称。
  • -p: 于执行时再询问密码。
  • -pPassword: 用来存取 mysql 资料表的密码,-p 与 Password 的中间不可有空格。

数据库汇入/还原

1. 建立数据库,再从备份档汇入单一数据库:

$ mysqladmin -u Username -p create DatabaseName
$ mysql -u Username -p DatabaseName < Backup.sql

2. 从备份档汇入全部的数据库 (不需先建立数据库):

$ mysql -u Username -p < AllBackup.sql

状况处理:

状况 1.

汇入数据库时出现错误讯息: Unknown collation: 'utf8mb4_unicode_ci' Unknown collation: 'utf8mb4_unicode_520_ci'

说明:

MySQL 于 v5.5.3 版之后才有“utf8mb4”的编码格式。原本 utf8 的最大编码长度为 3bytes,而 utf8mb4 的最大编码长度为 4bytes,因此它比 utf8 可以储存更多的字符。但是以常用的文字来讲,utf8 已经完全足够使用了。若不升级 MySQL Server,则只须将汇入的字符编码格式改为原本的 utf8。

解决方法:

先将备份档中的 utf8mb4 字串替换成 utf8: (以下的三行指令需依照顺序执行)

$ sed -i 's/utf8mb4_unicode_ci/utf8_general_ci/g' Backup.sql
$ sed -i 's/utf8mb4_unicode_520_ci/utf8_general_ci/g' Backup.sql
$ sed -i 's/utf8mb4/utf8/g' Backup.sql

全部替换完再进行汇入:

$ mysql -u Username -p DatabaseName < Backup.sql

状况 2.

以 mysqldump 汇出数据库时出现错误讯息: Got error: 1044: Access denied for user 'backup'@'localhost' to database 'test' when using LOCK TABLES

说明:

这错误讯息已说明了用来执行 mysqldump 的帐号没有“LOCK TABLES”权限! 通常用 root 帐号汇出数据库不会发生这个问题,因为我们会给 root 所有的权限。然而我们在设定其它帐号时可能会忘了给它设定“LOCK TABLES”权限,而执行 mysqldump 至少需要“SELECT”与“LOCK TABLES”权限才行,最好再加上“SHOW VIEW”、“EVENT”与“TRIGGER”。

解决方法:

重新授予用户权限:

grant SELECT, LOCK TABLES, SHOW VIEW, EVENT, TRIGGER on *.* to 'backup'@'localhost' identified by '{Password}';
flush privileges;

状况 3.

从 cpanel 下载的 MySQL 档案格式为 *.gz,可以用 gunzip 解压缩:

$ gunzip Backup.sql.gz

注意: 使用 gunzip 解压缩后,原本的 *.gz 会被删除!!若要保留旧档,须改用下列指令:

 $ gunzip -c Backup.sql.gz > Backup.sql

数据库离线备份/还原

MySQL 的数据库放在 /var/lib/mysql 下,以数据库的名称做为目录的名称。直接将 /var/lib/mysql 下的数据库目录用 tar 指令个别压缩起来即可做为备份。要还原再把档案解压缩回去。

要以这种方式执行备份与还原都必须先停止 MySQL 的服务:

$ service mysqld stop

参考网页

处理 DNS 的 CNAME 造成收件者错误的问题

第一次遇到客户因为自己 Server 的 DNS 问题,造成我方要寄信给客户时,收件者的 EMail Address 会于 SMTP Server 端被自动变更 (寄给 user@example.com 会变成寄给 user@other.example.com),以致于客户收不到 EMail 的问题!! (客户可能以为是我方的问题)

我自己测试的结果是与 DNS 的 CNAME 有关:

C:\>nslookup -type=cname example.com
  Server:  dns.hinet.net
  Address: 168.95.1.1
  example.com canonical name = other.example.com

同时我在网络上找到一篇微软的 KB 文件,已经写得很清楚了,我就直接把内容放上来。

Read more

修复 Linux 开机出现档案系统有不一致性 (UNEXPECTED INCONSISTENCY) 的错误问题

Linux 无法正常开机,出现错误讯息:

Checking filesystems

/dev/sda1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY.
         (i.e., without -a or -p options)
                                                  [FAILED]

*** An error occurred during the file system check.
*** Dropping you to a shell; the system will reboot
*** when you leave the shell.
Give root password for maintenance
(or type Control-D to continue):

错误讯息指出 /dev/sda1 分割区有不一致性的问题!!

Read more

return top