ac1bda8c9b4a7947428483ee3ba7d459.png

七.1、SHELL SCRIPTS

· 什么是 shell scripts ? scripts 有何功用?

o 简单的说, scripts 就是一个内部含有多个或复杂的 command 的纯文字档案;

o scripts 可以进行 program 的功能,但速度上较 C 慢了点!

· 要撰写可以经由键盘输入的 scripts 时,常使用到的指令?

read variable

· 在 shell script 当中,在控制式中, && 与 || 代表什么意思?

分别代表『和(同时成立)』及『或(仅其一成立就成立)』的意思!

· 在使用回圈的时候,常使用到的控制式为哪三个?

for, while, until

· 执行 scripts 的方法有哪两种?

o 使用 sh script 或

o 以 chmod 增加 scripts 的属性为可执行, chmod 777 script 并执行 scripts。

· 如何宣告一个变数成为整数型态?

declare -i variable

· 为何在 shell script 前面都要宣告 shell 呢?

宣告 shell 方能让 script 了解该内容需要以何种 shell 来执行!目前 Linux 通常宣告 /bin/bash 这个 shell ,然而若在非 shell 环境中,又没有宣告 shell 类型时,可能会造成 script 无法执行的情况。

· 在判断式中,如何判断一个档名是否存在?

if [ -e filename ] 若存在则回传值为真!

· 在执行一个 scripts 时,在 scripts 内的变数, $0, $1 代表什么?

o $0 代表 scripts 的档名;

o $1 代表第一个 parameter,例如 /etc/rc.d/init.d/xinetd start 那个 start 的变数即为 $1

· 若要写一个既定的 parameter (如 start ),用哪一个判断式较简单?

可以使用 case …. Esac 的语法较为简单。

· 如何印出目前系统中的所有帐号,并加以排序且输出到 /tmp/account 中?

cut -d ‘:’ -f 1 /etc/passwd | sort > /tmp/account

· 如何在不执行 scripts 的情况中 debug ?

sh -n scripts

八、基本帐号管理

· 如何新增一个使用者 username,且该使用者没有家目录?

useradd -M username

· Linux 使用者的帐号、密码与群组的名称档案放在哪里?

o /etc/passwd

o /etc/shadow

o /etc/group

· 建立新使用者的预设家目录内容在那个目录中?

/etc/skel

· 建立一个新使用者时,其使用到的相关档案有哪些?

o /etc/default/useradd,

o /etc/login.defs,

o /etc/skel/

o /etc/passwd,

o /etc/shadow

· root 的 UID 与 GID 各为何?

皆为 0

· 如何让一个使用者不能登入主机,但是可以收信?

将 /etc/passwd 最后一栏代表 shell 的名称改为 /bin/false

· 试说明一个使用者登入系统的流程?

1. 登入:使用 /bin/login 程式,并输入 ID 与 passwd ;

2. 确认密码:搜寻 /etc/passwd, /etc/shadow 确认密码!并取得使用者的相关讯息。

3. 查核 pam 登入模组:这个需要视主机的设定而定!

4. 取得并执行 shell :由 /etc/passwd 取得 shell 之后,并执行 shell ,以 bash 为例,将读入: /ete/profile ? ~/.bash_profile ( 或 .bash_login 或 .profile ) ? ~/.bashrc ? 登出的时候执行 ~/.bash_logout

· 在 /etc/shadow 当中的日期设定中,其数字代表的意义为何?

由 1970 年开始计算,故 1970 年 一月一日为 1 ,2002 年 1 月 1 日为11689

· 如何变更使用者的一些属性?

usermod, chfn, chsh, passwd

· 如何视察一个使用者 username 所拥有的群组呢?

groups username

· 试说明如何手动增加一个使用者 username 与群组 groupname?

1. 先看看 /etc/skel 当中,预设要给 user 的家目录内容;

2. 新增 group : groupadd groupname

3. 新增 user :useradd -m -g groupname username

4. 给予密码: passwd username

· 试说明 /etc/passwd 这个档案的内容与格式:

帐号; 密码; UID; GID; 说明的内容; 家目录; SHELL

· 使用 id 这个指令时,可以显示什么讯息资料?

UID, GID 跟 GROUP

· 可以控制使用者使用主机资源的预设档案在哪里?

/etc/security/limits.conf

· 基本的压缩指令有哪些?

tar, gzip, compress

◆◆

评论读取中....

请登录后再发表评论!

◆◆

修改失败,请稍后尝试

Logo

更多推荐