目前我们的系统完全在 AWS 内部运行。我们对 EBS 进行滚动快照,并经常练习运行恢复。
让我夜不能寐的是把我们所有的鸡蛋都放在一个篮子里。以下是场景:
- 我们的亚马逊区域发生了一些破坏数据中心的大规模事件
- 有人访问了我们的 AWS 账户,终止了我们的实例并删除了我们所有的快照
为了降低这些风险,我正在考虑定期将快照移动到另一个区域的另一个 AWS 账户(使用不同的凭证)。
我的问题是,这是足够的预防措施还是我应该寻找完全从亚马逊上删除的异地备份?
目前我们的系统完全在 AWS 内部运行。我们对 EBS 进行滚动快照,并经常练习运行恢复。
让我夜不能寐的是把我们所有的鸡蛋都放在一个篮子里。以下是场景:
为了降低这些风险,我正在考虑定期将快照移动到另一个区域的另一个 AWS 账户(使用不同的凭证)。
我的问题是,这是足够的预防措施还是我应该寻找完全从亚马逊上删除的异地备份?
我需要将一些复杂的 xml 写入 bash 脚本中的变量。xml 需要在 bash 脚本中可读,因为这是 xml 片段所在的位置,它不是从另一个文件或源中读取的。
所以我的问题是,如果我有一个长字符串,我想在我的 bash 脚本中可读,那么最好的方法是什么?
理想情况下,我想要:
这可以用EOF或其他东西来完成吗,谁能给我一个例子?
例如
String = <<EOF
<?xml version="1.0" encoding='UTF-8'?>
<painting>
<img src="madonna.jpg" alt='Foligno Madonna, by Raphael'/>
<caption>This is Raphael's "Foligno" Madonna, painted in
<date>1511</date>-<date>1512</date>.</caption>
</painting>
EOF
我有一台主机,它通过 USB 3g 加密狗连接到互联网,并且没有连接到网络。基本上从客户端,我希望能够从主机 ssh 进入客户端,并且我还希望客户端能够访问互联网。
当我使用仅主机适配器时,主机可以 ping 客户端,但客户端无法访问互联网。当我使用 NAT 时,我可以访问互联网,但主机无法 ping 客户端。我也尝试过仅设置两个适配器 NAT 和主机,但似乎适配器 1 覆盖了适配器 2。
可以提出解决方案吗?
问候,
克里斯
我努力了:
sudo "some string" >> test.txt
但是我收到了权限被拒绝的警告。
任何人都可以帮忙吗?
有谁知道在 bash 中读取文件第一行的简单单行器?
谁能告诉我,如果我将这个 bash 脚本剪切并粘贴到终端,但使用 $ sudo sh server_prep.sh 启动时抛出 "server_prep.sh: 7: Syntax error: "(" unexpected" ,为什么它会起作用?
#!/bin/sh
#Packages
apt-get -y install ssh libsqlite3-dev ruby-full mercurial
#Gems
required_gems = ( rake rails sqlite3-ruby )
#Set up directories
[ ! -d /var/www ] && mkdir /var/www
[ ! -d /var/www/apps ] && mkdir /var/www/apps
#install gems manually
if ! which gem >/dev/null; then
wget http://rubyforge.org/frs/download.php/60718/rubygems-1.3.5.tgz
tar xvfz rubygems-1.3.5.tgz
ruby rubygems-1.3.5/setup.rb
ln -s /usr/bin/gem1.8 /usr/bin/gem
gem update --system
#Tidy Up
rm -rf rubygems-1.3.5.tgz rubygems-1.3.5
fi
#Install required gems
for required_gem in "${required_gems[@]}"
do
if ! gem list | grep $required_gem >/dev/null; then
gem install $required_gems
fi
done
提前致谢!