⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 test_setup

📁 pcmcia source code
💻
字号:
#!/usr/bin/perlsub indent{    my($str) = @_;    $str =~ s/\n\s*(.)/\n  \1/g;    $str =~ s/^\s*//;    return "  $str";}sub info{    my $info = `modinfo -d $_[0]`;    return $info if ($info =~ /Card Services/);    $info = `strings -n 10 $_[0] | grep -v CPUID | head -3`;    return $info if ($info =~ /Card Services/);}print "\nCurrent kernel: ", `uname -rv`, "\n";$rel = `uname -r`;$rel =~ s/\s//g;$core = `/sbin/modprobe -l pcmcia_core.o`;$core =~ s/\n.*//;if (-f $core) {    print "Using $core:\n", indent(info($core));} else {    print "pcmcia_core.o not found.\n";    print "  The PCMCIA modules are not installed for this kernel!\n"}foreach $f ("/etc/sysconfig/pcmcia", "/etc/pcmcia.conf",	    "/etc/rc.config", "/etc/rc.pcmcia") {    $conf = $f if (-f $f);}if ($conf) {    print "\nStartup options (from $conf):\n";    if ($conf eq "/etc/rc.config") {	$opts = `grep PCMCIA $conf`;    } elsif ($conf eq "/etc/rc.pcmcia") {	$opts = `grep '^    [A-Z_]*=' $conf`;    } else {	$opts = `cat $conf`;    }    print indent($opts);}print "\nChecking current syslog files in /var/log:\n";foreach $f (split(/\s+/, `/bin/ls -t \`find /var/log -type f\``)) {    next if (system("head $f | grep -q syslogd") != 0);    $kernel = $f if (system("grep -q 'Card Services' $f") == 0);    $daemon = $f if (system("grep -q cardmgr $f") == 0);    last if ($kernel && $daemon);}if ($kernel || $daemon) {    if ($kernel eq $daemon) {	print "  All PCMCIA messages are in $kernel.\n";    } else {	if ($kernel) {	    print "  PCMCIA kernel messages are in $kernel.\n";	} else {	    print "  No PCMCIA kernel messages were found!\n";	}	if ($kernel) {	    print "  cardmgr messages are in $daemon.\n";	} else {	    print "  No cardmgr messages were found!\n";	}    }} else {    print "  No PCMCIA messages were found!\n";}open(IN, "dmesg |");while (<IN>) {    @k = () if (/Card Services/ && !/unloading/);    if (/Card Services|^PCI routing| PCIC |^cs:|^ds:| TCIC-2/ ||	/Yenta|Socket/) {	push(@k, "  $_");	while (<IN>) {	    last if (!/^  /);	    push(@k, "  $_");	}	redo;    }}close(IN);if (@k) {    print "\nKernel startup messages (from 'dmesg'):\n";    print @k;}print "\nModule status:\n";$devices = `cat /proc/devices`;$lsmod = `/sbin/lsmod`;if ($lsmod !~ /\bpcmcia_core\b/) {    print "  No PCMCIA modules are loaded.\n";    if ($devices =~ /pcmcia/) {	print "  PCMCIA support is linked into the kernel.\n";    }} elsif (($lsmod !~ /\bi82365\b/) && ($lsmod !~ /\btcic\b/) &&	 ($lsmod !~ /\bi82092\b/) && ($lsmod !~ /\byenta_socket\b/)) {    print "  No socket drivers are loaded.\n";} elsif ($lsmod !~ /\bds\b/) {    print "  The 'ds' module is not loaded.\n";} elsif ($devices !~ /pcmcia/) {    print "  The PCMCIA socket device is not available.\n";} else {    print "  The PCMCIA kernel modules are loaded correctly.\n";}$ok = 0;print "\nDaemon status:\n";if (!-f "/sbin/cardmgr") {    print "  /sbin/cardmgr does not exist!\n";}if (!-f "/var/run/cardmgr.pid") {    print "  /var/run/cardmgr.pid does not exist.\n";} else {    $pid = `cat /var/run/cardmgr.pid`;    $pid =~ s/\s+//g;    if (`cat /proc/$pid/cmdline` =~ cardmgr) {	print "  cardmgr is running (process $pid)\n";	$ok = 1;    } else {	print "  /var/run/cardmgr.pid is stale.\n";    }}exit if (!$ok);foreach $f ("/var/state/pcmcia/stab", "/var/lib/pcmcia/stab",	    "/var/run/stab") {    if (-f $f) {	$stab = $f; last;    }}if ($stab) {    print "\nCurrent socket status (from $stab):\n";    $stat = `cat $stab`;    print indent($stat);} else {    print "\nSocket status file (stab) not found!\n";}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -