slitaz-forge diff 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 |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/mirror/info/index.php Tue Mar 20 13:13:22 2012 +0100 1.3 @@ -0,0 +1,375 @@ 1.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 1.5 + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 1.6 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> 1.7 +<head> 1.8 + <title>SliTaz Mirror</title> 1.9 + <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" /> 1.10 + <meta name="description" content="slitaz mirror server" /> 1.11 + <meta name="robots" content="index, nofollow" /> 1.12 + <meta name="author" content="SliTaz Contributors" /> 1.13 + <link rel="shortcut icon" href="/css/favicon.ico" /> 1.14 + <link rel="stylesheet" type="text/css" href="/css/slitaz.css" /> 1.15 + <style type="text/css"> 1.16 +#copy { 1.17 + text-align: center; 1.18 +} 1.19 + 1.20 +#bottom { 1.21 + text-align: center; 1.22 +} 1.23 + </style> 1.24 +</head> 1.25 +<body> 1.26 + 1.27 +<!-- Header --> 1.28 +<div id="header"> 1.29 + <div id="logo"></div> 1.30 + <div id="network"> 1.31 + <a href="http://www.slitaz.org/"> 1.32 + <img src="/css/pics/network.png" alt="network.png" /></a> 1.33 + <a href="http://scn.slitaz.org/">Community</a> 1.34 + <a href="http://doc.slitaz.org/" title="SliTaz Community Documentation">Doc</a> 1.35 + <a href="http://forum.slitaz.org/" title="Slitaz Forum">Forum</a> 1.36 + <a href="http://bugs.slitaz.org/" title="Bug Tracking System">Bugs</a> 1.37 + <a href="http://hg.slitaz.org/" title="SliTaz repositories">Hg</a> 1.38 + </div> 1.39 + <h1><a href="http://<?php echo $_SERVER["HTTP_HOST"]; ?>/">SliTaz 1.40 + <?php $host=preg_replace('/(\w+).*/i','$1',$_SERVER["HTTP_HOST"]); echo $host; ?></a></h1> 1.41 +</div> 1.42 + 1.43 +<!-- Block --> 1.44 +<div id="block"> 1.45 + <!-- Navigation --> 1.46 + <div id="block_nav"> 1.47 + <h4><img src="/css/pics/development.png" alt="development.png" />Developers Corner</h4> 1.48 + <ul> 1.49 + <li><a href="http://www.slitaz.org/en/devel/">Website devel</a></li> 1.50 + <li><a href="http://scn.slitaz.org/">Community</a></li> 1.51 + <li><a href="http://cook.slitaz.org/">Build Bot</a></li> 1.52 + <li><a href="http://tank.slitaz.org/">Tank Server</a></li> 1.53 + <li><a href="http://mirror.slitaz.org/info/">Mirror Server</a> - 1.54 + <a href="http://mirror.slitaz.org/console/">Console</a> 1.55 + </li> 1.56 + </ul> 1.57 + </div> 1.58 + <!-- Information/image --> 1.59 + <div id="block_info"> 1.60 + <h4>Codename: <?php echo $host; ?></h4> 1.61 + <p> 1.62 + This is the SliTaz GNU/Linux main mirror. The server runs naturally SliTaz 1.63 + (stable) in an lguest virtual machine provided by 1.64 + <a href="http://www.ads-lu.com/">Allied Data Sys. (ADS)</a>. 1.65 + </p> 1.66 + <p> 1.67 + Mirror CPU is a <?php system("sed -e '/^model name/!d;s/.*Intel(R) //;" . 1.68 + "s/@//;s/(.*)//;s/CPU //;s/.*AMD //;s/.*: //;s/Processor //' </proc/cpuinfo |" . 1.69 + " awk '{ s=$0; n++ } END { if (n == 2) printf \"dual \";" . 1.70 + "if (n == 4) printf \"quad \"; print s }' ")?> - 1.71 + <?php system("free | awk '/Mem:/ { x=2*$2-1; while (x >= 1024) { x /= 1024; ". 1.72 + "n++ }; y=1; while (x > 2) { x /= 2; y *= 2}; ". 1.73 + "printf \"%d%cB RAM\",y,substr(\"MG\",n,1) }' ")?> - Located in France next to 1.74 + Roubaix. This page has real time statistics provided by PHP 1.75 + <code>system()</code> Mirror is also monitored by RRDtool which provides 1.76 + <a href="graphs.php">graphical stats</a>. 1.77 + </p> 1.78 + </div> 1.79 +</div> 1.80 + 1.81 +<!-- Content --> 1.82 +<div id="content"> 1.83 + 1.84 +<h2><a href="graphs.php"><img 1.85 + style="vertical-align: middle; padding: 0 4px 0 0;" 1.86 + title="Mirror RRDtool graphs" alt="graphs" 1.87 + src="pics/website/monitor.png" /></a>System stats</h2> 1.88 + 1.89 +<h4>Uptime</h4> 1.90 + 1.91 +<pre class="package"> 1.92 +<?php 1.93 +system("uptime | sed 's/^\s*//'"); 1.94 +?> 1.95 +</pre> 1.96 + 1.97 +<h4>Disk usage</h4> 1.98 + 1.99 +<pre class="package"> 1.100 +<?php 1.101 +system("df -h | sed '/^rootfs/d' | grep '\(^/dev\|Filesystem\)'"); 1.102 +?> 1.103 +</pre> 1.104 + 1.105 +<h4>Network</h4> 1.106 +<pre class="package"> 1.107 +<?php 1.108 +system("ifconfig eth0 | awk '{ if (/X packet/ || /X byte/) print }' | sed 's/^\s*//'"); 1.109 +?> 1.110 +</pre> 1.111 + 1.112 + 1.113 +<?php if (isset($_GET["all"])) { ?> 1.114 +<h4>Logins</h4> 1.115 +<pre class="package"> 1.116 +<?php 1.117 +system("last"); 1.118 +?> 1.119 +</pre> 1.120 + 1.121 +<h4>Processes</h4> 1.122 +<pre class="package"> 1.123 +<?php 1.124 +system("top -n1 -b"); 1.125 +?> 1.126 +</pre> 1.127 +<?php } ?> 1.128 + 1.129 +<a name="vhosts"></a> 1.130 +<h3><a href="http://mirror.slitaz.org/awstats.pl?config=info.mirror.slitaz.org" target="_blank"> 1.131 + <img title="Mirror Virtual hosts" alt="vhosts" 1.132 + src="pics/website/vhosts.png" /></a>Virtual hosts</h3> 1.133 + 1.134 +<ul> 1.135 + <li><a href="http://mirror.slitaz.org/">mirror.slitaz.org</a> - SliTaz Mirror. 1.136 + (<a href="http://mirror.slitaz.org/stats" target="_blank">stats</a>)</li> 1.137 + <li><a href="http://scn.slitaz.org/">scn.slitaz.org</a> - SliTaz Community Network. 1.138 + (<a href="http://mirror.slitaz.org/awstats.pl?config=scn.slitaz.org" target="_blank">stats</a>)</li> 1.139 + <li><a href="http://pizza.slitaz.org/">pizza.slitaz.org</a> - SliTaz Flavor builder. 1.140 + (<a href="http://mirror.slitaz.org/awstats.pl?config=pizza.mirror.slitaz.org" target="_blank">stats</a>)</li> 1.141 + <li><a href="http://tiny.slitaz.org/">tiny.slitaz.org</a> - Tiny SliTaz builder. 1.142 + (<a href="http://mirror.slitaz.org/awstats.pl?config=tiny.slitaz.org" target="_blank">stats</a>)</li> 1.143 + <li><a href="https://ajaxterm.slitaz.org/">ajaxterm.slitaz.org</a> - Slitaz Web Console. 1.144 + (<a href="http://mirror.slitaz.org/awstats.pl?config=ajaxterm.slitaz.org" target="_blank">stats</a>)</li> 1.145 +</ul> 1.146 + 1.147 +<a name="replicas"></a> 1.148 +<h3><a href="http://mirror.slitaz.org/awstats.pl?config=replicas.mirror.slitaz.org" target="_blank"> 1.149 + <img title="Tank replicas" alt="replicas" 1.150 + src="pics/website/vhosts.png" /></a>Tank replicas</h3> 1.151 + 1.152 +<ul> 1.153 + <li><a href="http://mirror.slitaz.org/www/">www.slitaz.org</a> - SliTaz Website. 1.154 + (<a href="http://www.slitaz.org/" target="_blank">main</a>)</li> 1.155 + <li><a href="http://mirror.slitaz.org/doc/">doc.slitaz.org</a> - Documentation. 1.156 + (<a href="http://doc.slitaz.org/" target="_blank">main</a>)</li> 1.157 + <li><a href="http://mirror.slitaz.org/pkgs/">pkgs.slitaz.org</a> - Packages Web interface. 1.158 + (<a href="http://pkgs.slitaz.org/" target="_blank">main</a>)</li> 1.159 + <li><a href="http://mirror.slitaz.org/hg/">hg.slitaz.org</a> - Mercurial repositories (read only). 1.160 + (<a href="http://hg.slitaz.org/" target="_blank">main</a> 1.161 + <a href="http://hg.tuxfamily.org/mercurialroot/slitaz/" target="_blank">tuxfamily</a>)</li> 1.162 + <li><a href="http://mirror.slitaz.org/webboot/">boot.slitaz.org</a> - gPXE Web boot. 1.163 + (<a href="http://boot.slitaz.org/" target="_blank">main</a>)</li> 1.164 +</ul> 1.165 + 1.166 +<a name="boot"></a> 1.167 +<h3><a href="http://doc.slitaz.org/en:guides:pxe#web-booting" target="_blank"> 1.168 + <img title="Web boot" src="pics/website/vhosts.png" 1.169 + alt="web boot" /></a>Web boot services</h3> 1.170 + The SliTaz mirror provides a <b>tftp</b> access and a 1.171 + <a href="/pxe">pxe</a> tree. Simply add to your DHCP server configuration file: 1.172 + <ul> 1.173 + <li>for <b>udhcpd</b><!-- siaddr? sname? tftp? --> 1.174 + <pre> 1.175 +siaddr mirror.slitaz.org 1.176 +boot_file gpxe.pxe</pre> 1.177 + </li> 1.178 + <li>for <b>dhcpd</b> 1.179 + <pre> 1.180 +next-server "mirror.slitaz.org" 1.181 +filemane "gpxe.pxe"</pre> 1.182 + </li> 1.183 + <li>for <b>dnsmasq</b> 1.184 + <pre> 1.185 +dhcp-boot=gpxe.pxe,mirror.slitaz.org</pre> 1.186 + </li> 1.187 + </ul> 1.188 + 1.189 +<a name="mirrors"></a> 1.190 +<h3><a href="http://mirror.slitaz.org/awstats.pl?config=rsync" target="_blank"> 1.191 + <img title="Secondary mirrors" src="pics/website/vhosts.png" 1.192 + alt="mirrors" /></a>Mirrors</h3> 1.193 + Most mirrors are updated using the url: <b>rsync://mirror.slitaz.org/slitaz/</b> 1.194 + (<a href="http://mirror.slitaz.org/awstats.pl?config=rsync">stats</a>) 1.195 + <pre> 1.196 +rsync -azH --delete rsync://mirror.slitaz.org/slitaz/ /local/slitaz/mirror/ </pre> 1.197 + New mirrors should be announced on the 1.198 + <a href="http://www.slitaz.org/en/mailing-list.html">mailing list</a>. 1.199 +<ul> 1.200 +<?php 1.201 +$output_url_file=""; 1.202 +$output_url_handler; 1.203 +$mirrors_url_file="/tmp/mirrors"; 1.204 + 1.205 +function test_url($link, $proto) 1.206 +{ 1.207 + global $output_url_file; 1.208 + global $mirrors_url_file; 1.209 + global $output_url_handler; 1.210 + 1.211 + if ($output_url_file != "") { 1.212 + switch($proto) { 1.213 + case "http" : 1.214 + case "ftp" : 1.215 + $cmd = "busybox wget -s $link/README" ; 1.216 + break; 1.217 + case "rsync" : 1.218 + $cmd = "rsync $link > /dev/null 2>&1" ; 1.219 + break; 1.220 + default : 1.221 + return FALSE; 1.222 + } 1.223 + if (shell_exec("$cmd && echo -n OK") == "OK") { 1.224 + fwrite($output_url_handler,$link."\n"); 1.225 + return TRUE; 1.226 + } 1.227 + return FALSE; 1.228 + } 1.229 + return shell_exec("grep -qs ^$link$ $mirrors_url_file && echo -n OK") == "OK"; 1.230 +} 1.231 + 1.232 +if (! file_exists($mirrors_url_file)) { 1.233 + $output_url_file = tempnam('/tmp','mkmirrors'); 1.234 + $output_url_handler = fopen($output_url_file, "w"); 1.235 + fwrite($output_url_handler,"http://mirror.slitaz.org/\n"); 1.236 + fwrite($output_url_handler,"rsync://mirror.slitaz.org/\n"); 1.237 +} 1.238 + 1.239 +# Flags icons from http://www.famfamfam.com/lab/icons/flags/famfamfam_flag_icons.zip 1.240 +foreach (array( 1.241 + array( "flag" => "ch", 1.242 + "http" => "http://mirror.switch.ch/ftp/mirror/slitaz/", 1.243 + "ftp" => "ftp://mirror.switch.ch/mirror/slitaz/"), 1.244 + array( "flag" => "us", 1.245 + "http" => "http://www.gtlib.gatech.edu/pub/slitaz/", 1.246 + "ftp" => "ftp://ftp.gtlib.gatech.edu/pub/slitaz/", 1.247 + "rsync" => "rsync://www.gtlib.gatech.edu/slitaz/"), 1.248 + array( "flag" => "fr", 1.249 + "http" => "http://download.tuxfamily.org/slitaz/", 1.250 + "ftp" => "ftp://download.tuxfamily.org/slitaz/", 1.251 + "rsync" => "rsync://download.tuxfamily.org/pub/slitaz/"), 1.252 + array( "flag" => "fr", 1.253 + "http" => "http://www.linuxembarque.com/slitaz/mirror/"), 1.254 + array( "flag" => "cn", 1.255 + "http" => "http://mirror.lupaworld.com/slitaz/"), 1.256 + array( "flag" => "cn", 1.257 + "http" => "http://ks.lupaworld.com/slitaz/"), 1.258 + array( "flag" => "br", 1.259 + "http" => "http://slitaz.c3sl.ufpr.br/", 1.260 + "ftp" => "ftp://slitaz.c3sl.ufpr.br/slitaz/", 1.261 + "rsync" => "rsync://slitaz.c3sl.ufpr.br/slitaz/"), 1.262 + array( "flag" => "it", 1.263 + "http" => "http://slitaz.mirror.garr.it/mirrors/slitaz/", 1.264 + "ftp" => "ftp://slitaz.mirror.garr.it/mirrors/slitaz/", 1.265 + "rsync" => "rsync://slitaz.mirror.garr.it/mirrors/slitaz/"), 1.266 + array( "flag" => "si", 1.267 + "http" => "http://mirror.drustvo-dns.si/slitaz/"), 1.268 + array( "flag" => "si", 1.269 + "ftp" => "ftp://ftp.pina.si/slitaz/"), 1.270 + array( "flag" => "us", 1.271 + "http" => "http://distro.ibiblio.org/pub/linux/distributions/slitaz/", 1.272 + "ftp" => "ftp://distro.ibiblio.org/pub/linux/distributions/slitaz/"), 1.273 + array( "flag" => "nl", 1.274 + "http" => "http://ftp.vim.org/ftp/os/Linux/distr/slitaz/", 1.275 + "ftp" => "ftp://ftp.vim.org/mirror/os/Linux/distr/slitaz/"), 1.276 + array( "flag" => "nl", 1.277 + "http" => "http://ftp.nedit.org/ftp/ftp/pub/os/Linux/distr/slitaz/", 1.278 + "ftp" => "ftp://ftp.nedit.org/ftp/ftp/pub/os/Linux/distr/slitaz/"), 1.279 + array( "flag" => "ch", 1.280 + "http" => "http://ftp.ch.xemacs.org/ftp/pool/2/mirror/slitaz/", 1.281 + "ftp" => "ftp://ftp.ch.xemacs.org//pool/2/mirror/slitaz/"), 1.282 + array( "flag" => "de", 1.283 + "http" => "http://ftp.uni-stuttgart.de/slitaz/", 1.284 + "ftp" => "ftp://ftp.uni-stuttgart.de/slitaz/"), 1.285 + array( "flag" => "au", 1.286 + "http" => "http://mirror.iprimus.com/slitaz/"), 1.287 + array( "flag" => "au", 1.288 + "http" => "http://mirror01.ipgn.com.au/slitaz/"), 1.289 + array( "flag" => "us", 1.290 + "http" => "http://mirror.clarkson.edu/slitaz/", 1.291 + "rsync" => "rsync://mirror.clarkson.edu/slitaz/")) as $mirror) { 1.292 + $flag = "pics/website/".$mirror["flag"].".png"; 1.293 + $head = TRUE; 1.294 + foreach(array("http", "ftp", "rsync") as $proto) { 1.295 + if (!isset($mirror[$proto])) continue; 1.296 + $link = $mirror[$proto]; 1.297 + if (!test_url($link, $proto)) continue; 1.298 + $serveur = parse_url($link, PHP_URL_HOST); 1.299 + if ($head) echo <<<EOT 1.300 + <li><a href="http://en.utrace.de/?query=$serveur"> 1.301 + <img title="map" src="$flag" alt="map" /></a> 1.302 + <a href="$link">$link</a> 1.303 +EOT; 1.304 + else echo <<<EOT 1.305 + or <a href="$link">$proto</a> 1.306 +EOT; 1.307 + $head = FALSE; 1.308 + } 1.309 + if ($head) continue; 1.310 + echo " </li>\n"; 1.311 +} 1.312 + 1.313 +if ($output_url_file != "") { 1.314 + fclose($output_url_handler); 1.315 + rename($output_url_file, $mirrors_url_file); 1.316 + chmod($mirrors_url_file, 0644); 1.317 +} 1.318 + 1.319 +?> 1.320 +</ul> 1.321 + 1.322 +<a name="builds"></a> 1.323 +<h3><img title="Daily builds" src="pics/website/cdrom.png" alt="builds" 1.324 + width="25" height="25" /> 1.325 + Daily builds</h3> 1.326 + 1.327 +<?php 1.328 +function display_log($file,$anchor,$url) 1.329 +{ 1.330 +echo '<a name="'.$anchor.'"></a>'; 1.331 +echo "<h4><a href=\"$url\">"; 1.332 +system("stat -c '%y %n' ".$file." | sed 's/.000000000//;s|/var/log/\(.*\).log|\\1.iso|'"); 1.333 +echo "</a></h4>"; 1.334 +echo "<pre>"; 1.335 +$sed_script="s/.\[[0-9][^mG]*.//g"; 1.336 +$sed_script.=";:a;s/^\(.\{1,68\}\)\(\[ [A-Za-z]* \]\)/\\1 \\2/;ta"; 1.337 +$sed_script.=";s#\[ OK \]#[ <span style=\"color:green\">OK</span> ]#"; 1.338 +$sed_script.=";s#\[ Failed \]#[ <span style=\"color:red\">Failed</span> ]#"; 1.339 +system("sed '".$sed_script."' < $file"); 1.340 +echo "</pre>"; 1.341 +} 1.342 + 1.343 +display_log("/var/log/packages-stable.log", "buildstable", "/iso/stable/packages-3.0.iso"); 1.344 +display_log("/var/log/packages-cooking.log","buildcooking","/iso/cooking/packages-cooking.iso"); 1.345 +?> 1.346 + 1.347 +<!-- End of content --> 1.348 +</div> 1.349 + 1.350 +<div id="content_bottom"> 1.351 +<div class="bottom_left"></div> 1.352 +<div class="bottom_right"></div> 1.353 +</div> 1.354 + 1.355 +<!-- Start of footer and copy notice --> 1.356 +<div id="copy"> 1.357 +<p> 1.358 +Last update : <?php echo date('r'); ?> 1.359 +</p> 1.360 +<p> 1.361 +Copyright © <?php echo date('Y'); ?> <a href="http://www.slitaz.org/">SliTaz</a> - 1.362 +<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a> 1.363 +</p> 1.364 +<!-- End of copy --> 1.365 +</div> 1.366 + 1.367 +<!-- Bottom and logo's --> 1.368 +<div id="bottom"> 1.369 +<p> 1.370 +<a href="http://validator.w3.org/check?uri=referer"><img 1.371 + src="/css/pics/website/xhtml10.png" alt="Valid XHTML 1.0" 1.372 + title="Code validé XHTML 1.0" 1.373 + style="width: 80px; height: 15px;" /></a> 1.374 +</p> 1.375 +</div> 1.376 + 1.377 +</body> 1.378 +</html>