- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
默认情况下,Ubuntu 12.04 LTS出于某种原因不会创建交换。
安装后是否有“适当”的方式添加它?
root @ aux3:/root#df -h
已使用的文件系统大小可用百分比已安装在
/dev/xvda1 8.0G 1.4G 6.3G 18%/
udev 1.9G 12K 1.9G 1%/dev
tmpfs 751M 188K 750M 1%/运行
无5.0M 0 5.0M 0%/运行/锁定
无1.9G 0 1.9G 0%/运行/shm
/dev/xvdb 394G 79G 296G 21%/mnt
root @ aux3:/root#交换-s
文件名
root @ aux3:/root#免费-m
已使用的可用共享缓冲区总数
内存:3750 3730 20 0 75 3433
-/+缓冲区/缓存:221 3528
掉期:0 0 0
root @ aux3:/root#
更新:通过交换文件找到临时解决方案:
(尽管如此,我仍在寻找“适当”的方式)
dd if =/dev/zero of =/mnt/swap1 bs = 1024 count = 4M
mkswap/mnt/swap1
chown root.root/mnt/swap1
chmod 600/mnt/swap1
交换/mnt/swap1
最佳答案
因为我一天中的大部分时间都为自己理解了这个问题,并且因为拉出ayurchen的链接需要进行Google缓存搜索,所以我认为我会发布一些更详细的演练,以ayurchen的非常有帮助的答案为依据。
什么是交换空间,为什么要使用它?
交换空间是Linux(和大多数其他操作系统)用于在实际物理内存开始变得拥挤时从内存中存储对象的磁盘空间。因为磁盘通常比内存慢,所以Linux首先在交换中存储最近使用最少的对象,并在内存中保留尽可能多的对象。如果可能的话,通常建议交换空间的大小等于您的内存。查看有关交换空间here的更多详细信息。
我应该在哪里设置?
我也开始使用的Ubuntu 12.04 LTS AMI最初没有配置交换空间,因为存储设备的大小和数量可能会有所不同。但大多数自动提供了一个大型免费临时存储设备。由于S3存储受成本限制,因此临时驱动器是交换文件的好地方。我的设备具有与问题/dev/xvdb
中提到的设备名称相同的名称,但是您可以在实例启动期间对其进行配置。
如何在临时存储驱动器上设置交换空间?
交换空间可以在单个文件或设备分区中设置。文件可以用磁盘上的非相邻块表示,而分区是一组预定义的相邻块。由于磁盘读写速度更快,因此您不必长时间保持读取头的移动,因此使用分区可以获得更好的性能。 (这就是为什么上面的问题使用文件作为临时解决方案来打折的原因。)
Linux附带了许多程序来管理磁盘分区,包括fdisk,sfdisk,parted等。我们将使用sfdisk
,因为它可以接受Shell脚本中的所有必需参数。这很重要,因为每次我们“停止”实例时,临时存储都会丢失。因此,我们在文件中设置了一个脚本,该脚本在每次启动实例时都会自动运行,即/etc/rc.local
。
# Unmount the drive in-case it is already mounted. Umount throws an error if
# it wasn't mounted, so we add || : to continue the script in that case
umount /dev/xvdb || :
# Each line below is a partition (4 maximum master partitions for this partition
# type). Can can generally use the default arguments, supplying only the amount
# of space we want in blocks (512 came out to ~4gb for me), and the partition
# type (82 for swap, 83 for general linux is default). This will create:
# dev/xvdb1 with 1024 blocks
# dev/xvdb2 with the remainder of the disk
sfdisk /dev/xvdb << EOF
,512,82
;
;
;
EOF
# Now we format the swap partition:
mkswap /dev/xvdb1
# And the remainder. You can choose amoung the various filesystem types, but
# make sure you have the necessary formatter installed. To check, ls /sbin/mk*
mkfs.ext4 /dev/xvdb2
/etc/fstab
中,该文件是Ubuntu上的系统文件,规定了如何自动处理各种可用设备。它也可以在启动时运行。
/dev/xvdb1 swap swap sw,nobootwait 0 0
/dev/xvdb2 /mnt2 ext4 defaults,nobootwait 0 0
/mnt2
或计划使用mkdir挂载的任何位置创建一个文件夹。
sudo /etc/rc.local
一起运行,以查看它是否有问题。
sudo fdisk -l
运行后应显示新分区。如果可以,请尝试使用
sudo mount /dev/xvdb1
挂载设备。这将使用您保存在fstab中的配置。如果失败,请尝试使用您的安装参数,并相应地调整fstab。
关于ubuntu-12.04 - 如何将交换添加到运行Ubuntu 12.04 LTS的Amazon EC2实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11350985/
我在理解这些函数如何更新底层引用、原子等时遇到问题。 文档说:(应用当前身份值参数) (def one (atom 0)) (swap! one inc) ;; => 1 所以我想知道它是如何“扩展到
尝试让一段代码看起来更好。 我在 Clojurescript 中有以下内容: (swap! app-state assoc-in [:lastresults] []) (swap! app-state
我在数据库中有带有排序顺序号的记录。现在我想创建一个带有向上和向下按钮的用户界面来重新排序它们。制作两个 functionsUp(record) 和 functionDown(record) 的最佳算
如何才能让第二次点击时返回?我想我必须以某种方式找到活跃的,但不确定。 $("#test").click(function(){ $("#dsa").fadeOut() $("#asd
我需要有关这次考试的帮助。我需要反转输入字符串。 int main(void) { char str[30]; int strlen; int i=0; int count=0;int
我正在用 C 语言玩指针...我尝试编写一个接收指向值的指针、检索指针的指针并交换指向值的指针的交换,而不是接收指向值的指针和交换值的常规交换。 这是代码... 互换功能: void swap(voi
如何在 javascript 中切换值?例如,如果 x = apple,则函数应返回 x = orange。如果 x = orange,则函数应返回 x = apple。不确定,这里有什么用,切换或交
刚接触这类东西,可能做错了什么,但是- 我有 3 个成员 std::unique_ptr currentWeapon; std::unique_ptr weaponSlotOne; std::uniq
我想在 Map 内的不可变列表内交换项目,示例: const Map = Immutable.fromJS({ name:'lolo', ids:[3,4,5] }); 我正在尝试使用
我创建了动态数组。如果具有某些值,则填充。打印它。但是交换/交换指针后(任务是在特定条件下交换行) 条件取决于sumL。为了不浪费您的时间,我没有描述细节。 问题在于交换指针。 for ( k = 0
要反转整个 vector,存在 std::reverse。但我想将一个 vector “划分”为两部分(恰好在中间)并将两者反转,将它们放回一起并再次反转整个 vector 。例如我们有: 0 1 2
我正在致力于代码最小化和增强。我的问题是:是否可以在不破坏代码逻辑的情况下交换上面的 if 语句? int c1 = Integer.parseInt(args[0]) ; int c
我读过释放 vector 内存的最佳方法是: vector().swap(my_vector); 而且我真的不明白发生了什么。交换函数需要 2 个 vector 并交换它们的元素,例如: vector
我正在尝试编写一个 Haskell 函数,该函数接受一串字母对,并在所有字母组成的字符串中交换该对字母,但我想出的方法感觉很尴尬且不惯用。 我有 swap a b = map (\x-> if x =
我正在尝试使用向上和向下箭头交换两个元素。 JSFiddle 解决方案会很棒! 我的 HTML: Some text down Some ot
当将 subview 与另一个太阳 View 交换时,是否需要重新应用约束?是否需要删除适用于已删除 View 的约束? 或者它们应该自动持续存在? 最佳答案 约束是 View 的“一部分”。当您删除
所以我制作网站已经有一段时间了,但只是真正用于显示和信息的东西。我想尝试一下 AngularJs,所以我遵循了 Codeschool 上的指南。当我根据在线文档意识到我使用的语法不被推荐时,我在该应用
我正在尝试编写一个函数,可以将字符串中的 unicode 字符替换为非 unicode ASCII 字符,问题是上传包含它们的字符串时,unicode 连字符和引号不会被读取。 我希望该函数有一个带有
我目前正在使用 Azure 网站来部署我的应用程序。我目前正在使用两个网站,每个网站监听我的 GIT 的不同分支。如图所示here . 现在,为了让它变得完美,我只是缺少一种在这两个实例之间快速切换的
在我的 javascript 中,有两个包含一些值的 div。 我想交换这些div中的值。 有什么解决办法吗? 最佳答案 var temp = $('#div1').html(); $('#div1'
我是一名优秀的程序员,十分优秀!