Made in China 中国制造

儿子 你叔叔在美国,去了那边要跟着他好好生活、工作,妈妈实在是困难,养不活这么多孩子。
妈,放心吧,我长大了,为家里分担这点小事不算什么。
儿子……(母子抱在一起痛哭了一晚)
(第二天,儿子启程了,一个月后,货轮终于到了美国,旅途的劳顿让他没有时间感叹国外的美好风光,找到了那个有一丝血缘关系的叔叔,简单收拾了下行囊就安顿了下来。)
(可谁知道这个叔叔并不想照顾他,只是因为亲戚的关系才答应了他的母亲。)
(几天之后,儿子被叔叔安排到了一个汽修厂打零工,他以为,美好的生活就要开始了……)
(第二天,天刚蒙蒙亮,儿子就被叔叔摇醒了)
喂,你妈刚给我来了电话,说她在那边认识了一个男人,愿意照顾她一辈子,想把你也接回去,我给你订了晚上的机票,收拾下东西吧……
(儿子挠了挠头,还没从睡梦中缓过劲来,就听到了这么离奇的事情,一时间没有反应过来。)
(就这样,儿子又踏上了归途)
(一天后,飞机落地了,他看到了妈妈和弟弟妹妹们都来机场接他了,旁边还有个不认识的男人。)
儿子,快叫爸爸,以后你就跟着他在这边工作吧,自从认识他之后,每每想到你在那边跟着那个十几年没见过的亲戚受罪,我就于心不忍,为了把你接回来,我还给了他不少钱……
妈……(母子抱在一起痛哭流涕)
之后,儿子在继父的工厂里开始学徒工作,过上了幸福的生活……

Ubuntu 16.04安装vsftpd

写在前面:

vsftpd 是“very secure FTP daemon”的缩写,安全性是它的一个最大的特点。vsftpd 是一个 UNIX 类操作系统上运行的服务器的名字,它可以运行在诸如 Linux、BSD、Solaris、 HP-UNIX等系统上面,是一个完全免费的、开放源代码的ftp服务器软件,支持很多其他的 FTP 服务器所不支持的特征。比如:非常高的安全性需求、带宽限制、良好的可伸缩性、可创建虚拟用户、支持IPv6、速率高等。

安装:

sudo apt-get install vsftpd

配置:

vim /etc/vsftpd.conf


#这些设置系统默认是开启的,可以不管
listen=NO
listen_ipv6=YES
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES

#下面的就要自定义设置了,建议系统默认的不管,然后复制下面的

#是否允许匿名访问,NO为不允许
anonymous_enable=NO
#是否允许本地用户访问,就是linux本机中存在的用户,YES允许
local_enable=YES
#是否开启写模式,YES为开启
write_enable=YES
#新建文件权限,一般设置为022,那么新建后的文件的权限就是777-022=755
local_umask=022

####umask值与权限的对照表:
####umask 文件 目录 
####-------------------- 
####  0    6    7 
####  1    6    6 
####  2    4    5 
####  3    4    4 
####  4    2    3 
####  5    2    2 
####  6    0    1 
####  7    0    0 
####--------------------

#是否启动userlist为通过模式,YES的话只有存在于userlist文件中的用户才能登录ftp(可以理解为userlist是一个白名单),NO的话,白名单失效,和下面一个参数配合使用
userlist_enable=YES
#是否启动userlist为禁止模式,YES表示在userlist中的用户禁止登录ftp(黑名单),NO表示黑名单失效,我们已经让userlist作为一个白名单,所以无需使用黑名单功能
userlist_deny=NO
#指定哪个文件作为userlist文件,我们稍后编辑这个文件
userlist_file=/etc/vsftpd.user_list

#是否限制本地所有用户切换根目录的权限,YES为开启限制,即登录后的用户不能访问ftp根目录以外的目录,当然要限制啦
chroot_local_user=YES
#是否启动限制用户的名单list为允许模式,上面的YES限制了所有用户,可以用这个名单作为黑名单,作为禁止访问ftp根目录以外
chroot_list_enable=YES
#设置哪个文件是list文件,里面的用户将受限制无法访问ftp根目录以外的目录
chroot_list_file=/etc/vsftpd.chroot_list
#是否开启写模式,开启后可以进行创建文件夹等写入操作
allow_writeable_chroot=YES

#设置ftp根目录的位置,这个文件我们稍后自己创建
local_root=/目录位置

重启:

sudo /etc/init.d/vsftpd restart

添加用户:

#将将用户目录设置为我们上面的ftp根目录
sudo useradd -d /目录位置 用户名字

#设置用户密码
sudo passwd 用户名字

限定用户只能访问自己的目录,无法返回上层及进入其它目录:

修改配置文件:/etc/vsftpd/vsftpd.conf

sudo vi /etc/vsftpd.conf

去掉下面两行的注释:
chroot_list_enable=YES

chroot_list_file=/etc/vsftpd/chroot_list

在/etc/vsftpd下创建chroot_list文件:

touch chroot_list

加入需要限制的用户名:

vi /etc/vsftpd/chroot_list

保存

:wq

重启服务(每次更改配置后必须重启才能生效):

sudo /etc/init.d/vsftpd restart

其它命令:

#关闭
sudo /etc/init.d/vsftpd stop
#开启
sudo /etc/init.d/vsftpd start
#查看当前用户
vi /etc/passwd

关于500错误的解决思路:

出现500的原因是你的主目录设置了可写权限,故无法通过安全验证,所以无法正常登录。

附:

关于文件及文件夹权限

读:r

写:w

执行:x

      所有者 同组用户 其它用户

         rwx   rwx   rwx       翻译:所有者同组用户其它用户都可读、写和执行

二进制: 111  111  111

十进制:  7    7     7



      所有者 同组用户 其它用户

         rwx  - - -  - - -       翻译:只有所有者有读、写和执行的权限

二进制: 111   000     000

十进制:  7    0     0

Ubuntu Xenial Xerus和Teamviewer 12的故事

Ubuntu Server 16.04 “Xenial Xerus” LTS (64bits)&Teamviewer 12.0.76279

前言:近日购入一台KS-3C,于是乎,装远程桌面成了一个关键性问题,大众化还是轻便?这是个问题。

先来给大家看一下某星提供的原始安装代码:

sudo apt-get install ubuntu-desktop

sudo apt-get update

sudo apt-get install xrdp

sudo apt-get install xfce4

echo xfce4-session >~/.xsession

sudo service xrdp restart

从代码中可以看到,该远程桌面需要使用xrdp进行连接,并不是非常灵活,而且不能使用Gnome也是令人难过的地方,于是乎就有了下方的改进:

#轻量级桌面(如后续遇到不显示ID的情况请在一开始就安装完整版)(如果需要的是完整的桌面应用系统,请去掉--no-install-recommends)
sudo apt-get install --no-install-recommends ubuntu-desktop
#更新
sudo apt-get update
#安装gnome
sudo apt-get install gnome-panel
#卸载unity
sudo apt purge unity 7.5 ubuntu-system-settings

但是问题来了,该如何连接远程桌面?

下面就要请出一款众所周知的远程服务软件——Teamviewer

图形安装都是无脑化完成,但是在Ubuntu的命令行我们该如何操作呢?

#官网下载安装包
wget http://download.teamviewer.com/download/version_12x/teamviewer_i386.deb
#安装32位库
sudo apt-get install libdbus-1-3:i386 libasound2:i386 libexpat1:i386 libfontconfig1:i386 libfreetype6:i386 libjpeg62:i386 libpng12-0:i386 libsm6:i386 libxdamage1:i386 libxext6:i386 libxfixes3:i386 libxinerama1:i386 libxrandr2:i386 libxrender1:i386 libxtst6:i386 zlib1g:i386 libc6:i386
#安装TV
sudo dpkg -i teamviewer*.deb
#修复依赖
sudo apt-get -f install

安装就到这里结束了,但是,因为图形化安装结束之后,Tv会要求你接受一个许可,但是因为是命令行安装,所以看不到这个接受的图形界面,也就无法选择“同意”,那么命令行下该如何操作?

#首先停止Tv服务
sudo teamviewer --daemon stop
#修改配置文件
sudo vi /opt/teamviewer/config/global.conf
##末尾增加
[int32] EulaAccepted = 1 
[int32] EulaAcceptedRevision = 6
#保存
:wq!
#重新启动Tv服务
sudo teamviewer --daemon start
#设置密码
teamviewer --passwd 你要设置的密码
#查看ID
teamviewer -info

至此,如果你能在窗口中看到正常显示的数字ID,那说明你成功了,reboot后尝试连接看看效果吧~

晚些时候补充下实际操作遇到的问题:

问题1:Tv是32位程序,Ubuntu是64位,这个时候就需要先安装好32位库再安装软件,否则会出问题;

问题2:server提供商提供的预装系统都是默认root为主用户,请在安装Tv前先新建一个user;

问题3:安装完桌面环境后最好重启下再装Tv;

问题4:必须先设置好密码才能看到Tv的ID,这也是不显示ID的原因之一。

综上所述,在实际安装中遇到了很多问题,也重装了将近十次,一定要耐心才会成功,另,Ubuntu 17 不适用以上步骤。

最后附上可以让root用户登录桌面的代码(遇到不能显示ID的情况请进行如下操作):

sudo vi /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
##添加
greeter-show-manual-login=true
allow-guest=false #不允许客人登录

#修复
sudu vi /root/.profile
##找到 mesg n   替换成 tty -s && mesg n

reboot

 

关于Win10 激活出现0xC0000022的解决办法

“错误:0xC0000022 在运行Microsoft Windows 非核心版本的计算机上,运行”slui.exe 0x2a 0xC0000022″以显示错误文本。”

写在前面:

本人之前一直都是用的Win7系统,最近换了台新笔记本,因为Win7各种驱动缺失,所以只能用它自带的Win10了,但是自带的系统是家庭版,对于我来说,功能是不够用的,于是乎,便升级了企业版,后来找到一个激活工具,激活了系统并正常使用至昨天。

出现问题之前,我做了什么?

为了可以远程多用户同时登录,我修改了System32系统文件夹的继承权限,然后修改了termmgr.dll获得了同时登录多个用户的可能,问题也是这时候出现的。

什么时候发现出现了问题?

晚上准备关机的时候,发现桌面右下角出现了系统未激活的提示,于是又用激活工具尝试激活,但是,问题来了,出现了下图的提示:

多次尝试并且搜索解决办法,都未解决问题,于是只能先去睡觉了……

10点左右,噩梦初醒,提着沉重的躯壳,继续开机解决问题,我也没多想,先去了某宝搜索解决办法,找到了一个号称IT技术联盟的花费了¥7.98要求他帮我解决问题,卖家很热心,各种办法都尝试了,依旧未果,于是只能退款,当头一棒让我感觉整个人生都要废了,难道只能重装了么?

baotoutongku

抱着想要解决问题的信念,我又去某宝搜索了一个商家,他让我购买15元的支持重装的激活码,尝试激活后还是那个提示,然后原本的激活码也无法卸载,于是,继续退款。

时间来到了中午12点,伴着蝉鸣,我开始思考人生,难道真的要重装了?好多软件和驱动,真的不想重装!

百度才是万能的!

我搜索了几个关键词后,搜索到了下面这篇文章,他给我提供了一个思路:

彻底解决激活win8/8.1出现“错误:0xc000022 在运行Microsoft Windows 非核心版本的计算机上”

文章中说到了关于安全权限的问题,我按照提示进行了操作,但是到了最后一步启动“Software Protection”服务时,又失败了!提示我无法启动?

看到这里,我好像找到了问题的症结所在,于是继续搜索如果解决“Software Protection”无法启动的问题,搜到了下面这篇文章:

完美解决:升级到win8.1之后 遇到 Software Protection服务无法启动,错误代码5

虽然不是Win10,但是思路是相同的,还是权限的问题。

按照文中的提示,我找到了C:\Windows\System32\spp\store 文件夹,查看了下它的权限,并没有看到它的存在,于是手动添加了NT SERVICE\sppsvc 并赋予了完全控制的权限,如下图:

 

 

果然Software Protection可以成功启动了,Win10也成功激活了!不用重装了!

小结:

自己挖的坑,要自己填上,跳进去了要想办法爬出来,而不是坐在坑里等待重生。

网上很少关于此类问题的解决方法,撰文一篇,希望可以给更多人解惑,如需转载请注明出处!

https://hiiht.com Hallton+

一篇有感而发

不知道从何说起,缘起,缘落。
不知道为何流泪,亦暖,亦冷。
有很多话特别想对自己说,无胆,无由。
有很多事特别想兑现承诺,无法,无能。
日子一天天在过去,月初,月末。
烦恼忧愁日渐更多,失望,绝望。
不知天涯何处知己,只望来日再度相逢。

电信光猫超级管理员破解

今天遇到了一件特别恶心的事情。
下午去小舅新墅安装监控时发现电信天翼网关无法正常拨号,因为没有带电脑,加上是第一次接触电信光猫,所以无法第一时间进行破解,就抱着一丝的希望给装宽带的师傅打电话咨询了,然而他的态度却极其恶劣,告诉我如果进去(超级管理界面)后设置错了网关就废了,还得重新花钱买,听到这里我差点骂出来,虽然忍住了,但是气不打一处来,就决定自己破解一下,于是就有了下面的教程:

这里使用的是中兴(ZTE)ZXHN F652,如果是同一品牌设备也可以尝试进行操作,嫌麻烦的可以直接跳过教程换(买)一个没有限制的光猫进行连接。
首先,网关的默认登录地址是192.168.1.1,我们登录后可以看到已经默认填好了一个叫做“useradmin”的普通用户账号,密码就是写在机器底部贴条上的密码,用这个账号登录进去也只能看看连接状态,进行一些简单的操作,而关键的设置是没有任何权限的,所以我们才需要获取超级管理员的账号密码进行设置,但是因为有ITMS的存在,所以每次师傅上门维护时其实应该是有一个终端可以远程获得密码来登录的,但是作为高端用户,我们并不能容忍这样的设置存在,所以动手开干吧!


在动手之前,请先确认光猫已经断开了光纤的连接,否则后面会很麻烦。

第一步:访问http://192.168.1.1/hidden_version_switch.gch
这里可以查看到当前的版本模式,记住这个版本(一般为当前省份),然后选择default version提交,之后设备会自动重启初始化系统设置,之前的所有设置都会清空恢复到默认状态。重启完成之后,继续访问这个页面,选择之前的版本模式,然后提交-自动重启。

第二步:使用Telnet登录192.168.1.1,用户名:root 密码:Zte521
这也是最关键的一步,也是之前为什么要先不要连接光纤的原因,如果连接了光纤,系统开始工作后,会通过光路下载运营商配置,并且禁止Telnet登录,这样后面的代码就可以慢慢输入了:

sendcmd 1 DB set TelnetCfg 0 TS_Enable 1           
sendcmd 1 DB set PortControl 3 PortEnable 1             
sendcmd 1 DB set TelnetCfg 0 Lan_Enable 1              
sendcmd 1 DB set TelnetCfg 0 Lan_EnableAfterOlt 1    
sendcmd 1 DB save                                             
reboot

最后一条成功执行之后,Telnet连接会关闭,系统将进行重启,重启成功后,这时候就算再接上光纤,也不用担心运营商下发的配置影响telnet了。

第三步:telnet到光猫,执行

sendcmd 1 DB p DevAuthInfo

就可以在0行查看到默认的超级管理员账号密码了,我这里是这样显示的:

/ # sendcmd 1 DB p DevAuthInfo
<Tbl name="DevAuthInfo" RowCount="6">
        <Row No="0">
                <DM name="ViewName" val="IGD.AU1"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="1"/>
                <DM name="User" val="telecomadmin"/>
                <DM name="Pass" val="nE7jA%5m"/>
                <DM name="Level" val="1"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="1">
                <DM name="ViewName" val="IGD.AU2"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="1"/>
                <DM name="User" val="useradmin"/>
                <DM name="Pass" val="kayk4"/>
                <DM name="Level" val="2"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="2">
                <DM name="ViewName" val="IGD.AU3"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="2"/>
                <DM name="User" val="root"/>
                <DM name="Pass" val="public"/>
                <DM name="Level" val="2"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="3">
                <DM name="ViewName" val="IGD.AU4"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="2"/>
                <DM name="User" val=""/>
                <DM name="Pass" val="zte"/>
                <DM name="Level" val="1"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="4">
                <DM name="ViewName" val="IGD.AU5"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="4"/>
                <DM name="User" val="admin"/>
                <DM name="Pass" val="admin"/>
                <DM name="Level" val="1"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="5">
                <DM name="ViewName" val="IGD.AU6"/>
                <DM name="Enable" val="0"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="5"/>
                <DM name="User" val=""/>
                <DM name="Pass" val="samba"/>
                <DM name="Level" val="1"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
</Tbl>

至此,超级管理员账号密码就成功获得了,下面进行一些额外的设置,来完全掌控我们的光猫。

先来讲解下Telnet的基本语法:

①读取全部表名:

sendcmd 1 DB all

我这个光猫列出了356个表,每个表的具体用途还有待慢慢研究。

②读取指定表详细信息:

sendcmd 1 DB p 表名

比如sendcmd 1 DB p DevAuthInfo,查看路由器帐号和密码:

/ # sendcmd 1 DB p DevAuthInfo
<Tbl name="DevAuthInfo" RowCount="6">
        <Row No="0">
                <DM name="ViewName" val="IGD.AU1"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="1"/>
                <DM name="User" val="telecomadmin"/>
                <DM name="Pass" val="nE7jA%5m"/>
                <DM name="Level" val="1"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="1">
                <DM name="ViewName" val="IGD.AU2"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="1"/>
                <DM name="User" val="useradmin"/>
                <DM name="Pass" val="kayk4"/>
                <DM name="Level" val="2"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="2">
                <DM name="ViewName" val="IGD.AU3"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="2"/>
                <DM name="User" val="root"/>
                <DM name="Pass" val="public"/>
                <DM name="Level" val="2"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="3">
                <DM name="ViewName" val="IGD.AU4"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="2"/>
                <DM name="User" val=""/>
                <DM name="Pass" val="zte"/>
                <DM name="Level" val="1"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="4">
                <DM name="ViewName" val="IGD.AU5"/>
                <DM name="Enable" val="1"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="4"/>
                <DM name="User" val="admin"/>
                <DM name="Pass" val="admin"/>
                <DM name="Level" val="1"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
        <Row No="5">
                <DM name="ViewName" val="IGD.AU6"/>
                <DM name="Enable" val="0"/>
                <DM name="IsOnline" val="0"/>
                <DM name="AppID" val="5"/>
                <DM name="User" val=""/>
                <DM name="Pass" val="samba"/>
                <DM name="Level" val="1"/>
                <DM name="Extra" val=""/>
                <DM name="ExtraInt" val="0"/>
        </Row>
</Tbl>

③查看当前系统运行的服务状态:

sendcmd -pc show

④修改某个表的某个字段的值:

sendcmd 1 DB set 表名 行数 字段名 字段值

行数就是<Row No=”0″> 这个里面No的值
字段名就是DM name后面引号中的名称,注意大小写。
字段值就是要设置的值
⑤保存对配置文件的修改:

sendcmd 1 DB save

第一项,当然是禁用Tr069连接了,因为如果不禁用它,光猫还是会被电信远程修改配置,这也是我们不想看到的:

#查看表
sendcmd 1 DB p MgtServer
#修改值
sendcmd 1 DB set MgtServer 0 Tr069Enable 0
sendcmd 1 DB set MgtServer 0 PeriodicInformEnable 0
#保存
sendcmd 1 DB save

第二项,修改连接数限制,默认是只能连接4台设备,这里我们把它增大,最高是255,一般家庭20左右就够用了,这里设置的99台设备:

sendcmd 1 DB p CltLmt
sendcmd 1 DB set CltLmt 8 Max 99
sendcmd 1 DB save

第三项,修改wifi前缀,光猫自带的wifi被强制设定了前缀ChinaNet-,可以把它取消掉:

/ # sendcmd 1 DB set WLANCfg 0 ESSIDPrefix
<Tbl name="WLANCfg" RowCount="4">
        <Row No="0">
                <DM name="ViewName" val="IGD.LD1.WLAN1"/>
                <DM name="LANDViewName" val="IGD.LD1"/>
                <DM name="ValidIf" val="1"/>
                <DM name="InstExist" val="1"/>
                <DM name="Enable" val="1"/>
                <DM name="ESSID" val="ChinaNet-Ytny"/>
                <DM name="ESSIDPrefix" val=""/>
                <DM name="Priority" val="0"/>
                <DM name="ACLPolicy" val="0"/>
                <DM name="BeaconType" val="6"/>
                <DM name="ESSIDHideEnable" val="0"/>
                <DM name="BeaconEnabled" val="1"/>
                <DM name="WEPAuthMode" val="2"/>
                <DM name="WEPLevel" val="1"/>
                <DM name="WEPKeyIndex" val="1"/>
                <DM name="WPAEncryptType" val="2"/>
                <DM name="WPAAuthMode" val="0"/>
                <DM name="11iEncryptType" val="2"/>
                <DM name="11iAuthMode" val="0"/>
                <DM name="WPAGroupRekey" val="0"/>
                <DM name="WPAEAPServerIp" val="192.168.1.1"/>
                <DM name="WPAEAPSecret" val="12345678"/>
                <DM name="MaxUserNum" val="32"/>
                <DM name="VapIsolationEnable" val="0"/>
                <DM name="BasicEncryptionModes" val="0"/>
                <DM name="LocalSetEnable" val="1"/>
                <DM name="SimCardFileId" val="43"/>
        </Row>
……

最后,修改超级管理员账号密码,默认的不好记也不安全,所以可以自定义账号密码:

##示例##
#更改超级管理员账号为jjj
sendcmd 1 DB set DevAuthInfo 0 User jjj

#更改超级管理员密码为444
sendcmd 1 DB set DevAuthInfo 0 Pass 444

#保存
sendcmd 1 DB save

至此设置完毕,光猫就真正属于我们自己了,具体的界面设置,后面再做研究。

感谢舅妈

因为某些原因,不得不在日亚购买这套BD BOX,价值略高加上海关严控,导致我放弃了转运到大陆的想法,不经意间和小舅聊起“人生”,舅妈月中要回来,便成就了这次的结果,虽然还有一盒月底才发货,而且已然赶不到行程中,但是还是要记录一下…

辛苦了~

及时到达香港

地区 站码 地址 营业时间
周一至周五 周六、日及假期
油塘 852AJL 九龙油塘大本型2楼229号铺 11:00-22:00 12:00-20:00

安全到达啦,等待舅妈去取~