slitaz-forge annotate mirror/info/index.php @ rev 157

mirror: Add mirror info files
author Christophe Lincoln <pankso@slitaz.org>
date Tue Mar 20 13:13:22 2012 +0100 (2012-03-20)
parents
children 076ab51e4997
rev   line source
pankso@157 1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
pankso@157 2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
pankso@157 3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
pankso@157 4 <head>
pankso@157 5 <title>SliTaz Mirror</title>
pankso@157 6 <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
pankso@157 7 <meta name="description" content="slitaz mirror server" />
pankso@157 8 <meta name="robots" content="index, nofollow" />
pankso@157 9 <meta name="author" content="SliTaz Contributors" />
pankso@157 10 <link rel="shortcut icon" href="/css/favicon.ico" />
pankso@157 11 <link rel="stylesheet" type="text/css" href="/css/slitaz.css" />
pankso@157 12 <style type="text/css">
pankso@157 13 #copy {
pankso@157 14 text-align: center;
pankso@157 15 }
pankso@157 16
pankso@157 17 #bottom {
pankso@157 18 text-align: center;
pankso@157 19 }
pankso@157 20 </style>
pankso@157 21 </head>
pankso@157 22 <body>
pankso@157 23
pankso@157 24 <!-- Header -->
pankso@157 25 <div id="header">
pankso@157 26 <div id="logo"></div>
pankso@157 27 <div id="network">
pankso@157 28 <a href="http://www.slitaz.org/">
pankso@157 29 <img src="/css/pics/network.png" alt="network.png" /></a>
pankso@157 30 <a href="http://scn.slitaz.org/">Community</a>
pankso@157 31 <a href="http://doc.slitaz.org/" title="SliTaz Community Documentation">Doc</a>
pankso@157 32 <a href="http://forum.slitaz.org/" title="Slitaz Forum">Forum</a>
pankso@157 33 <a href="http://bugs.slitaz.org/" title="Bug Tracking System">Bugs</a>
pankso@157 34 <a href="http://hg.slitaz.org/" title="SliTaz repositories">Hg</a>
pankso@157 35 </div>
pankso@157 36 <h1><a href="http://<?php echo $_SERVER["HTTP_HOST"]; ?>/">SliTaz
pankso@157 37 <?php $host=preg_replace('/(\w+).*/i','$1',$_SERVER["HTTP_HOST"]); echo $host; ?></a></h1>
pankso@157 38 </div>
pankso@157 39
pankso@157 40 <!-- Block -->
pankso@157 41 <div id="block">
pankso@157 42 <!-- Navigation -->
pankso@157 43 <div id="block_nav">
pankso@157 44 <h4><img src="/css/pics/development.png" alt="development.png" />Developers Corner</h4>
pankso@157 45 <ul>
pankso@157 46 <li><a href="http://www.slitaz.org/en/devel/">Website devel</a></li>
pankso@157 47 <li><a href="http://scn.slitaz.org/">Community</a></li>
pankso@157 48 <li><a href="http://cook.slitaz.org/">Build Bot</a></li>
pankso@157 49 <li><a href="http://tank.slitaz.org/">Tank Server</a></li>
pankso@157 50 <li><a href="http://mirror.slitaz.org/info/">Mirror Server</a> -
pankso@157 51 <a href="http://mirror.slitaz.org/console/">Console</a>
pankso@157 52 </li>
pankso@157 53 </ul>
pankso@157 54 </div>
pankso@157 55 <!-- Information/image -->
pankso@157 56 <div id="block_info">
pankso@157 57 <h4>Codename: <?php echo $host; ?></h4>
pankso@157 58 <p>
pankso@157 59 This is the SliTaz GNU/Linux main mirror. The server runs naturally SliTaz
pankso@157 60 (stable) in an lguest virtual machine provided by
pankso@157 61 <a href="http://www.ads-lu.com/">Allied Data Sys. (ADS)</a>.
pankso@157 62 </p>
pankso@157 63 <p>
pankso@157 64 Mirror CPU is a <?php system("sed -e '/^model name/!d;s/.*Intel(R) //;" .
pankso@157 65 "s/@//;s/(.*)//;s/CPU //;s/.*AMD //;s/.*: //;s/Processor //' </proc/cpuinfo |" .
pankso@157 66 " awk '{ s=$0; n++ } END { if (n == 2) printf \"dual \";" .
pankso@157 67 "if (n == 4) printf \"quad \"; print s }' ")?> -
pankso@157 68 <?php system("free | awk '/Mem:/ { x=2*$2-1; while (x >= 1024) { x /= 1024; ".
pankso@157 69 "n++ }; y=1; while (x > 2) { x /= 2; y *= 2}; ".
pankso@157 70 "printf \"%d%cB RAM\",y,substr(\"MG\",n,1) }' ")?> - Located in France next to
pankso@157 71 Roubaix. This page has real time statistics provided by PHP
pankso@157 72 <code>system()</code> Mirror is also monitored by RRDtool which provides
pankso@157 73 <a href="graphs.php">graphical stats</a>.
pankso@157 74 </p>
pankso@157 75 </div>
pankso@157 76 </div>
pankso@157 77
pankso@157 78 <!-- Content -->
pankso@157 79 <div id="content">
pankso@157 80
pankso@157 81 <h2><a href="graphs.php"><img
pankso@157 82 style="vertical-align: middle; padding: 0 4px 0 0;"
pankso@157 83 title="Mirror RRDtool graphs" alt="graphs"
pankso@157 84 src="pics/website/monitor.png" /></a>System stats</h2>
pankso@157 85
pankso@157 86 <h4>Uptime</h4>
pankso@157 87
pankso@157 88 <pre class="package">
pankso@157 89 <?php
pankso@157 90 system("uptime | sed 's/^\s*//'");
pankso@157 91 ?>
pankso@157 92 </pre>
pankso@157 93
pankso@157 94 <h4>Disk usage</h4>
pankso@157 95
pankso@157 96 <pre class="package">
pankso@157 97 <?php
pankso@157 98 system("df -h | sed '/^rootfs/d' | grep '\(^/dev\|Filesystem\)'");
pankso@157 99 ?>
pankso@157 100 </pre>
pankso@157 101
pankso@157 102 <h4>Network</h4>
pankso@157 103 <pre class="package">
pankso@157 104 <?php
pankso@157 105 system("ifconfig eth0 | awk '{ if (/X packet/ || /X byte/) print }' | sed 's/^\s*//'");
pankso@157 106 ?>
pankso@157 107 </pre>
pankso@157 108
pankso@157 109
pankso@157 110 <?php if (isset($_GET["all"])) { ?>
pankso@157 111 <h4>Logins</h4>
pankso@157 112 <pre class="package">
pankso@157 113 <?php
pankso@157 114 system("last");
pankso@157 115 ?>
pankso@157 116 </pre>
pankso@157 117
pankso@157 118 <h4>Processes</h4>
pankso@157 119 <pre class="package">
pankso@157 120 <?php
pankso@157 121 system("top -n1 -b");
pankso@157 122 ?>
pankso@157 123 </pre>
pankso@157 124 <?php } ?>
pankso@157 125
pankso@157 126 <a name="vhosts"></a>
pankso@157 127 <h3><a href="http://mirror.slitaz.org/awstats.pl?config=info.mirror.slitaz.org" target="_blank">
pankso@157 128 <img title="Mirror Virtual hosts" alt="vhosts"
pankso@157 129 src="pics/website/vhosts.png" /></a>Virtual hosts</h3>
pankso@157 130
pankso@157 131 <ul>
pankso@157 132 <li><a href="http://mirror.slitaz.org/">mirror.slitaz.org</a> - SliTaz Mirror.
pankso@157 133 (<a href="http://mirror.slitaz.org/stats" target="_blank">stats</a>)</li>
pankso@157 134 <li><a href="http://scn.slitaz.org/">scn.slitaz.org</a> - SliTaz Community Network.
pankso@157 135 (<a href="http://mirror.slitaz.org/awstats.pl?config=scn.slitaz.org" target="_blank">stats</a>)</li>
pankso@157 136 <li><a href="http://pizza.slitaz.org/">pizza.slitaz.org</a> - SliTaz Flavor builder.
pankso@157 137 (<a href="http://mirror.slitaz.org/awstats.pl?config=pizza.mirror.slitaz.org" target="_blank">stats</a>)</li>
pankso@157 138 <li><a href="http://tiny.slitaz.org/">tiny.slitaz.org</a> - Tiny SliTaz builder.
pankso@157 139 (<a href="http://mirror.slitaz.org/awstats.pl?config=tiny.slitaz.org" target="_blank">stats</a>)</li>
pankso@157 140 <li><a href="https://ajaxterm.slitaz.org/">ajaxterm.slitaz.org</a> - Slitaz Web Console.
pankso@157 141 (<a href="http://mirror.slitaz.org/awstats.pl?config=ajaxterm.slitaz.org" target="_blank">stats</a>)</li>
pankso@157 142 </ul>
pankso@157 143
pankso@157 144 <a name="replicas"></a>
pankso@157 145 <h3><a href="http://mirror.slitaz.org/awstats.pl?config=replicas.mirror.slitaz.org" target="_blank">
pankso@157 146 <img title="Tank replicas" alt="replicas"
pankso@157 147 src="pics/website/vhosts.png" /></a>Tank replicas</h3>
pankso@157 148
pankso@157 149 <ul>
pankso@157 150 <li><a href="http://mirror.slitaz.org/www/">www.slitaz.org</a> - SliTaz Website.
pankso@157 151 (<a href="http://www.slitaz.org/" target="_blank">main</a>)</li>
pankso@157 152 <li><a href="http://mirror.slitaz.org/doc/">doc.slitaz.org</a> - Documentation.
pankso@157 153 (<a href="http://doc.slitaz.org/" target="_blank">main</a>)</li>
pankso@157 154 <li><a href="http://mirror.slitaz.org/pkgs/">pkgs.slitaz.org</a> - Packages Web interface.
pankso@157 155 (<a href="http://pkgs.slitaz.org/" target="_blank">main</a>)</li>
pankso@157 156 <li><a href="http://mirror.slitaz.org/hg/">hg.slitaz.org</a> - Mercurial repositories (read only).
pankso@157 157 (<a href="http://hg.slitaz.org/" target="_blank">main</a>
pankso@157 158 <a href="http://hg.tuxfamily.org/mercurialroot/slitaz/" target="_blank">tuxfamily</a>)</li>
pankso@157 159 <li><a href="http://mirror.slitaz.org/webboot/">boot.slitaz.org</a> - gPXE Web boot.
pankso@157 160 (<a href="http://boot.slitaz.org/" target="_blank">main</a>)</li>
pankso@157 161 </ul>
pankso@157 162
pankso@157 163 <a name="boot"></a>
pankso@157 164 <h3><a href="http://doc.slitaz.org/en:guides:pxe#web-booting" target="_blank">
pankso@157 165 <img title="Web boot" src="pics/website/vhosts.png"
pankso@157 166 alt="web boot" /></a>Web boot services</h3>
pankso@157 167 The SliTaz mirror provides a <b>tftp</b> access and a
pankso@157 168 <a href="/pxe">pxe</a> tree. Simply add to your DHCP server configuration file:
pankso@157 169 <ul>
pankso@157 170 <li>for <b>udhcpd</b><!-- siaddr? sname? tftp? -->
pankso@157 171 <pre>
pankso@157 172 siaddr mirror.slitaz.org
pankso@157 173 boot_file gpxe.pxe</pre>
pankso@157 174 </li>
pankso@157 175 <li>for <b>dhcpd</b>
pankso@157 176 <pre>
pankso@157 177 next-server "mirror.slitaz.org"
pankso@157 178 filemane "gpxe.pxe"</pre>
pankso@157 179 </li>
pankso@157 180 <li>for <b>dnsmasq</b>
pankso@157 181 <pre>
pankso@157 182 dhcp-boot=gpxe.pxe,mirror.slitaz.org</pre>
pankso@157 183 </li>
pankso@157 184 </ul>
pankso@157 185
pankso@157 186 <a name="mirrors"></a>
pankso@157 187 <h3><a href="http://mirror.slitaz.org/awstats.pl?config=rsync" target="_blank">
pankso@157 188 <img title="Secondary mirrors" src="pics/website/vhosts.png"
pankso@157 189 alt="mirrors" /></a>Mirrors</h3>
pankso@157 190 Most mirrors are updated using the url: <b>rsync://mirror.slitaz.org/slitaz/</b>
pankso@157 191 (<a href="http://mirror.slitaz.org/awstats.pl?config=rsync">stats</a>)
pankso@157 192 <pre>
pankso@157 193 rsync -azH --delete rsync://mirror.slitaz.org/slitaz/ /local/slitaz/mirror/ </pre>
pankso@157 194 New mirrors should be announced on the
pankso@157 195 <a href="http://www.slitaz.org/en/mailing-list.html">mailing list</a>.
pankso@157 196 <ul>
pankso@157 197 <?php
pankso@157 198 $output_url_file="";
pankso@157 199 $output_url_handler;
pankso@157 200 $mirrors_url_file="/tmp/mirrors";
pankso@157 201
pankso@157 202 function test_url($link, $proto)
pankso@157 203 {
pankso@157 204 global $output_url_file;
pankso@157 205 global $mirrors_url_file;
pankso@157 206 global $output_url_handler;
pankso@157 207
pankso@157 208 if ($output_url_file != "") {
pankso@157 209 switch($proto) {
pankso@157 210 case "http" :
pankso@157 211 case "ftp" :
pankso@157 212 $cmd = "busybox wget -s $link/README" ;
pankso@157 213 break;
pankso@157 214 case "rsync" :
pankso@157 215 $cmd = "rsync $link > /dev/null 2>&1" ;
pankso@157 216 break;
pankso@157 217 default :
pankso@157 218 return FALSE;
pankso@157 219 }
pankso@157 220 if (shell_exec("$cmd && echo -n OK") == "OK") {
pankso@157 221 fwrite($output_url_handler,$link."\n");
pankso@157 222 return TRUE;
pankso@157 223 }
pankso@157 224 return FALSE;
pankso@157 225 }
pankso@157 226 return shell_exec("grep -qs ^$link$ $mirrors_url_file && echo -n OK") == "OK";
pankso@157 227 }
pankso@157 228
pankso@157 229 if (! file_exists($mirrors_url_file)) {
pankso@157 230 $output_url_file = tempnam('/tmp','mkmirrors');
pankso@157 231 $output_url_handler = fopen($output_url_file, "w");
pankso@157 232 fwrite($output_url_handler,"http://mirror.slitaz.org/\n");
pankso@157 233 fwrite($output_url_handler,"rsync://mirror.slitaz.org/\n");
pankso@157 234 }
pankso@157 235
pankso@157 236 # Flags icons from http://www.famfamfam.com/lab/icons/flags/famfamfam_flag_icons.zip
pankso@157 237 foreach (array(
pankso@157 238 array( "flag" => "ch",
pankso@157 239 "http" => "http://mirror.switch.ch/ftp/mirror/slitaz/",
pankso@157 240 "ftp" => "ftp://mirror.switch.ch/mirror/slitaz/"),
pankso@157 241 array( "flag" => "us",
pankso@157 242 "http" => "http://www.gtlib.gatech.edu/pub/slitaz/",
pankso@157 243 "ftp" => "ftp://ftp.gtlib.gatech.edu/pub/slitaz/",
pankso@157 244 "rsync" => "rsync://www.gtlib.gatech.edu/slitaz/"),
pankso@157 245 array( "flag" => "fr",
pankso@157 246 "http" => "http://download.tuxfamily.org/slitaz/",
pankso@157 247 "ftp" => "ftp://download.tuxfamily.org/slitaz/",
pankso@157 248 "rsync" => "rsync://download.tuxfamily.org/pub/slitaz/"),
pankso@157 249 array( "flag" => "fr",
pankso@157 250 "http" => "http://www.linuxembarque.com/slitaz/mirror/"),
pankso@157 251 array( "flag" => "cn",
pankso@157 252 "http" => "http://mirror.lupaworld.com/slitaz/"),
pankso@157 253 array( "flag" => "cn",
pankso@157 254 "http" => "http://ks.lupaworld.com/slitaz/"),
pankso@157 255 array( "flag" => "br",
pankso@157 256 "http" => "http://slitaz.c3sl.ufpr.br/",
pankso@157 257 "ftp" => "ftp://slitaz.c3sl.ufpr.br/slitaz/",
pankso@157 258 "rsync" => "rsync://slitaz.c3sl.ufpr.br/slitaz/"),
pankso@157 259 array( "flag" => "it",
pankso@157 260 "http" => "http://slitaz.mirror.garr.it/mirrors/slitaz/",
pankso@157 261 "ftp" => "ftp://slitaz.mirror.garr.it/mirrors/slitaz/",
pankso@157 262 "rsync" => "rsync://slitaz.mirror.garr.it/mirrors/slitaz/"),
pankso@157 263 array( "flag" => "si",
pankso@157 264 "http" => "http://mirror.drustvo-dns.si/slitaz/"),
pankso@157 265 array( "flag" => "si",
pankso@157 266 "ftp" => "ftp://ftp.pina.si/slitaz/"),
pankso@157 267 array( "flag" => "us",
pankso@157 268 "http" => "http://distro.ibiblio.org/pub/linux/distributions/slitaz/",
pankso@157 269 "ftp" => "ftp://distro.ibiblio.org/pub/linux/distributions/slitaz/"),
pankso@157 270 array( "flag" => "nl",
pankso@157 271 "http" => "http://ftp.vim.org/ftp/os/Linux/distr/slitaz/",
pankso@157 272 "ftp" => "ftp://ftp.vim.org/mirror/os/Linux/distr/slitaz/"),
pankso@157 273 array( "flag" => "nl",
pankso@157 274 "http" => "http://ftp.nedit.org/ftp/ftp/pub/os/Linux/distr/slitaz/",
pankso@157 275 "ftp" => "ftp://ftp.nedit.org/ftp/ftp/pub/os/Linux/distr/slitaz/"),
pankso@157 276 array( "flag" => "ch",
pankso@157 277 "http" => "http://ftp.ch.xemacs.org/ftp/pool/2/mirror/slitaz/",
pankso@157 278 "ftp" => "ftp://ftp.ch.xemacs.org//pool/2/mirror/slitaz/"),
pankso@157 279 array( "flag" => "de",
pankso@157 280 "http" => "http://ftp.uni-stuttgart.de/slitaz/",
pankso@157 281 "ftp" => "ftp://ftp.uni-stuttgart.de/slitaz/"),
pankso@157 282 array( "flag" => "au",
pankso@157 283 "http" => "http://mirror.iprimus.com/slitaz/"),
pankso@157 284 array( "flag" => "au",
pankso@157 285 "http" => "http://mirror01.ipgn.com.au/slitaz/"),
pankso@157 286 array( "flag" => "us",
pankso@157 287 "http" => "http://mirror.clarkson.edu/slitaz/",
pankso@157 288 "rsync" => "rsync://mirror.clarkson.edu/slitaz/")) as $mirror) {
pankso@157 289 $flag = "pics/website/".$mirror["flag"].".png";
pankso@157 290 $head = TRUE;
pankso@157 291 foreach(array("http", "ftp", "rsync") as $proto) {
pankso@157 292 if (!isset($mirror[$proto])) continue;
pankso@157 293 $link = $mirror[$proto];
pankso@157 294 if (!test_url($link, $proto)) continue;
pankso@157 295 $serveur = parse_url($link, PHP_URL_HOST);
pankso@157 296 if ($head) echo <<<EOT
pankso@157 297 <li><a href="http://en.utrace.de/?query=$serveur">
pankso@157 298 <img title="map" src="$flag" alt="map" /></a>
pankso@157 299 <a href="$link">$link</a>
pankso@157 300 EOT;
pankso@157 301 else echo <<<EOT
pankso@157 302 or <a href="$link">$proto</a>
pankso@157 303 EOT;
pankso@157 304 $head = FALSE;
pankso@157 305 }
pankso@157 306 if ($head) continue;
pankso@157 307 echo " </li>\n";
pankso@157 308 }
pankso@157 309
pankso@157 310 if ($output_url_file != "") {
pankso@157 311 fclose($output_url_handler);
pankso@157 312 rename($output_url_file, $mirrors_url_file);
pankso@157 313 chmod($mirrors_url_file, 0644);
pankso@157 314 }
pankso@157 315
pankso@157 316 ?>
pankso@157 317 </ul>
pankso@157 318
pankso@157 319 <a name="builds"></a>
pankso@157 320 <h3><img title="Daily builds" src="pics/website/cdrom.png" alt="builds"
pankso@157 321 width="25" height="25" />
pankso@157 322 Daily builds</h3>
pankso@157 323
pankso@157 324 <?php
pankso@157 325 function display_log($file,$anchor,$url)
pankso@157 326 {
pankso@157 327 echo '<a name="'.$anchor.'"></a>';
pankso@157 328 echo "<h4><a href=\"$url\">";
pankso@157 329 system("stat -c '%y %n' ".$file." | sed 's/.000000000//;s|/var/log/\(.*\).log|\\1.iso|'");
pankso@157 330 echo "</a></h4>";
pankso@157 331 echo "<pre>";
pankso@157 332 $sed_script="s/.\[[0-9][^mG]*.//g";
pankso@157 333 $sed_script.=";:a;s/^\(.\{1,68\}\)\(\[ [A-Za-z]* \]\)/\\1 \\2/;ta";
pankso@157 334 $sed_script.=";s#\[ OK \]#[ <span style=\"color:green\">OK</span> ]#";
pankso@157 335 $sed_script.=";s#\[ Failed \]#[ <span style=\"color:red\">Failed</span> ]#";
pankso@157 336 system("sed '".$sed_script."' < $file");
pankso@157 337 echo "</pre>";
pankso@157 338 }
pankso@157 339
pankso@157 340 display_log("/var/log/packages-stable.log", "buildstable", "/iso/stable/packages-3.0.iso");
pankso@157 341 display_log("/var/log/packages-cooking.log","buildcooking","/iso/cooking/packages-cooking.iso");
pankso@157 342 ?>
pankso@157 343
pankso@157 344 <!-- End of content -->
pankso@157 345 </div>
pankso@157 346
pankso@157 347 <div id="content_bottom">
pankso@157 348 <div class="bottom_left"></div>
pankso@157 349 <div class="bottom_right"></div>
pankso@157 350 </div>
pankso@157 351
pankso@157 352 <!-- Start of footer and copy notice -->
pankso@157 353 <div id="copy">
pankso@157 354 <p>
pankso@157 355 Last update : <?php echo date('r'); ?>
pankso@157 356 </p>
pankso@157 357 <p>
pankso@157 358 Copyright &copy; <?php echo date('Y'); ?> <a href="http://www.slitaz.org/">SliTaz</a> -
pankso@157 359 <a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
pankso@157 360 </p>
pankso@157 361 <!-- End of copy -->
pankso@157 362 </div>
pankso@157 363
pankso@157 364 <!-- Bottom and logo's -->
pankso@157 365 <div id="bottom">
pankso@157 366 <p>
pankso@157 367 <a href="http://validator.w3.org/check?uri=referer"><img
pankso@157 368 src="/css/pics/website/xhtml10.png" alt="Valid XHTML 1.0"
pankso@157 369 title="Code validé XHTML 1.0"
pankso@157 370 style="width: 80px; height: 15px;" /></a>
pankso@157 371 </p>
pankso@157 372 </div>
pankso@157 373
pankso@157 374 </body>
pankso@157 375 </html>