Maison base de données tutoriel mysql debian(wheezy)安装mysql的时候报错There's not enough sp

debian(wheezy)安装mysql的时候报错There's not enough sp

Jun 07, 2016 pm 03:40 PM
debian mysql t 安装 报错

新机器,安装#apt-get install mysql-server提示需要安装mysql-server-5.5 等其它几个。 于是跟上。 到了安装的时候提示错误。 Setting up mysql-common (5.5.33+dfsg-0+wheezy1) ...(Reading database ... 180252 files and directories currently installe

新机器,安装#apt-get install mysql-server提示需要安装mysql-server-5.5 等其它几个。 于是跟上。 到了安装的时候提示错误。

Setting up mysql-common (5.5.33+dfsg-0+wheezy1) ...
(Reading database ... 180252 files and directories currently installed.)
Unpacking mysql-server-5.5 (from .../mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb) ...
ERROR: There's not enough space in /var/lib/mysql/
dpkg: error processing /var/cache/apt/archives/mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb (--unpack):
 subprocess new pre-installation script returned error exit status 1
Selecting previously unselected package mysql-server.
Unpacking mysql-server (from .../mysql-server_5.5.33+dfsg-0+wheezy1_all.deb) ...
Errors were encountered while processing:
 /var/cache/apt/archives/mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
Copier après la connexion


这里我们分析下问题。apt-get install 调用的dpkg, 然后dpkg  去调的

/var/cache/apt/archives/mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb
Copier après la connexion
 把apt的cache的这个文件复制出来

#cp /var/cache/apt/archives/mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb /home/bak

然后我们去看看打包的文件里面是怎么判断的。执行下面的shell,我们把这个包解压出来。

#cd /home/bak && make tmp
#mkdir tmp
#dpkg-deb -x mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb tmp
#dpkg-deb --control mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb.deb tmp/DEBIAN
Copier après la connexion

然后

#cd tmp/DEBIAN

找到了一个预安装文件叫preinst,用编辑器打开。在149行找到这句话

# checking disc space
if LC_ALL=C BLOCKSIZE= df --portability $DATADIR/. | tail -n 1 | awk '{ exit ($4>1000) }'; then
  echo "ERROR: There's not enough space in $4 and $DATADIR/" 1>&2
  db_stop
  exit 1
fi
Copier après la connexion

这里是个判断,就是刚才我们安装的时候报的错

ERROR: There's not enough space in /var/lib/mysql/
Copier après la connexion
现在我们把这个提取出来稍加修改在终端运行一下
#df --portability $DATADIR/. | tail -n 1 | awk '{ print $4 }'
Copier après la connexion
显示是空, 所以进来提示, 空间不足。

我们继续把这个preinst改下,或者是修改下判断 比如从$5来判断 或者直接反起来, 把$4>1000 改成$4

然后重新打包 

#dpkg -b tmpmysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb

接下来复制回去mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb

#cp mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb/var/cache/apt/archives/mysql-server-5.5_5.5.33+dfsg-0+wheezy1_amd64.deb

#yes

继续重新安装发现通过了安装。没有再提示空间不足。

但是问题的根源不在mysql的预安装文件上, 而是在我们自身的系统环境上。

通过排查,发现系统已经安装了一些会影响系统命令输出的程序。

找到你的.bashrc 看看是不是装了一些终端显色的软件。比如cw 它会影响到这个的输出。注释掉这个再运行下刚才修改的语句,就可以看见区别了。

会显示几百万甚至几千万,在preinst这里就会跳过而不报错了。


比如cw 终端显色,正是这个软件导致了系统命令的输出出现了错行。所以,只需要暂时注销掉在.bashrc里面的cw就可以了



Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

<🎜>: Grow A Garden - Guide de mutation complet
3 Il y a quelques semaines By DDD
<🎜>: Bubble Gum Simulator Infinity - Comment obtenir et utiliser les clés royales
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Nordhold: Système de fusion, expliqué
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Mandragora: Whispers of the Witch Tree - Comment déverrouiller le grappin
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Tutoriel Java
1664
14
Tutoriel PHP
1269
29
Tutoriel C#
1249
24
Exemple d'introduction de Laravel Exemple d'introduction de Laravel Apr 18, 2025 pm 12:45 PM

Laravel est un cadre PHP pour la création facile des applications Web. Il fournit une gamme de fonctionnalités puissantes, notamment: Installation: Installez le Laravel CLI globalement avec Composer et créez des applications dans le répertoire du projet. Routage: définissez la relation entre l'URL et le gestionnaire dans Routes / web.php. Voir: Créez une vue dans les ressources / vues pour rendre l'interface de l'application. Intégration de la base de données: fournit une intégration prête à l'emploi avec des bases de données telles que MySQL et utilise la migration pour créer et modifier des tables. Modèle et contrôleur: le modèle représente l'entité de la base de données et le contrôleur traite les demandes HTTP.

Mysql et phpmyadmin: fonctionnalités et fonctions de base Mysql et phpmyadmin: fonctionnalités et fonctions de base Apr 22, 2025 am 12:12 AM

MySQL et PHPMyAdmin sont de puissants outils de gestion de la base de données. 1) MySQL est utilisé pour créer des bases de données et des tables et pour exécuter des requêtes DML et SQL. 2) PHPMYADMIN fournit une interface intuitive pour la gestion des bases de données, la gestion de la structure de la table, les opérations de données et la gestion de l'autorisation des utilisateurs.

MySQL vs d'autres langages de programmation: une comparaison MySQL vs d'autres langages de programmation: une comparaison Apr 19, 2025 am 12:22 AM

Par rapport à d'autres langages de programmation, MySQL est principalement utilisé pour stocker et gérer les données, tandis que d'autres langages tels que Python, Java et C sont utilisés pour le traitement logique et le développement d'applications. MySQL est connu pour ses performances élevées, son évolutivité et son support multiplateforme, adapté aux besoins de gestion des données, tandis que d'autres langues présentent des avantages dans leurs domaines respectifs tels que l'analyse des données, les applications d'entreprise et la programmation système.

Résolvez le problème de la connexion de la base de données: un cas pratique d'utilisation de la bibliothèque Minii / DB Résolvez le problème de la connexion de la base de données: un cas pratique d'utilisation de la bibliothèque Minii / DB Apr 18, 2025 am 07:09 AM

J'ai rencontré un problème délicat lors du développement d'une petite application: la nécessité d'intégrer rapidement une bibliothèque d'opération de base de données légère. Après avoir essayé plusieurs bibliothèques, j'ai constaté qu'ils avaient trop de fonctionnalités ou ne sont pas très compatibles. Finalement, j'ai trouvé Minii / DB, une version simplifiée basée sur YII2 qui a parfaitement résolu mon problème.

Méthode d'installation de Laravel Framework Méthode d'installation de Laravel Framework Apr 18, 2025 pm 12:54 PM

Résumé de l'article: Cet article fournit des instructions détaillées étape par étape pour guider les lecteurs sur la façon d'installer facilement le cadre Laravel. Laravel est un puissant cadre PHP qui accélère le processus de développement des applications Web. Ce didacticiel couvre le processus d'installation des exigences du système à la configuration des bases de données et à la configuration du routage. En suivant ces étapes, les lecteurs peuvent jeter rapidement et efficacement une base solide pour leur projet Laravel.

MySQL pour les débutants: commencer la gestion de la base de données MySQL pour les débutants: commencer la gestion de la base de données Apr 18, 2025 am 12:10 AM

Les opérations de base de MySQL incluent la création de bases de données, les tables et l'utilisation de SQL pour effectuer des opérations CRUD sur les données. 1. Créez une base de données: CreatedAtAbaseMy_First_DB; 2. Créez un tableau: CreateTableBooks (idIntauto_inCmentPrimaryKey, TitleVarchar (100) notnull, AuthorVarchar (100) notnull, publied_yearint); 3. Données d'insertion: INSERTINTOBOOKS (titre, auteur, publié_year) VA

Résoudre MySQL Mode Problem: L'expérience de l'utilisation du module TheliamysQlModeschecker Résoudre MySQL Mode Problem: L'expérience de l'utilisation du module TheliamysQlModeschecker Apr 18, 2025 am 08:42 AM

Lors du développement d'un site Web de commerce électronique à l'aide de Thelia, j'ai rencontré un problème délicat: le mode MySQL n'est pas réglé correctement, ce qui fait que certaines fonctionnalités ne fonctionnent pas correctement. Après une certaine exploration, j'ai trouvé un module appelé TheliamysqlModeschecker, qui est capable de réparer automatiquement le motif MySQL requis par Thelia, résolvant complètement mes problèmes.

MySQL: données structurées et bases de données relationnelles MySQL: données structurées et bases de données relationnelles Apr 18, 2025 am 12:22 AM

MySQL gère efficacement les données structurées par la structure de la table et la requête SQL, et met en œuvre des relations inter-tableaux à travers des clés étrangères. 1. Définissez le format de données et tapez lors de la création d'une table. 2. Utilisez des clés étrangères pour établir des relations entre les tables. 3. Améliorer les performances par l'indexation et l'optimisation des requêtes. 4. Bases de données régulièrement sauvegarde et surveillent régulièrement la sécurité des données et l'optimisation des performances.

See all articles