I have a Trendnet TE100-PCBUSR ethernet card plugged in to the PCMCIA socket on my dell laptop. I am trying to get it to connect through DHCP so that I can use pacman to install the programs I need, at the moment I only have the base packages. Google reveals to me that the ethernet card is a cardbus clone, and that it is supported by the tulip driver.
I installed arch by booting the cd and doing an ftp-based installation with the very same pcmcia ethernet card. Unfortunately after the installation I appear to not be connected to my network when my computer boots. To me, this says that I have simple configuration problems.
When I was running the installation, I got the card to work by doing these commands:
the installer also advised that I run cardmgr, which told me there was no driver in /proc/devices, this warning didnt prevent the network from connecting to the ftp and downloading though. After running the modprobe commands I was able to establish a connection by using the menu in the installer.
My question is, how does the connection I made while running the installer translate into config files that can connect while booting? I am also wondering about that cardmgr error, is this something I should be worrying about?
I am looking forward to getting pacman working so that I can finaly have a linux that is bloat-free, containing only the stuff that I actually use. Even slackware handled configuring this card for me, so doing this by hand is new terriroty for me, when the system boots the card lights up like it did when I ran the modprobe commands, but I can't ping anything and pacman cannot download any packages.
You guys have already helped me alot at the IRC channel by helping with installing whenever I got stuck on some things. I imagine this is a simple issue that is documented somewhere, but I have not yet found this document and have been sitting on this problem for 2 days now. I would appreciate any clues you all could give me.
Sorry for the double post. I realized after posting that I need to also tell you about the configuration I have tried so far.
I have not done much with it, I left the line eth0=dhcp as is, because that is how it connects, and I removed the ! in from of pcmcia in the modules line so that pcmcia works. Other then that I have left all the otther relevant configurations at their defaults. I imagine I have to make the tulip module load by putting that in a config file somewhere, but do not know where, maybe that same line where pcmcia it loaded. Unfortunately I know nothing about pcmcia nic kernel modules, having never had to deal with this issue in any other distro.
I'm still a noob, but I'll try to give you a little advice to get you through till someone more knowledgable comes around. To have a module load when you start your computer up, add the name of that module to /etc/rc.conf inside the parenthesis next to MODULES=. The line looks like,
MODULES=(some_module another_module other_module etc)
I looked in my rc.conf, and it looks like the pcmcia entry you're talking about might be listed under daemons. If this is so, or even if it's not, the daemons line allows you to choose what daemons are run on startup. The daemons in the list in /etc/rc.conf must be located in /etc/rc.d. Anyways, that's just a little info on using rc.conf to start modules and daemons automatically. I had to use pcmcia-cs and cardmgr to get my wireless working on my laptop, so I'll try to help out as best I can if I can.
so getting the card working involves editing rc.conf and rc.d?
that is a good clue, I have not been able to find that information in searching, but the wiki was misbehaving so it might be in there.
After doing some more searching I think I found out how to make the device run by means of a command sequence:
ifconfig eth0 down
modprobe -r tulip_cb
not sure if this works because I am at work right now and theclaptop is at home, but it seems like geting this card working involves loading the tulip module on that line and letting DHCP take care of the rest. I am not sure if I also need to load this yenta_socket module, I dont really even know what it does but I found a web page that told me to do it, I wish I remembered that URL now, sigh.
So I will try these things when I get chance and post more if I still have trouble.
So I managed to find a way to get arch to connect to the internet through the pcmcia card last night. I still don't have it working the way I would like it though.
It turns out there are other packages besides the base set that I needed to install. After installing those packages my connection still isnt being established at bootup. I also had to edit /etc/conf.d/pcmcia and change, changing an an existing parameter to yenta_socket so that an error would not happen while booting. I am getting another error while booting, something about missing an shpcp module, I imagine that module came as part of a package haven't installed yet, I am not sure if it is related to my ethernet card not working.
I have to run the 'dhclient' command for the connection to start up, after I do that I am able too use pacman to install more programs.
But still, I would like to set arch up to connect me to the internet automaticly.
So I can connect during installation, and after bootup, but I still haven't found that magic config tweak that makes my system work when I turn it on. Somebody please give me a clue, I am soooooo close to having this working, now that I am able to connect I think I can be sure that I have the right modules loaded, that is unless dhclient is loading more modules without telling me, TBH I don't really know why dhclient connects me and dhcpcd does not.
Is there something I can get via pacman that could assist me with this config? Am I missing a critical setting in a config file somewhere? Should I post my existing configs?
Try following the directions in the wiki here http://wiki.archlinux.org/index.php/Static_IP_and_DHCP about setting up an IP with dchp. By default, arch puts static IP stuff in your rc.conf, so if you use dhcp or a different static IP address you need to change it.
If you have that correct, then whenever network starts up it will use dhcp to get an IP address.
I am getting another error while booting, something about missing an shpcp module
That sounds familiar, I'm going to guess that's harmless. I actually think I got an error similar to that, but it went away after I did something (I think that something was upgrading my kernel or having pacman do some upgrades).
So, my recomendations is, try editing your rc.conf to set eth0 as dhcp and see if that fixes the problem of getting your internet working right away. Then try running "pacman -Syu" and see if the shpcp problem goes away after upgrading some packages and such with pacman. Good luck, let me know how it goes.
rc.conf already has eth0="dhcp" set, I did that during the installation, I really went through all those config files in the installer menu for a long time before I decided I should ask for help, I am kinda stubborn like that. While booting the dhcp tries to work but then times out, I have been told that the automatic dhcp uses dhcpcd rather than dhclient.
This matches my experiences trying to get a connection by hand, dhcpcd would time out and not work, dhclient worked fine.
I wonder what makes them different, what makes dhclient work but dhcpcd not. I feel like I am getting closer to solving this problem, if only I could get dhcpcd to work the way dhclient does, do they share the same config files? Would it be possible to read the setting for dhclient and use those to make dhcpcd work?
I have tried researching on the differences between the two, hoping to find information on how to get dhcpcd to work, but so far have found nothing helpful.
Sorry that didn't help, I was really hoping that someone with more knowledge would jump in. Two quick questions... What is the output of "ifconfig -a", and when you run dhclient, do you pass it any arguments? I have a hunch, but odds are against it being right...
UnWorldly, rather than ask you a bunch of questions, could you post your rc.conf and the outputs of lsmod and lshwd? I think I know what's going on here, but I need some more info to confirm it.
The missing shpcp error is indeed harmless, but if you don't want to see it, ad it to /etc/hotplug/blacklist.
ok, I'll sneaker-net that info over here as soon as I can. Each day I tweak the computer at home then go to work and get online to ask more questions, so I will try out todays batch of suggestions then bring that info back to this computer. I got some more hints from gentoo docs and some other things I googled up today, looking forward to playing more with this OS and getting the other pieces working.
I have this copy of UT2004 that I am dying to play heh.
Here is the info you requested:
# /etc/rc.conf - Main Configuration for Arch Linux
# HARDWARECLOCK: set to "UTC" or "localtime"
# TIMEZONE: timezones are found in /usr/share/zoneinfo
# KEYMAP: keymaps are found in /usr/share/kbd/keymaps
# CONSOLEFONT: found in /usr/share/kbd/consolefonts (only needed for non-US)
# CONSOLEMAP: found in /usr/share/kbd/unimaps
# USECOLOR: use ANSI color sequences in startup messages
# Scan for LVM volume groups at startup, required if you use LVM
# Module to load at boot-up (in this order)
# (prefix a module with a ! to disable it)
# Interfaces to start at boot-up (in this order)
# Declare each interface then list in INTERFACES
# (prefix an interface in INTERFACES with a ! to disable it)
# Note: to use DHCP, set your interface to be "dhcp" (eth0="dhcp")
# Routes to start at boot-up (in this order)
# Declare each route then list in ROUTES
# (prefix a route in ROUTES with a ! to disable it)
gateway="default gw 192.168.0.1"
# Daemons to start at boot-up (in this order)
# (prefix a daemon with a ! to disable it)
# (prefix a daemon with a @ to start it up in the background)
DAEMONS=(syslog-ng hotplug pcmcia network netfs crond)
# End of file
Module Size Used by
pcmcia 28304 4
ohci_hcd 23044 0
ehci_hcd 37256 0
parport_pc 29124 0
parport 38600 1 parport_pc
pcspkr 4172 0
eth1394 21256 0
8139too 28032 0
ohci1394 36404 0
ieee1394 106200 2 eth1394,ohci1394
yenta_socket 23816 3
rsrc_nonstatic 14208 1 yenta_socket
pcmcia_core 52228 3 pcmcia,yenta_socket,rsrc_nonstatic
3c59x 42792 0
mii 6272 2 8139too,3c59x
snd_intel8x0m 20164 0
snd_intel8x0 34752 0
snd_ac97_codec 83960 2 snd_intel8x0m,snd_intel8x0
snd_pcm_oss 55456 0
snd_mixer_oss 20480 1 snd_pcm_oss
snd_pcm 97796 4 snd_intel8x0m,snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd_timer 27012 1 snd_pcm
snd 60388 7
soundcore 10848 1 snd
snd_page_alloc 10244 3 snd_intel8x0m,snd_intel8x0,snd_pcm
tpm_atmel 5376 0
tpm 12288 1 tpm_atmel
hw_random 5908 0
uhci_hcd 33808 0
pci_hotplug 30788 0
joydev 10688 0
tsdev 8384 0
evdev 10240 0
usbcore 127740 4 ohci_hcd,ehci_hcd,uhci_hcd
rtc 14156 0
00:00.0 Host bridge: Intel Corp.|82845 845 (Brookdale) Chipset Host Bridge (intel-agp)
00:01.0 PCI bridge: Intel Corp.|82845 845 (Brookdale) Chipset AGP Bridge (agpgart)
00:1d.0 USB Controller: Intel Corp.|82801 USB Controller (uhci_hcd)
00:1d.2 USB Controller: Intel Corp.|82801 USB Controller (uhci_hcd)
00:1e.0 PCI bridge: Intel Corp.|82801 Hub Interface to PCI Bridge (hw_random)
00:1f.0 ISA bridge: Intel Corp.|82801 LPC Interface (i810-tco)
00:1f.1 IDE interface: Intel Corp.|82801 UltraATA IDE Controller (piix)
00:1f.5 Multimedia audio controller: Intel Corp.|82801 AC97 Audio Controller
00:1f.6 Modem: Intel Corp.|PCTEL 2304 WT V.92 MDC Modem (slamr)
01:00.0 VGA compatible controller: nVidia Corp.|NV17M GeForce4 440 Go (nv)
02:00.0 Ethernet controller: 3Com Corp.|3c905C-TX [Fast Etherlink] (3c59x)
02:01.0 CardBus bridge: Texas Instruments|PCI4451 PC card Cardbus Controller
02:01.1 CardBus bridge: Texas Instruments|PCI4451 PC card Cardbus Controller
02:01.2 FireWire (IEEE 1394): Texas Instruments|PCI4451 OHCI-Lynx IEEE 1394
07:00.0 Ethernet controller: Abocom Systems Inc|FE2000VX CardBus /Atelco Fibreline
Ethernet Adptr (8139too)
002:001 USB Hub: Virtual|Hub (hub)
001:001 USB Hub: Virtual|Hub (hub)
--:01.6 PCMCIA Network card: rdBus|Fast Ethernet (unknown)
---:--- Mouse: Generic PS/2 Wheel Mouse [/dev/psaux] (msintellips/2)
A little more info about my system, lshwd is detecting a built-in ethernet card that God decided to kill with a lighning bolt a couple years ago, the rest of the system still functions normally, my cable modem suffered the most from the strike and ended up getting replaced, but replacing an ethernet card built into this laptop is not possible because it is part of the main board, sigh.
I had a hell of a time transfering this data over, couldn't get the floppy to work so I installed pine and configured it to use my ISP email account, I royally messed up that config but strangely enough it still worked, the email came from root@my.ISP.com, and I didnt have to login for it to work, which is lucky because I couldn't set up pine to do all that in the limited time I have with my machine.
Are you guys noticing a pattern yet? I can't configure very well, but I really hope to get better at it!
I also noticed that cardctl was telling me that my ethernet card is a cardbus fast ethernet, does that mean that I shouldnt be trying to use pcmcia-cs for this but use hotplug instead? lshwd also identified my ethernet card as something else, which I imagine is a card that my card is a clone of, since it appears to be working anyway.
I'm looking forward to your suggestions, any hints on configuring in general would be appreciated as well since I'm obviously having some bad luck with it I'll worry about floppy and email problems later.
PS: dhclient requires no parameters to connect, and I will have to give you my ifconfig info the next time I get a chance to use that computer.
Alright - picking through your post, here's my take on your situation. (ifconfig would indeed be useful - I should have asked for it the first time).
rc.conf is fine. All the modules in lsmod are being loaded by hotplug. The relevant ones for your network issue are yenta_socket, which enables the PC card system, and 8193too, which both hotplug and lshwd identify as the correct module for your card. You're able to connect, so that means the basic setup is OK. dhclient working while dhcpcd does not suggests a possible problem with the dhcp server - does it have any logs you could check? For the moment, would you be able to assign a static ip in rc.conf, in the appropriate range? At least then you could boot and connect automatically, while you're searching for the answer to your dhcp puzzle.
And if it turns out that, after you've tried everything, you still have to use dhclient, you can always modify /etc/rc.d/network - just remember to put it in pacman's NoUpgrade list.
That really helps narrow it down, I'm glad the rc.conf seems to be ok. I dont think I can get logs out of the cable modem, but I don't really think there is a problem with it either, I have livecd's a windows computer, the arch installer, and of course all the distros I have used in the past that did not have trouble connecting through this same card to the same modem, I also have this problem at several different locations that I've taken the laptop to.
I might could find a rounter to plug it into and see if I can get a log that way though.
Is it possible that dhclient is loading my modules? The info I posted was after I established to connection with dhclient, I'm thinking the next thing I will try is comparing all of that with the output of those same commands before dhclient runs.
Is it possible that dhcpcd might be trying to connect though my broken built in ethernet card? Where does it specify which card to connect through? I know that dhclient tried to connect through every device that it detects because I see it cycling through and attempting to use my broken card before if connects with the pcmcia.
Thanks for your help, so far I havent even got arch working yet and I've already learned alot about loading modules and daemons and stuff. The clues I have now will be helpful in figuring out how to get things working. I keep at it until this works the way I like it, I'll post my ifconfig if I still can't figure this out.
Is it possible that dhclient is loading my modules?
No - it doesn't do that. On the other hand...
Is it possible that dhcpcd might be trying to connect though my broken built in ethernet card?
Most definitely, and apologies for not noticing that before.
Where does it specify which card to connect through? I know that dhclient tried to connect through every device that it detects because I see it cycling through and attempting to use my broken card before if connects with the pcmcia.
eth0 is assigned to the first enabled network interface, eth1 to the second, etc. The 3c59x module for your lightning rod is loaded first, so it's eth0. 8139too then becomes eth1. /etc/rc.d/network tells dhcpcd to use the interface(s) specified in rc.conf - eth0 in this case. So the quickest fix for you right now is to change that line in rc.conf to read
but in the longer term, I would recommend either putting 3c59x in /etc/hotplug/blacklist, so it never gets loaded, or putting the modules that you now know you need in the rc.conf MODULES array, and disabling hotplug. Incidentally, you can also disable, and even remove, pcmcia-cs - it's doing nothing for you.
Sorry I didn't pick that up before - I'll deflect attention from my oversight by saying that your ifconfig output would have got us there a lot quicker.
your solution is the correct one, this is the first post that I am able to write from my operational system. I still have alot left to configure but I am well on my way, X looks like ass and windowmaker is quite weird, I had a virtual console running with an IRC client that I cant seem to switch back to because I dont remember the keyboard shortcut to switch from x to that virtual console, but that is ok, I can learn stuff like that as I go.
I am just posting this to say thanks for all your help, so far I am enjoying my arch system even though it isnt really in a productive form quite yet, but at least I have a web browser, ftp, irc, ssh, and some other stuff.
One other thing I am not sure about, I realize I have to hand-configure all this stuff, but I am not quite sure what all needs to be configured, is there a list of stuff that is recomended to customize anywhere? I think the configuration would go much faster if I was moving through a list(since I do not really know what all I should configure to do the things I would like to do), but that isnt absolutely necessary.
I don't know of any list myself, but I'd recommend two things - first, run hwd (if it's not installed, pacman will get it for you). That's the Arch way to get started with hardware configuration. After that, have a look through the various howtos on the wiki - that will give you some ideas. They won't all apply to you, of course, but you'll have some interesting reading, anyway.
Glad it worked out for you, by the way.