Le blog de Jean David TECHER, un Réunionnais à Saint-Priest/Lyon

Aller au contenu | Aller au menu | Aller à la recherche


< 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 >

mercredi 17 juin 2009

Wget et User-Agent pour Windows Vista

Très pratique quand on veut télécharger quelque chose qui ne peut s'ouvrir que pour Internet Explorer, un peu comme le plugin "User Agent Switcher" de FireFox

wget --user-agent="Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)" /url/a/telecharger

Je me suis en fait contenté de récupérer le bon user-agent depuis wikipedia à http://fr.wikipedia.org/wiki/User-Agent . Ce qui se révèle pratique aussi pour aspirer des sites parfois!

mardi 16 juin 2009

[OpenLDAP] Erreur "DB_ENV->lock_id_free interface requires an environment configured for the locking subsystem" - [SOLVED]

Etat des lieux

Depuis samedi suite à une tentative de reindexation de la base par slapindex, le service d'OpenLDAP ne voulait plus démarrer...

J'ai donc eu l'erreur suivante dans monfichier de log /var/log/slapd.log

@(#) $OpenLDAP: slapd 2.3.30 (Dec 13 2006 15:54:43) $       buildd@palmer:/build/buildd/openldap2.3-2.3.30/debian/build/servers/slapd
/etc/ldap/slapd.conf: line 113: rootdn is always granted unlimited privileges.
/etc/ldap/slapd.conf: line 130: rootdn is always granted unlimited privileges.
nss_ldap: could not connect to any LDAP server as (null) - Can't contact LDAP server
nss_ldap: failed to bind to LDAP server ldap://127.0.0.1: Can't contact LDAP server
nss_ldap: could not connect to any LDAP server as (null) - Can't contact LDAP server
nss_ldap: failed to bind to LDAP server ldap://127.0.0.1: Can't contact LDAP server
nss_ldap: could not search LDAP server - Server is unavailable
nss_ldap: could not connect to any LDAP server as (null) - Can't contact LDAP server
nss_ldap: failed to bind to LDAP server ldap://127.0.0.1: Can't contact LDAP server
nss_ldap: could not connect to any LDAP server as (null) - Can't contact LDAP server
nss_ldap: failed to bind to LDAP server ldap://127.0.0.1: Can't contact LDAP server
nss_ldap: could not search LDAP server - Server is unavailable
bdb_db_open: Database cannot be opened, err 13. Restore from backup!
bdb(dc=chezdavid,dc=local): DB_ENV->lock_id_free interface requires an environment configured for the locking subsystem
bdb(dc=chezdavid,dc=local): txn_checkpoint interface requires an environment configured for the transaction subsystem
bdb_db_close: txn_checkpoint failed: Invalid argument (22)
backend_startup_one: bi_db_open failed! (13)
bdb_db_close: alock_close failed
slapd stopped.
connections_destroy: nothing to destroy.

La solution

  1. Localiser le répertoire de la base pour le serveur et s'y rendre Pour le localiser, on regarde dans le fichier de configuration de OpenLDAP. Pour moi, il s'agit de /etc/ldap/slapd.conf. On repère la ligne contenant le terme directory
    root@olivia:~# grep directory /etc/ldap/slapd.conf
    # The base of your directory in database #1
    directory       "/var/lib/ldap"
    # The base of your directory for database #2
    donc
    cd /var/lib/ldap
  2. Ensuite on lancer un restore en faisant db4.2_recover
    db4.2_recover
  3. Ensuite on supprime le fichier de lock
    rm -f alock

Et on redémarre tranquillement son serveur

/etc/init.d/slapd start
Cool ça fonctionne à nouveau!!!

samedi 13 juin 2009

Week-end de juin..Requiem for a dream - Partie VIII

Sympa ce début de week-end...Samedi après-midi ça a été l'occasion de passer un moment en compagnie de personne pour un pique-nique improvisée à la "Promenade de l'Etang"...C'est un ami qui me l'a proposé la veille...Rappelé vers 10h30~11h00 samedi matin, j'avais eu un petit souci de dernier minute avec mon serveur OpenLDAP - souci que j'ai pu bien sûr résoudre en moins de deux ...

Ayant proposé d'amener la café je suis arrivé vers 14h30. Faisant connaissance autour du café, j'ai profité d'être en pleinne nature pour savourer mon week-end...Une nouvelle provenant d'Avignon ce vendredi m'a vraiment fait plaisir. Disons donc que le week-end a bien commencé.

L'espace d'un moment j'avais cru retrouvé la tranquilité de la Réunion, loin des réflexions plus bas que terre et sans grand intérêt et complètement futils de certains. Mais bon comme on dit, je préfère ne pas répondre et laisser les gens dans leur petit monde. Après tout quand celà n'en vaut pas le coup, il ne sert à rien de troubler une certaine tranquilité comme ce fut le cas cet après-midi là.

Enfin bref revenons à ce week-end...Avec deux amis, on a profité pour faire le tour de l'Etang. Puis nous nous sommes posés. Vers 17h30 je suis rentré, fait les courses, m'occuper de Simba et regarder un peu la TV.

lundi 8 juin 2009

[PostgreSQL 8.3] Valeur la plus basse pour shared_buffers pour lancer un serveur

Sans tenir compte du shmmax pour lequel j'ai

postgres@olivia:~$ cat /proc/sys/kernel/shmmax
33554432

Soit shmmax = 33554432 bytes.

Ayant 1 kB = 1024 bytes et 1 MB = 1024kB, j'ai donc shmmax = 33554432/(1024*1024)= 32 MB.

Je suis loin de dépasser ce seuil. D'après la documentation:

D'après http://docs.postgresqlfr.org/8.3/kernel-resources.html, on a donc

PostgreSQL™ utilise un sémaphore par connexion autorisée (max_connections) et par processus autovacuum autorisé (autovacuum_max_workers), le tout par ensemble de 16.

Donc shared_buffers >= (max_connections+autovacuum_max_workers) * 16 kB Comme chez moi autovacuum_max_workers = 3, on aura donc si je mets pour max_connections = 11 donc shared_buffers>=14*16=224

Faisons quelques tentaives:

  1. shared_buffers = 223kB
    postgres@olivia:~$ pg_ctl restart -o "-i -p 5441" -D disk1
    pg_ctl: PID file "disk1/postmaster.pid" does not exist
    Is server running?
    starting server anyway
    postgres: the number of buffers (-B) must be at least twice the number of allowed connections (-N) and at least 16
    server starting
    postgres@olivia:~$ pg_ctl status -o "-i -p 5441" -D disk1
    pg_ctl: no server running
    
    Le serveur ne démarre pas!!!
  2. shared_buffers = 224kB
    postgres@olivia:~$ pg_ctl restart -o "-i -p 5441" -D disk1
    pg_ctl: PID file "disk1/postmaster.pid" does not exist
    Is server running?
    starting server anyway
    server starting
    postgres@olivia:~$ LOG:  database system was shut down at 2009-06-08 23:43:29 CEST
    LOG:  database system is ready to accept connections
    LOG:  autovacuum launcher started
    
    postgres@olivia:~$ pg_ctl status -o "-i -p 5441" -D disk1
    pg_ctl: server is running (PID: 16182)
    /opt/pgsql/bin/postgres "-i" "-p" "5441"
    
    Le serveur démarre