首页 > 开发 > 综合 > 正文

Section 6. Solutions to common miscellaneous problems

2024-07-21 02:36:28
字体:
来源:转载
供稿:网友

  Q6.1 Setuid scripts don't seem to work.
   Q6.2 Free memory as reported by free keeps shrinking.
   Q6.3 When I add more memory it slows to a crawl.
   Q6.4 Some PRograms (e.g. xdm) won't let me log in.
   Q6.5 Some programs let me log in with no passWord.
   Q6.6 My machine runs very slowly when I run GCC / X / ...
   Q6.7 I can only log in as root.
   Q6.8 My screen is all full of weird characters instead of letters.
   Q6.9 I have screwed up my system and can't log in to fix it.
   Q6.10 Emacs just dumps core.
   Q6.11 I've discovered a huge security hole in rm !
   Q6.12 lpr and/or lpd aren't working.
  
  - -----------------------------------------------------------------------------
  
  Question 6.1. Setuid scripts don't seem to work.
  
  That's right. This feature has been deliberately disabled in the linux
  kernel because setuid scripts are almost always a security hole. If you
  want to know why read the FAQ for comp.unix.questions.
  
  - -----------------------------------------------------------------------------
  
  Question 6.2. Free memory as reported by free keeps shrinking.
  
  The `free' figure printed by free doesn't include memory used as a disk
  buffer cache - shown in the `buffers' column. If you want to know how
  mUCh memory is really free add the `buffers' amount to `free'.
  
  The disk buffer cache tends to grow soon after starting Linux up, as you
  load more programs and use more files and the contents get cached. It
  will stabilise after a while.
  
  - -----------------------------------------------------------------------------
  
  Question 6.3. When I add more memory it slows to a crawl.
  
  This is quite a common symptom of a failure to cache the additional
  memory. The exact problem depends on your motherboard.
  
  Sometimes you have to enable caching of certain regions in your BIOS
  setup. Look in the CMOS setup and see if there is an option to cache the
  new memory area which is currently switched off. This is apparently most
  common on a 486.
  
  Sometimes the RAMs have to be in certain sockets to be cached.
  
  Sometimes you have to set jumpers to enable the caching.
  
  Some motherboards don't cache all the RAM if you have more RAM per amount
  of cache than they eXPect. Usually a full 256K cache will solve this
  problem.
  
  If in douBT, check your motherboard manual. If you still can't fix it
  because the documentation is inadequate you might like to post a message
  giving *all* the details - make, model number, date code, etc. so that
  other Linux users can avoid it.
  
  - -----------------------------------------------------------------------------
  
  Question 6.4. Some programs (e.g. xdm) won't let me log in.
  
  You are probably using non-shadow-password programs but are using shadow
  passwords.
  
  If so, you have to get or compile a shadow password version of the
  program(s) in question. The shadow password suite can be found in
  (amongst other places):
   tsx-11.mit.edu:/pub/linux/sources/usr.bin/shadow-*
  This is the source code; you will probably find the binaries in
  .../linux/binaries/usr.bin.
  
  - -----------------------------------------------------------------------------
  
  Question 6.5. Some programs let me log in with no password.
  
  You probably have the same problem as in Q6.4 `Some programs (e.g. xdm)
  won't let me log in.', with an added wrinkle:
  
  If you are using shadow passords you should put an asterisk in the
  password field of /etc/passwd for each account, so that if a program
  doesn't know about the shadow passwords it won't think it's a passwordless
  account and let anyone in.
  
  - -----------------------------------------------------------------------------
  
  Question 6.6. My machine runs very slowly when I run GCC / X / ...
  
  You may not have any swap enabled. You need to enable swapping to allow
  Linux to page out bits of data programs aren't using at the moment to disk
  to make more room for other programs and data. If you don't Linux has to
  keep data in memory and throw away in-memory copies of programs (which are
  paged straight from the filesystem) and so less and less program is in
  memory and everything runs very slowly.
  
  See the Installation HOWTO and the Installation and Getting Started Guide
  [Q2.1 `Where can I get the HOWTOs and other documentation ?
'] for details
  of how to set up a swap partition or swapfile; see also Q4.5 `My swap area
  isn't working.'.
  
  Alternatively you may have too little real memory. If you have less RAM
  than all the programs you're running at once use Linux will use your hard
  disk instead and thrash horribly. The solution in this case is to not run
  so many things at once or to buy more memory. You can also reclaim some
  memory by compiling and using a kernel with less options configured. See
  Q7.6 `How do I upgrade/recompile my kernel ?'.
  
  You can tell how much memory and/or swap you're using by using the free
  command, or by typing
   cat /proc/meminfo
  
  If your kernel is configured with a ramdisk this is probably wasted space
  and will cause things to go slowly. Use LILO or rdev to tell the kernel
  not to allocate a ramdisk (see the LILO documentation or type man rdev).
  
  - -----------------------------------------------------------------------------
  
  Question 6.7. I can only log in as root.
  
  You probably have some permission problems, or you have a file
  /etc/nologin.
  
  If the latter put rm -f /etc/nologin in your /etc/rc or /etc/rc.local.
  
  Otherwise check the permissions on your shell, and any filenames which
  appear in error messages, and also the Directories containing these files
  all the way back up the tree to the root directory.
  
  - -----------------------------------------------------------------------------
  
  Question 6.8. My screen is all full of weird characters instead of letters.
  
  You probably sent some binary data to your screen by mistake. Type echo
  ^V^[c (that's e c h o space control-V escape c return) to fix it. Many
  Linux distributions have a command reset that does this.
  
  - -----------------------------------------------------------------------------
  
  Question 6.9. I have screwed up my system and can't log in to fix it.
  
  Reboot from an emergency floppy or floppy pair, for example the Slackware
  boot- and root-disk pair (in the install subdirectory of the Slackware
  mirrors) or the MCC installation boot floppy. There are also two diy
  rescue disk creation packages on sunsite.unc.edu in
  /pub/Linux/system/Recovery. These are better as they'll have your own
  kernel on them, so that you don't run the risk of missing devices,
  filesystems, etc.
  
  Get to a shell prompt and mount your hard disk with something like
   mount -t ext2 /dev/hda1 /mnt
  
  Then your filesystem is available under the directory /mnt and you can fix
  the problem. Remember to unmount your hard disk before rebooting (cd back
  down to / first or it will say it's busy).
  
  - ---------------------------------------------------- right">(出处:清风软件下载学院)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表