发新话题
打印

Linux 指令篇

起始管理--halt

名称:halt
使用权限:系统管理者
使用方式:halt [-n] [-w] [-d] [-f] [-i] [-p]
说明:若系统的 runlevel 为 0 或 6 ,则关闭系统,否则以 shutdown 指令(加上 -h 参数)来取代
参数:
-n : 在关机前不做将记忆体资料写回硬盘的动作
-w : 并不会真的关机,只是把记录写到 /var/log/wtmp 档案里
-d : 不把记录写到 /var/log/wtmp 档案里(-n 这个参数包含了 -d) -f : 强迫关机,不呼叫 shutdown 这个指令
-i : 在关机之前先把所有网络相关的装置先停止
-p : 当关机的时候,顺便做关闭电源(poweroff)的动作
范例:
halt -p 关闭系统后关闭电源。
halt -d 关闭系统,但不留下纪录。

网络无限,生活无限

TOP

使用者管理--sudo

名称:sudo
使用权限:在 /etc/sudoers 中有出现的使用者
使用方式:sudo -V
sudo -h
sudo -l
sudo -v
sudo -k
sudo -s
sudo -H
sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s
sudo command
说明:以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行
参数:
-V 显示版本编号
-h 会显示版本编号及指令的使用方式说明
-l 显示出自己(执行 sudo 的使用者)的权限
-v 因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会问密码
-k 将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过 N 分钟)
-b 将要执行的指令放在背景执行
-p prompt 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称, %h 会显示主机名称
-u username/#uid 不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码)
-s 执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell
-H 将环境变数中的 HOME (家目录)指定为要变更身份的使用者家目录(如不加 -u 参数就是系统管理者 root )
command 要以系统管理者身份(或以 -u 更改为其他人)执行的指令
范例:
sudo -l 列出目前的权限
sudo -V 列出 sudo 的版本资讯

网络无限,生活无限

TOP

使用者管理--su

名称:su
使用权限:所有使用者
使用方式:su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]
说明:变更为其他使用者的身份,除 root 外,需要键入该使用者的密码
参数:
-f 或 --fast 不必读启动档(如 csh.cshrc 等),仅用于 csh 或 tcsh
-m -p 或 --preserve-environment 执行 su 时不改变环境变数
-c command 或 --command=command 变更为帐号为 USER 的使用者并执行指令(command)后再变回原来使用者
-s shell 或 --shell=shell 指定要执行的 shell (bash csh tcsh 等),预设值为 /etc/passwd 内的该使用者(USER) shell
--help 显示说明文件
--version 显示版本资讯
- -l 或 --login 这个参数加了之后,就好像是重新 login 为该使用者一样,大部份环境变数(HOME SHELL USER等等)都是以该使用者(USER)为主,并且工作目录也会改变,如果没有指定 USER ,内定是 root
USER 欲变更的使用者帐号
ARG 传入新的 shell 参数
范例:
su -c ls root 变更帐号为 root 并在执行 ls 指令后退出变回原使用者。
su root -f 变更帐号为 root 并传入 -f 参数给新执行的 shell。
su - clsung 变更帐号为 clsung 并改变工作目录至 clsung 的家目录(home dir)。

网络无限,生活无限

TOP

使用者管理--adduser

名称:adduser
使用权限:系统管理员
使用方式:adduser [-c comment] [-d home_dir]
[-e expire_date] [-f inactive_time]
[-g initial_group] [-G group[,...]]
[-m [-k skeleton_dir] | -M] [-p passwd]
[-s shell] [-u uid [ -o]] [-n] [-r] loginid
或 adduser -D [-g default_group] [-b default_home]
[-f default_inactive]
[-e default_expire_date]
[-s default_shell]
附注:adduser 与 useradd 指令为同一指令(经由符号连结 symbolic link)
说明:新增使用者帐号或更新预设的使用者资料
参数:
-c comment 新使用者位于密码档(通常是 /etc/passwd)的注解资料
-d home_dir 设定使用者的家目录为 home_dir ,预设值为预设的 home 后面加上使用者帐号 loginid
-e expire_date 设定此帐号的使用期限(格式为 YYYY-MM-DD),预设值为永久有效
-f inactive_time 范例:


adduser是增加使用者.
相对的,也有删除使用者的指令,userdel.
语法:userdel [login ID]

网络无限,生活无限

TOP

文件系统--sync

名称 : sync
使用权限 : 系统管理者
使用方式 : sync
说明 : Linux 系统中欲写入硬盘的资料有的时候会了效率起见,会写到 filesystem buffer 中,这个 buffer 是一块记忆体空间,如果欲写入硬盘的资料存于此 buffer 中,而系统又突然断电的话,那么资料就会流失了,sync 指令会将存于 buffer 中的资料强制写入硬盘中。

网络无限,生活无限

TOP

文件系统--swapon

名称: swapon
使用者权限: 超级使用者(super-user)
使用方式:
/sbin/swapon -a [-v]
/sbin/swapon [-v] [-p priority] specialfile ...
/sbin/swapon [-s]
-h 请帮帮我
-V 显示版本讯息
-s 显示简短的装置讯息
-a 自动启动所有SWAP装置
-p 设定优先权,你可以在0到32767中间选一个数字给他。或是在 /etc/fstab 里面加上 pri=[value] ([value]就是0~32767中间一个数字),然后你就可以很方便的直接使用 swapon -a 来启动他们,而且有优先权设定。


swapon 是开启swap.
相对的,便有一个关闭swap的指令,swapoff.

网络无限,生活无限

TOP

文件系统--mount

名称 : mount
使用权限 : 系统管理者或/etc/fstab中允许的使用者
使用方式 :
mount [-hV]
mount -a [-fFnrsvw] [-t vfstype]
mount [-fnrsvw] [-o options [,...]] device | dir
mount [-fnrsvw] [-t vfstype] [-o options] device dir
说明 :

将某个档案的内容解读成档案系统,然后将其挂在目录的某个位置之上。当这个命令执行成功后,直到我们使用 umnount 将这个档案系统移除为止,这个命令之下的所有档案将暂时无法被调用。

这个命令可以被用来挂上任何的档案系统,你甚至可以用 -o loop 选项将某个一般的档案当成硬盘机分割挂上系统。这个功能对于 ramdisk,romdisk 或是 ISO 9660 的影像档之解读非常实用。

参数

-V

显示程序版本
-h

显示辅助讯息
-v

显示较讯息,通常和 -f 用来除错。
-a
将 /etc/fstab 中定义的所有档案系统挂上。

-F
这个命令通常和 -a 一起使用,它会为每一个 mount 的动作产生一个行程负责执行。在系统需要挂上大量 NFS 档案系统时可以加快挂上的动作。

-f
通常用在除错的用途。它会使 mount 并不执行实际挂上的动作,而是模拟整个挂上的过程。通常会和 -v 一起使用。

-n
一般而言,mount 在挂上后会在 /etc/mtab 中写入一笔资料。但在系统中没有可写入档案系统存在的情况下可以用这个选项取消这个动作。

-s-r
等于 -o ro

-w
等于 -o rw

-L
将含有特定标签的硬盘分割挂上。

-U
将档案分割序号为 的档案系统挂下。-L 和 -U 必须在/proc/partition 这种档案存在时才有意义。

-t
指定档案系统的型态,通常不必指定。mount 会自动选择正确的型态。

-o async
打开非同步模式,所有的档案读写动作都会用非同步模式执行。

-o sync
在同步模式下执行。

-o atime
-o noatime
当 atime 打开时,系统会在每次读取档案时更新档案的『上一次调用时间』。当我们使用 flash 档案系统时可能会选项把这个选项关闭以减少写入的次数。

-o auto
-o noauto
打开/关闭自动挂上模式。

-o defaults
使用预设的选项 rw, suid, dev, exec, auto, nouser, and async.

-o dev
-o nodev-o exec
-o noexec
允许执行档被执行。

-o suid
-o nosuid
允许执行档在 root 权限下执行。

-o user
-o nouser
使用者可以执行 mount/umount 的动作。

-o remount
将一个已经挂下的档案系统重新用不同的方式挂上。例如原先是唯读的系统,现在用可读写的模式重新挂上。

-o ro
用唯读模式挂上。

-o rw
用可读写模式挂上。

-o loop=
使用 loop 模式用来将一个档案当成硬盘分割挂上系统。

范例

将 /dev/hda1 挂在 /mnt 之下。

#mount /dev/hda1 /mnt



将 /dev/hda1 用唯读模式挂在 /mnt 之下。

#mount -o ro /dev/hda1 /mnt


将 /tmp/image.iso 这个光碟的 image 档使用 loop 模式挂在 /mnt/cdrom之下。用这种方法可以将一般网络上可以找到的 Linux 光 碟 ISO 档在不烧录成光碟的情况下检视其内容。

#mount -o loop /tmp/image.iso /mnt/cdrom

相关命令umount

网络无限,生活无限

TOP

文件系统--fstab

指令:fstab

使用权限 : 超级使用者

使用方式 : 使用编辑器来修改 /etc/fstab (eg. vi /etc/fstab)

说明 : 存放档案系统与目录结构对应资料的档案


fstab 栏位说明:

第一栏(fs_spec): 实际的 device 名称
第二栏(fs_file): 对应到的目录结构(mount point)
第三栏(fs_vfstype):该 partition 的档案系统,常见的有:

minix、ext、ext2、msdos、iso9660、nfs、swap
第四栏(fs_mntops): 在 mount 时的参数
第五栏(fs_freq): 在使用 dump 时是否记录,不需要则输入0
第六栏(fs_passno): 决定在开机时执行 fsck 的先后顺序

例子 :
IDE 硬盘分成两个 partition 与一个 swap,还有一台光碟机跟一台软碟机的情形 :


/dev/hda1 / ext2 defaults 1 1
/dev/hda5 /home ext2 defaults 1 2
/dev/cdrom /mnt/cdrom iso9660 noauto,user,ro 0 0
/dev/hda6 swap swap defaults 0 0
/dev/fd0 /mnt/floppy ext2 noauto,owner 0 0
none /proc proc defaults 0 0
none /dev/pts devpts gid=5,mode=620 0 0

网络无限,生活无限

TOP

文件系统--mkfs

指令:mkfs

使用权限 : 超级使用者

使用方式 : mkfs [-V] [-t fstype] [fs-options] filesys [blocks]

说明 : 建立 linux 档案系统在特定的 partition 上


参数 :

device : 预备检查的硬盘 partition,例如:/dev/sda1
-V : 详细显示模式
-t : 给定档案系统的型式,Linux 的预设值为 ext2
-c : 在制做档案系统前,检查该partition 是否有坏轨
-l bad_blocks_file : 将有坏轨的block资料加到 bad_blocks_file 里面
block : 给定 block 的大小

例子 :
在 /dev/hda5 上建一个 msdos 的档案系统,同时检查是否有坏轨存在,并且将过程详细列出来 :
mkfs -V -t msdos -c /dev/hda5

网络无限,生活无限

TOP

文件系统--fsck

指令:fsck

使用权限 : 超级使用者

使用方式 : fsck [-sACVRP] [-t fstype] [--] [fsck-options] filesys [...]

说明 : 检查与修复 Linux 档案系统,可以同时检查一个或多个 Linux 档案系统


参数 :

filesys : device 名称(eg./dev/sda1),mount 点 (eg. / 或 /usr)
-t : 给定档案系统的型式,若在 /etc/fstab 中已有定义或 kernel 本身已支援的则不需加上此参数
-s : 依序一个一个地执行 fsck 的指令来检查
-A : 对/etc/fstab 中所有列出来的 partition 做检查
-C : 显示完整的检查进度
-d : 列印 e2fsck 的 debug 结果
-p : 同时有 -A 条件时,同时有多个 fsck 的检查一起执行
-R : 同时有 -A 条件时,省略 / 不检查
-V : 详细显示模式

-a : 如果检查有错则自动修复
-r : 如果检查有错则由使用者回答是否修复

例子 :
检查 msdos 档案系统的 /dev/hda5 是否正常,如果有异常便自动修复 :
fsck -t msdos -a /dev/hda5

注意 :

此指令可与 /etc/fstab 相互参考操作来加以了解。

网络无限,生活无限

TOP

发新话题