Skip to content

Commit

Permalink
Merge pull request #3 from BigerCAP/20241123-s3
Browse files Browse the repository at this point in the history
20241123 s3
  • Loading branch information
buggithubs authored Nov 23, 2024
2 parents 3168349 + 1183872 commit 20d422f
Show file tree
Hide file tree
Showing 6 changed files with 318 additions and 0 deletions.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/look/20180506+weather/180506-dbz1.GIF
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added content/look/20180506+weather/180506-dbz2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
73 changes: 73 additions & 0 deletions content/look/20180506+weather/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
title: 学习查看气象云图与雷达图
date: 2018-05-05 21:40:52
updated: 2018-05-06 21:40:52
categories:
- Notebook
tags:
- 气象云图
- 雷达图
---
# 学习查看气象云图与雷达图

## 雷达图

### 雷达图获取

- 市级气象局,如:[北京市气象局](http://www.bjmb.gov.cn/info/846/list.html)
- 中央气象台,如:[中央气象台](http://www.nmc.cn/publish/radar/chinaall.html)

### 雷达图阅读

![dBZ2](/Media/180506-dbz2.png)

[dBZ](https://zh.wikipedia.org/zh/DBZ "基本反射率") 基本反射率:反射自远方物体(在每立方米中的 mm6 量)的雷达讯号之等效反射率与直径 1 毫米雨滴的反射量 表示单位体积中降水粒子直径 6 次方的总和。该值的大小反映了气象目标内部降水粒子的尺度和密度分布,用来表示气象目标的强度,单位用 dBZ 表示。
由于单位体积的降水粒子数量与降水粒子直径的六次方成比例,因此可以用来估计雨、雪、冰雹等的降水强度

判断具体出现什么天气出现时,除了回波强度(dbz)外,还要综合考虑回波高度、回波的面积、回波移动的速度、方向以及演变情况等因素。

雷達發射之電磁波經由大氣中的降水粒子 (雨、雪、冰雹等) 反射回來的訊號, 稱為雷達回波(reflectivity ),根據雷達接收到降水粒子所反射回來的訊號強度,再利用不同顏色顯示,即可製成雷達回波圖。回波的強度與降水粒子的大小、形狀、狀態以及單位體積內粒子的數量有關,一般而言,反射回來的訊號越強,降水的強度就越強,因此可藉由雷達回波圖研判天氣系統的降水強度及分布狀況。

一般地说,它的值越大降雨、降雪可能性越大,强度也越强,当它的值大于或等于 40dbz 时,出现雷雨天气的可能性较大,当它的值在 45dbz 或以上时,出现暴雨、冰雹、大风等强对流天气的可能性较大。

降雨强度:回波颜色从绿色 - 黄色 - 红色 - 紫色,降雨强度逐渐增强。一般而言:绿色,小雨;黄色:中到大雨;红色:雨水倾盘而下,并可能伴有短时雷雨大风、冰雹等强对流天气;紫色:降雨强度非常大,伴有雷暴、大风等强对流天气,极有可能出现冰雹,必须到安全地方躲避。

![dBZ1](/Media/180506-dbz1.GIF)

dBZ | 时雨量 (mm/h) | 时雨量 (in/hr) | 强度
----|------------|-------------|---
5 | 0.07 | < 0.01 | 难以察觉
10 | 0.15 | < 0.01 | 薄雾
15 | 0.3 | 0.01 | 雾
20 | 0.6 | 0.02 | 毛毛雨
25 | 1.3 | 0.05 | 小雨
30 | 2.7 | 0.10 | 小到中雨
35 | 5.6 | 0.22 | 中雨
40 | 11.53 | 0.45 | 中雨
45 | 23.7 | 0.92 | 中到大雨
50 | 48.6 | 1.90 | 大雨
55 | 100 | 4 | 豪雨 / 小冰雹
60 | 205 | 8 | 超大豪雨 / 中等冰雹
65 | 421 | 16.6 | 暴雨 / 大冰雹

## 气象云图

### 气象云图获取

- [中央气象台](http://www.nmc.cn/publish/satellite/watervapor.html)

### 气象云图阅读

![水汽云图](/Media/180506-SEVP_NSMC_WXBL_FY2E_EWVP_ACHN_LNO_PY.jpg)

1. 型式(结构):是指图像上不同明暗程度的像素点的分布式样。不同型式的云系或云团与不同的天气系统或物理过程相联系,例如台风、气旋、 低涡等云系呈螺旋状结构,而锋面、急流和热带辐合带的云系成带状结构。

2. 范围大小:从云的范围可以识别云的种类、天气系统的尺度大小和大气物理过程。例如在图中大尺度锋面云带的前沿有几个亮温特别低的中尺度对流云团。这几个中尺度云团中,从其伪彩色差异还可以识别出其中更小尺度的对流单体。

3. 边界形状:云的边界有直线的、圆形的、扇形的、盾形的,有呈气旋性弯曲(云带边界向南凹)的、有呈反气旋弯曲的(云区边界向北凸)等。有边界整齐光滑、有呈锯齿状和不整齐之分。例如,带状云系中,边界呈气旋性弯曲的是冷锋,而呈反气旋性弯曲,边界又整齐是急流,而急流风速切变大小不等其边界又有光滑与锯齿之分,前者风切变相对小些。

4. 色调:也称为亮度或灰度。它是指物像的明暗程度。可见光云图上色调与物像的反照率和太阳高度角有关,反照率大,太阳高度角大(高)物象色调呈浓白,反之反照率小,太阳高度角低,则物像色调暗。应该特别指出,相同条件下,水滴云的反照率比冰晶云大。在红外云图上物象色调则表示其表面温度高低,物象表面温度越低色调越白。在水汽图像上,物像的色调决定于对流层中、上部大气的水汽含量和气层的温度,水汽含量愈丰富或气层温度愈低,则色调愈白。

5. 暗影:仅在可见光云图上出现,高耸目标物在低目标上的一种影子,暗影的位置决定于卫星的观测时间。暗影的宽度决定于投影云顶高度和太阳高度角高低。投影云高度差愈大,太阳高度角愈低,暗影愈宽愈明显。分析暗影时应特别注意将云缝与暗影区分开。最好的方法是结合红外云图进行判断,若是云缝区在红外上也相应有云缝,而红外云图上没有暗影,而且投影云顶高度高,色调应特别浓白。

6. 纹理:它表示云表面粗糙程度。云顶高度参差不齐,在可见光云图上造成许多暗影显出纹理,红外图上形成色调明暗相间也表现出多纹理。纹理的形状为皱纹、斑点或纤维状。相反,如果云顶没有明显起伏,则云图为光滑和均匀。皱纹和纹理主要出现在层状云中有积状云,尤其是积云穿过层状云时最为明显。而纤维状纹理,主要出现在卷云区中。
154 changes: 154 additions & 0 deletions content/post/20160627-s3cmd.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,154 @@
---
title: 用 s3cmd 挂载云储存服务器
date: 2016-06-27T00:00:00+08:00
lastmod: 2016-06-27T00:00:00+08:00
categories:
- software
tags:
- S3
- s3cmd
---
## 用 s3cmd 挂载云储存服务器

s3cmd 是亚马逊 s3 的一个命令行工具,稍作修改可以用在国内的云存储。服务器 Centos,如果有 **epel 源** 的话,可以直接

`yum install s3cmd`

或者直接去 SF 下载,传送 [s3cmd Projects](http://sourceforge.net/projects/s3tools/files/s3cmd/)
解压软件包,执行 `./s3cmd --configure`,如果没有 `python-dateutil`,就会报以下错误。

```bash
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
ImportError trying to import dateutil.parser.
Please install the python dateutil module:
$ sudo apt-get install python-dateutil
or
$ sudo yum install python-dateutil
or
$ pip install python-dateutil
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
```

我系统 centos,这时候执行 yum install python-dateutil,然后在测试。
yum install 安装此软件的,然后:

```bash
s3cmd --configure
```

用源码包安装的,需要去软件解压目录执行, 类似 windows 下的免安装绿色软件。

```bash
./s3cmd --configure
```


```bash
Enter new values or accept defaults in brackets with Enter.
Refer to user manual for detailed description of all options.

Access key and Secret key are your identifiers for Amazon S3. Leave them empty for using the env variables.
Access Key: 这里输入 AK
Secret Key: 这里输入 SK
Default Region [US]: CN #默认美国市区,可更改

Encryption password is used to protect your files from reading
by unauthorized persons while in transfer to S3
Encryption password: # 我理解为一种链接对话加密
Path to GPG program [/usr/bin/gpg]: GPG 路劲,没修过可直接回车

When using secure HTTPS protocol all communication with Amazon S3
servers is protected from 3rd party eavesdropping. This method is
slower than plain HTTP, and can only be proxied with Python 2.7 or newer
Use HTTPS protocol [No]: 是否使用 https,默认 NO

On some networks all internet access must go through a HTTP proxy.
Try setting it here if you can't connect to S3 directly
HTTP Proxy server name: 是否使用代理,默认空
New settings:
Access Key: 显示你的 AK
Secret Key: 显示你的 SK
Default Region: CN
Encryption password:
Path to GPG program: /usr/bin/gpg
Use HTTPS protocol: False
HTTP Proxy server name:
HTTP Proxy server port: 0
Test access with supplied credentials? [Y/n] n # 是否测试这个链接
Save settings? [y/N] y # 是否保存文件
Configuration saved to '/root/.s3cfg' # 保存文件地址
```
按照提示,填入密匙,其它选项一路默认回车即可,后面问是不是要测试连接的时候选 No(因为 s3cmd 在修改前默认连接是亚马逊 s3),
然后保存,程序会在用户跟目录下生成一个隐藏文件,我们要修改这个配置文件:
```bash
vim ~/.s3cfg
```
找到 "host_base =" 和 "host_bucket =" 这两行,修改至如下:
```bash
host_base = s3.domain.com
host_bucket = %(bucket)s.s3.domain.com
```
好了,现在试试 s3cmd 的一个常用命令:
```bash
s3cmd ls
```
----
如果可以看见你在对象云存储里建立的容器,那表示配置成功,另外一些常用的命令如下,用 **s3cmd --help** 可以查看
动作 | 命令
---|---
创建容器 | s3cmd mb s3://BUCKET
删除容器 | s3cmd rb s3://BUCKET
查看容器内的文件 | s3cmd ls s3://BUCKET/path/
查看所有容器内的所有文件,我测试过只能显示一层目录 | s3cmd la
把文件从本地上传至云存储的命令 | s3cmd put FILE [FILE...] s3://BUCKET[/PREFIX]
从云存储下载文件到本地 | s3cmd get s3://BUCKET/OBJECT LOCAL_FILE
删除容器内的特定文件 | s3cmd del s3://BUCKET/OBJECT
如果要删除容器类的整个目录,</br> 可以加参数 -r -f | s3cmd del -r -f s3:// 容器 / 目录 /
查看容器所占空间 | s3cmd du [s3://BUCKET[/PREFIX]]
查看容器或者文件的属性 | s3cmd info s3://BUCKET[/OBJECT]
云存储中的文件复制命令 | s3cmd cp s3://BUCKET1/OBJECT1 s3://BUCKET2[/OBJECT2]
移动文件 | s3cmd mv s3://BUCKET1/OBJECT1 s3://BUCKET2[/OBJECT2]
把本地目录同步到云存储或者从云存储同步到本地 | s3cmd sync LOCAL_DIR s3://BUCKET[/PREFIX] **\or** s3://BUCKET[/PREFIX] LOCAL_DIR
----
> 常用的命令如下,复杂一点的可以去啃 s3cmd 官方文档。
- 同步本地至云存储,并在云端删除已经从本地删除的文件
`s3cmd sync --delete-removed /path/ s3://bucket/path/`
- 如果怕错删除,可以再加参数 --dry-run,它只列出 --delet-removed 将要删除的文件,但并不会真正的删除
`s3cmd sync --dry-run --delete-removed /path/ s3://bucket/path/`
- sync 命令默认是要校检本地文件和云存储中文件的 md5 值的,如果不想校检只同步新文件,可以加 --skip-existing
`s3cmd sync --skip-existing /path/ s3://bucket/path/`
- 还有 --exclude(不包含) 和 --include(包含)参数
`s3cmd sync --exclude '*.txt' --include 'dir2/*' . s3://bucket/path/`
- 云存储可以用来存储网站上的静态内容的:.css、.js、.jpg 一类。这类文件加入 Cache-Control header 可以减少请求数量和流量,参数是 --add-header,命令如下:
`s3cmd put --add-header='Cache-Control:max-age=31536000' -M -r jpg_folder s3://domain.com/`
- 如果想进一步降低流量消耗,可以考虑 gzip 压缩 css 和 js 文件,毕竟流量在云存储里是算钱的,但貌似云存储服务器端并不支持 gzip 压缩,
所以我们要预先压缩文件。我的做法是先 "gzip -9" 压缩 css 文件得到 *.css.gz ,
再批量重命名 *.css.gz 为 *.css,最后上传 *.css 文件。这时需要给已经压缩过的文件加 Content-encoding header,
否则浏览器读不出来,命令如下:
`s3cmd put --add-header='Cache-Control:max-age=31536000' --add-header='Content-encoding:gzip' -M *.css s3://domain.com/css/`
91 changes: 91 additions & 0 deletions content/post/20160627-s3fs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,91 @@
---
title: 用 s3fs 挂载云储存服务器
date: 2016-06-27T00:00:00+08:00
lastmod: 2016-06-27T00:00:00+08:00
categories:
- software
tags:
- S3
- s3fs
---
## 用 s3fs 挂载云储存服务器

s3fs 是把 Amazon S3 存储服务挂载到本地硬盘或者服务器上的程序,大部分云存储和 S3 兼容,
只需要修改 s3fs 一行代码,它就能挂载到服务器上。

服务器操作系统是 Centos 6.4 64 位,自带的 fuse 版本比较老,用不了新的 s3fs,所以第一件事就是:

`yum remove fuse fuse* fuse-devel`

安装 s3fs 过程中可能需要的包:

`gcc libstdc++-devel gcc-c++ curl curl* curl-devel libxml2 libxml2* libxml2-devel openssl-devel mailcap`

开始安装新版本 fuse:

```bash
wget http://sourceforge.net/projects/fuse/files/latest/download?source=files
tar -xzvf fuse-2.9.3.tar.gz
cd fuse-2.9.3
./configure --prefix=/usr
make
make install
export PKG_CONFIG_PATH=/usr/lib/pkgconfig:/usr/lib64/pkgconfig/
ldconfig
modprobe fuse #可能提示有错误,不管
pkg-config --modversion fuse
```

接着在服务器上装 s3fs:

```bash
wget https://code.google.com/p/s3fs/downloads/detail?name=s3fs-1.74.tar.gz

tar -xvf s3fs-1.74.tar.gz
cd s3fs-1.74

vim src/s3fs.cpp
```

在这个 `src/s3fs.cpp` 中查找下面那行的内容:

```bash
std::string host = "http://s3.amazonaws.com";
```

`s3.amazonaws.com` 替换成 你需要的地址,然后再编译:

```bash
./configure --prefix=/usr
make
make install
```

建立密匙文件:

```bash
vim ~/.passwd-s3fs

#文件中内容如下:
AccessKeyID:AccessSecretKey
```

保存后,设置其权限:

```bash
chmod 600 ~/.passwd-s3fs
```

万事俱备,挂载命令如下:

```bash
s3fs bucket 要挂的目录 -ouse_cache=/tmp
```

如果想开机自动挂载,那就修改 / etc/fstab,最下面加一行:

```bash
s3fs bucket 要挂的目录 fuse allow_other 0 0
```

挂载以后的好处就是方便,cp mv 之类的命令总比 s3cmd 来的简单。

0 comments on commit 20d422f

Please # to comment.