标签 面试 下的文章

为了给你们带来一些小惊喜,这次我们准备了一些在面试中随机出现的问题而不是专门关于某个领域的问题。这些问题肯定会在不深入学习新知识的前提下使你在面试中脱颖而出。

1.假设你在为你工作的公司维护一份日常的备份。这份备份是以压缩后的格式而被维护着。现在你需要检查一份两个月之前的日志,你应该提出什么样的建议从而可以在不解压这份备份的前提下完成检查日志的任务?

答案: 在不解压文件的前提下检查文件内容,我们需要用到'zcat'。zcat这个工具可以轻松完成这个任务。
# zcat ­f phpshell­2.4.tar.gz

2.你需要追踪你系统中发生的事件,你应该怎么做?

答案: 为了追踪系统中发生的事件,我们需要用到叫做syslogd的这个后台程序。syslogd这个后台程序可以追踪系统信息并将其保存到指定的日志文件中。

启用'syslogd'这个后台进程会在路径'/var/log/syslog'中生成一个日志文件。syslogd应用对解决Linux系统中的问题十分有用。标准生成的日志文件和下面这个例子很像。

syslogd

3.如何禁止特定IP访问FTP服务器?

答案: 我们可以通过运用tcpwrapper来禁止可疑的IP访问。首先在路径'/etc/vsftpd.conf'的配置文件中,将tcpwrapper这个参数设置为"tcp\_wrapper=YES",然后在'/etc/host.deny'文件中加入可疑的IP地址。

禁止访问的IP地址

打开'/etc/hosts.deny'文件。

# vi /etc/hosts.deny

在文件底端加入拒绝访问的IP地址

#
# hosts.deny    This file contains access rules which are used to
#               deny connections to network services that either use
#               the tcp_wrappers library or that have been
#               started through a tcp_wrappers-enabled xinetd.
#
#               The rules in this file can also be set up in
#               /etc/hosts.allow with a 'deny' option instead.
#
#               See 'man 5 hosts_options' and 'man 5 hosts_access'
#               for information on rule syntax.
#               See 'man tcpd' for information on tcp_wrappers
#
vsftpd:172.16.16.1

4.告诉我们Telnet和SSH之间的区别?

答案: Telnet和SSH都是用来远程管理系统的协议。与Telnet直接传输数据正好相反,安全的SSH通信协议需要通信中有密钥的交换,这说明telnet相比较于SSH不安全。

5.你需要终止你的X server,但当你尝试杀进程的时候,你遇到了表示不能退出X server的错误信息。你准备怎么做?

答案: 当你尝试杀X server的进程时,系统不会让你像使用'/etc/init.d/gdm stop'一样正常的退出X server。我们需要执行一个使X server重启的特别的键位组合'Ctrl+ Alt+ BackSpace'。

6.告诉我命令'ping'和'ping6'的区别?

答案: 这两个命令有同样的功能,但'ping6'命令可被用于ipv6的IP地址。

7.你想要在Home目录下寻找*.tar文件并一次性删除,你会怎么做?

答案: 我们要同时用到find和rm命令来删除所有*.tar文件
# find /home/ ­name '*.tar' | xargs rm ­rf

8.locate和slocate命令的区别?

答案: slocate(secure locate)会寻找所有用户有权限访问的文件,然而locate会搜索(它的数据库里面的)所有更新过的结果。

9.你要在当前目录中所有“.txt”文件中搜索“Tecmint”这个字符串,你怎么做?

答案: 用find命令在当前目录递归寻找文件中的“Tecmint”字符串。
# find ­name “*.txt” | xargs grep “Tecmint”

10.你要向所有已连接的用户发送“Server is going down for maintenance”这样一条信息,你怎么做?

答案: 运用wall命令就可以很容易地实现,wall命令可以向所有已连接服务器的用户发送信息。
# echo please save your work, immediately. The server is going down for Maintenance at 12:30 Pm, sharply. | wall

wall command


via: http://www.tecmint.com/useful-random-linux-interview-questions-and-answers/

译者:ThomazL 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

此前我们已经有发表过Linux 面试基础问答之共3篇文章,获得读者的好评,同时我们得到反馈,有些读者希望这种交互式学习方法能够做得更加灵活。心动不如行动,我们这就为您奉上 15个 MySQL 面试题

问题1:你如何确定 MySQL 是否处于运行状态?

答案: Debian 上运行命令 service mysql status,在RedHat 上运行命令 service mysqld status。然后看看输出即可。
root@localhost:/home/avi# service mysql status

/usr/bin/mysqladmin  Ver 8.42 Distrib 5.1.72, for debian-linux-gnu on i486
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Server version 5.1.72-2
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 1 hour 22 min 49 sec

Threads: 1  Questions: 112138  Slow queries: 1  Opens: 1485  Flush tables: 1  Open tables: 64  Queries per second avg: 22.567.

问题2:如何开启或停止 MySQL 服务?

答案:运行命令 service mysqld start 开启服务;运行命令 service mysqld stop 停止服务。
root@localhost:/home/avi# service mysql stop

Stopping MySQL database server: mysqld.

root@localhost:/home/avi# service mysql start

Starting MySQL database server: mysqld.

Checking for corrupt, not cleanly closed and upgrade needing tables..

问题3:如何通过 Shell 登入 MySQL?

答案:运行命令 mysql -u root -p
root@localhost:/home/avi# mysql -u root -p 
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g. 
Your MySQL connection id is 207 
Server version: 5.1.72-2 (Debian) 

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. 

Oracle is a registered trademark of Oracle Corporation and/or its 
affiliates. Other names may be trademarks of their respective 
owners. 

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. 

mysql>

问题4:如何列出所有数据库?

答案:运行命令 show databases;
mysql> show databases; 
+--------------------+ 
| Database           | 
+--------------------+ 
| information_schema | 
| a1                 | 
| cloud              | 
| mysql              | 
| phpmyadmin         | 
| playsms            | 
| sisso              | 
| test               | 
| ukolovnik          | 
| wordpress          | 
+--------------------+ 
10 rows in set (0.14 sec)

问题5: 如何切换到某个数据库并在上面工作?

答案:运行命令 use database\_name; 进入名为 database\_name 的数据库。
mysql> use cloud; 
Reading table information for completion of table and column names 
You can turn off this feature to get a quicker startup with -A 

Database changed 
mysql>

问题6:如何列出某个数据库内所有表?

答案:在当前数据库运行命令 show tables;
mysql> show tables; 
+----------------------------+ 
| Tables_in_cloud            | 
+----------------------------+ 
| oc_appconfig               | 
| oc_calendar_calendars      | 
| oc_calendar_objects        | 
| oc_calendar_repeat         | 
| oc_calendar_share_calendar | 
| oc_calendar_share_event    | 
| oc_contacts_addressbooks   | 
| oc_contacts_cards          | 
| oc_fscache                 | 
| oc_gallery_sharing         | 
+----------------------------+ 
10 rows in set (0.00 sec)

问题7:如何获取表内所有 Field 对象的名称和类型?

答案:运行命令 describe table\_name;
mysql> describe oc_users; 
+----------+--------------+------+-----+---------+-------+ 
| Field    | Type         | Null | Key | Default | Extra | 
+----------+--------------+------+-----+---------+-------+ 
| uid      | varchar(64)  | NO   | PRI |         |       | 
| password | varchar(255) | NO   |     |         |       | 
+----------+--------------+------+-----+---------+-------+ 
2 rows in set (0.00 sec)

问题8:如何删除表?

答案:运行命令 drop table table\_name;
mysql> drop table lookup; 

Query OK, 0 rows affected (0.00 sec)

问题9:如何删除数据库?

答案:运行命令 drop database database-name;
mysql> drop database a1; 

Query OK, 11 rows affected (0.07 sec)

问题10:如何查看表内所有数据?

答案:运行命令 select * from table\_name;
mysql> select * from engines; 
+------------+---------+----------------------------------------------------------------+--------------+------+------------+ 
| ENGINE     | SUPPORT | COMMENT                                                        | TRANSACTIONS | XA   | SAVEPOINTS | 
+------------+---------+----------------------------------------------------------------+--------------+------+------------+ 
| InnoDB     | YES     | Supports transactions, row-level locking, and foreign keys     | YES          | YES  | YES        | 
| MRG_MYISAM | YES     | Collection of identical MyISAM tables                          | NO           | NO   | NO         | 
| BLACKHOLE  | YES     | /dev/null storage engine (anything you write to it disappears) | NO           | NO   | NO         | 
| CSV        | YES     | CSV storage engine                                             | NO           | NO   | NO         | 
| MEMORY     | YES     | Hash based, stored in memory, useful for temporary tables      | NO           | NO   | NO         | 
| FEDERATED  | NO      | Federated MySQL storage engine                                 | NULL         | NULL | NULL       | 
| ARCHIVE    | YES     | Archive storage engine                                         | NO           | NO   | NO         | 
| MyISAM     | DEFAULT | Default engine as of MySQL 3.23 with great performance         | NO           | NO   | NO         | 
+------------+---------+----------------------------------------------------------------+--------------+------+------------+ 
8 rows in set (0.00 sec)

问题11:如何从表(比如 oc\_users )中获取一个 field 对象(比如 uid)的所有数据?

答案:运行命令 select uid from oc\_users;
mysql> select uid from oc_users; 
+-----+ 
| uid | 
+-----+ 
| avi | 
+-----+ 
1 row in set (0.03 sec)

问题12:假设你有一个名为 ‘xyz’ 的表,它存在多个字段,如 ‘createtime’ 和 ‘engine’。名为 engine 的字段由 ‘Memoty’ 和 ‘MyIsam’ 两种数值组成。如何只列出 ‘createtime’ 和 ‘engine’ 这两列并且 engine 的值为 ‘MyIsam’?

答案:运行命令 select create\_time, engine from xyz where engine = ”MyIsam”;
mysql> select create_time, engine from xyz where engine="MyIsam";

+---------------------+--------+ 
| create_time         | engine | 
+---------------------+--------+ 
| 2013-12-15 13:43:27 | MyISAM | 
| 2013-12-15 13:43:27 | MyISAM | 
| 2013-12-15 13:43:27 | MyISAM | 
| 2013-12-15 13:43:27 | MyISAM | 
| 2013-12-15 13:43:27 | MyISAM | 
| 2013-12-15 13:43:27 | MyISAM | 
| 2013-12-15 13:43:27 | MyISAM | 
| 2013-12-15 13:43:27 | MyISAM | 
| 2013-10-23 14:56:38 | MyISAM | 
| 2013-10-23 14:56:38 | MyISAM | 
| 2013-10-23 14:56:38 | MyISAM | 
| 2013-10-23 14:56:38 | MyISAM | 
| 2013-10-23 14:56:38 | MyISAM | 
| 2013-10-23 14:56:38 | MyISAM | 
| 2013-10-23 14:56:38 | MyISAM | 
+---------------------+--------+ 
132 rows in set (0.29 sec)

问题13:如何列出表 ‘xrt’ 内 name 域值为 ‘tecmint’,web\_address 域值为 ‘tecmint.com’ 的所有数据?

答案:运行命令 select * from xrt where name = “tecmint” and web\_address = “tecmint.com”;
mysql> select  * from xrt where name = "tecmint" and web_address = “tecmint.com”;
+---------------+---------------------+---------------+ 
| Id                  | name                   | web_address | 
+---------------+---------------------+----------------+ 
| 13                 |  tecmint               | tecmint.com  |
+---------------+---------------------+----------------+ 
| 41                 |  tecmint               | tecmint.com  |
+---------------+---------------------+----------------+

问题14:如何列出表 ‘xrt’ 内 name 域值不为 ‘tecmint’,web\_address 域值为 ‘tecmint.com’ 的所有数据?

答案:运行命令 select * from xrt where name != "tecmint" and web\_address = "tecmint.com";
mysql> select * from xrt where name != ”tecmint” and web_address = ”tecmint.com”;

+---------------+---------------------+---------------+ 
| Id            | name                | web_address   | 
+---------------+---------------------+----------------+ 
| 1173          |  tecmint            | tecmint.com   |
+---------------+---------------------+----------------+

问题15:如何知道表内行数?

答案:运行命令 select count(*) from table\_name;
mysql> select count(*) from Tables; 

+----------+ 
| count(*) | 
+----------+ 
|      282 | 
+----------+ 
1 row in set (0.01 sec)

以上是文章的全部内容。这篇‘Linux 面试题’对您有任何帮助吗?别忘了在下面留言,写出您的宝贵意见。


via: http://www.tecmint.com/basic-mysql-interview-questions-for-database-administrators/

译者:bazz2 校对:Caroline

本文由 LCTT 原创翻译,Linux中国 荣誉推出

继续我们这面试系列,在这篇文章里我们给出了10个问题。这些问题或者是在以后的文章中出现的问题不一定在面试中会被问到。然而通过这些文章我们呈现出的是一个交互的学习平台,这必将会对你有很大的帮助。

自本系列的上一篇文章11个基本的 Linux 面试问题,我们分析了不同论坛对此作出的评论,这对我们将更好的文章提供给我们的读者是很重要的。我们付出了时间和金钱,那我们又渴望从你们身上得到什么回报呢?答案是没有的。如果你不能赞扬我们的工作,但恳请不要在评论中诋毁我们的工作。

如果你在文章中没有找到什么新的东西,但也请不要忘记它对某些人却是非常有用的,并且他或她会非常感激我们的工作。我们不能够让每一篇文章都使大家高兴。但我希望读者们能够尽量理解。

Q.1:哪一条命令用于把用户登录会话记录在文件中?

  • macro
  • read
  • script
  • record
  • sessionrecord
:‘script’ 命令是用来把用户登录的会话信息记录在文件里。这条命令能够用在 shell 脚本里面,或者直接在终端中使用。下面是一个例子,它记录了开始用 script 到输入 exit 结束之间的所有东西。

如下命令记录用户登录会话到一个文件中:

[root@tecmint ~]# script my-session-record.txt

Script started, file is my-session-record.txt

记录的文件“my-session-record.txt”可以通过下述方式查看:

[root@tecmint ~]# nano my-session-record.txt

script started on Friday 22 November 2013 08:19:01 PM IST
[root@tecmint ~]# ls
^[[0m^[[01;34mBinary^[[0m ^[[01;34mDocuments^[[0m ^[[01;34mMusic^[[0m $
^[[01;34mDesktop^[[0m ^[[01;34mDownloads^[[0m my-session-record.txt ^[[01;34$

Q.2:以下那一条命令可以用来查看内核日志信息

  • dmesg
  • kernel
  • ls -i
  • uname
  • 以上全不是
:执行 'dmesg' 命令可以查看内核的日志信息。在上面的命令中,kernel 不是一个有效的命令,'ls -i' 是用来列出工作目录中文件的索引节点,而 'uname' 是用来显示操作系统信息的。

-

[root@tecmint ~]# dmesg

Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Linux version 2.6.32-279.el6.i686 ([email protected]) (gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) ) #1 SMP Fri Jun 22 10:59:55 UTC 2012
KERNEL supported cpus:
  Intel GenuineIntel
  AMD AuthenticAMD
  NSC Geode by NSC
  Cyrix CyrixInstead
  Centaur CentaurHauls
  Transmeta GenuineTMx86
  Transmeta TransmetaCPU
  UMC UMC UMC UMC
Disabled fast string operations
BIOS-provided physical RAM map:
...

Q.3:哪一条命令是用来显示 Linux 内核发行信息的?

  • uname -v
  • uname -r
  • uname -m
  • uname -n
  • uname -o
:‘uname -r’是用来显示内核的发行信息。其它参数‘-v’、‘-m’、‘-n’、‘o’分别显示内核版本、机器硬件名称、网络节点、主机名和操作系统。

-

[root@tecmint ~]# uname -r

2.6.32-279.el6.i686

Q.4:那一条命令是被用来识别文件类型的?

  • type
  • info
  • file
  • which
  • ls
:‘file’命令是用来识别文件类型的。其语法是‘file [选项] 文件名’。

-

[root@tecmint ~]# file wtop

wtop: POSIX shell script text executable

Q.5:哪一条命令是被用来找一条命令的二进制文件、源和手册的所在的路径?

:‘whereis’驾到!‘whereis’命令是用来找一条命令的二进制文件、源和手册的所在的路径。

-

[root@tecmint ~]# whereis /usr/bin/ftp

ftp: /usr/bin/ftp /usr/share/man/man1/ftp.1.gz

Q.6:当用户登录时,默认情况下哪些文件会被调用作为用户配置?

:在用户的目录下‘.profile’和‘.bashrc’会默认地被调用作为用户配置。

-

[root@tecmint ~]# ls -al
-rw-r--r--.  1 tecmint     tecmint            176 May 11  2012 .bash_profile
-rw-r--r--.  1 tecmint     tecmint            124 May 11  2012 .bashrc

Q.7:‘resolve.conf’文件是什么的配置文件?

:‘/etc/resolve.conf’ 是 DNS 客户端的配置文件。

-

[root@tecmint ~]# cat /etc/resolv.conf

nameserver 172.16.16.94

Q.8:哪一条命令是用来创建一个文件的软链接的?

  • ln
  • ln -s
  • link
  • link -soft
  • 以上都不是
:在 Linux 环境下,‘ln -s’是被用来创建一个文件的软链接的。

-

[root@tecmint ~]# ln -s /etc/httpd/conf/httpd.conf httpd.original.conf

Q.9:在Linux下,‘pwd’命令是‘passwd’命令的别名吗?

:不是!默认情况下‘pwd’命令不是‘passwd’命令的别名。‘pwd’是‘print working directory’(显示工作目录)的缩写,也就是输出当前的工作目录,而‘passwd’在 Linux 中是被用来更改用户的帐号密码。

-

[root@tecmint ~]# pwd

/home/tecmint

[root@tecmint ~]# passwd
Changing password for user root.
New password:
Retype new password:

Q.10:在 Linux 中,你会怎样检测 pci 设备的厂商和版本。

:我们用的 Linux 命令是‘lspci’。

-

[root@tecmint ~]# lspci

00:00.0 Host bridge: Intel Corporation 5000P Chipset Memory Controller Hub (rev b1)
00:02.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 2-3 (rev b1)
00:04.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 4-5 (rev b1)
00:06.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 6-7 (rev b1)
00:08.0 System peripheral: Intel Corporation 5000 Series Chipset DMA Engine (rev b1)
...

现在就到这里。我希望以上的问题也许对你很有用。在下星期我会再想出一些新的问题。到时请保持好的健康,继续关注我们并且与 Tecmint 保持联系喔!


via: http://www.tecmint.com/basic-linux-interview-questions-and-answers-part-ii/

译者:hyaocuk 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

在有关面试问题的这一系列话题的前两篇文章中,我们收到了许多好的反馈,在此表示极大的感谢,同时,我们将延续这一系列话题。在这里,我们将再次展示10个问题来进行相互学习。

Q.1. 你如何向你的系统中添加一个新的用户(例如,tux)?

  • 使用useradd指令
  • 使用adduser 指令
  • 使用linuxconf指令
  • 以上全是
  • 以上答案全都不对
: 以上全是,即useradd, adduser 和 linuxconf 都可向你的linux系统添加新用户。

Q.2. 在一个硬盘上,可能有多少主分区?

  • 1
  • 2
  • 4
  • 16
: 一个硬盘上最多可能有4个主分区。

Q.3. Apache/Http 的默认端口号是多少?

  • 8080
  • 80
  • 8443
  • 91
  • 以上答案全都不对
: Apache/Http默认配置是80端口

Q.4. GNU代表什么?

  • GNU's not Unix
  • General Unix
  • General Noble Unix
  • Greek Needed Unix
  • 以上答案全都不对
: GNU意为GNU's not Unix.

Q.5. 如果你在shell提示符中输入mysql并得到“can’t connect to local MySQL server through socket ‘/var/mysql/mysql.sock’ ”的提示,你首先应该检查什么?

: 看到这条错误消息,我首先会使用service mysql status或者service mysqld status指令来检查mysql服务是否正在运行。如果mysql服务没有运行,就启动所需服务。

注意:上面的错误消息可能是由于my.cnf或者mysql的用户权限错误配置导致的。如果启动mysql服务之后仍不管用,你需要检查这两项。

Q.6. 如何将windows ntfs分区挂载到Linux上面?

: 首先,使用apt或者yum工具安装ntfs3g包,然后使用 “sudo mount ­t ntfs­3g /dev/ /<挂载点­>” 命令来将windows分区挂载到Linux上面

Q.7. 下面哪一个不是基于RPM的操作系统?

  • RedHat Linux
  • Centos
  • Scientific Linux
  • Debian
  • Fedora
: ‘Debian’ 系统不是基于RPM的,其它的几个都是

Q.8. Linux中,哪一个指令用来重命名文件?

  • mv
  • ren
  • rename
  • change
  • 以上答案全都不对
: 在Linux中,mv 指令用来重命名一个文件。例如:mv /pathtoFile/originalfilename.extension /PathtoFile/New\_name.extension

Q.9. 在Linux中,哪个命令用来创建并显示文件?

  • ed
  • vi
  • cat
  • nano
  • 以上答案全都不对
答 : ‘cat‘ 命令用来创建并且显示文件

10. 哪层协议用于支持用户和程序,如支持密码、资源分享、文件传输和网络管理?

  • 第四层协议
  • 第五层协议
  • 第六层协议
  • 第七层协议
  • 以上答案全都不对
答案 : ‘第七层协议

via: http://www.tecmint.com/linux-interview-questions-and-answers-for-linux-beginners/

译者:tomatoKiller 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

继续我们这面试系列,在这篇文章里我们给出了10个问题。这些问题或者是在以后的文章中出现的问题不一定在面试中会被问到。然而通过这些文章我们呈现出的是一个交互的学习平台,这必将会对你有很大的帮助。

自本系列的上一篇文章11个基本的 Linux 面试问题,我们分析了不同论坛对此作出的评论,这对我们将更好的文章提供给我们的读者是很重要的。我们付出了时间和金钱,那我们又渴望从你们身上得到什么回报呢?答案是没有的。如果你不能赞扬我们的工作,但恳请不要在评论中诋毁我们的工作。

如果你在文章中没有找到什么新的东西,但也请不要忘记它对某些人却是非常有用的,并且他或她会非常感激我们的工作。我们不能够让每一篇文章都使大家高兴。但我希望读者们能够尽量理解。

Q.1:哪一条命令用于把用户登录会话记录在文件中?

  • macro
  • read
  • script
  • record
  • sessionrecord
:‘script’ 命令是用来把用户登录的会话信息记录在文件里。这条命令能够用在 shell 脚本里面,或者直接在终端中使用。下面是一个例子,它记录了开始用 script 到输入 exit 结束之间的所有东西。

如下命令记录用户登录会话到一个文件中:

[root@tecmint ~]# script my-session-record.txt

Script started, file is my-session-record.txt

记录的文件“my-session-record.txt”可以通过下述方式查看:

[root@tecmint ~]# nano my-session-record.txt

script started on Friday 22 November 2013 08:19:01 PM IST
[root@tecmint ~]# ls
^[[0m^[[01;34mBinary^[[0m ^[[01;34mDocuments^[[0m ^[[01;34mMusic^[[0m $
^[[01;34mDesktop^[[0m ^[[01;34mDownloads^[[0m my-session-record.txt ^[[01;34$

Q.2:以下那一条命令可以用来查看内核日志信息

  • dmesg
  • kernel
  • ls -i
  • uname
  • 以上全不是
:执行 'dmesg' 命令可以查看内核的日志信息。在上面的命令中,kernel 不是一个有效的命令,'ls -i' 是用来列出工作目录中文件的索引节点,而 'uname' 是用来显示操作系统信息的。

-

[root@tecmint ~]# dmesg

Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Linux version 2.6.32-279.el6.i686 ([email protected]) (gcc version 4.4.6 20120305 (Red Hat 4.4.6-4) (GCC) ) #1 SMP Fri Jun 22 10:59:55 UTC 2012
KERNEL supported cpus:
  Intel GenuineIntel
  AMD AuthenticAMD
  NSC Geode by NSC
  Cyrix CyrixInstead
  Centaur CentaurHauls
  Transmeta GenuineTMx86
  Transmeta TransmetaCPU
  UMC UMC UMC UMC
Disabled fast string operations
BIOS-provided physical RAM map:
...

Q.3:哪一条命令是用来显示 Linux 内核发行信息的?

  • uname -v
  • uname -r
  • uname -m
  • uname -n
  • uname -o
:‘uname -r’是用来显示内核的发行信息。其它参数‘-v’、‘-m’、‘-n’、‘o’分别显示内核版本、机器硬件名称、网络节点、主机名和操作系统。

-

[root@tecmint ~]# uname -r

2.6.32-279.el6.i686

Q.4:那一条命令是被用来识别文件类型的?

  • type
  • info
  • file
  • which
  • ls
:‘file’命令是用来识别文件类型的。其语法是‘file [选项] 文件名’。

-

[root@tecmint ~]# file wtop

wtop: POSIX shell script text executable

Q.5:哪一条命令是被用来找一条命令的二进制文件、源和手册的所在的路径?

:‘whereis’驾到!‘whereis’命令是用来找一条命令的二进制文件、源和手册的所在的路径。

-

[root@tecmint ~]# whereis /usr/bin/ftp

ftp: /usr/bin/ftp /usr/share/man/man1/ftp.1.gz

Q.6:当用户登录时,默认情况下哪些文件会被调用作为用户配置?

:在用户的目录下‘.profile’和‘.bashrc’会默认地被调用作为用户配置。

-

[root@tecmint ~]# ls -al
-rw-r--r--.  1 tecmint     tecmint            176 May 11  2012 .bash_profile
-rw-r--r--.  1 tecmint     tecmint            124 May 11  2012 .bashrc

Q.7:‘resolve.conf’文件是什么的配置文件?

:‘/etc/resolve.conf’ 是 DNS 客户端的配置文件。

-

[root@tecmint ~]# cat /etc/resolv.conf

nameserver 172.16.16.94

Q.8:哪一条命令是用来创建一个文件的软链接的?

  • ln
  • ln -s
  • link
  • link -soft
  • 以上都不是
:在 Linux 环境下,‘ls -s’是被用来创建一个文件的软链接的。

-

[root@tecmint ~]# ln -s /etc/httpd/conf/httpd.conf httpd.original.conf

Q.9:在Linux下,‘pwd’命令是‘passwd’命令的别名吗?

:不是!默认情况下‘pwd’命令不是‘passwd’命令的别名。‘pwd’是‘print working directory’(显示工作目录)的缩写,也就是输出当前的工作目录,而‘passwd’在 Linux 中是被用来更改用户的帐号密码。

-

[root@tecmint ~]# pwd

/home/tecmint

[root@tecmint ~]# passwd
Changing password for user root.
New password:
Retype new password:

Q.10:在 Linux 中,你会怎样检测 pci 设备的厂商和版本。

:我们用的 Linux 命令是‘lspci’。

-

[root@tecmint ~]# lspci

00:00.0 Host bridge: Intel Corporation 5000P Chipset Memory Controller Hub (rev b1)
00:02.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 2-3 (rev b1)
00:04.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 4-5 (rev b1)
00:06.0 PCI bridge: Intel Corporation 5000 Series Chipset PCI Express x8 Port 6-7 (rev b1)
00:08.0 System peripheral: Intel Corporation 5000 Series Chipset DMA Engine (rev b1)
...

现在就到这里。我希望以上的问题也许对你很有用。在下星期我会再想出一些新的问题。到时请保持好的健康,继续关注我们并且与 Tecmint 保持联系喔!


via: http://www.tecmint.com/basic-linux-interview-questions-and-answers-part-ii/

译者:hyaocuk 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

Q.1: Linux 操作系统的核心是什么?

  • Shell
  • Kernel
  • Command
  • Script
  • Terminal
: 内核(Kernel)是Linux 操作系统的核心。Shell是一个命令行解释器,命令(Command)是针对计算机的指令,脚本(Script)是存储在文件中的命令的集合,终端(Termial)是命令行接口。

Q.2: Linus Torvalds 都创建过什么东东?

  • Fedora
  • Slackware
  • Debian
  • Gentoo
  • Linux
: Linux Torvalds 创建了Linux,Linux是所有上述操作系统的核心,同样也是其他一些Linux 操作系统的核心。

Q.3: Torvalds,使用C++语言编写了Linux内核的大部分代码,是这样吗?

: 不! Linux内核包含了12,020,528行代码,其中注释占去了2,151,595 行。因此剩下的9,868,933 行就是纯代码了。而其中7,896,318行都是用C语言写的。

剩下的1,972,615行则是使用C++,汇编,Perl, Shell Script, Python, Bash Script, HTML, awk, yacc, lex, sed等。

:代码行数每天都在变动,平均每天超过3,509行代码添加到内核。

Q.4: 起初,Linux 是为 Intel X86 架构编写的,但是后来比其他操作系统移植的硬件平台都多,是这样吗 ?

: 是的,我同意。Linux那时候是为x86机器写的,而且现已移至到所有类型的平台。今天超过90%的超级计算机都在使用Linux。Linux在移动手机和平板电脑领域前景广阔。事实上我们被Linux包围着,远程遥控,太空科学,研究,Web,桌面计算等等,举之不尽。

Q.5: 编辑 Linux 内核合法吗?

: 是的,内核基于GPL发布,任何人都可以基于GPL允许的权限随意编辑内核。Linux内核属于免费开源软件(FOSS)。

Q.6: UNIX和Linux操作系统,本质上的不同在哪里?

: Linux操作系统属于免费开源软件,内核是由 Linus Torvalds 和开源社区共同开发的。当然我们不能说UNIX操作系统和免费开源软件(FOSS)无关,BSD 就是基于 FOSS 范畴的 UNIX 的变种。而且大公司如 Apple,IBM,Oracle,HP等,都在为UNIX内核贡献代码。

Q. 7: 挑出来一个与众不同的来.

  • HP-UX
  • AIX
  • OSX
  • Slackware
  • Solaris
: Slackware。 HP-UX, AIX, OSX, Solaris 分别是由 HP, IBM, APPLE, Oracle 开发的,并且都是UNIX的变种. Slackware 则是一个Linux操作系统.

Q.8: Linux 不会感染病毒吗?

: 当然会! 这个地球上不存在不会感染病毒的操作系统。但是Linux以迄今为止病毒数量少而著称,是的,甚至比UNIX还要少。Linux榜上有名的病毒只有60-100个,而且没有一个病毒在传播蔓延。Unix粗略估计有85-120个。

Q.9: Linux 属于哪种类型的操作系统?

  • 多用户
  • 多任务
  • 多线程
  • 以上所有
  • 以上都不是
: 以上所有。Linux是一个支持多用户,可以同时运行多个进程执行多个任务的操作系统。

Q.10: 一般的 Linux 命令的语法格式是:

  • command [选项] [参数]
  • command 选项 [参数]
  • command [选项] [参数]
  • command 选项 参数
: Linux 命令的正确语法是, Command [选项] [参数]。

Q.11: 挑出来一个与众不同的来.

  • Vi
  • vim
  • cd
  • nano
: cd 与其他命令不同。Vi,vim和 nano都是编辑器,用于编辑文档,而cd是用于切换目录的命令。

就这么多了。上述问题你学到手几个?效果如何?我们期待着你的评论。下周,会有新的问题,让我们拭目以待。保持健康,锁定链接,记得来Tecmint哦。


via: http://www.tecmint.com/basic-linux-interview-questions-and-answers/

译者:l3b2w1 校对:jasminepeng

本文由 LCTT 原创翻译,Linux中国 荣誉推出