0

When I try to access my ubuntus 13.10 terminal I get bash: /usr/bin/dircolors: Argument list too long. And I can't figure out what the problem means. I can't use of sudo su everything hangs

2 Answers 2

1

This sounds like a misconfigured package. I was going to add this as a comment, but since you state you do not have sudo, it is slightly more complex. Turn your pc off, insert the installation medium (usb, cd), and boot from this, not from your hard disk. Choose the option "Try Ubuntu without installing it". Open a terminal, mount your hdd. You can locate your disk partition with

sudo fdisk -l 

Assuming your system is on /dev/sda1,

sudo mount /dev/sda1 /mnt
sudo chroout /mnt
sudo apt-get --reinstall install core-utils
exit

Now turn off your pc, and restart it without the installation medium (usb, cd). This assumes that only the core-utils package was defective. If at this point your problem is not solved, you are probably better off by redoing the installation. Only, nect time you download an iso, perform a checksum on the iso you downloaded, it will save you many later headaches.

If by any chance, you upgraded by means of do-dist-upgrade, since you do not have an iso it is impossible to perform the check I just mentioned (and many other things, which shows you why I never upgrade via do-dist-upgrade, I only had bad experiences with it). In this case, my suggestion is still to download an iso image, and upgrade from there.

6
  • thank you for your feedback. It seems like the only option is what you adviced because everything is down
    – fefe
    Commented Oct 20, 2013 at 8:21
  • I have been trying but did not work. I do not want to reinstall the hole stuff I have a lot data is there a way to fix this problem?
    – fefe
    Commented Oct 20, 2013 at 13:55
  • Is your /home on a different partition than /? Commented Oct 20, 2013 at 14:14
  • mainly the var directory all my web stuffs
    – fefe
    Commented Oct 20, 2013 at 14:37
  • But is it on the same partition as /, or on a different partition? Commented Oct 20, 2013 at 14:49
0

Utility dircolors will use environment variable LS_COLORS if it exists, otherwise it would use some default value from resource database.

If your LS_COLORS is too long or otherwise corrupted, this would cause trouble. You can check it using printenv:

printenv LS_COLORS

or see how big it is with wc -c:

printenv LS_COLORS | wc -c

On my Ubuntu 13.10 machine it is 1304 bytes long, and it works just fine. It is possible that you have upgraded from older Ubuntu, and your LS_COLORS is set to some weird value in ~/.bashrc or in some other startup script.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .