十万个为什么Linux 问答 - (TXT全文下载)

书籍内容:

十万个为什么Linux 问答

1,Q:在 Linux 中怎样实现类似 DOS 环境下的 AUTOEXEC.BAT 批处理功能?
A:将脚本添加到 /etc/rc.d/rc.local 中即可。这是由 Linux 启动时的第一个进程 init 控制的。init 进程还可以自动启动 /etc/rc、/etc/rc.d、/etc/rc?.d 目录下的许多脚本文件。
2,Q:Linux 中 NE2000 兼容网卡的安装?
A:目前市场上 NE2000 兼容网卡比较多,如 D-Link DE220p 等。如果 Linux 不能检测到这些网卡,则可以用手动的方法安装。以 D-Link DE220p 网卡为例,在 Red hat Linux6.0 和 Turbo Linux 下可以这样安装:首先检测出网卡的 IO 端口号和 irp 号,然后启动进入 Linux,在 /etc/rc.d/rc.sysinit 文件中加入语句(假设网卡的 IO=0x240,irp=0x5):
modprobe ne.o io=0x240 irq=5
然后启动 Linux 即可。
对于 Slackware Linux,可以编辑 /etc/rc.d/rc.modules 文件,将 NE2000 网卡驱动前的注释符号“#”去掉,设置网卡 IO 号即可,即:
/sbin/modprobe ne io=0x240
3,Q:Slackware Linux3.4 的 LILO 被破坏后的恢复:
A:一台同时安装 Slackware Linux3.4、Windows98、WindowsNT 的机器,在 Windows98 重新安装后,主引导区的 LILO 丢失,不能引导 Linux,按如下步骤处理后,就可以修复 LILO: 首先用 BOOT 盘引导机器,在 BOOT: 提示符后输入 mount root=/dev/hda4 回车,其中 hda4 是 Linux 的引导分区,应当根据你的具体情况而定;这样机器就会启动进入到 Linux 状态,然后以 root 用户登录,进入 /sbin 目录,运行 liloconfig 程序,选第 6 项“Reinstall LILO using the existing lilo.conf”,这样就会恢复原来的 LILO 设置。
4,Q:怎样将 LILO 备份到软盘上?
A:在 /sbin 目录下运行命令 lilo -b /dev/fd0 即可。备份的软盘可以用来启动 Linux 系统,与硬盘启动没有区别。
5,Q:能不能从 DOS 下启动 Linux?
A:能。例如 Red Hat Linux6.0 的光盘上有一个程序 loadlin,它就可以从 DOS 下启动 Linux。条件是你要有一个 Linux 内核映像文件 vmlinuz(可在 Linux 安装光盘上找),还要知道 Linux 的启动分区。命令的执行格式为:
loadlin vmlinuz root=/dev/hda4 ; 其中 /dev/hda4 为 Linux 的 root 文件系统所在的硬盘分区
可以用这种方法恢复主引导分区中遭到破坏的 LILO 系统。
6,Q:Linux 能否实现用户登录运行脚本?
A:可以。用户登录时,Bash 首先执行全局登录脚本(由 root 建立) /etc/profile,然后在用户起始目录下依次寻找 .bash_profile、.bash_login、.profile 三个文件,执行最先找到的一个。可以用这种办法像 Netware 一样为不同的用户定制运行环境。
此外,用户退出登录时还可以运行 .bash_logout 脚本。
7,Q:在 Linux 中给命令指定别名(alias):
A:如果命令或命令序列太长,或不符合用户的习惯,那么为它指定一个别名是不错的办法。虽然可以为命令建立“链接”解决长文件名的问题,但对于带命令行参数的命令,链接就无能为力了。而指定别名则可以解决此类所有问题。只要举一些例子就可以了:
alias l='ls -l' ;用 l 代替 ls -l 命令(Xenix 下就有类似的 l 命令)
alias cd..='cd ..' ;用 cd.. 代替 cd .. 命令(对在 DOS 下使用惯了 cd.. 的人帮助很大)
alias md='mkdir' ;用 md 代替 mkdir 命令(对在 DOS 下…)
alias c:='mount /dev/hda1 /mnt/c & cd /mnt/c' ;用 c: 命令代替命令序列:安装 DOS 分区,再进入
8,Q:一台机器为 Win98 与 Linux 双启动,默认启动 OS 为 Linux,现想改变默认启动为 Win98,怎么办?
A:简单。编辑 lilo.conf 文件,在其文件的第四行后加上 default=dos,存盘退出即可。
9,Q:系统的关闭:
A:#shutdown Cr +10 (十分钟后系统自动重启):
# shutdown Cr 13:00 (13:00整,系统自动重启)
# shutdown Cr now (系统立即重启)
# reboot (系统立即重启)
# haltsys (关闭系统)
# shutdown Ch (关闭系统)
10,Q:使用虚拟控制台:
A:一般新安装的 Linux 有 4 个虚拟控制台,热键为: ALT+F1,ALT+F2,ALT+F3,ALT+F4。
例如:登录后按 Alt+F2 键,这时又可以看到 login: 提示符, 这个就是第二个虚拟控制台。
11,Q:强行退出 X-windows:
A:当工作在 X-windows 界面时,想迅速切换到字符界面,只需使用热键 Ctrl+Alt+Backspace。
12,Q:好的口令应满足什么条件?
A:通常,好的口令应当易于记忆但却不易被猜中,它们应当:
  (1) 是大小写的混合;
(2) 可拼读;
(3) 既含字母,也含非字母的字符;
(4) 6 到 8 个字符长度;
(5) 易于键入。
13,Q:ping 命令能干些什么?
A:它能告诉你现在哪些机器可用。ping 可能是最基本的 UNIX 网络命令,它仅仅向你提供的地址发送一个小包,然后侦听这台机器是否有“回答”。你可使用机器的 Internet 地址,如 192.78.222.81,或者也可使用机器名:ping therehost。该名字可以是局部的主机(host)文件中的名字或由域名服务器(DNS)解析的名字,但在任何情况下都应是网络可以用来找出特定机器的名称。如果机器对 ping 没有响应,它也不会对其他什么有反应,因为在网络上“看”不见它。在这种情况下,除非问题非常简单和明显,诸如机器被别人关掉了等,否则,去问问系统管理员。不管在哪种情况下都要涉及到系统管理员,因为重启 UNIX 系统并不像 DOS 机器一样简单。
14,Q:Linux 下软驱的使用:
A:如果是 Linux 的 ext2 文件系统,用如下命令: #mount -t ext2 /dev/fd0 /mnt
DOS 格式的软盘则用命令: #mount -t msdos /dev/fd0 /mnt
然后就可以在 /mnt 里访问软盘的内容了。注意在取出软盘之前要先卸掉软盘上的文件系统:
#umount /mnt 否则会导致信息丢失。
在软盘上建立文件系统可用如下命令: #mke2fs /dev/fd0 1440
15,Q:我的 linux 为什么普通用户不能登陆?
A:看看是不是有 /etc/nologin 文件,删掉它再试试(另:root 通常是不能 telnet 登录的,这很正常)。产生该问题的原因:系统在 shutdown 时会产生这个文件,如果 shutdown 过程意外终止,这个文件就没有被正常删除,这时候普通用户不能登录了。另外系统管理员在维护系统的时候也可以生成这个文件来阻止用户登录。
16,Q:如何设定每个帐号同一时间内允许的连接数?
A:在 RedHat 中的设置:
首先在 /etc/pam.d/login 中加上
session required /lib/security/pam_limits.so
然后在 /etc/security/limits.conf 加入要限制的用户名或用户组,例如:
@student hard nproc 20
edward hard maxlogins 2
无须重新启动机器,设置完毕即可使用。
17,Q:怎么样做到限时登录 Linux?
A:一个简单的限时登录方法:写三个 shell 程序,调用 at 和系统维护功能:
1. 在指定的时间执行该shell,在/etc下生成一名为nologin的文件,如:
vi /sbin/login.denied
echo " Login Denied " > /etc/nologin
chmod 700 login.denied
2. 在指定的时间执行该shell,删除/etc/下的nologin文件,如:
vi /sbin/login.allowed
if [ -f /etc/nologin ]; then
rm /etc/nologin
fi
chmod 700 login.allowed
3. 编写一个限制时间的shell,如:
vi /sbin/security
if [ -f /sbin/login.denied ]; then
at -f /sbin/login.denid 22:00
fi
if [ -f /sbin/login.allowed ]; then
at -f /sbin/login.allowed 8:00
if
此种设置的功能是:从晚上10:00 到第二天早上 8:00 禁止非 root 用户登录,显示为系统维护状态。
另外,还需对 root 用户的登录终端进行限制,最好设置在 console,在 RedHat 5.0 下在 /etc/security/access.conf
中配置
-:root:ALL EXCEPT console
就可以了。
18,Q:限制 root 登录的终端:
A:如果只允许 root 在 tty1 终端登录,则修改 /etc/securetty 文件,将其它的终端注释掉,只留 tty1:
tty1
# tty2
# tty3
# tty4
# tty5
# tty6
这样 /bin/login 程序读取 /etc/securetty 文件时就会知道 root 只允许在 tty1 登录。这样可以减小黑客以 root 登录的 可能性。
19,Q:阻止 Linux 对 ping 的反应:
A:在 /etc/rc.d/rc.local 文件中增加如下一行:
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
20,Q:防止 IP 欺骗攻击:
A:编辑 host.conf 文件并增加如下几行:
order bind,hosts
multi off
nospoof on
21,Q:删除硬盘主引导区的 LILO:
A:用 Fdisk 程序,C:\> Fdisk /mbr。然后用分区大师软件或 Fdisk 程序可以删除 Linux 分区。
22,Q:Linux FTP 服务器中将用户限制在自己目录下的方法:
A:
第一步:创建一个 ftp guest 组,用 groupadd 命令,也可以用 ftp 服务器创建的 ftp 组(less /etc/group 看看是否存在,如果装了ftp server的话都有这个组存在);
第二步:在 ftp 组中添加 ftp 用户;
第三步:修改 /etc/ftpaccess 文件,加入 guestgroup 的定义: guestgroup ftp; 或者用 guestuser 直接指定 ftp 用户名,如:guestuser ftpuser;
第四步:向这个用户的 $HOME 目录下拷贝必要的文件,主要是与 ls 有关的。一般的 ls 要 Lib 支持,你得重新编译 ls,或把 lib 目录 copy 过去,或者拷贝 ftp server 带的 ls, 比如把 /home/ftp/ 下的bin,etc,lib 三个目录拷贝到这个用户的根目录下, 并修改权限 (chown username.ftp *)。
注意:现在 Linux 下带的 ftp 无须拷贝这些文件,至少 Redhat6.1 是不需要拷贝的,所以就可以省去第四步。
23,Q:Why Can't the Linux boot?
A:After installing the OpenLinux,it can't boot. The screen display following:
INIT:Switching to runlevel:3
INIT:Sending progresses the TERM signal.
Then the computer halts. How can we do then?
Solution: You can remove some PnP hardware or stop some server (if you use redhat, you can stop or start some server program at the end of installation). try it. Good luky!

---------------

以上为书籍的全部内容,祝您阅读愉快。

版权声明:书云(openelib.org)是世界上最大的在线非盈利图书馆之一,致力于让每个人都能便捷地了解我们的文明。我们尊重著作者的知识产权,如您认为书云侵犯了您的合法权益,请参考版权保护声明,通过邮件openelib@outlook.com联系我们,我们将及时处理您的合理请求。 数研咨询 流芳阁 研报之家 AI应用导航 研报之家
书云 Open E-Library » 十万个为什么Linux 问答 - (TXT全文下载)