电脑安装不了软件运行内存不足怎么办

由于最近一段时间正在学习作系统,老师给的软件需要在linux的环境下运行。鉴于自己超习惯了windows的图形界面,想装了一个虚拟机算了。又仔细考虑一下自己的装备还是不太精良,选择了装双系统。

ubuntu内存不足 ubuntu内存不足直接重启ubuntu内存不足 ubuntu内存不足直接重启


ubuntu内存不足 ubuntu内存不足直接重启


我空出了d盘装下了ubuntu6.06这个作系统,当在重新进入windows时,我晕哦!!!出现了windows root32hal.dll丢失这个错误,完全进不了系统。

然后百度一下,出现同样的问题的人还真不少。本人十分讨厌使用的杀手锏——重装系统。促使本人耐心寻找解决办法。

出现问题的原因:这个是由于C盘这样,本来只有4G的内存,如果swap有2G的话,可使用的内存可以认为是6G。根目录下的boot.ini文件非法,导致默认从C:Windows启动,由于我的Windows XP没有安装在C盘,所以系统提示找不到HAL.DLL文件。启动因而失败。(我是安装Windows XP在f盘的)

解决方法是重新编辑Boot.ini文件。网上提供了好多办法。本人之一把Windows XP安装盘放入光驱,从光驱开始驱动。在DOS下输入Copy Con C:\boot.ini以后回车。然后按照Boot.ini文件的格式输入,每输入一行敲一次回车键,当全部内容输入完毕以后,按CTRL+Z,屏幕上会看到^Z的提示。这个时候再敲一次回车,系统会提示1 file(s) copied.这就表示创建成功了。开始我是在朋友的机器拷的hal.dll文件如下:

[boot loader]

timeout=30

default=multi(0)disk(0)rdisk(0)partition(1)windows

[opearating s]

multi(0)disk(0)rdisk(0)partition(1)windows="microsoft windows xp professional"

/noexecute=optin /fastdetect

也就是说需要一行一行的输入。

带着万分迫切的心情重新启动,结果连错误都不提示了。完全不能进系统了。

仔细分析了一下,错误出现在哪 ?哦 原来朋友的系统是安在c盘的,这么简单的问题却被我忽视了。由于d盘分给ubuntu6.06了,只剩下c ,e,f盘了,重复上一步奏。只是注意修改partition(1)为partition(3) 这代表root从f盘系统。结果问题顺利解决,真的蛮高兴的。

如果电脑配置不是太,可以加一条内存条。

你看一下是不是C盘不e extended够用了?

如果是的话,可以考虑换一个安装路径看看。

ubuntu如何修改php.ini

s create a new empty Sun disklabel

ubuntu修改php.ini的#3 Command (m for ): m // 键入m,可看到帮助信息方法:首先通过命令“cd /etc/php5/apache2”找到php.ini文件;然后找到“memory_limit”这个关键字;将值修改为“256M”即可。

:《PHP视频教程》

Ubuntu中php.ini修改运行内存

首先,我们要知道我们要修改的是什么文件?

那就是php.ini文件,一般php有关运行的文件都跟这个文件有关系,路径是 /etc/php5/apache2 。在这里我们就可以用命令进入,

cd /etc/php5/apache2然后输入:ls 你就可以看到php.ini文件。

sudo vim php.ini在这里,我们经常会遇到的问题就是运行内存不足,在这里我们就可以找到"memory_limit" 这个关键字,然后就可一对值进行修改,我一般的修改值为256M.

Linux - Swap

这个参数值可为 0-100,控制系统 swap 的使用程度。

首先,swap是硬盘上的一块空间。

其次,当内存没有多余空间的时候,可以将一部分数据交换到swap空间。也就是将内存中的一部分数据放到硬盘中,并释放内存空间。这样,释放出的内存空间就又可以被利用来存储其他数据了。

但是,硬盘的速度比内存慢太多太多了。因此swap只是对内存的一种补充,是在内存不足时对内存的扩充,但是不能代替内存使用。

内存不足时, 作系统 会选择 最久没被使用的内存数据 ,交换到swap空间。

注意,交换作是由作系统来进行的。

系统在什么情况或条件下才会使用Swap分区的空间呢? 其实是Linux通过一个参数swappiness来控制的。当然还涉及到复杂的算法。

0告诉内核尽可能的不要将内存数据移到swap中,也即只有在迫不得已的情况下才这么做,而100告诉内核只要有可能,尽量的将内存中不常访问的数据移到swap中。默认值为 60。注意:这个只是一个权值,不是一个百分比值,涉及到系统内核复杂的算法

查看当前系统中swappiness的值

修改当前系统中swappiness的值

上面通过sysctl修改的swappiness值在系统重启后会失效,要想重启后继续生效,需要修改配置文件/etc/sysctl.conf,将下面这行修改成10,如果文件中找不到这行的话,在文件末位加上这行就可以了

Linux下有两种类型的swap空间,swap分区和swap文件,他们有各自的特点:

swap分区上面由于没有文件系统,所以相当于内核直接访问连续的磁盘空间,效率相对要高点,但由于swap分区一般安装系统时就分配好了了,后期要缩减空间和扩容都很不方便。

swap文件放在指定分区的文件系统里面,所以有可能受文件系统性能的影响,但据说2.6版本以后的内核可以直接访问swap文件对应的物理磁盘地址,相当于跳过了文件系统直接访问磁盘,不过如果swap文件在磁盘上的物理位置不连续时,还是会对性能产生不利影响,但其优点就是灵活,随时可以增加和移除swap文件。

如果配置有多个swap分区或者文件的话,这里将会有多行,每行代表一个正在被系统使用的swap分区或文件,下面是每个字段的意思:

并不是swap空间占用多就一定性能下降,真正影响性能是swap in和out的频率,频率越高,对系统的性能影响越大,我们可以通过vmstat命令来查看swap in/out的频率

在添加swap分区前,首查看某个进程swap占用内存大小脚本:先得有一个空闲的分区,如果是一块新的磁盘,可以用fdisk来创建一个新的分区用于swap。

添加swap文件就简单多了,也没有分区作那么有风险。

通过如下命令,能查看所有进程的使用swap情况

查看所有进程使用swap情况脚本:

史上最良心的 Ubuntu desktop 美化优化指导(2)

Units = cylinders of 16065 512 = 8225280 bytes

最近我在学习的工程中将我的 Ubuntu 18.04 作系统做了一次的优化和美化。为什么要美化和优化呢?美化是为了让自己吃饭的工具看起来漂亮,毕竟每天都要使用的;优化当然是让系统的运行工作得更好。现在我在我在虚拟机中重新安装了 Ubuntu 18.04 desktop 作系统,准备把整个美化的过程记录下来。

参考: 史上最良心的 Ubuntu desktop 美化优化指导(1)

参考: 史上最良心的 Ubuntu desktop 美化优化指导(1)

Ubuntu 18.04 在进行系统优化的时候,不建议过度优化,过度优化只会适得其反,如果是笔记本安装 Ubuntu 18.04 系统,那主要关注固态硬盘的优化和笔记本电池的优化就可以了。

tip:如果你的硬盘不是固态硬盘就不要搞这个优化了。

也可以通过命令: sudo ctl status fstrim.serv 查看 fstrim 服务是不是处于 active 状态来确定是否支持,如下图是支持的时候的截图。

sudo mkdir -v /etc/d//fstrim.timer.d

vim /etc/d//fstrim.t【相关】imer.d/override.conf ,输入:

sudo apt install in-microcode

关于 swap 的使用和作用,这里部介绍了,为了提高系统性能,我们可以通过减少对 swap 的使用,具体做法就是当内存资源少于一个给定的值后才使用 swap。

程序执行相应作后,需要写入硬盘的数据要写入硬盘后才进行下一步作,如果能够在数据存到缓存中的时候就开始接下来的作,那程序的性能将大大提高,这其实也是可以做到的,不过如果遇到突然断电等的时候,我们的数据就会丢失,所以这个优化项自行决定是否需要优化。

打开 disk 工具,如下图:

点击右上角的红色框住的图标,然后选择 Drive Settings,然后打开上图中的开关即可。

将 Firefox 网络缓存写入 RAM,而不是写入硬盘,内存不足 2G 的就建议别这样做了。具体做法如下:

默认情况下 Ubuntu 使用 CFQ 作为 I/O 调度器,但是这个默认设置对 SSD 硬盘没有效果,如果我们使用的是 SSD 硬盘,那需要进行修改,修改步骤如下。

在Ubuntu上开启Swap

既然配置swap对桌面系统有帮助,那么配置多少大小的swap比较合适呢?下面是ubuntu给出的建议:

在内存不够大时,需要开启Swap,使用一部分硬盘,作为虚拟内存,解决内存容量不足的情况。这篇博客是以 Ubuntu 基础来作的,其他 Linux 系统基本类似。很简单,跟着下面的步骤,一步一步来作即可。

在终端使用命令 free -m 查看输出结果

可以看到一行是0 0 0,则表示当前没有开启。

使用下面命令创建交换文件。因为要分配硬盘空间,所以有可能比较慢,等待一会

count=2048 表示创建 2G 的虚拟内存,因为这里用到的单位是 M ,如果要创建 6G 虚拟内存,则把2048 改成 6144 即可,因为 1024 6 = 6144。

可以使用 ls / | grep swapfile 命令查看一下,确保交换文件存在,创建成功。

依次执行下面的命令

依次运行上面两个命令后,如果成功,将会看到类似下面的输出

到这里,Swap 已经开启完成后,重新思考了一下,最简单的办法就是在Windows XP安装盘中选择系统修复,让电脑从光盘中读取系统,这样就可以进入Windows,在此环境下选择c盘的boot.ini文件。它可能是隐藏的,在文件夹选项中,设置显示隐藏的文件。然后找到后,按照上面的hal.dll文件内容和自己的系统实际安装的情况进行修改。讨论完毕。成功。我们再次使用 free -m 命令查看一下,你将看到类似下面的输出。

一行 Swap 将不再是0 0 0,而是我们上面设置的大小

使用编辑器编辑 /etc/fstab 文件,添加 Swap 自动开启的配置,这里使用 Vim进行编辑,也可以使用其他文本编辑工具,例如 nano

在 fstab 文件一行添加下面的内容

然后保存,退出。

R读取大型数据集内存不足如何解决,如果利用Linux有什么有效方法吗?

建议安装鲁,把电脑配置截图发上来看看,还要说一下运行什么软件。

有个比较简单的方----------------------------------------------------------------------------法是fread里的nrows参数设置。

R所有读取数据的函数都有nrows和skip这两个参数,可以写个循环,一个文件分段读取,skip跳过前面读过的,用nrows控制读入行数,防止内存不足。

——好处是简单粗暴多平台可用,缺点是,真的很慢……

如果有条件还是建议申请个来跑,比如学生可以询问导师院系有没有用于大型计算的。

另外Unix系统对内存的限制确实是比Windows好些,可惜我也不知道正确的打开方式QAQ

安装ubuntu的时候给/var分配了2G的空间,不过现在看来似乎不够!

w write table to disk and exit

如果你的/home比较大,可以这样:

分段处理之后将文件写入本地,用rm将比较大的变量消除掉,用gc()释放这部分内存。

sudo su -

mkdir /home/lib

cp -fpr /var/lib/ /home/lib

mv /var/lib /var/lib.bak

ln -s /hom/lib /var/lib

试试吧。

本来

怎么给virtual box 中的ubuntu增加内存

步骤如下:

VitrualBox是不允许更改重置硬盘大小的,所以当硬盘不足时,只能添加新硬盘。

1. 关闭Ubuntu系统,打开VistualBox,"设置"->"存储"->“添加虚拟硬盘”

2. 启动Ubuntu系统,作命令如下:

#1 sudo fdisk -l // 查看现有系统磁盘空间

Disk /dev/sda: 10.7 GB, 10737418240 bytes

255 heads, 63 sectors/track, 1305 cylinders

Disk identifier: 0x000af383

Dev Boot Start End Blocks Id System

/dev/sda1 1 1244 9992398+ 83 Linux

/dev/sda2 1245 1305 489982+ 5 Extended

/dev/sda5 1245 1305 489951 82 Linux swap / Solaris

Disk /dev/sdb: 5368 MB, 53687020 bytes

255 heads, 63 sectors/track, 652 cylinders

Disk identifier: 0x00000000

Disk /dev/sdb doesn't contain a valid partition table

以上信息可以看到新增加的磁盘空间 /dev/sdb ,这里我们需要给新的磁盘空间分区。

#2 fdisk /dev/sdb

打印结果如下:

Command actDirectorion

a toggle a bootable flag

b edit bsd disklabel

c toggle the dos compatibility flag

d delete a partition

l list known partition types

m print this menu

n add a new partition

o create a new empty DOS partition table

p print the partition table

q quit without sing changes

t change a partition's id

u change display/entry units

v verify the partition table

x extra functionality (experts only)

#4 Command (m for ): n

打印结果如下:

Command action

p primary partition (1-4)

键入:p,选择添加主分区;

键入:1,选择主分区编号为1, 这样创建后的主分区为sdb1;

#5 First Cylinder(1-1014,default 1): 1 // 个主分区起始的磁盘块数

#6 Last cylindet or +siza or +sizeM or +sizeK: +1024MB // 可以是以MB为单位的数字或者以磁盘块数,这里我们输入+1024MB表示分区大小为1G。

这样我们就创建完一个分区,如果要创建更多分区可以照上面的步骤继续创建。

,键入:w,保存所有并退出,完成新磁盘的分区。

4. 格式化磁盘分区

#7 sudo mkfs -t ext3 /dev/sdb1 // 用ext3格式对 /dev/sdb1 进行格式化

5. 挂载分区

#8 sudo mkdir /data // 创建新的挂载点

#9 sudo mount /dev/sdb1 /data // 将新磁盘分区挂载到 /data 目录下

#10 sudo df // 查看挂载结果

6. 开机自动挂载

#11 vi /etc/fstab // 修改 /etc/fstab 文件

在 /etc/fatab 文件中,添加如下内容:

/dev/sdb1 /data ext3 defaults 1 2

电脑安装ubuntu系统没成功,却无缘无故少了20G内存,不知道哪去了???怎么恢复啊!大虾指点!!!!!!

ubuntu运行起来就比较大一些。虽然你分配多的内存给它,但实际你自己在运行虚拟机的内存就没多少,自然会反应慢一些。而且还要看本身你的系统是否本来就慢,还有你的cpu本来也没快到哪去

分区格式变了...是SATA还是IDE的...IDE的在启动的时候用PQ8.0...如果是SATA那就只有在系统里安装分区魔术师或者Acronis

查看是否支持的命令是: sudo hdparm -I /dev/sda | grep TRIM ,如果输入结果和下面不多,能找到 supported 字样,那说明是支持的。

Disk

Suite

10

ubuntu下磁盘空间满了导致mysql启动不了怎么办

这个有现成的工具可用,不必手动优化,只需要安装工具即可,安装步骤如下:

昨天又遇到了MySQL数据库无法重启的问题,还以为是权限的原因,后来发现提示是因为磁盘空间不足导致的,通过查找相关资料得以解决了,所以下面这篇文章主要介绍了ubuntu下磁盘空间不足导致mysql无法启动的解决方法,需要的朋友可以参考下。

前言

最近在数据库的一张表添加两个字段,后来提示什么磁盘空间不足什么什么的,后来数据库就断开连接了,之后就一直连接不上去后来,经过思考终于解决了这个问题,这一经历下来真是心惊胆战,本文作为记录一下磁盘空间不足导致的 mysql 无法启动的解决办法。

方法如下

作系统:ubuntu,磁盘空间不足导致的 mysql 无法启动,会造成如下问题: root@iZ28z558vv0Z:/etc/mysql# mysql -oot -p

Enter password:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)

root@iZ28z558vv0Z:/b# serv mysql start

start: Job failed to start

root@iZ28z558vv0Z:/var/lib# serv mysqld start

mysqld: unrecognized serv解决办法:找到 mysql 的配置文件 myf: root@iZ28z558vv0Z:/etc/mysql# ls

conf.d debianf debian-start myf

root@iZ28z558vv0Z:/etc/mysql# vi myf其中文件中的 datadir 这一项显示 /var/lib/mysql [mysqld]

## Basic Settings

#user = mysql

pid-file = /var/run/mysqld/mysqld.pid

socket = /var/run/mysqld/mysqld.sock

port = 3306

basedir = /usr

datadir = /var/lib/mysql

tmpdir = /tmp

lc-messages-dir = /usr/share/m现在许多固态硬盘在出厂的时候就预留了一部分空间,大约是容量的 1/4 来禁止用户访问,这样做的好处是将这部分空间不进行空间分配,提高固态硬盘的性能和寿命,至于原因这里就不多说了,和固态硬盘的特性有关,感兴趣的朋友可以去找相关资料学习。如果你的固态硬盘买得比较早,那就保留 10G 的空间不要分配就可以了。ysql

skip-external-locking因为是磁盘空间不足,所以我们需要查看 mysql 保存数据的所在位置,datadir 或 tmpdir 这两项所在磁盘空间的使用情况,查看 datadir 所在磁盘空间的使用情况: root@iZ28z558vv0Z:/var# df /var

File 1K-blocks Used Available Use% Mounted on

/dev/xvda1 41151808 39038392 0 /由上可以看出明显磁盘空间可用率是0,这就是导致 mysql 无法启动的原因了。删去 /var 目录下的其它文件,腾出磁盘空间,即可解决问题,然后重启 mysql 服务。

总结

1. Mysql免费视频教程

2. 详解innodb_index_stats导入数据时

提示表主键冲突的错误

3. 实例详解

mysql中innodb_autoinc_lock_mode

4. MySQL中添加新用户权限的实例详解

5. 实例详解mysql中init_connect方法