LINUX.ORG.RU

Сообщения commeta

 

Переустановка MySQL Debian

Подскажите как полностью снести mysql-server вместе с базами?

apt-get remove --purge mysql-server
apt-get remove --purge mysql-common
не помогло, после установки вылетает с ошибкой
Starting MySQL database server: mysqld ..
Checking for corrupt, not cleanly closed and upgrade needing tables..
ERROR 126 (HY000) at line 1: Incorrect key file for table '/tmp/#sql_79fd_0.MYI'; try to repair it

Это появилось после того как место на диске кончилось, но в базах ничего важного небыло, поэтому все снес. Но видимо не все... куда копать?

commeta
()

Zabbix & безопасность

zabbix 2.0 Ubuntu, Centos, Debian Кто как с агентов данные снимает через интернет? для начала на уровне iptables принимать с нужных sources. Или правильнее через ssh туннель будет?

commeta
()

Perl установка модуля Mysql через CPAN

Ставлю через CPAN модуль для поддержки MySQL в perl, установил

#perl -MCPAN -e shell
>install YAML
>install DBD::mysql
>install DBI

install Mysql вылетает с ошибкой

cpan[5]> install Mysql                             
Running install for module 'Mysql'
Running make for C/CA/CAPTTOFU/DBD-mysql-3.0008.tar.gz
  Has already been unwrapped into directory /home/commeta/.cpan/build/DBD-mysql-3.0008-gjTi6t
Could not make: Unknown error
Running make test
  Can't test without successful make
Running make install
  Make had returned bad status, install seems impossible
подскажите в чем грабли? ubuntu 12.04

commeta
()

Разыскивается Repository for Debian kernels with IMQ support

На сайте разработчиков в новостях есть сообщение

2011-04-08 Repository for Debian kernels. I'm doing the all efforts to build the last debian kernel with IMQ support.

Add following repository to the the /etc/apt/sources.list:

deb ftp://ftp.debian.mantech.ro/debian-imq/ testing main deb-src ftp://ftp.debian.mantech.ro/debian-imq/ testing main

Однако недоступен который день, может кто знает гденить еще такое чудо?

commeta
()

Шейпинг трафика, фильтры tc, и виртуальный интерфейс.

Есть прокси/шлюз на debian 6, раздает инет на несколько раб. станций.
Схема сети

1. По фильтрации: как определить (в правиле для filter) является ли пакет транзитным или предназначен для служб крутящихся на сервере? (Я не совсем понимаю в какой момент происходит обработка очередей, до NAT или после).
2. У меня два интерфейса смотрящие в локальную сеть, входящий(clients->server) трафик направляется в ifb0

tc qdisc add dev eth0 ingress
tc qdisc add dev wlan0 ingress
tc filter add dev eth0 parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev ifb0
tc filter add dev wlan0 parent ffff: protocol ip u32 match u32 0 0 action mirred egress redirect dev ifb0
а как быть с исходящим(server->clients), мне ведь надо по ровну раздать инет на станции и по меди и по воздуху, т.е. должен быть iface с которого трафик расходился на eth0 и wlan0, и на него уже вешать очереди. Как это сделать?

 ,

commeta
()

Proftpd debian, Refused PORT из внешнего мира

Есть PC роутер на нем крутится ProFTPd,
есть локалка eth0 192.168.0.0/24,
сеть провайдера eth1 с серым IP 10.0.0.0/8 + белый IP 109.x.x.x (натится у прова)

Из локалки ФТП работает без нареканий, а вот при попытке подконнектится из мира TotalCommander ругается: 500 illegal PORT command (Команда PORT не выполнена)

при этом в логах ProFTPd:

Feb 15 02:10:01 debian proftpd[1769] debian (195.x.x.x): FTP session opened.
Feb 15 02:10:01 debian proftpd[1769] debian (195.x.x.x): Preparing to chroot to directory '/home/ftp'
Feb 15 02:10:01 debian proftpd[1769] debian (195.x.x.x): ANON ftp: Login successful.
Feb 15 02:10:22 debian proftpd[1769] debian (195.x.x.x): Refused PORT 192,168,0,2,4,189 (address mismatch)

Собсно вопрос чего такое происходит, почему в Refused PORT 192,168,0,2,4,189 ip машинки стоящей за натом (с которой я тоталом пытаюсь подконнектится) из внешнего мира?.

конфиг proftpd.conf

Include /etc/proftpd/modules.conf
UseIPv6                         off
IdentLookups                    off

ServerName                      "Debian"
ServerType                      standalone
DeferWelcome                    off

MultilineRFC2228                on
DefaultServer                   on
ShowSymlinks                    on

TimeoutNoTransfer               600
TimeoutStalled                  600
TimeoutIdle                     1200

DisplayLogin                    welcome.msg
DisplayChdir                    .message true
ListOptions                     "-l"

DenyFilter                      \*.*/

Port                            21

MaxInstances                    30

User                            proftpd
Group                           nogroup

Umask                           022  022
AllowOverwrite                  on

TransferLog /var/log/proftpd/xferlog
SystemLog   /var/log/proftpd/proftpd.log

<IfModule mod_quotatab.c>
QuotaEngine off
</IfModule>

<IfModule mod_ratio.c>
Ratios off
</IfModule>

<IfModule mod_delay.c>
DelayEngine on
</IfModule>

<IfModule mod_ctrls.c>
ControlsEngine        off
ControlsMaxClients    2
ControlsLog           /var/log/proftpd/controls.log
ControlsInterval      5
ControlsSocket        /var/run/proftpd/proftpd.sock
</IfModule>

<IfModule mod_ctrls_admin.c>
AdminControlsEngine off
</IfModule>

<Anonymous ~ftp>
  User                          ftp
  Group                         nogroup
  UserAlias                     anonymous ftp
  DirFakeUser   on ftp
  DirFakeGroup on ftp

  RequireValidShell             off

  MaxClients                    10

  DisplayLogin                  welcome.msg
  DisplayChdir                  .message
</Anonymous>

ну и iptables-save на всякий случай

# Generated by iptables-save v1.4.8 on Wed Feb 15 06:30:18 2012
*mangle
:PREROUTING ACCEPT [133224:35760532]
:INPUT ACCEPT [24252:3225708]
:FORWARD ACCEPT [108966:32534488]
:OUTPUT ACCEPT [11105:2959046]
:POSTROUTING ACCEPT [120111:35500855]
-A PREROUTING -i eth0 -j TTL --ttl-set 64
COMMIT
# Completed on Wed Feb 15 06:30:18 2012
# Generated by iptables-save v1.4.8 on Wed Feb 15 06:30:18 2012
*nat
:PREROUTING ACCEPT [29362:2096394]
:POSTROUTING ACCEPT [22:2700]
:OUTPUT ACCEPT [748:53536]
-A PREROUTING -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128
-A POSTROUTING -o eth1 -j SNAT --to-source 10.x.x.x
COMMIT
# Completed on Wed Feb 15 06:30:18 2012
# Generated by iptables-save v1.4.8 on Wed Feb 15 06:30:18 2012
*filter
:INPUT DROP [14103:877031]
:FORWARD DROP [0:0]
:OUTPUT DROP [0:0]
:common-check - [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -j common-check
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 20 -j ACCEPT
-A INPUT -i eth1 -p tcp -m tcp --dport 21 -j ACCEPT
-A INPUT -i eth1 -p icmp -m icmp --icmp-type 3 -j ACCEPT
-A INPUT -i eth1 -p icmp -m icmp --icmp-type 11 -j ACCEPT
-A INPUT -i eth1 -p icmp -m icmp --icmp-type 12 -j ACCEPT
-A FORWARD -j common-check
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
-A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 192.168.0.0/24 -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
-A OUTPUT -j common-check
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT -j ACCEPT
-A common-check -m state --state INVALID -j DROP
-A common-check -p tcp -m tcp --tcp-flags SYN,ACK SYN,ACK -m state --state NEW -j REJECT --reject-with tcp-reset
-A common-check -p tcp -m tcp ! --tcp-flags FIN,SYN,RST,ACK SYN -m state --state NEW -j DROP
-A common-check -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP
-A common-check -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,PSH,ACK,URG -j DROP
-A common-check -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,ACK,URG -j DROP
-A common-check -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE -j DROP
-A common-check -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
-A common-check -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP
COMMIT

П.С. modprobe nf_conntrack_ftp загружен, ЧЯДНТ???

commeta
()

Мониторинг очередей шейпера Linux

Подскажите чем мониторить очереди шейпера.
К примеру есть у меня 5 классов
classid: 1:101
classid: 1:102
classid: 1:103
classid: 1:104
classid: 1:105

можно сделать пять вызовов
tc -s class show dev eth0 classid 1:101
tc -s class show dev eth0 classid 1:102
tc -s class show dev eth0 classid 1:103
tc -s class show dev eth0 classid 1:104
tc -s class show dev eth0 classid 1:105

но это не удобно, и слишком много лишних вызовов утилиты tc, а надо в реальном времени посмотреть статистику в очередях sent bytes, gropped, rate…

Может есть что-то top like для этих целей? Кто чем пользуется при отладке шейпера?
Или может в sysctl\proc есть счетчики с нужными мне данными?

РЕШЕНО!

Нашел скрипт на прел, tc-viewer

#!/usr/bin/perl -w
#
# script: tc-viewer 1.5
# author: Pawel 'snaj' Pawilcz
# email: pawel_pawilcz(at)yahoo.com
# www: http://snaj.ath.cx/
# licence and copyrights: GNU GPL
#
# example: 	tc-viewer --sort --unit=kbit --timer=5 --conf=/etc/tc-viewer.conf
#

use strict;
use Getopt::Long qw(GetOptions);
use File::Basename qw(basename);
use POSIX qw(strftime);

my ($conf, $sort, $zero, $top, $ifhelp, $unit, $iface, $counter, $timer, $hfsc, $colors ) = ( "", "0", "0", "", "0", "bit", "", "", 2, "0", "0");
my (%color_set, %names, %speedspom, %classes, %speeds) = ( ( ), ( ), ( ), ( ), ( ) );
my ($pom_line_counter, $line_counter, $class_ok, $byte_index, $pkt_index, $class, $parent, $indent, $mydiv, $count, $pomiface) = (0, 0, 0, 0, 0, "", "", "   ", 1, 0, "" );
my $help = "Usage: ". basename($0) ." [--help] [--iface=<interface>] [--hfsc] [--sort] [--zero] [--timer=<seconds>] [--top=<X>] [--counter=<X>] [--colors] [--unit=<bit,B,kbit,kB>] [--conf=<tc-viewer-conf>]

	--iface=<interface>	interface to listen on; must be specified
	--conf=<filename>	path to configuration file; default none
	--hfsc			hfsc mode; default htb mode
	--sort			sort speeds; default disabled
	--zero			show classes with 0 speeds; default disabled
	--timer=<X>		refresh delay in seconds; default 2
	--top=<X>		show X speeds; default show all speeds
	--counter=<X>		after X refreshes exit; default never exit
	--colors		enable colored output; default disabled
	--unit=<bit,B,kbit,kB>	speed unit; default bit
	--help			prints this info

tc-viewer 1.5 by snaj

";
my %colors = (
	'RST' => "\033[0m",           # reset
	'RED' => "\033[40;31m",       # red
	'GRE' => "\033[40;32m",       # green
	'YEL' => "\033[40;33m",       # yellow
	'BLU' => "\033[40;34m",       # blue
	'PIN' => "\033[40;35m",       # pink
	'LBL' => "\033[40;36m",       # light blue
	'BRED' => "\033[40;31;1m",    # bold red
	'BGRE' => "\033[40;32;1m",    # bold green
	'BYEL' => "\033[40;33;1m",    # bold yellow
	'BBLU' => "\033[40;34;1m",    # bold blue
	'BPIN' => "\033[40;35;1m",    # bold pink
	'BLBL' => "\033[40;36;1m",    # bold light blue
	'NONE' => "",
);

GetOptions(
	'iface=s' => \$iface,
	'conf=s' => \$conf,
	'top=i' => \$top,
	'counter=i' => \$counter,
	'timer=i' => \$timer,
	'sort!' => \$sort,
	'zero!' => \$zero,
	'colors!' => \$colors,
	'hfsc!' => \$hfsc,
	'help' => \$ifhelp,
	'unit=s'=> \$unit,
) || die $help;

die $help if $ifhelp;

$pomiface = $iface if $iface;

eval `cat $conf` || exit 1 if $conf;

$iface = $pomiface if $pomiface;
die $help unless $iface;

$unit = "bit" if !$unit || $unit !~ /^(bit|kbit|B|kB)$/;

$mydiv = 
	$unit eq "bit" ? 1/8 :
	$unit eq "kbit" ? 1024/8 :
	$unit eq "kB" ? 1024 : 1;

if ($hfsc eq "1") {
	$byte_index = $pkt_index++;
} else {
	$byte_index = ($pkt_index=2)++;
}

if ($colors eq "0") {
	$color_set{'Name'} = $color_set{'Speed'} = $color_set{'Range'} = $color_set{'Neutral'} = $color_set{'Reset'} = 'NONE';
} else {
	$color_set{'Name'} = 'GRE' unless $color_set{'Name'};
	$color_set{'Speed'} = 'RED' unless $color_set{'Speed'};
	$color_set{'Range'} = 'YEL' unless $color_set{'Range'};
	$color_set{'Neutral'} = 'BPIN' unless $color_set{'Neutral'};
	$color_set{'Reset'} = 'RST';
}
$|=1;

sub view_speeds {
	(my @TC = `tc -s class show dev $iface`) || exit 1;

	for (@TC) {
		if ($hfsc eq "1") {
			next	if(/^( period| backlog)/ || /^$/ );

			if(/^class hfsc (\S+) (root|parent (\S+)) /) {
				$class = $1;
				($parent=$2)=~s/parent //;
				$class .= "0" if ($class =~ /:$/);
				$parent .= "0" if ($parent =~ /:$/);
				push @{$classes{$parent}}, $class unless $class_ok;
				next;
			}
		} else {
			next	if(/^( rate| lended| tokens)/ || /^$/);

			if(/^class htb (\S+) (root|parent (\S+)) .*rate (\S+) ceil (\S+) /) {
				my ($pom4, $pom5) = ($4, $5);
				$class = $1;
				($parent=$2)=~s/parent //;				
				$class .= "0" if ($class =~ /:$/);
				$parent .= "0" if ($parent =~ /:$/);
				push @{$speeds{$class}}, $pom4;
				push @{$speeds{$class}}, $pom5;
				push @{$classes{$parent}}, $class unless $class_ok;
				next;
			}
		} 

		if(/^ Sent (\d+) bytes (\d+) pkt/) {
			push @{$speeds{$class}}, $1;
			push @{$speeds{$class}}, $2;			
			if ($zero eq "0") {
				if ($class_ok && ((@{$speeds{$class}}[$byte_index] -= @{$speedspom{$class}}[$byte_index]) == 0)) {				
					if ( $hfsc eq "0" || !exists $classes{$class} ) {
						@{$classes{$parent}}[$_] cmp $class || !(splice @{$classes{$parent}}, $_, 1) || last  foreach (0..$#{$classes{$parent}});
						delete $speeds{$class};
					} 
					if ( $hfsc eq "0" ) {
						delete $classes{$parent} unless @{$classes{$parent}};
					}
					next;
				}
			} else {
				@{$speeds{$class}}[$byte_index] -= @{$speedspom{$class}}[$byte_index] if $class_ok;
			}
			
			@{$speeds{$class}}[$pkt_index] -= @{$speedspom{$class}}[$pkt_index] if $class_ok;
			next;
		}
	}
	$class_ok ? $class_ok-- : $class_ok++;
}

sub exit_handler {
	die "\e[?25h\n\n";
}
     
sub sum() {
	my ($class) = @_;	
	return unless exists $classes{$class};
	return unless @{$speeds{$class}}[0] == 0;

	&sum($_) foreach (@{$classes{$class}});
	
	@{$speeds{$class}}[0] += @{$speeds{$_}}[0] foreach (@{$classes{$class}});
	@{$speeds{$class}}[1] += @{$speeds{$_}}[1] foreach (@{$classes{$class}});
}

$SIG{$_} = 'exit_handler' foreach (qw/INT KILL TERM/);

print "\e[?25l\e[2J\e[1;1H\n\tCalculating ...\n";

while (1) {
	&view_speeds;
	%speedspom = %speeds;
	%speeds = ( );
	sleep $timer;
	&view_speeds;
	
	if ($hfsc eq "1") {
		&sum($_) foreach (@{$classes{'root'}});
	}
	
	if ($sort eq "1") {
		@{$classes{$_}} = reverse sort { @{$speeds{$a}}[$byte_index] <=> @{$speeds{$b}}[$byte_index] || substr( $a, (index $a, ':')+1) cmp substr( $b, index ($b, ':')+1) } @{$classes{$_}} foreach (keys %classes);
	} else {
		@{$classes{$_}} = sort { substr($a, index($a, ':')+1) cmp substr($b, index($b, ':')+1) } @{$classes{$_}} foreach (keys %classes);
	}

	print strftime "\e[1;1H \n$colors{$color_set{'Neutral'}}   %a %b %e %H:%M:%S %Y", localtime;

	print "\n\n\tMode: ", $hfsc eq "0" ? "HTB" : "HFSC" ,"        ^C to QUIT$colors{$color_set{'Reset'}}\n\n";

	if (exists $classes{'root'}) {
		my @pom_tab = (keys %speeds);
		if ($top) {
			if ($sort && $sort eq "1") {
				@pom_tab = reverse sort { @{$speeds{$a}}[$byte_index] <=> @{$speeds{$b}}[$byte_index] || substr( $a, (index $a, ':')+1) <=> substr( $b, index ($b, ':')+1) } @pom_tab;
			} else {	
				@pom_tab = sort { substr($a, index($a, ':')+1) <=> substr($b, index($b, ':')+1) } @pom_tab;
			}
			for (1..$top)	{
				if (defined $pom_tab[0] && exists $classes{$pom_tab[0]}) {
					shift @pom_tab;
					redo;
				} else {
					shift @pom_tab;
				}
			}
			delete $speeds{$_} foreach (@pom_tab);
		}	
				

		foreach (@{$classes{'root'}}) {
			if ($hfsc eq "1") {				
				foreach (@{$classes{$_}}) {
					&show($_, "");
					last unless !$top || $count <= $top;
				}
			} else {
				&show($_, "");
			}
			last unless !$top || $count <= $top;
		}
	} else {
		print "\n\t$colors{$color_set{'Neutral'}}No transfers ...$colors{$color_set{'Reset'}}\n";
	}
	%classes = %speeds = %speedspom = ( );
	--$counter || &exit_handler if $counter;
	print "\n\e[2K" x ($pom_line_counter - $line_counter) if ($line_counter < $pom_line_counter);

	$pom_line_counter = $line_counter;
	$line_counter = $count = 0;
}

sub show {
	my ($class, $indent_new) = @_;
	my $myindent = $indent_new ? $indent_new.$indent : $indent_new." ";
	return unless (exists $speeds{$class});
	if( $hfsc eq "1") {
		printf "\n\e[2K%s%s%-15s%s - %s%15s%s  (%s%3dpps%s)", $colors{$color_set{'Name'}}, $myindent, exists $names{$class} ? $names{$class} : $class , $colors{$color_set{'Reset'}}, $colors{$color_set{'Speed'}}, sprintf("%.1f", @{$speeds{$class}}[0]/($timer*$mydiv)).' '.$unit.'/s', $colors{$color_set{'Reset'}}, $colors{$color_set{'Neutral'}}, @{$speeds{$class}}[1]/$timer, $colors{$color_set{'Reset'}} ;
	} else {
		printf "\n\e[2K%s%s%-20s%s < %s%10s%s - %s%10s%s > %s%15s%s  (%s%3dpps%s)", $colors{$color_set{'Name'}}, $myindent, exists $names{$class} ? $names{$class} : $class , $colors{$color_set{'Reset'}}, $colors{$color_set{'Range'}}, @{$speeds{$class}}[0], $colors{$color_set{'Reset'}}, $colors{$color_set{'Range'}}, @{$speeds{$class}}[1], $colors{$color_set{'Reset'}}, $colors{$color_set{'Speed'}}, sprintf("%.1f", @{$speeds{$class}}[2]/($timer*$mydiv)).' '.$unit.'/s', $colors{$color_set{'Reset'}}, $colors{$color_set{'Neutral'}}, @{$speeds{$class}}[3]/$timer, $colors{$color_set{'Reset'}};
	}
	$line_counter++;
	if (exists $classes{$class}) {
		foreach (@{$classes{$class}}) {
			&show($_, $myindent);
			return unless !$top || $count <= $top;
		}
	} else {
		$count++;
		return unless !$top || $count <= $top;
	}
}

&exit_handler;

tc-viewer provides the ability to watch current transfers that take place in HTB and HFSC traffic shaping classes.

tc-viewer provides the ability to watch current transfers that take place in HTB and HFSC traffic shaping classes on specified interface.

tc-viewer reads output from: tc -s class show dev iface, and analyzes (for each class) values in lines like this one :

Sent 6173259431 bytes 6300224 pkt...

Measured speeds may little vary from the real ones.

Requirements:

· Perl 5.x (latest stable for your distro because of security reasons)

Installation:

· Download script: tc-viewer · Download example configuration: tc-viewer.conf · Copy tc-viewer to some location that is in your PATH variable, for example /usr/sbin. · chmod +x /path_to_script/tc-viewer · Modify accordingly to your needs tc-viewer.conf and place somewhere, for example in /etc.

What's New in This Release:

· A problem with high values of the parameter 'top' has been fixed.

conf example

$unit = "kbit";
$iface = "eth2";
%names = (
       '1:1' => 'LAN',
   '1:11' => 'LAN_INET',
   '1:12' => 'LAN_BE',
   '1:13' => 'LAN_LAN',
   '1:111' => 'LAN_INET_SERVER',
   '1:112' => 'LAN_INET_USER',
       '1:1121' => 'LAN_INET_USER_SHELL',
       '1:1122' => 'LAN_INET_USER_PING',
       '1:1123' => 'LAN_INET_USER_IM',
       '1:1124' => 'LAN_INET_USER_MAIL',
       '1:1125' => 'LAN_INET_USER_WEB',
       '1:1126' => 'reserved',
       '1:1127' => 'LAN_INET_USER_DEFAULT',
);
commeta
()

Помогите разобраться с squid delay pools.

Есть PC роутер (шлюз):
Linux debian 5, 2.6.32-5-686
Squid 3.0
Локалка eth0 (192.168.0.1) – 5 пользователей
Интернет eth1 (xx.xx.xx.xx) – 5мбит

Squid настроен в прозрачном режиме, с помощью IPTABLES все транзитные www (80port) пакеты идущие через роутер в Интернет заворачиваются в squid.

Теперь хочу сделать так чтобы при закачке файлов по http пользователь не занимал весь канал, чтобы канал делился поровну между всеми, но только в момент использования.
Допустим «Витя» качает большой файл на полной скорости канала, в этот момент «Маша» тоже начинает качать и канал разделяется между ними поравну, если в этот момент «Коля» начнет закачку то канал уже будет делится на троих, и т.д.

Мыслю так (поправьте если ошибаюсь):

1. Создаем списки доступа
acl vasya src 192.168.0.10/32
acl kolya src 192.168.0.11/32
acl vitiay src 192.168.0.12/32
acl masha src 192.168.0.13/32
acl natasha src 192.168.0.14/32

2. Объявляем пул
delay_class 1 2 # пул второго класса

3. Определяем принадлежность юзеров к пулу
delay_access 1 allow vasya
delay_access 1 allow kolya
delay_access 1 allow vitiay
delay_access 1 allow masha
delay_access 1 allow natasha
delay_access 1 deny all

4. Задаем ограничения по скорости
delay_parameters 1 625000/625000 625000/625000 #5мбит на всех

commeta
()

Посоветуйте Toolchain для armv5tejl и howto

Впервые столкнулся с данным вопросом, есть устройство NAS Thecus 0204, работает на Linux, на сайте производителя есть toolchain для него, я так понимаю что это не сам тулчайн а исходники для его сборки.

Вопрос в выборе пакета тулчайн под дебиан и howto как его собирать/устанавливать.

commeta
()

NAS скорость отдачи файлов на порядок ниже скорости приема

Коробка NAS, в ней два диска (ssd 32gB и hdd 500gB).
При копировании файлов по сети, с компьютера на устройство, по ftp или samba:
PC->NAS = 10 Мбайт\сек.

В обратную сторону (с устройства в компьютер):
NAS->PC = 800 Кбайт\сек.

Причем по NFS картина немногим лучьше
PC->NAS = 15 Мбайт\сек.
NAS->PC = 1700 Кбайт\сек.

Почему такая большая разница может быть?
получается что запись на порядок быстрее чем чтение.
куда копать?

N0204:/etc/samba# uname -a
Linux N0204 2.6.24 #1 Thu Nov 4 20:18:19 CST 2010 armv5tejl unknown
commeta
()

notice от fdisk -l

Коробка NAS, из вебморды создается RAID JBOD для одного диска (другого там не дано). Захожу через SSH, спрашиваю fdisk -l

N0204:~# fdisk -l

Disk /dev/sda: 31.9 GB, 31943819264 bytes
255 heads, 63 sectors/track, 3883 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks  Id System
/dev/sda1               1         262     2097152  fd Linux raid autodetect
Partition 1 does not end on cylinder boundary
/dev/sda2             327        3884    28572672  fd Linux raid autodetect
/dev/sda3             262         327      524288  fd Linux raid autodetect
Partition 3 does not end on cylinder boundary

Partition table entries are not in disk order

чем череваты эти: Partition x does not end on cylinder boundary и Partition table entries are not in disk order?

commeta
()

Установка Midnight Commander`a на NAS`е

Здравствуйте.

Подскажите как установить MC, есть чудо девайс thecus n0204. К нему есть доступ по SSH

Uname -a
Linux N0204 2.6.24 #1 Thu Nov 4 20:18:19 CST 2010 armv5tejl unknown

cat /proc/cpuinfo
Processor       : ARM926EJ-S rev 5 (v5l)
BogoMIPS        : 183.09
Features        : swp half thumb fastmult edsp java
CPU implementer : 0x41
CPU architecture: 5TEJ
CPU variant     : 0x0
CPU part        : 0x926
CPU revision    : 5
Cache type      : write-back
Cache clean     : cp15 c7 ops
Cache lockdown  : format C
Cache format    : Harvard
I size          : 32768
I assoc         : 4
I line length   : 32
I sets          : 256
D size          : 32768
D assoc         : 4
D line length   : 32
D sets          : 256

Hardware        : Oxsemi NAS
Revision        : 0000
Serial          : 00000acbc8762f80

Соответственно стоит BusyBox v1.8.3, и не Make ни gcc ни менеджера пакетов (ipkg) нету. Как в таком случае mc установить?

commeta
()

RSS подписка на новые темы