如何在NT中实现中真正关机?

Jockey 2002-12-23 11:45:01
以下是www.allapi.net 的示例,但它关机时候是不可以连电源关掉的,该如何呢?
'In a module
Private Const EWX_LOGOFF = 0
Private Const EWX_SHUTDOWN = 1
Private Const EWX_REBOOT = 2
Private Const EWX_FORCE = 4
Private Const TOKEN_ADJUST_PRIVILEGES = &H20
Private Const TOKEN_QUERY = &H8
Private Const SE_PRIVILEGE_ENABLED = &H2
Private Const ANYSIZE_ARRAY = 1
Private Const VER_PLATFORM_WIN32_NT = 2
Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type
Type LUID
LowPart As Long
HighPart As Long
End Type
Type LUID_AND_ATTRIBUTES
pLuid As LUID
Attributes As Long
End Type
Type TOKEN_PRIVILEGES
PrivilegeCount As Long
Privileges(ANYSIZE_ARRAY) As LUID_AND_ATTRIBUTES
End Type
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Private Declare Function OpenProcessToken Lib "advapi32" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long
Private Declare Function LookupPrivilegeValue Lib "advapi32" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As String, ByVal lpName As String, lpLuid As LUID) As Long
Private Declare Function AdjustTokenPrivileges Lib "advapi32" (ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, PreviousState As TOKEN_PRIVILEGES, ReturnLength As Long) As Long
Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (ByRef lpVersionInformation As OSVERSIONINFO) As Long
'Detect if the program is running under Windows NT
Public Function IsWinNT() As Boolean
Dim myOS As OSVERSIONINFO
myOS.dwOSVersionInfoSize = Len(myOS)
GetVersionEx myOS
IsWinNT = (myOS.dwPlatformId = VER_PLATFORM_WIN32_NT)
End Function
'set the shut down privilege for the current application
Private Sub EnableShutDown()
Dim hProc As Long
Dim hToken As Long
Dim mLUID As LUID
Dim mPriv As TOKEN_PRIVILEGES
Dim mNewPriv As TOKEN_PRIVILEGES
hProc = GetCurrentProcess()
OpenProcessToken hProc, TOKEN_ADJUST_PRIVILEGES + TOKEN_QUERY, hToken
LookupPrivilegeValue "", "SeShutdownPrivilege", mLUID
mPriv.PrivilegeCount = 1
mPriv.Privileges(0).Attributes = SE_PRIVILEGE_ENABLED
mPriv.Privileges(0).pLuid = mLUID
' enable shutdown privilege for the current application
AdjustTokenPrivileges hToken, False, mPriv, 4 + (12 * mPriv.PrivilegeCount), mNewPriv, 4 + (12 * mNewPriv.PrivilegeCount)
End Sub
' Shut Down NT
Public Sub ShutDownNT(Force As Boolean)
Dim ret As Long
Dim Flags As Long
Flags = EWX_SHUTDOWN
If Force Then Flags = Flags + EWX_FORCE
If IsWinNT Then EnableShutDown
ExitWindowsEx Flags, 0
End Sub
'Restart NT
Public Sub RebootNT(Force As Boolean)
Dim ret As Long
Dim Flags As Long
Flags = EWX_REBOOT
If Force Then Flags = Flags + EWX_FORCE
If IsWinNT Then EnableShutDown
ExitWindowsEx Flags, 0
End Sub
'Log off the current user
Public Sub LogOffNT(Force As Boolean)
Dim ret As Long
Dim Flags As Long
Flags = EWX_LOGOFF
If Force Then Flags = Flags + EWX_FORCE
ExitWindowsEx Flags, 0
End Sub

'In a form
'This project needs a form with three command buttons
Private Sub Command1_Click()
LogOffNT True
End Sub
Private Sub Command2_Click()
RebootNT True
End Sub
Private Sub Command3_Click()
ShutDownNT True
End Sub
Private Sub Form_Load()
'KPD-Team 2000
'URL: http://www.allapi.net/
'E-Mail: KPDTeam@Allapi.net
Command1.Caption = "Log Off NT"
Command2.Caption = "Reboot NT"
Command3.Caption = "Shutdown NT"
End Sub
...全文
102 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
theMost 2003-01-11
  • 打赏
  • 举报
回复
Option Explicit

Dim mDattime As Date

Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long

Private Declare Function AdjustTokenPrivileges Lib "advapi32.dll" (ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, PreviousState As Long, ReturnLength As Long) As Long
Private Declare Function GetTokenInformation Lib "advapi32.dll" (ByVal TokenHandle As Long, ByVal TokenInformationClass As Long, TokenInformation As Any, ByVal TokenInformationLength As Long, ReturnLength As Long) As Long
Private Declare Function LookupPrivilegeValue Lib "advapi32.dll" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As String, ByVal lpName As String, ByRef lpLuid As LARGE_INTEGER) As Long

Private Declare Function OpenProcessToken Lib "advapi32.dll" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long
Private Declare Function GetCurrentProcessId Lib "kernel32" () As Long
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long

Private Const EWX_LOGOFF = 0 '中止进程,然后注销
Private Const EWX_POWEROFF = 8 '关掉系统电源
Private Const EWX_SHUTDOWN = 1 '关闭系统
Private Const EWX_REBOOT = 2 '重新引导系统
Private Const EWX_FORCE = 4 '强迫中止没有响应的进程
Private Const EWX_FORCEIFHUNG = 16 '如果应用程序已挂起,强制关闭

Private Const SE_PRIVILEGE_ENABLED = &H2
Private Const SE_PRIVILEGE_ENABLED_BY_DEFAULT = &H1
Private Const SE_PRIVILEGE_USED_FOR_ACCESS = &H80000000

Private Const TOKEN_ADJUST_PRIVILEGES = &H20
Private Const TOKEN_QUERY_SOURCE = &H10
Private Const TOKEN_QUERY = &H8

Private Const ANYSIZE_ARRAY = 1

Private Const SE_SHUTDOWN_NAME = "SeShutdownPrivilege"

Private Const PROCESS_SET_INFORMATION = &H200
Private Const PROCESS_QUERY_INFORMATION = &H400

Private Type LARGE_INTEGER
lowpart As Long
highpart As Long
End Type

Private Type LUID
lowpart As Long
highpart As Long
End Type

Private Type LUID_AND_ATTRIBUTES
pLuid As LUID
Attributes As Long
End Type

Private Type TOKEN_PRIVILEGES
PrivilegeCount As Long
Privileges(0) As LUID_AND_ATTRIBUTES
End Type

Dim Opt As Long

Private Sub Shutdown(Optional Mode As Long = EWX_POWEROFF)
Dim lAPIReturn As Long
Dim tTOKPRI As TOKEN_PRIVILEGES
Dim tLUID As LUID
Dim tLarInt As LARGE_INTEGER
Dim lRequired As Long
Dim hTokHan As Long
Dim hProcess As Long

If LookupPrivilegeValue(vbNullString, SE_SHUTDOWN_NAME, tLarInt) = 0 Then
MsgBox "Get LUID error!", vbOKOnly, "Error"
Exit Sub
End If

tLUID.highpart = tLarInt.highpart
tLUID.lowpart = tLarInt.lowpart

tTOKPRI.PrivilegeCount = 1
tTOKPRI.Privileges(0).Attributes = SE_PRIVILEGE_ENABLED
tTOKPRI.Privileges(0).pLuid = tLUID

hProcess = GetCurrentProcess()
lAPIReturn = OpenProcessToken(hProcess, TOKEN_ADJUST_PRIVILEGES + TOKEN_QUERY, hTokHan)
lAPIReturn = AdjustTokenPrivileges(hTokHan, 0, tTOKPRI, Len(tTOKPRI), 0, 0)
lAPIReturn = ExitWindowsEx(Mode, 0)
If lAPIReturn = 0 Then
MsgBox "Function calling error!", vbOKOnly, "错误"
End If

lAPIReturn = CloseHandle(hTokHan)
Unload Me
End Sub

////////////////////////////////////////////////

将:上面程序的常量定义部分的
Private Const EWX_POWEROFF = 8 '关掉系统电源
中的8改为5,6,8,7,9,10。。。。每一个都试一下。
保证有一个可以实现!
///////////////////////////////////////////////////////
Jockey 2002-12-25
  • 打赏
  • 举报
回复
litsnake1(litsnake) 我和你的例子是一样的,你没有试过吗?

是不能关掉电源的!!!
litsnake1 2002-12-23
  • 打赏
  • 举报
回复
'Example Name:ExitWindowsX - NT
'In a module
Private Const EWX_LOGOFF = 0
Private Const EWX_SHUTDOWN = 1
Private Const EWX_REBOOT = 2
Private Const EWX_FORCE = 4
Private Const TOKEN_ADJUST_PRIVILEGES = &H20
Private Const TOKEN_QUERY = &H8
Private Const SE_PRIVILEGE_ENABLED = &H2
Private Const ANYSIZE_ARRAY = 1
Private Const VER_PLATFORM_WIN32_NT = 2
Type OSVERSIONINFO
dwOSVersionInfoSize As Long
dwMajorVersion As Long
dwMinorVersion As Long
dwBuildNumber As Long
dwPlatformId As Long
szCSDVersion As String * 128
End Type
Type LUID
LowPart As Long
HighPart As Long
End Type
Type LUID_AND_ATTRIBUTES
pLuid As LUID
Attributes As Long
End Type
Type TOKEN_PRIVILEGES
PrivilegeCount As Long
Privileges(ANYSIZE_ARRAY) As LUID_AND_ATTRIBUTES
End Type
Private Declare Function GetCurrentProcess Lib "kernel32" () As Long
Private Declare Function OpenProcessToken Lib "advapi32" (ByVal ProcessHandle As Long, ByVal DesiredAccess As Long, TokenHandle As Long) As Long
Private Declare Function LookupPrivilegeValue Lib "advapi32" Alias "LookupPrivilegeValueA" (ByVal lpSystemName As String, ByVal lpName As String, lpLuid As LUID) As Long
Private Declare Function AdjustTokenPrivileges Lib "advapi32" (ByVal TokenHandle As Long, ByVal DisableAllPrivileges As Long, NewState As TOKEN_PRIVILEGES, ByVal BufferLength As Long, PreviousState As TOKEN_PRIVILEGES, ReturnLength As Long) As Long
Private Declare Function ExitWindowsEx Lib "user32" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
Private Declare Function GetVersionEx Lib "kernel32" Alias "GetVersionExA" (ByRef lpVersionInformation As OSVERSIONINFO) As Long
'Detect if the program is running under Windows NT
Public Function IsWinNT() As Boolean
Dim myOS As OSVERSIONINFO
myOS.dwOSVersionInfoSize = Len(myOS)
GetVersionEx myOS
IsWinNT = (myOS.dwPlatformId = VER_PLATFORM_WIN32_NT)
End Function
'set the shut down privilege for the current application
Private Sub EnableShutDown()
Dim hProc As Long
Dim hToken As Long
Dim mLUID As LUID
Dim mPriv As TOKEN_PRIVILEGES
Dim mNewPriv As TOKEN_PRIVILEGES
hProc = GetCurrentProcess()
OpenProcessToken hProc, TOKEN_ADJUST_PRIVILEGES + TOKEN_QUERY, hToken
LookupPrivilegeValue "", "SeShutdownPrivilege", mLUID
mPriv.PrivilegeCount = 1
mPriv.Privileges(0).Attributes = SE_PRIVILEGE_ENABLED
mPriv.Privileges(0).pLuid = mLUID
' enable shutdown privilege for the current application
AdjustTokenPrivileges hToken, False, mPriv, 4 + (12 * mPriv.PrivilegeCount), mNewPriv, 4 + (12 * mNewPriv.PrivilegeCount)
End Sub
' Shut Down NT
Public Sub ShutDownNT(Force As Boolean)
Dim ret As Long
Dim Flags As Long
Flags = EWX_SHUTDOWN
If Force Then Flags = Flags + EWX_FORCE
If IsWinNT Then EnableShutDown
ExitWindowsEx Flags, 0
End Sub
'Restart NT
Public Sub RebootNT(Force As Boolean)
Dim ret As Long
Dim Flags As Long
Flags = EWX_REBOOT
If Force Then Flags = Flags + EWX_FORCE
If IsWinNT Then EnableShutDown
ExitWindowsEx Flags, 0
End Sub
'Log off the current user
Public Sub LogOffNT(Force As Boolean)
Dim ret As Long
Dim Flags As Long
Flags = EWX_LOGOFF
If Force Then Flags = Flags + EWX_FORCE
ExitWindowsEx Flags, 0
End Sub

'In a form
'This project needs a form with three command buttons
Private Sub Command1_Click()
LogOffNT True
End Sub
Private Sub Command2_Click()
RebootNT True
End Sub
Private Sub Command3_Click()
ShutDownNT True
End Sub
Private Sub Form_Load()
'KPD-Team 2000
'URL: http://www.allapi.net/
'E-Mail: KPDTeam@Allapi.net
Command1.Caption = "Log Off NT"
Command2.Caption = "Reboot NT"
Command3.Caption = "Shutdown NT"
End Sub
XLYT 2002-12-23
  • 打赏
  • 举报
回复
关键问题在于你的机器是否支持ATX。
ggto 2002-12-23
  • 打赏
  • 举报
回复
ExitWindowsEx

VB声明
Declare Function ExitWindowsEx Lib "user32" Alias "ExitWindowsEx" (ByVal uFlags As Long, ByVal dwReserved As Long) As Long
说明
退出windows,并用特定的选项重新启动
返回值
Long,非零表示成功,零表示失败。会设置GetLastError
参数表
参数 类型及说明
uFlags Long,指定下述一个或多个标志(用OR运算符合并到一起)
EWX_FORCE 强迫中止没有响应的进程
EWX_LOGOFF 中止进程,然后注销
EWX_SHUTDOWN 关掉系统电源(如果可能的话,ATX电源就可以)
EWX_REBOOT 重新引导系统
EWX_SHUTDOWN 关闭系统
dwReserved Long,保留,设为零
注解
这个函数调用后会立刻返回,系统关闭过程是在后台进行的。注意先中止自己的应用程序,使关闭过程更显平顺。当然,您的进程必须有足够的优先权,否则也不能执行这种操作

孔博士 多媒体电子教室 说明书 2007.2 目 录 第一章 产品介绍 2 第二章 安装与注册 2  2.1 系统需求 2  2.2 设置网络协议 2  2.3产品安装 2  2.4 跨网段路由器的安装 2  2.5 试用与注册 错误!未定义书签。 第三章 学生机端的使用 2  3.1 学生机界面 2  3.2 学生机的管理与设置 2  3.3 电子举手 2  3.4 远程消息 2  3.5 自动接收 2  3.6 文件提交 2  3.7窗口显示模式 2 第四章 教师机端的使用 2 第五章 常见问题解答 2 第一章 产品介绍 多媒体网络教室既无硬件版教学网投资大、安装维护困难、图像传输有重影和水波纹以及线路传输距离限制之弊病;同时又克服了其他同类软件版教学网广播效率低、语音延迟大、操作复杂、稳定性兼容性差等方面的不足。 多媒体网络教室经过严格的软、硬件测试过程,全面支持 Windows 系列操作系统,包括 Windows 9X、Windows Me、Windows NT 4.0、Windows 2000、Windows XP以及 Windows RPL/PXE 无盘工作站,支持跨网段校园网教学,对各种网卡、声卡及显卡都能体现良好的性能,不会出现任何不稳定迹象,是一套集易用性好、兼容性强、稳定性高于一身的教学系统。 多媒体网络教室具有以下特点: 班级模型可根据教室不同情况随意拖动更改,并自动保存。 屏幕广播效率极高,尤其在网络条件较差时亦能体现出良好的性能;可以根据网络条件调节网络补偿强度,根据广播内容调节广播及录制效率,使广播达到最佳效果;可以广播多媒体课件。 语音广播, VCD 广播可以达到学生机与教师机同步,无任何延迟。 当教师在未锁定学生机键盘、鼠标情况下广播或回放时,学生可以利用智能滚动的窗口模式接收广播,此模式可以使学生轻松地跟着教师进行同步操作,边看边练习,使学习由被动转为主动。 教师广播教学和语音教学时允许学生发言,并可方便地切换发言学生;可随时方便地使一组学生加入或退出教学行列。 巧妙的将学生演示与监控转播结合在一起,使教师与学生的交互更加自然、灵活,遥控时教师可以与被遥控学生协同工作。 屏幕录制与电子教鞭结合使用可以实现电子备课。 文件分发功能强大且界面相当易用,可以定义宏目录。 分组教学功能可将学生分为几个小组,有每个小组自行进行教学,有学生组长主动代替教师,对学生组成员进行广播教学、语音教学等各项功能。 语音讨论功能可以将全班学生分成同一个组或分成几个组进行课堂上的讨论,每个组相互不干扰。 文件提交功能可以收集学生所做的作业,方便老师操作。 电子点名功能方便老师统计学生上课考勤情况。 教师可通过视频直播功能将实时视频信号通过网络同步传输给所有学生机。 能从根本上解决跨网段教学。 多媒体网络教室由教师机、学生机、路由器软件所组成,具体功能为: 教师机:广播教学、语音教学、语音对讲、学生演示、监控转播、屏幕录制、屏幕回放、黑屏肃静、网络影院、文件分发、电子教鞭、班级模型、系统设置、远程命令、远程设置、远程消息、分组教学、语音讨论、清除举手、文件收集、电子点名 视频直播 清除未登录学生机、查看学生属性、系统锁定、可选窗口显示模式。 学生机:电子举手、远程消息、窗口接收广播、作业提交、屏幕回放、可选窗口显示模式。 路由器:具有组播转发功能,在需跨越多个物理网段进行教学时可选择安装。 第二章 安装与注册  2.1 系统需求 教师机: 最低配置:CPU Pentium 166 以上,内存 32M 以上,显卡 1M 显存以上,声卡全双工。 推荐配置:CPU Celeron 400 以上,内存 64M,显卡 2M 显存,声卡全双工并带输出回录功能(能录制自身播放的 WAV 文件)。 学生机: 最低配置:CPU Pentium 133 以上,内存 16M 以上,显卡 1M 显存以上,声卡全双工。 推荐配置:CPU MMX166,内存 32M,显卡 2M 显存,声卡全双工。 网络:   10/100兆共享或交换网络均可。 注:1.正式版还需加密狗一只,插入教师机并口处。 2.在Windows NT 4.0 环境下进行VCD广播时,所需显卡指标相对较高。  2.2 设置网络协议 多媒体网络教室需 TCP/IP 协议的支持。如果网络有 Windows NT 4.0 或 Windows 2000 服务器,并且服务器上安装有 DHCP 服务,此时学生机网卡所绑定的 TCP/IP 协议的设置上可以设为自动获取 IP 地址。如果网络没有服务器或服务器上没有安装 DHCP 服务,此时网络所有计算机的网卡所绑定的 TCP/IP 协议的设置上必须指定一个固定的 IP 地址。具体的设置请咨询您所使用的网络的网络管理员。 设置参考: 1、打开控制面板的网络设置项,将 TCP/IP 协议添加到网络组件(如下图),再选择与网卡绑定的 TCP/IP 协议。 2、在 TCP/IP 属性页设置正确的 IP 地址,注意不要使 IP 地址重复,设置完成后重新启动计算机。 注: TCP/IP 设置完成后请用 PING 命令验证网络是否连通,如网络不通请尝试检查相应网络设备、重新安装 TCP/IP 协议等手段来解决问题。  2.3产品安装   教师机的安装 1. 插入安装光盘后会自动运行安装程序,进入图形安装界面,按提示进行安装,安装程序会自动检测未安装的组件并进行安装(包括加密狗驱动的安装)。 2. 选择安装部件:教师机。 3. 按照安装提示完成安装。   学生机的安装 1. 插入安装光盘后会自动运行安装程序,进入图形安装界面,按提示进行安装,安装程序会自动检测未安装的组件并进行自动安装。 2. 选择安装部件:学生机。 3. 按照安装提示完成安装。 注:学生机与教师机不能安装于同一台机器。  2.4 跨网段路由器的安装 如果您需要在两个组播不通的网段间使用多媒体网络教室,就必须在以 Windows NT 作为网关的机器上安装路由器软件,安装方法如下: 1. 使网关的两块网卡分别对应不同的网段,并将各网段的学生机设置网关为相应网段的网关网卡IP地址。 2. 在网络属性服务添加RIP服务。添加后用Route Print命令应能够打印出正确的路由信息了。 3. 在网关机器上运行多媒体网络教室安装程序,选择安装路由器软件,完成安装。 4. 在网络属性协议添加协议,选择从软盘安装,将路径指定为多媒体网络教室路由器软件安装路径下的 Drivers 目录,安装完毕后重新启动服务器。 5. 运行组播路由器程序。选择启动按钮,此时应显示启动正常等信息。此时安装过程即告完毕,教学网已可跨网段使用了。 第三章 学生机端的使用  3.1 学生机界面 学生机软件安装完毕后,屏幕右下角会出现一电脑图标,如该图标为黑色 ,表示该学生机未登录上教师机。如为蓝色 ,表示教师机已启动,该学生已登录上教师机。 该图标上点击右键,会出现如下菜单: 学生机在分组教学时,学生组长的界面会根据相应变为教师机执行此功能的界面。  3.2 学生机的管理与设置 为方便系统管理员进行产品安装与系统管理,在学生机端可以按组合键 Ctrl + Alt + Shift + F10 来退出学生机程序。 在学生机端按组合键 Ctrl + Alt + Shift + F11 ,会弹出如下对话框: 学生频道设定可以设定学生机频道号,通过设定教师机与学生机频道号可以使处于同一网段的不同班级上课互不干扰,实现多个班级上课(初始频道号默认为 0 频道)。绑定地址是指在学生机存在多个网卡时选择绑定哪个网卡的 IP 地址。检测周期可以指定学生机与教师机检测连接的最大时延,默认为 10 ,即在 10 秒内学生机与教师机未检测到有任何连接则认为该学生机断线。  3.3 电子举手 学生在听课过程可以使用电子举手请求教师回应。 学生登录后在右键菜单选择电子举手或按 Scroll Lock 键即可发出举手信息。  3.4 远程消息 在右键菜单选择远程消息后出现如下对话框: 学生可以在输入框输入文字来同教师进行交流,输入文字后敲回车键即可。也可以通过下拉框选择系统提供的默认文字,并敲回车键。  3.5 自动接收 正常条件下,学生机软件只要运行,就会自动登录系统,同时自动检测教师机是否进行操作(如屏幕广播、VCD 广播、屏幕监控、屏幕回放、学生演示、文件分发、黑屏肃静等等)。如正进行以上操作,则学生机自动接收该操作。学生机在接收屏幕广播时,如果教师未锁定学生机键盘鼠标,学生就可以用窗口方式接收广播(窗口可设置为智能滚动、自由滚动、缩放显示),该功能的详细说明请参见?窗口显示模式?。此时学生可在接收屏幕广播的同时进行其他操作,例如可边参看教师的操作边跟着学操作。  3.6 文件提交 当教师机设定可以文件提交后,学生方可使用文件提交功能。 单击学生机的右键,选择"文件提交" 则会出现如下的对话框: 单击第一个按钮,将会出现供您选择的文件或文件夹。 选择要提交的文件后,任务栏将会出现您要提交的文件。 单击第二个按钮,则供您选择的将是文件夹。 单击第四个按钮,则您选择的文件或文件夹将会被提交到教师机设定的目录下。 提交完成之后教师机可以右击屏幕右下角的图标或班级模型的空白区,选择"察看提交文件夹",则教师可以察看学生所提交的文件。  3.7窗口显示模式 在全屏接收屏幕广播时,如果教师未锁定学生机键盘鼠标,学生就可以在屏幕广播窗口上点击鼠标右键,在图所示的弹出菜单除去全屏显示选项后即变为窗口方式接收广播。 学生在此模式下可以选择智能滚动、自由滚动、缩放显示,这样学生在操作的同时可以方便地观看教师示范。 自由滚动 此模式下,屏幕广播的内容为1:1显示,接收者可按住鼠标左键拖动画面,这样窗口显示内容会根据鼠标移动而改变。 缩放显示 此模式下,接收者可看到屏幕广播的全部内容,但通常不为1:1显示。 智能滚动 此模式下,屏幕广播的内容为1:1显示,窗口显示的内容能根据屏幕广播或录制时教师的鼠标移动情况而做相应滚动,这样就不会出现在自由滚动模式下有时会看不到教师的操作以及在缩放显示模式下看不清楚屏幕广播具体内容的情况。  3.8屏幕回放 如果教师机将屏幕录制文件共享或发到学生机上,则学生机可以打开该文件,这样便于学生的复习。 单击学生机右键,选择"屏幕回放" 则会出现如下的对话框: 则您可以选择要播放的录制文件。 在播放的过程,您可以暂停或停止。 第四章 教师机端的使用 4. 1教师机的登陆 运行教师机程序后会出现登录对话框它要求您输入登录密码与频道号,默认登录密码为空,默认频道号为0,教师机在系统设置的频道号或上次登录的频道号,系统安装完毕后频道号为0,频道号可设置为0~99。 您可以在系统设置的其他设置设定登录密码,网络设置设置频道号。 如登录时未检测到加密狗插在计算机并口处,则系统弹出对话框,自动变为5用户演示版,只能有5台学生机登录。 如果检测到并口处有加密狗,则本系统的用户数等于加密狗的授权用户数。 如产品试用期仅剩余不足1小时,本系统会自动提示您多媒体网络教室需要注册的信息。如试用期满尚未注册,本系统自动转化为5用户演示版。 4.2 教师机界面 教师机运行后,会出现上图界面: 各数字号码分别代表不同分区,各分区依次为: 1. 标题区 2. 班级模型显示区 3. 信息区 4. 音频设定区 5. 远程消息区 6. 对话输入区 7. 图形按钮区 信息区会显示当前时间,目前已登录人数/班级模型总人数。 在班级模型显示区选择学生机(如不选择任何学生机则默认为对全体操作),然后点击图形按钮区的图形按钮执行相应操作,您也可以在班级模型显示区点击右键通过弹出菜单执行相应操作。图形按钮区按钮为亮黑色时表示此功能可以使用,为灰色时表示此功能不能使用,为凹下状态表示该功能正在执行。当按下某按钮执行某一功能后,再按 Break 键使这一正在执行的功能停止执行。可以使用系统设置下热键设置的各功能热键来执行相应功能,例如:当教师机未进行广播教学时,按 CTRL+ALT+F6 可以进行广播教学;当教师机已经进行广播教学时,按 Break 键可以停止广播教学。 屏幕右下角有一小图标,当教师机界面隐藏时可双击该图标,屏幕就会显示教师机主界面。也可以利用屏幕最上方的弹出式工具条的窗口按钮来恢复教师机主界面(见下节)。 4.3右键菜单 教师机启动后,在班级模型区可点击鼠标右键弹出操作菜单,不同的点击位置、所选择学生机的数量和状态不同,都会使弹出的菜单不同。 若此时教师未进行任何操作,可分为如下三种情况: 在班级模型空白区点右键可弹出如下菜单: 在单个学生机图标处点右键可弹出如下菜单: 如选择多个学生机图标点右键可弹出如下菜单: 如此时教师已经进行了操作,则可根据点击位置与具体的选择分为多种情况: 在教室模型空白区点右键弹出菜单包括允许与此操作同时进行的操作与此操作的终止选项。如屏幕广播时菜单如下: 在单个学生机点右键弹出菜单与选择多个学生机的右键菜单会根据具体情况有变化,具体参见各功能的说明。 在弹出菜单点击相应的选项就可执行对应操作。 4.4 弹出式工具条 启动教师机后,教师机主界面被最小化时,将鼠标移动到屏幕顶部(右半边)时,会出现以下工具条: 其窗口按钮可显示教师机主界面,教师机主界面出现后,此工具条将不会弹出;设置按钮指系统设置;复位按钮可以结束当前教师机任何操作使其复位;锁定按钮可锁定此工具条。 您可以利用此工具条方便的执行功能,例如在屏幕广播时如需调用电子教鞭,只要将鼠标移动到屏幕顶部(右半边)使工具条弹出,点击教鞭即可调出电子教鞭。 注:当启用电子教鞭时工具条不会弹出。 4.5 系统功能的执行方式 可以通过4种使用方式来执行多媒体网络教室功能: 1. 通过在班级模型区弹出右键菜单执行。 2. 通过图形按钮区点击图形按钮执行。 3. 通过弹出式工具条执行。 4. 通过系统热键执行(参见"热键设置")。 4.6 班级模形的建立与维护 第一次安装教师机后班级模型为空,使所有的学生机都登录到教师机则班级模型自动建立,您这时再根据您教室和班级的具体情况进行调整就相当方便。 学生机登录后会在班级模型区以图标显示出来,您可以通过系统设置的网络设置的学生名称显示项来选择显示Windows登录名或学生名称或学生机机器名,默认显示学生名称。显示学生名称时可以点某一学生机图标再按F2键手工更改该学生名称。选择其他两种显示项时不允许更改名称。 学生登录后会自动分配一座位,可以手工拖动学生机图标到您所需要的地方,以适应您的教室形状与排列,您可以在系统设置的网络设定选择座位与机器名绑定或与IP地址绑定,如果您学生机机器名一般不改变,则建议与机器名绑定,如果学生机IP地址一般不改变,则建议与IP地址绑定,默认与机器名绑定,如与机器名绑定,学生机IP地址改变时学生机图标仍为原图标,反之亦然。 可在班级模型区点右键进行锁定图标、按名称或按状态排列图标、重排图标、对齐图标等操作。选择多个学生机后,点击对齐图标会出现如下菜单: 其当选择两个以上学生机时,对齐图标只允许进行水平对齐与垂直对齐等操作;当选择三个以上学生机时,对齐图标还允许进行水平等距与垂直等距等对齐图标操作。选锁定图标后各学生机位置在教室模型将不能被改变,即不允许进行拖动、对齐学生机图标等操作。 当需要精确移动学生机图标时,可以选择这些学生机后,再用组合键 Alt + ↑(↓←→) 键按 1 像素位的精度来移动图标,用组合键 Shift + Alt + ↑(↓←→) 键按 10 像素位的精度来移动图标。 当您确认现有的班级模型时,就可以保存模型。每次退出教师机时程序会自动保存教室模型于默认的模型文件。点击?班级模型?按钮,会出现一短菜单: 您可以选择保存以使现在的排列保存为默认的模型文件(模型文件在教师机安装目录下),您也可以选择另存为...来自己指定所要保存的*.cls文件,点击打开...后选择对应的.cls文件可加载您所保存的班级模型。您可以根据不同的班级情况编辑多个班级模型,并将它另存为...多个.cls模型文件,在不同的班级上课时打开...与此班级相对应的模型文件即可。 在班级模型可通过拖放鼠标来选择一组学生,也可以按Shift键 4.7 广播教学 广播教学功能可以将教师机屏幕和教师讲话传送至学生机。 在班级模型选择学生,点击广播教学(或按系统热键),可开始广播教学。如广播教学学生机接收出现异常(如屏幕显示出现缺失),可按组合键 Shift + F5 来刷新学生机屏幕显示的内容。 • 如何广播带有视频文件的课件? 当需要通过屏幕广播带有视频的课件(如《走遍美国》)时,教师机的配置需要在 Celeron 400 以上,建议将教师机的显示模式设置为 16 位色,并要进行以下配置:首先需要在系统设置将广播和录制效率设置为高广播及录制效率,将传输补偿设为低网络补偿强度;再运行开始菜单下的视频加速设置程序,将出现如下对话框: 选不允许使用DCI/DirectDraw视频加速功能复选框,确定后即可进行视频课件广播。 如何在广播教学过程使某学生开始发言、动态切换发言学生、停止发言? 广播教学过程,通过选定一个已登录的学生机图标,点击右键弹出菜单: 点击开始发言可以请任一已登录的学生进行发言,此时所有接收者在接收到教师广播教学的同时接收该学生发言。只需对其他已登录学生进行同样操作就可以切换发言学生,先前发言学生自动停止发言。如只需停止学生发言,可在当前发言学生机图标上点击右键,选择停止发言即可。 • 广播过程如何使部分学生机开始或停止接收广播? 广播教学过程,可以随意控制任意学生机停止或开始接收广播。已停止接收广播的学生机在进行如下操作后将自动接收广播。操作方法为选择您想要操作的学生机,点击右键,弹出如下菜单: 点击开始接收广播即可。 同样的方法可以控制正在接收广播的学生机停止接收广播。 • 如何切换带语音与不带语音广播? 在系统设置选择屏幕广播同时广播语音,可在屏幕广播的同时广播语音(默认已选)。 • 如何在广播时锁定或不锁定学生机键盘鼠标? 在系统设置选择全屏广播时锁定学生机键盘鼠标可使学生机在接收广播时鼠标键盘无效。 • 如何使学生边接收广播边操作? 选择系统设置的学生机以窗口方式接收屏幕广播时,学生机会统一以窗口显示屏幕广播,此时不锁定学生机键盘鼠标,以方便学生边看教师演示边操作。 4.8 电子教鞭 电子教鞭用来辅助教师在进行屏幕广播或录制时进行辅助指导,教师可利用它进行强调重点、进行注解等操作。也可单独使用配合投影仪进行电子板书或屏幕注解。 您可以在开始菜单找到电子教鞭链接并运行它,也可以在教师机的弹出式工具条点击教鞭按钮来执行它,执行后会出现如下工具箱,并冻结当前屏幕,您可以使用工具箱的工具直接在屏幕上绘图,隐藏或关闭电子教鞭后绘制内容将自动清除,您可继续进行正常操作。 闪烁、透明选项允许您对应用电子教鞭在屏幕上所画内容的显示方式进行设置。 其余功能与 Windows 画图类似(包括铅笔、橡皮擦、填充、直线、单向箭头、双向箭头、曲线、矩形框、画椭圆、多边形、注释框、文本、撤消、线条粗细、前景色、背景色),可按住 Shift 键拖动鼠标来画正交线、正方形和圆。 4.9 语音教学 语音教学功能可以将教师机麦克风或其他输入设备的声音传送到学生机。语音教学后学生就可以听到教师声音。 点击语音教学可以开始语音广播。 • 如何在语音教学过程使某位学生开始发言、动态切换发言学生、停止发言? 点击开始发言可以请该学生发言,其他同学可以接收到该学生发言,只需对其他已登录学生进行同样操作就可以切换发言学生,先前发言学生自动停止发言。如只需停止学生发言,在正在进行发言的学生机图标上点击右键,选择停止发言即可。 • 如何在语音教学过程使部分学生机开始或停止接收语音教学? 语音教学过程,可以控制任何已登录或未登录的未接收语音教学的学生机开始接收语音教学,操作方法为在您想操作的学生机图标上点击右键, 选择开始接收语音教学即可。 同样的方法可以控制正在接收语音教学的学生机停止接收语音教学。 • 语音教学时如何设置学生机屏幕显示? 在系统设置的一般设置可以设定语音教学时是否在学生机显示黑屏窗口。 • 如何在语音教学时锁定或不锁定学生机键盘鼠标? 在系统设置的一般设置可以设定语音教学时是否锁定学生机键盘鼠标。 4.10 语音对讲 教师可以选择任意一名已登录学生与其进行语音对讲。除教师和此学生外,其他学生而其他的学生不会受到干扰。 • 如何开始与动态切换语音对讲? 单击需要单独与其进行对讲的学生,点击语音对讲即可。通过在其他已登录学生机图标上点击右键,弹出下图所示菜单,选择开始语音对讲可使对讲对象切换为该学生。 4.11 学生演示 教师可以将某一学生的操作演示给其他所选定的学生,在演示过程,教师可以遥控此机器并同时演示给其他学生。 在班级模型显示区选定需要进行演示操作的一台学生机,点击学生演示,此学生机的屏幕将广播给其他学生机。如学生演示其他学生机或教师机接收出现异常(如屏幕显示出现缺失),可按组合键 Shift + F5 来刷新屏幕显示的内容。 • 如何动态切换演示机与停止学生演示? 某台学生机演示时教师可以通过在其他一台学生机上点击右键选择开始学生演示来切换为此学生机进行演示。在正在进行演示的学生机上点击右键选择停止学生演示来停止该学生进行演示。 • 学生演示时如何使部分学生停止接收学生演示与开始接收学生演示? 某台学生机演示时教师可以通过在其他学生机上点击右键停止接收学生演示来使学生机停止接收学生演示。选择开始接收学生演示来使学生机开始接收学生演示。 • 如何设置学生演示时是否允许语音对讲? 如果系统设置的一般设置学生演示同时进行语音对讲选项已打开(默认已打开),则学生演示的同时,此学生机可与教师机进行语音对讲,此对讲能被其他学生听见。 • 如何遥控演示机? 学生演示过程,教师可以在学生演示屏幕上点击右键 选择遥控辅导接管学生机操作(具体操作参见"监控转播")。 4.12监控转播 教师机可以监视所选学生机的屏幕(默认为所有学生),每屏可监视多个学生。您还可以在系统设置设置教师机监控的同屏幕各窗口间、屏幕与屏幕间的切换速度。 选择需被监控的学生,点击监控转播, 按工具条的前一页与后一页可手工切换被监视的一组学生机的屏幕,按下自动滚屏可在切换周期到达后自动切换到下一组被监视的学生机屏幕(切换周期可在系统设置的一般设定设定)。重排窗口可使多窗口按顺序排列,智能滚动、自由滚动、缩放显示可使本屏幕所有窗口进行相应设置,停止监控可退出屏幕监控功能,也可按热键退出(见系统设置的热键设置)。窗口可显示教师机主界面。锁定工具可以锁定此工具条。如监视过程监视窗口出现异常(如屏幕显示出现缺失),可按组合键 Shift + F5 来刷新屏幕显示的内容。 如何改变同屏监看学生机的数目? 在系统设定的一般设定监看设定栏可以改变同屏监看数目,可供选择的有1,4,9,16屏监看。 • 如何在监控过程使某台学生机屏幕转播给其他学生? 监视过程在某一台学生机显示窗口点击右键,点击转播,它允许您选择将该学生屏幕转播给部分学生,可通过Shift键或Ctrl键选择。默认转播给全体学生。 • 如何遥控被监视学生? 在上图的右键弹出菜单选择遥控可遥控此台被监视的学生机。 • 在遥控时如何与被遥控学生协同工作? 当您遥控某台学生机时,您的屏幕会显示学生机屏幕的内容,您可以操作该学生机。如果您将鼠标移至屏幕最上方右边; 学生锁定按钮可以使教师控制是否让此学生机的学生来操作其鼠标与键盘,当此按钮按下时,此学生机受教师控制,学生不能操作,当此按钮弹起时,学生可操作此学生机(此时建议教师不要移动鼠标、敲击键盘),因此可以使教师方便的对学生进行指导。 只要在遥控过程点击电子教鞭按钮即可调出电子教鞭功能,当不进行学生锁定时学生也可以调用电子教鞭功能。 4.13 屏幕录制 教师机可以将本地的操作和讲解过程录制为一录像文件,供以后回放,教师可实现电子备课。可以在系统设置的一般设置选定广播教学同时录制来使广播过程录制为一可回放文件。 点击屏幕录制,出现一对话框,选择将录像文件存放的位置(默认在"我的文档"),点击保存就开始录制。 4.14 屏幕回放 教师机可以将已录制好的含有操作与讲解的录像文件进行回放,回放过程自动进行广播。 点击屏幕回放,出现一对话框,教师机可以选择所想要播放的录像文件播放。播放过程广播给学生,播放过程可点右键弹出菜单,可全屏显示,可关闭窗口退出屏幕回放。教师在回放过程能进行其他操作。 4.15 文件分发 文件分发允许教师将教师机的目录或文件指定发送至所选学生机的某目录下,若该目录不存在则自动新建此目录;若盘符不存在或路径非法则不允许分发;若文件已存在则自动覆盖原始文件。分发文件前请确认学生机磁盘空间足够,否则空间不足的学生机将无法接收分发文件。 具体操作为:在文件夹与文件目录选定需要分发的文件,将其拖拽至下面的发送区,此时这些文件状态为未分发,在发送系统菜单上选择传输下拉菜单,选择发送到...,然后输入学生机目录后发送即可。也可直接点击发送将文件传送至上次发送目录。 在待发送的文件栏点击右键,您可以通过此菜单将所选文件发送到上次发送目录(默认)、缺省发送目录、自定义目录、宏目录(见下面说明),并且可以对任务列表文件进行删除以及清除列表的已分发文件。 点击工具条的选项, 您可以添加、编辑或删除宏,点击添加宏,输入或选择路径,所添加的宏目录会在列表框显示、您可以选它并点击编辑宏或删除宏来对它进行编辑或删除。程序会在界面菜单传输下的发送到...的下拉列表列出此处设定的宏目录。   4.16 文件提交 文件提交允许学生将学生机的目录或文件指定发送至所选教师机的某目录。通过文件提交学生可以将老师布置的作业提交给老师。 在班级模型的空白区单击"右键",选择"文件提交"。 4.17 网络影院 网络影院支持几乎所有常见的媒体音视频格式: 1. Windows Media 文件:*.ASF。 2. Windows 视频文件:*.AVI ,*.WMV。 3. VCD文件:*.DAT ,*.MPG ,*. MPEG。 4. DVD文件:*.VOB 。 5. Real 文件:*.RM ,*.RMVB。 6. AVI 文件:MPEG-4 ,DIVX。 7. 音频文件:*.MP3 , *.WAV。 点击网络影院 ,会打开网络影院播放器,如下图: • 点击打开,出现如下对话框: 可以选择视频文件进行播放,在播放过程可以进行切换全屏与窗口、快进、快退、拖动,暂停、停止等操作,可切换循环播放与单向播放,可以调节音量与平衡。 播放过程如何切换全屏播放与窗口播放? 窗口播放可按全屏或双击播放窗口切换为全屏播放。全屏播放时可双击播放窗口或按 Esc 键切换为窗口播放。 • 如何选择多个视频文件进行播放以及如何切换播放文件? 选择播放文件时,可以通过 Shift 键与 Ctrl 键选择多个文件播放时,播放面板下拉框内会显示所有选择节目列表,播放器会逐一进行播放,您可以在下拉框内选择任意文件或点击上首、下首来播放您需立即播放的文件,它会断当前播放的节目转而播放您选择的节目。 • VCD按钮有何用处? 如果您的光驱有 VCD 光盘,您可以直接点击 VCD 按钮来播放该 VCD ,系统会自动搜索并打开光盘可以播放的所有文件。 • VCD广播时如何对学生机接收进行控制? 在系统设置的一般设置可选择 VCD 广播时是否锁定学生机键盘鼠标以及学生机以全屏还是窗口方式接收 VCD 广播,教师可以通过这两项设置来控制学生在接收 VCD 广播时是否允许有进行其他操作。 • VCD广播过程如何使部分学生机开始或停止接收VCD广播? VCD 广播过程,可以控制任何已登录或未登录的未接收 VCD 广播的学生机开始接收 VCD 广播,操作方法为在您想操作的学生机图标上点右键,点击开始接收网络影院即可。 同样的方法可以控制正在接收 VCD 广播的学生机停止接收 VCD 广播。 4.18 黑屏肃静 教师可以执行黑屏肃静来禁止学生的任何操作,并显示一静态图片。 4.19 分组教学 分组教学功能可将学生任意分组。通过教师机,教师可以在小组内指定一个主动方代替教师,对学生进行广播教学、语音教学等各项功能。具体操作方法如下: 选定两个或两个以上已登录的学生机,点击分组教学按钮,就可以开始分组教学, 在弹出的窗口的主动方选择一个学生来代替教师进行教学,当选定好主动方后,其余该组的成员就会自动变为被动方。在功能选择下拉框选择好教师希望主动学生所做的功能后,点击开始按钮,这时,主动方就会开始行使教师的权利对被动方进行教学。例如,选择文件分发功能后,主动方会显示原来教师机点击文件分发后弹出的窗口,而被动方还会显示出原来学生机文件分发后弹出的窗口。要停止分组时,点击"停止"按钮即可。 再次进行分组时,选定其他两个或两个以上已登录学生,点击鼠标右键, 在该菜单点击"开始分组教学"即可进行另一个分组操作,其他操作步骤同第一次分组。 再次对其他已登录学生进行同样操作,就可以实现多个分组,并且进行不同的功能操作。 4.20 电子点名 教师可以通过让学生签到来实现电子点名。 单击图形按钮区的"电子点名"按钮,单击"开始"按钮,则学生机会出现一个对话框:在学生输入姓名后,单击"确定"按钮,则教室机的"学生命"一栏将会显示学生的姓名,"签到状态"一栏将显示"已签到",表明该学生已经签到了。 单击"应用"按钮,则教室机的主界面的学生机的名称将会变成学生签到的姓名。 单击"保存为"按钮,则可以把该列表保存起来。 4.21 远程命令 远程命令包括远程命令、本机运行、远程运行、远程重启、远程关机、远程开机和远程退出。 4.21.1远程开机 远程开机可以在教师端控制学生端机器的开启,但必须要求学生机网卡与主板 BIOS 支持。具体条件为: • 学生机网卡支持远程唤醒功能,可参阅网卡说明书加以确认并按说明连接与主板的连接线。 • 主板支持远程唤醒功能,可进入 CMOS 设置,进入电源管理项,检查是否有 WAKE ON LAN 选项并将其设置为 ENABLE。 4.21.2 远程关机及重启 教师机可以控制学生机的关机,此功能可以方便地管理学生机,避免重复性劳动。 选择对应的学生机,点击远程命令, 您可以选无任何提示强行关闭,这种情况下将不会等待学生机退出当前运行程序而立即关闭。 教师机可以控制学生机的重启,此功能可以方便地管理学生机,避免重复性劳动。 选择对应的学生机,点击远程命令,选择远程重启 您可以选无任何提示强行关闭,这种情况下将不会等待学生机退出当前运行程序而立即重启。 4.21.3 远程退出 远程退出可以在教师端控制学生机程序的退出,此功能可方便管理员调试多媒体网络教室的安装。学生端重新运行学生机程序即可重新登录。 选择需要退出的学生,点右键选择远程退出,这些学生机程序则退出。 4.21.4 本机运行与远程运行 选择对应的学生机,点击远程命令后再选择远程运行,会出现远程命令的命令列表,您可以选择一命令直接执行。所选的学生机将执行此命令。 点击远程命令后再选择本机运行,会出现远程命令的命令列表,您可以选择一命令直接执行。教师机将执行此命令。 4.21.5 远程命令 您可以在教师机上控制学生机命令的执行。 选择对应的学生机,点击远程命令,选择远程命令...会出现一些已生成的命令, 您可以点击新建按钮新建命令,填入命令说明、命令对应的路径、命令参数(可选)并选择命令窗口打开方式,然后保存即可新建一命令。在命令列表命令名称,点击远程运行可以在所选的学生机上远程执行该命令,点击本机运行可以在本机执行该命令。您可以选在学生机目录自动搜索命令,它在您指定路径无法找到该命令文件时会自动在学生机目录查找。 举例说明:如果您需要远程执行 Format D: 命令时,可新建一命令: 名称指定为:格式化 D: 盘 路径指定为:C:\Windows\Command\Format.com 参数指定为:D: 远程执行此命令就可以格式化学生机 D: 盘。 4.22 系统设置 远程命令包括远程命令、本机运行、远程运行、远程重启、远程关机、远程开机和远程退出。如图所示: 4.22.1一般设定 一般设定包括屏幕广播、VCD 广播、语音教学、屏幕监看的设定。 默认设置如上图,更改后点击默认按钮可以恢复一般设定的默认值。 屏幕广播设定有以下选项: 1. 屏幕广播同时广播语音。 2. 广播教学同时录制:将广播过程录制为一可回放文件。 3. 学生机以窗口方式接收屏幕广播:此时不锁定学生键盘。 4. 全屏幕广播时锁定学生机键盘鼠标。 5. 学生演示及遥控时进行语音对讲:学生演示时允许教师与此演示者讲话,其他学生能听到他们的对讲。 VCD 广播设定有以下选项: 1. 学生机以窗口方式接收 VCD 广播。 2. VCD 广播时锁定学生键盘鼠标。 语音教学设定有以下选项: 1. 学生机显示黑屏窗口。 2. 锁定学生机键盘鼠标。 监看设定可设置: 1. 同屏监看数目:默认为4屏,最大可为16屏。 2. 切换间隔:教师机同屏幕各学生机窗口依次启动监看的时间间隔,可以在100~2000毫秒之间(切换间隔时间越小,所需要的网络条件越好) 3. 停留时间:自动滚屏时教师机每个学生屏幕的停留时间,可以在2~60秒之间。 4.22.2 高级设置 高级设置包括广播及录制效率的设定、音频设置、举手设置、班级模型设置(包括学生座位与名称显示)。 更改后点击默认按钮可以恢复高级设置的默认值。 广播录制选项: 可以根据广播及录制时屏幕画面切换的快慢来设定广播及录制效率,若屏幕画面切换快(如广播带有视频的课件,如《走遍美国》、Authorware 课件、Flash 课件),则可设定为高广播及录制效率,若屏幕画面切换慢(如广播 Office 教学),则可设定为低广播及录制效率。若屏幕画面切换速度等(如广播 Photoshop 教学),则可设定为等广播及录制效率(默认值)。 音频设置选项: 可通过音频设置更改语音音质,如广播 CD 时可以选择 CD 质量以提高音质,但会占用较多的网络带宽。 可通过音频设置选择是否施加静音检查,施加静音检查可减少网络流量、可节省网络带宽,您可根据环境噪音来对环境噪音幅度进行微调。 可通过音频设置调整音屏缓冲区大小(250毫秒~1000毫秒),它可以对声音的延迟进行控制,缓冲区越小,则声音延迟越小,但缓冲区越小对网络要求越高,建议不要轻易设置。 举手设置选项: 举手设置允许在对已举手的学生操作时自动清除该学生举手标志。 班级模型选项: 班级模型选项的设置包括学生座位的设置与名称显示的设置。 学生座位可与机器名或 IP 地址绑定。如机器名固定,建议同机器名绑定,如 IP 地址固定,建议与 IP 地址绑定(默认与机器名绑定)。 名称显示是显示在班级模型学生机电脑图标下的名称显示方案,可以按 Windows 登录名、学生名称、学生机机器名显示,其学生名称可以直接在教师机界面下选该机器后按 F2 键直接更名(默认显示学生名称)。 4.22.3 网络设置 网络设置包括教师机频道号设定、本机绑定地址、断线检测周期、传输补偿设置。 先默认设置,更改后点击默认按钮可以恢复网络设置的默认值。 频道号设定可以设定教师机频道号,通过设定教师机与学生机频道号可以使处于同一网段的不同班级上课互不干扰,实现多个班级上课(初始频道号默认为 0 频道),学生机频道号在远程设置(或学生机端)设定。本机绑定地址是指在教师机存在多个网卡时指定与哪个网卡的 IP 地址绑定。断线检测周期可以指定学生机与教师机检测连接的最大时延,默认为 10 ,即在 10 秒内学生机与教师机未检测到有任何连接则认为该学生机断线。 若网络传输经常出现丢失数据包的现象(如:某些 NE2000 兼容卡等),其表现为全部或部分学生机接收广播时显示有异常(出现残块,白斑),则应使用高网络补偿强度。此时网络传输的效率会有所降低,但仍然比同类产品的效率高3倍以上。在较好的网络环境下用可以用低网络补偿强度(默认为等网络传输补偿强度),强烈建议您将以上补偿选项都试用,并根据表现结果挑选一合适的补偿强度。 若网络传输会出现错误数据包的现象(如某些 Realtek 8029 芯片的网卡),则须打开网络校验选项,否则软件工作会不正常。 4.22.4 热键设置 用户可根据自己需要更改系统热键。只需在对应处按组合键即可设置完成。默认组合键如下: 先默认设置,更改后点击默认按钮可以恢复热键设置的默认值。 按以上组合键可启动某项操作,按 Break 键停止任意操作。 4.22.5其他设置 其他设置包括系统音效的设定以及教师机登录密码与锁定教师机密码的设定。 默认设置如上图,更改后点击默认按钮可以恢复其他设置的默认值。 系统音效的设定是为学生登录、退出、举手、消息等事件选择配音方案。 教师机登录密码是运行教师机所需的密码。 锁定教师机密码是在教师上课时进行锁定屏幕所设置的密码。 4.23 远程设置 远程设置允许教师机端对学生机的属性进行设置。具体为显示设置、控制面板设置、限制设置、因特网设置、高级设置。 您可以将您的设置进行保存,设置完成后点击保存按钮在出现的对话框键入文件名后点击保存可保存当前所有设置。 您可以打开系统提供的或自己保存的*.rcf设置文件,点击打开按钮在出现对话框选择任意配置文件打开。打开后只显示各选项状态,不会自动生效,可对任意选项进行修改,修改后点击设置按钮使各选项生效。 注: 1.复选框按钮分三种状态,灰色打勾表示继承以前的选择、打勾表示此选项被选、未打勾表示此选项不选。 2.以下设置除高级设置外,其他设置只适用于 WIN9X。 3.以下设置,如设置后不能立即生效,则重启学生机后会生效。 4.23.1远程设置 显示设置可改变学生机的色彩数、分辨率以及是否允许学生设置显示属性、背景页、设置页、外观页、屏幕保护页。 4.23.2 控制面板设置 控制面板设置包含对系统、网络、密码、打印机配置属性的隐藏与显示、禁用与启用的设置。 4.23.3 限制设置 限制设置包括对系统外壳、系统注册表、MSDOS 方式的限制与开放。 4.23.4 因特网设置 因特网设置是对学生机 IE 的代理服务器选项的设置。 4..23.5 高级设置 高级设置包括对学生机广播及录制效率、网络补偿强度、学生机频道号、声音属性的设置。 学生机广播及录制效率、网络补偿强度可根据学生机的配置与具体演示内容设置,并在学生演示与监控转播时生效。详细内容请参考?系统设置?的?网络设置?。 学生机频道号的设置需与对应的教师机频道号相同。 断线周期是在学生机端衡量是否断线的检测周期,默认为10秒。 声音属性的设置是对学生机音量控制话筒及波形的设置。 4.24 远程消息 教师可以与学生进行互相交谈。每位教师或学生的发言都会记录在远程消息框。消息框还会显示学生机的登录、退出以及举手情况。 您可以在对话输入区输入您对学生的发言,您也可以通过下拉框选择您的发言,默认提供一些常用的对话。 教师的文字发言在学生机显示5秒钟后消失并记录在学生机远程消息对话窗。 4.25 系统锁定 在教学过程,教师如需暂时离开教师机而又不想使其他人操作教师机时需要进行系统锁定,您可以在屏幕右下脚 处点击右键,会弹出一个菜单:选择系统锁定,即可锁定教师机,并出现一对话窗,教师如想取消锁定需输入密码。默认锁定密码为空,可以在系统设置的密码设定设定锁定密码。 4.26 清除举手 如果想清除学生的举手标志,可以在选择有举手标志的学生,单击右键,选择清除举手,可以将举手标志清除。如果您对此学生进行了图形按钮的操作(黑屏肃静及监控除外),则系统会自动清除该学生的举手标志。 4.27 清除未登陆学生机 清除未登录学生机是将未登录的学生机图标在班级模型区清除,这时班级模型将随之改变,但它不影响学生机的登录。可以在班级模型空白处点击右键,在弹出菜单选择清除未登录学生机清除所有未登录学生机。可以选择多个未登录学生机点击右键,在弹出菜单选择清除未登录学生机清除部分未登录学生机,可以选择某一未登录学生机点击右键,在弹出菜单选择删除清除单个未登录学生机。 4.28 学生属性 可以在班级模型区选择某一学生点击右键查看该学生属性,属性内容为该学生名称、机器名称、登录名称、IP地址、网卡地址、登录状态。 4.29 视频加速程序 视频加速程序允许您设置教师机或学生机是否进行视频硬件加速,是否更改全屏播放 VCD 时的显示模式。 运行开始菜单下的视频加速设置程序(或运行安装目录下的 VideoSet.exe 程序); 选不允许使用 DCI/DirectDraw 视频加速功能复选框,确定后即可进行视频课件广播。(该设置对广播带视频文件的课件有效)。 选不允许更改全屏幕播放 VCD 时的显示模式复选框,确定后可以解决当本机显卡与 DirectDraw 全屏幕模式兼容性不好时全屏播放 VCD 的问题。 如需对学生机进行设置,可以在教师机通过远程命令的形式进行设置,命令格式如下: [Drive:] [Path] VideoSet.exe [DisableDirectDraw | EnableDirectDraw] [DisableFullScreenMode | EnableFullScreenMode] • DisableDirectDraw:不允许使用 DCI/DirectDraw 视频加速功能。 • EnableDirectDraw:允许使用 DCI/DirectDraw 视频加速功能。 • DisableFullScreenMode:不允许更改全屏幕播放 VCD 时的显示模式。 • EnableFullScreenMode:允许更改全屏幕播放 VCD 时的显示模式。 • 若未加任何参数,则弹出上图所示对话框。 例如: 使学生机不允许更改全屏幕播放 VCD 时的显示模式,可远程执行 VideoSet DisableFullScreenMode。 使学生机不允许使用 DCI/DirectDraw 视频加速功能,可远程执行 VideoSet DisableDirectDraw。 5.视频直播 教师可通过本功能将实时视频信号通过网络同步传输给所有学生机。 1. 教师机配置要求:Intel PIII/Celeron 533 以上。(建议 PIII 850 以上配置) 2. 学生基配置要求:Intel PIII/Celeron 400 以上。 本功能采用了 MPEG-4 实时压缩技术,并针对各种 CPU 进行了优化,具有传输效果好,占用带宽低的特点。通过一般的 USB 摄像头即可达到 320x240 画面大小 30fps 的效果。 注:本功能兼容所有支持微软 VFW 标准的视频捕获设备, 如 USB 摄像头,WinFast电视卡等。 教师端运行现场直播后,会出现如下主界面: 开始:开始现场直播,学生机可收到直播画面。 停止:停止现场直播。 选项:显示现场直播选项。 截取方式:分为两种:一种是:VFM截取方式,另外一种是:WDM截取方式。其,VFW格式效率比较低,而WDM效果较好,CPU占用低,但DirectX的版本须是Direct 8.0以上。 视频设置:选择不同的截取方式,视频设置的菜单不同。现以VFW为例,选择?视频设置?,则会出现如下菜单: 视频源设置主要是获取您的视频捕获设备的相关信息,在?视频格式设置?,您可以调整播放的视频的大小及格式,建议:像素深度选择IYUV。 对于WDM的视频设置是类似的。 退出:停止现场直播功能。 选项: 视频参数: 每秒帧数:每秒钟传输的画面数目。为5,10,15,20,25,30帧/秒。 同时发送音频:在传输画面的同时发送声音。 压缩参数: 画面品质:5%-100%,100%为最优画面质量,但压缩速度较慢,传输带宽占用较高。一般取值为95% 关键帧间隔:1-300,表示关键帧(Key Frame)之间具有多少预测帧,此值越小则接收端延迟越小,但传输带宽占用越高。一般取值为30。 量化器下限:5-31,高级压缩参数,决定画面的最低品质,值越大则画面质量越好,一般不要改动。 量化器上限:5-31,高级压缩参数,决定画面的最高品质,值越大则画面质量越好,一般不要改动。 视频源选项: 显示相应视频捕获设备选项页面(请参考您所使用的视频捕获设备的使用手册)。 第五章 常见问题解答 Q:多媒体网络教室支持无盘工作站吗? A:完全支持 RPL 与 PXE 无盘工作站,详见安装与注册的介绍。 Q:在Win95无盘工作站上安装并重启后,Windows无法启动报告 Command.com 非法? A:无盘工作站启动所用的 Command.com 并非 Windows 95 原配文件。使用 Windows 95 原配Command.com 替代服务器上?RPLFiles?下的相应文件即可。 Q:多媒体网络教室支持跨网段校园网教学吗? A:支持,只需安装跨网段路由器软件。 Q:多媒体网络教室支持多个班级同时上课吗? A:支持,将各班级设置为不同的频道号即可。 Q:安装程序完成并提示重新启动,但重新启动后报告文件注册失败? A:文件注册失败可能是由于您的系统缺少某些必须的文件或 DirectX Media 及 Windows Socket 2.2 (Windows 95) 升级包安装不正确造成的。请重新安装 DirectX Media 及 Windows Socket 2.2 并检查以下文件: Windows\System\ATL.dll 版本不应低于:3.00.8168 Windows\System\Mfc42.dll 版本不应低于:6.00.8447.0 Windows\System\Msvcrt.dll 版本不应低于:6.00.8397.0 Q:为什么系统设置的高级设置默认值不选择高网络传输补偿强度、高广播及录制效率和网络数据校验? A:高网络传输补偿强度是针对某些性能较低的网卡(如:某些 NE2000 兼容卡等)而采取的补偿措施,网络数据校验是针对某些特定的网络传输经常出现发送或接收错误数据包的网卡(如某些 Realtek 8029 网卡)而采取的校验措施,高广播及录制效率是在教师广播或录制时画面切换速度快的情况下(如广播带有视频的课件,例如《走遍美国》、Authorware 课件、Flash 课件)所采取的加强措施。以上这些功能非常重要,它能保障的教学稳定性、流畅性。但会使您的广播及录制效率下降5%~10%,因此如果您的网络条件较好就不要使用高网络传输补偿强度或网络数据校验,如果您不广播课件就不需要使用高广播及录制效率。 Q:为什么我有声卡和麦克风却不能语音广播和语音对讲? A:首先确认您的声卡驱动程序已正确安装。再检查音量控制程序的音频输入设备选项是否选择了麦克风,如都正确,就可以进行语音广播。语音对讲或学生发言需要全双工声卡的支持,可按如下方法检验:用媒体播放器选择 WAV 文件播放,播放过程打开附件的录音机看是否能进行录音,如能录音即为全双工声卡,如不能录音则为单工声卡。 Q:带声音广播课件时,为什么有的学生机听不到课件的声音? A:首先确认教师机是否配置了全双工声卡,学生机均配有声卡,且声卡能正常工作。然后在教师机主界面录音设定点击录音设备的箭头后选择 Stereo Mixer (混音输出)或类似描述,在小方框上打勾,这样就可以将课件的声音广播出去。 Q:怎样广播带有视频文件的课件? A:当需要通过屏幕广播带有视频的课件(如《走遍美国》)时,教师机的配置需要在 Celeron 400 以上,建议将教师机的显示模式设置为 16 位色,并要进行以下配置:首先需要在系统设置将广播和录制效率设置为高广播及录制效率,将传输补偿设为低网络补偿强度;再将运行开始菜单下的视频加速设置程序, 选不允许使用 DCI/DirectDraw 视频加速功能复选框,确定后即可进行课件广播。 Q:为何全屏广播 VCD 时学生机显示不正常? A:这是因为本机器显示卡与 DirectDraw 全屏幕模式兼容性不好,可通过在学生机执行安装目录下的 VideoSet.exe 来弹出上图所示的对话框。选不允许更改全屏幕播放 VCD 时的显示模式即可正常全屏接收 VCD 广播。 Q:为何对讲时听到自己的回音? A:可能是声卡屏蔽性不好,降低录音音量可以明显减少回音。也可能是对方声卡的录音设定选择了循环回放,导致播放的声音转到录音口,从而通过网络回传到自己。 Q:为什么我的学生机始终登录不到教师机上? A:请检查您的学生机与教师机频道号是否对应,再用 ping 命令检查学生机与教师机之间 TCP/IP 协议层是否真正连通(网上邻居不准确),如不通则检查或重新安装 TCP/IP 协议。 Q:为什么我的学生机登录后会经常掉线? A:这是由于您的网络异常造成的,请用网络检测软件(如 sniffer )来进行网络检查网络的通畅与阻塞情况,并尝试更换网卡、HUB,检查交换机设置来进行故障确定。 Q:屏幕广播后,学生机屏幕色彩失真? A:此情况一般发生在 Windows 95 机器上。Windows 95 不能动态切换色彩数目,因此用较少的色彩数目显示较多色彩的图像时便会出现色彩失真。请在学生端设置显示属性的色彩数目并重启机器。 Q:学生机接收不到网络影院的影像? A:请在学生端检查 DirectX Media 是否已正确安装。可使用 Windows Media Player 打开一 MPEG 文件播放。 Q:学生机能够接收网络影院,但画面色彩不正确? A:请先使用窗口方式执行网络影院,若色彩正确则说明学生机显卡与 DirectX 全屏模式兼容性不好。请降低学生机的显示模式、更换学生机显卡驱动程序或关闭学生机图形加速选项后再试。 Q:学生机接收网络影院后显示一黑屏窗口,不能正常播放? A:请先将学生机声卡禁止或移除后再试。若此时能够正常播放,则请检查学生机声卡是否安装正确,若不正确,请重新安装或更换声卡驱动程序。 Q:学生机在接收网络影院一断时间后出现一次很短的停顿? A:此情况是由声卡的时钟不正确造成的,请更换教师机或学生机的声卡(最好是另一品牌)再试。 Q:在执行远程关机或重启后,学生机在启动后桌面会显示 Active Desktop 错误信息? A:远程关机或重启与使用本机的"关闭系统"不同,是强制性关机动作, Active Desktop 不能处理该关机动作。您可将文件夹选项的 Windows 桌面更新设置为传统风格或在远程关机或重启时不选择强行关闭。 Q:教师机拨号上网后为何学生机登录不到教师机上? A:这是因为教师机所绑定的网卡地址设定的不正确,在系统设置的网络设置可设定本机绑定地址,将其设置为与学生机所处网段相同的网卡即可使学生机登录。 Q:轮转地监控转播时为何不按照班级模型的顺序切换? A:此时必定刚生成班级模型,您只要关闭教师机程序后再重新运行教师机程序就可以按班级模型的顺序监控。 Q:在Windows-XP-64位系统下安装了电子教师程序后,为什么系统不断重启? A:修改系统boot.ini文件, boot.ini里将NoExecute=OptIn 改为 NoExecute=AlwaysOff(注意大小写,千万不能写错,否则系统无法启动)
文件为doc版,可自行转成txt,在手机上看挺好的。 本资源来自网络,如有纰漏还请告知,如觉得还不错,请留言告知后来人,谢谢!!!!! 入门学习Linux常用必会60个命令实例详解 Linux必学的60个命令 Linux提供了大量的命令,利用它可以有效地完成大量的工作,如磁盘操作、文件存取、目录操作、进程管理、文件权限设定等。所以,在Linux系统上工作离不开使用系统提供的命令。要想真正理解Linux系统,就必须从Linux命令学起,通过基础的命令学习可以进一步理解Linux系统。 不同Linux发行版的命令数量不一样,但Linux发行版本最少的命令也有200多个。这里笔者把比较重要和使用频率最多的命令,按照它们在系统的作用分成下面六个部分一一介绍。 ◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last; ◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln; ◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab; ◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup; ◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who; ◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。 本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。 immortality按:请用ctrl+f在本页查找某一部分的内容或某一命令的用法。 -------------------------------------------------------------------------------- Linux必学的60个命令(1)-安装与登陆命令 login 1.作用 login的作用是登录系统,它的使用权限是所有用户。 2.格式 login [name][-p ][-h 主机名称] 3.主要参数 -p:通知login保持现在的环境参数。 -h:用来向远程登录的之间传输用户名。 如果选择用命令行模式登录Linux的话,那么看到的第一个Linux命令就是login:。 一般界面是这样的: Manddrake Linux release 9.1(Bamboo) for i586 renrel 2.4.21-0.13mdk on i686 / tty1 localhost login:root password: 上面代码,第一行是Linux发行版本号,第二行是内核版本号和登录的虚拟控制台,我们在第三行输入登录名,按“Enter”键在Password后输入账户密码,即可登录系统。出于安全考虑,输入账户密码时字符不会在屏幕上回显,光标也不移动。 登录后会看到下面这个界面(以超级用户为例): [root@localhost root]# last login:Tue ,Nov 18 10:00:55 on vc/1 上面显示的是登录星期、月、日、时间和使用的虚拟控制台。 4.应用技巧 Linux 是一个真正的多用户操作系统,可以同时接受多个用户登录,还允许一个用户进行多次登录。这是因为Linux和许多版本的Unix一样,提供了虚拟控制台的访问方式,允许用户在同一时间从控制台(系统的控制台是与系统直接相连的监视器和键盘)进行多次登录。每个虚拟控制台可以看作是一个独立的工作站,工作台之间可以切换。虚拟控制台的切换可以通过按下Alt键和一个功能键来实现,通常使用F1-F6 。 例如,用户登录后,按一下“Alt+ F2”键,用户就可以看到上面出现的“login:”提示符,说明用户看到了第二个虚拟控制台。然后只需按“Alt+ F1”键,就可以回到第一个虚拟控制台。一个新安装的Linux系统允许用户使用“Alt+F1”到“Alt+F6”键来访问前六个虚拟控制台。虚拟控制台最有用的是,当一个程序出错造成系统死锁时,可以切换到其它虚拟控制台工作,关闭这个程序。 shutdown 1.作用 shutdown命令的作用是关闭计算机,它的使用权限是超级用户。 2.格式 shutdown [-h][-i][-k][-m][-t] 3.重要参数 -t:在改变到其它运行级别之前,告诉init程序多久以后关机。 -k:并不真正关机,只是送警告信号给每位登录者。 -h:关机后关闭电源。 -c:cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数,但是可以输入一个用来解释的讯息,而这信息将会送到每位使用者。 -F:在重启计算机时强迫fsck。 -time:设定关机前的时间。 -m: 将系统改为单用户模式。 -i:关机时显示系统信息。 4.命令说明 shutdown 命令可以安全地将系统关机。有些用户会使用直接断掉电源的方式来关闭Linux系统,这是十分危险的。因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统会损坏硬件设备(硬盘)。在系统关机前使用 shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录。 halt 1.作用 halt命令的作用是关闭系统,它的使用权限是超级用户。 2.格式 halt [-n] [-w] [-d] [-f] [-i] [-p] 3.主要参数说明 -n:防止sync系统调用,它用在用fsck修补根分区之后,以阻止内核用老版本的超级块覆盖修补过的超级块。 -w:并不是真正的重启或关机,只是写wtmp(/var/log/wtmp)纪录。 -f:没有调用shutdown,而强制关机或重启。 -i:关机(或重启)前,关掉所有的网络接口。 -f:强迫关机,不呼叫shutdown这个指令。 -p: 当关机的时候顺便做关闭电源的动作。 -d:关闭系统,但不留下纪录。  4.命令说明 halt 就是调用shutdown -h。halt执行时,杀死应用进程,执行sync(将存于buffer的资料强制写入硬盘)系统调用,文件系统写操作完成后就会停止内核。若系统的运行级别为0或6,则关闭系统;否则以shutdown指令(加上-h参数)来取代。  reboot 1.作用 reboot命令的作用是重新启动计算机,它的使用权限是系统管理者。 2.格式 reboot [-n] [-w] [-d] [-f] [-i] 3.主要参数 -n: 在重开机前不做将记忆体资料写回硬盘的动作。 -w: 并不会真的重开机,只是把记录写到/var/log/wtmp文件里。 -d: 不把记录写到/var/log/wtmp文件里(-n这个参数包含了-d)。 -i: 在重开机之前先把所有与网络相关的装置停止。 install 1.作用 install命令的作用是安装或升级软件或备份数据,它的使用权限是所有用户。 2.格式 (1)install [选项]... 来源 目的地 (2)install [选项]... 来源... 目录 (3)install -d [选项]... 目录... 在前两种格式,会将复制至或将多个文件复制至已存在的,同时设定权限模式及所有者/所属组。在第三种格式,会创建所有指定的目录及它们的主目录。长选项必须用的参数在使用短选项时也是必须的。 3.主要参数 --backup[=CONTROL]:为每个已存在的目的地文件进行备份。 -b:类似 --backup,但不接受任何参数。 -c:(此选项不作处理)。 -d,--directory:所有参数都作为目录处理,而且会创建指定目录的所有主目录。 -D:创建前的所有主目录,然后将复制至 ;在第一种使用格式有用。 -g,--group=组:自行设定所属组,而不是进程目前的所属组。 -m,--mode=模式:自行设定权限模式 (像chmod),而不是rwxr-xr-x。 -o,--owner=所有者:自行设定所有者 (只适用于超级用户)。 -p,--preserve-timestamps:以文件的访问/修改时间作为相应的目的地文件的时间属性。 -s,--strip:用strip命令删除symbol table,只适用于第一及第二种使用格式。 -S,--suffix=后缀:自行指定备份文件的。 -v,--verbose:处理每个文件/目录时印出名称。 --help:显示此帮助信息并离开。 --version:显示版本信息并离开。 mount 1.作用 mount命令的作用是加载文件系统,它的用权限是超级用户或/etc/fstab允许的使用者。 2.格式 mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir 3.主要参数 -h:显示辅助信息。 -v:显示信息,通常和-f用来除错。 -a:将/etc/fstab定义的所有文件系统挂上。 -F:这个命令通常和-a一起使用,它会为每一个mount的动作产生一个行程负责执行。在系统需要挂上大量NFS文件系统时可以加快加载的速度。 -f:通常用于除错。它会使mount不执行实际挂上的动作,而是模拟整个挂上的过程,通常会和-v一起使用。 -t vfstype:显示被加载文件系统的类型。 -n:一般而言,mount挂上后会在/etc/mtab写入一笔资料,在系统没有可写入文件系统的情况下,可以用这个选项取消这个动作。 4.应用技巧 在Linux 和Unix系统上,所有文件都是作为一个大型树(以/为根)的一部分访问的。要访问CD-ROM上的文件,需要将CD-ROM设备挂装在文件树的某个挂装点。如果发行版安装了自动挂装包,那么这个步骤可自动进行。在Linux,如果要使用硬盘、光驱等储存设备,就得先将它加载,当储存设备挂上了之后,就可以把它当成一个目录来访问。挂上一个设备使用mount命令。在使用mount这个指令时,至少要先知道下列三种信息:要加载对象的文件系统类型、要加载对象的设备名称及要将设备加载到哪个目录下。 (1)Linux可以识别的文件系统 ◆ Windows 95/98常用的FAT 32文件系统:vfat ; ◆ Win NT/2000 的文件系统:ntfs ; ◆ OS/2用的文件系统:hpfs; ◆ Linux用的文件系统:ext2、ext3; ◆ CD-ROM光盘用的文件系统:iso9660。 虽然vfat是指FAT 32系统,但事实上它也兼容FAT 16的文件系统类型。 (2)确定设备的名称 在Linux ,设备名称通常都存在/dev里。这些设备名称的命名都是有规则的,可以用“推理”的方式把设备名称找出来。例如,/dev/hda1这个 IDE设备,hd是Hard Disk(硬盘)的,sd是SCSI Device,fd是Floppy Device(或是Floppy Disk?)。a代表第一个设备,通常IDE接口可以接上4个IDE设备(比如4块硬盘)。所以要识别IDE硬盘的方法分别就是hda、hdb、hdc、 hdd。hda1的“1”代表hda的第一个硬盘分区 (partition),hda2代表hda的第二主分区,第一个逻辑分区从hda5开始,依此类推。此外,可以直接检查 /var/log/messages文件,在该文件可以找到计算机开机后系统已辨认出来的设备代号。 (3)查找挂接点 在决定将设备挂接之前,先要查看一下计算机是不是有个/mnt的空目录,该目录就是专门用来当作挂载点(Mount Point)的目录。建议在/mnt里建几个/mnt/cdrom、/mnt/floppy、/mnt/mo等目录,当作目录的专用挂载点。举例而言,如要挂载下列5个设备,其执行指令可能如下 (假设都是Linux的ext2系统,如果是Windows XX请将ext2改成vfat): 软盘 ===>mount -t ext2 /dev/fd0 /mnt/floppy cdrom ===>mount -t iso9660 /dev/hdc /mnt/cdrom SCSI cdrom ===>mount -t iso9660 /dev/sdb /mnt/scdrom SCSI cdr ===>mount -t iso9660 /dev/sdc /mnt/scdr 不过目前大多数较新的Linux发行版本(包括红旗 Linux、软Linux、Mandrake Linux等)都可以自动挂装文件系统,但Red Hat Linux除外。 umount 1.作用 umount命令的作用是卸载一个文件系统,它的使用权限是超级用户或/etc/fstab允许的使用者。 2.格式 unmount -a [-fFnrsvw] [-t vfstype] [-n] [-rw] [-F] device dir 3.使用说明 umount 命令是mount命令的逆操作,它的参数和使用方法和mount命令是一样的。Linux挂装CD-ROM后,会锁定CD—ROM,这样就不能用CD- ROM面板上的Eject按钮弹出它。但是,当不再需要光盘时,如果已将/cdrom作为符号链接,请使用umount/cdrom来卸装它。仅当无用户正在使用光盘时,该命令才会成功。该命令包括了将带有当前工作目录当作该光盘的目录的终端窗口。 chsh 1.作用 chsh命令的作用是更改使用者shell设定,它的使用权限是所有使用者。 2.格式 chsh [ -s ] [ -list] [ --help ] [ -v ] [ username ] 3.主要参数 -l:显示系统所有Shell类型。 -v:显示Shell版本号。 4.应用技巧 前面介绍了Linux下有多种Shell,一般缺省的是Bash,如果想更换Shell类型可以使用chsh命令。先输入账户密码,然后输入新Shell类型,如果操作正确系统会显示“Shell change”。其界面一般如下: Changing fihanging shell for cao Password: New shell [/bin/bash]: /bin/tcsh 上面代码,[ ]内是目前使用的Shell。普通用户只能修改自己的Shell,超级用户可以修改全体用户的Shell。要想查询系统提供哪些Shell,可以使用chsh -l 命令,见图1所示。 图1 系统可以使用的Shell类型 从图1可以看到,笔者系统可以使用的Shell有bash(缺省)、csh、sh、tcsh四种。 exit 1.作用 exit命令的作用是退出系统,它的使用权限是所有用户。 2.格式 exit 3.参数 exit命令没有参数,运行后退出系统进入登录界面。 last 1.作用 last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户。通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统。 2.格式 1ast[—n][-f file][-t tty] [—h 节点][-I —IP][—1][-y][1D] 3.主要参数 -n:指定输出记录的条数。 -f file:指定用文件file作为查询用的log文件。 -t tty:只显示指定的虚拟控制台上登录情况。 -h 节点:只显示指定的节点上的登录情况。 -i IP:只显示指定的IP上登录的情况。 -1:用IP来显示远端地址。 -y:显示记录的年、月、日。 -ID:知道查询的用户名。 -x:显示系统关闭、用户登录和退出的历史。 动手练习 上面介绍了Linux安装和登录命令,下面介绍几个实例,动手练习一下刚才讲过的命令。 1.一次运行多个命令 在一个命令行可以执行多个命令,用分号将各个命令隔开即可,例如: #last -x;halt 上面代码表示在显示系统关闭、用户登录和退出的历史后关闭计算机。 2.利用mount挂装文件系统访问Windows系统 许多Linux发行版本现在都可以自动加载Vfat分区来访问Windows系统,而Red Hat各个版本都没有自动加载Vfat分区,因此还需要进行手工操作。 mount 可以将Windows分区作为Linux的一个“文件”挂接到Linux的一个空文件夹下,从而将Windows的分区和/mnt这个目录联系起来。因此,只要访问这个文件夹就相当于访问该分区了。首先要在/mnt下建立winc文件夹,在命令提示符下输入下面命令: #mount -t vfat /dev/hda1 /mnt/winc 即表示将Windows的C分区挂到Liunx的/mnt/winc目录下。这时,在/mnt/winc目录下就可以看到WindowsC盘的内容了。使用类似的方法可以访问Windows系统的D、E盘。在Linux系统显示Windows的分区一般顺序这样的:hda1为C盘、hda5为D盘、 hda6为E盘……以此类推。上述方法可以查看Windows系统有一个很大的问题,就是Windows的所有文文件名或文件夹名全部显示为问号 “?”,而英文却可以正常显示。我们可以通过加入一些参数让它显示文。还以上面的操作为例,此时输入命令: #mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/winc 现在它就可以正常显示文了。 3.使用mount加挂闪盘上的文件系统 在Linux下使用闪盘非常简单。Linux对USB设备有很好的支持,当插入闪盘后,闪盘被识别为一个SCSI盘,通常输入以下命令: # mount /dev/sda1 /usb 就能够加挂闪盘上的文件系统。 小知识 Linux命令与Shell 所谓Shell,就是命令解释程序,它提供了程序设计接口,可以使用程序来编程。学习Shell对于Linux初学者理解Linux系统是非常重要的。 Linux系统的Shell作为操作系统的外壳,为用户提供了使用操作系统的接口。Shell是命令语言、命令解释程序及程序设计语言的统称,是用户和 Linux内核之间的接口程序。如果把Linux内核想象成一个球体的心,Shell就是围绕内核的外层。当从Shell或其它程序向Linux传递命令时,内核会做出相应的反应。Shell在Linux系统的作用和MS DOS下的COMMAND.COM和Windows 95/98 的 explorer.exe相似。Shell虽然不是系统核心的一部分,只是系统核心的一个外延,但它能够调用系统内核的大部分功能。因此,可以说 Shell是Unux/Linux最重要的实用程序。 Linux的Shell有多种类型,其最常用的是Bourne Shell(sh)、C Shell(csh)和Korn Shell(ksh)。大多数Linux发行版本缺省的Shell是Bourne Again Shell,它是Bourne Shell的扩展,简称bash,与Bourne Shell完全向后兼容,并且在Bourne Shell的基础上增加了很多特性。bash放在/bin/bash,可以提供如命令补全、命令编辑和命令历史表等功能。它还包含了很多C Shell和Korn Shell的优点,有灵活和强大的编程接口,同时又有很友好的用户界面。Linux系统200多个命令有40个是bash的内部命令,主要包括 exit、less、lp、kill、 cd、pwd、fc、fg等。 -------------------------------------------------------------------------------- Linux必学的60个命令(2)-文件处理命令 Linux 系统信息存放在文件里,文件与普通的公务文件类似。每个文件都有自己的名字、内容、存放地址及其它一些管理信息,如文件的用户、文件的大小等。文件可以是一封信、一个通讯录,或者是程序的源语句、程序的数据,甚至可以包括可执行的程序和其它非正文内容。 Linux文件系统具有良好的结构,系统提供了很多文件处理程序。这里主要介绍常用的文件处理命令。 file 1.作用 件内容判断文件类型,使用权限是所有用户。 2.格式 file通过探测文 file [options] 文件名 3.[options]主要参数 -v:在标准输出后显示版本信息,并且退出。 -z:探测压缩过的文件类型。 -L:允许符合连接。 -f name:从文件namefile读取要分析的文件名列表。 4.简单说明 使用file命令可以知道某个文件究竟是二进制(ELF格式)的可执行文件, 还是Shell Script文件,或者是其它的什么格式。file能识别的文件类型有目录、Shell脚本、英文文本、二进制可执行文件、C语言源文件、文本文件、DOS的可执行文件。 5.应用实例 如果我们看到一个没有后缀的文件grap,可以使用下面命令: $ file grap grap: English text 此时系统显示这是一个英文文本文件。需要说明的是,file命令不能探测包括图形、音频、视频等多媒体文件类型。 mkdir 1.作用 mkdir命令的作用是建立名称为dirname的子目录,与MS DOS下的md命令类似,它的使用权限是所有用户。 2.格式 mkdir [options] 目录名 3.[options]主要参数 -m, --mode=模式:设定权限,与chmod类似。 -p, --parents:需要时创建上层目录;如果目录早已存在,则不当作错误。 -v, --verbose:每次创建新目录都显示信息。 --version:显示版本信息后离开。 4.应用实例 在进行目录创建时可以设置目录的权限,此时使用的参数是“-m”。假设要创建的目录名是“tsk”,让所有用户都有rwx(即读、写、执行的权限),那么可以使用以下命令: $ mkdir -m 777 tsk grep 1.作用 grep命令可以指定文件搜索特定的内容,并将含有这些内容的行标准输出。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。 2.格式 grep [options] 3.主要参数 [options]主要参数: -c:只输出匹配行的计数。 -I:不区分大小写(只适用于单字符)。 -h:查询多文件时不显示文件名。 -l:查询多文件时只输出包含匹配字符的文件名。 -n:显示匹配行及行号。 -s:不显示不存在或无匹配文本的错误信息。 -v:显示不包含匹配文本的所有行。 pattern正则表达式主要参数: \:忽略正则表达式特殊字符的原有含义。 ^:匹配正则表达式的开始行。 $: 匹配正则表达式的结束行。 \:到匹配正则表达式的行结束。 [ ]:单个字符,如[A]即A符合要求 。 [ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。 。:所有的单个字符。 * :有字符,长度可以为0。 正则表达式是Linux/Unix系统非常重要的概念。正则表达式(也称为“regex”或“regexp”)是一个可以描述一类字符串的模式(Pattern)。如果一个字符串可以用某个正则表达式来描述,我们就说这个字符和该正则表达式匹配(Match)。这和DOS用户可以使用通配符 “*”代表任意字符类似。在Linux系统上,正则表达式通常被用来查找文本的模式,以及对文本执行“搜索-替换”操作和其它功能。 4.应用实例 查询DNS服务是日常工作之一,这意味着要维护覆盖不同网络的大量IP地址。有时IP地址会超过2000个。如果要查看nnn.nnn网络地址,但是却忘了第二部分的其余部分,只知到有两个句点,例如nnn nn..。要抽取其所有nnn.nnn IP地址,使用[0-9 ]\{3 \}\.[0-0\{3\}\。含义是任意数字出现3次,后跟句点,接着是任意数字出现3次,后跟句点。 $grep '[0-9 ]\{3 \}\.[0-0\{3\}\' ipfile 补充说明,grep家族还包括fgrep和egrep。fgrep是fix grep,允许查找字符串而不是一个模式;egrep是扩展grep,支持基本及扩展的正则表达式,但不支持\q模式范围的应用及与之相对应的一些更加规范的模式。 dd 1.作用 dd命令用来复制文件,并根据参数将数据转换和格式化。 2.格式 dd [options] 3.[opitions]主要参数 bs=字节:强迫 ibs=及obs=。 cbs=字节:每次转换指定的。 conv=关键字:根据以逗号分隔的关键字表示的方式来转换文件。 count=块数目:只复制指定的输入数据。 ibs=字节:每次读取指定的。 if=文件:读取内容,而非标准输入的数据。 obs=字节:每次写入指定的。 of=文件:将数据写入,而不在标准输出显示。 seek=块数目:先略过以obs为单位的指定的输出数据。 skip=块数目:先略过以ibs为单位的指定的输入数据。 4.应用实例 dd命令常常用来制作Linux启动盘。先找一个可引导内核,令它的根设备指向正确的根分区,然后使用dd命令将其写入软盘: $ rdev vmlinuz /dev/hda $dd if=vmlinuz of=/dev/fd0 上面代码说明,使用rdev命令将可引导内核vmlinuz的根设备指向/dev/hda,请把“hda”换成自己的根分区,接下来用dd命令将该内核写入软盘。 find 1.作用 find命令的作用是在目录搜索文件,它的使用权限是所有用户。 2.格式 find [path][options][expression] path指定目录路径,系统从这里开始沿着目录树向下查找文件。它是一个路径列表,相互用空格分离,如果不写path,那么默认为当前目录。 3.主要参数 [options]参数: -depth:使用深度级别的查找过程方式,在某层指定目录优先查找文件内容。 -maxdepth levels:表示至多查找到开始目录的第level层子目录。level是一个非负数,如果level是0的话表示仅在当前目录查找。 -mindepth levels:表示至少查找到开始目录的第level层子目录。 -mount:不在其它文件系统(如Msdos、Vfat等)的目录和文件查找。 -version:打印版本。 [expression]是匹配表达式,是find命令接受的表达式,find命令的所有操作都是针对表达式的。它的参数非常多,这里只介绍一些常用的参数。 —name:支持统配符*和?。 -atime n:搜索在过去n天读取过的文件。 -ctime n:搜索在过去n天修改过的文件。 -group grpoupname:搜索所有组为grpoupname的文件。 -user 用户名:搜索所有文件属主为用户名(ID或名称)的文件。 -size n:搜索文件大小是n个block的文件。 -print:输出搜索结果,并且打印。 4.应用技巧 find命令查找文件的几种方法: (1)根据文件名查找 例如,我们想要查找一个文件名是lilo.conf的文件,可以使用如下命令: find / -name lilo.conf find命令后的“/”表示搜索整个硬盘。 (2)快速查找文件 根据文件名查找文件会遇到一个实际问题,就是要花费相当长的一段时间,特别是大型Linux文件系统和大容量硬盘文件放在很深的子目录时。如果我们知道了这个文件存放在某个目录,那么只要在这个目录往下寻找就能节省很多时间。比如smb.conf文件,从它的文件后缀“.conf”可以判断这是一个配置文件,那么它应该在/etc目录内,此时可以使用下面命令: find /etc -name smb.conf 这样,使用“快速查找文件”方式可以缩短时间。 (3)根据部分文件名查找方法 有时我们知道只某个文件包含有abvd这4个字,那么要查找系统所有包含有这4个字符的文件可以输入下面命令: find / -name '*abvd*' 输入这个命令以后,Linux系统会将在/目录查找所有的包含有abvd这4个字符的文件(其*是通配符),比如abvdrmyz等符合条件的文件都能显示出来。 (4) 使用混合查找方式查找文件 find命令可以使用混合查找的方法,例如,我们想在/etc目录查找大于500000字节,并且在24小时内修改的某个文件,则可以使用-and (与)把两个查找参数链接起来组合成一个混合的查找方式。 find /etc -size +500000c -and -mtime +1 mv 1.作用 mv命令用来为文件或目录改名,或者将文件由一个目录移入另一个目录,它的使用权限是所有用户。该命令如同DOS命令的ren和move的组合。 2.格式 mv[options] 源文件或目录 目标文件或目录 3.[options]主要参数 -i:交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答“y”或“n”,这样可以避免误覆盖文件。 -f:禁止交互操作。mv操作要覆盖某个已有的目标文件时不给任何指示,指定此参数后i参数将不再起作用。 4.应用实例 (1)将/usr/cbu的所有文件移到当前目录(用“.”表示): $ mv /usr/cbu/ * . (2)将文件cjh.txt重命名为wjz.txt: $ mv cjh.txt wjz.txt  ls 1.作用 ls命令用于显示目录内容,类似DOS下的dir命令,它的使用权限是所有用户。 2.格式 ls [options][filename] 3.options主要参数 -a, --all:不隐藏任何以“.” 字符开始的项目。 -A, --almost-all:列出除了“ . ”及 “.. ”以外的任何项目。 --author:印出每个文件著作者。 -b, --escape:以八进制溢出序列表示不可打印的字符。 --block-size=大小:块以指定的字节为单位。 -B, --ignore-backups:不列出任何以 ~ 字符结束的项目。 -f:不进行排序,-aU参数生效,-lst参数失效。 -F, --classify:加上文件类型的指示符号 (*/=@| 其一个)。 -g:like -l, but do not list owner。 -G, --no-group:inhibit display of group information。 -i, --inode:列出每个文件的inode号。 -I, --ignore=样式:不印出任何符合Shell万用字符的项目。 -k:即--block-size=1K。 -l:使用较长格式列出信息。 -L, --dereference:当显示符号链接的文件信息时,显示符号链接所指示的对象,而并非符号链接本身的信息。 -m:所有项目以逗号分隔,并填满整行行宽。 -n, --numeric-uid-gid:类似-l,但列出UID及GID号。 -N, --literal:列出未经处理的项目名称,例如不特别处理控制字符。 -p, --file-type:加上文件类型的指示符号 (/=@| 其一个)。 -Q, --quote-name:将项目名称括上双引号。 -r, --reverse:依相反次序排列。 -R, --recursive:同时列出所有子目录层。 -s, --size:以块大小为序。 4.应用举例 ls 命令是Linux系统使用频率最多的命令,它的参数也是Linux命令最多的。使用ls命令时会有几种不同的颜色,其蓝色表示是目录,绿色表示是可执行文件,红色表示是压缩文件,浅蓝色表示是链接文件,加粗的黑色表示符号链接,灰色表示是其它格式文件。ls最常使用的是ls- l,见图1所示。 图1 使用ls-l命令 文件类型开头是由10个字符构成的字符串。其第一个字符表示文件类型,它可以是下述类型之一:-(普通文件)、d(目录)、l(符号链接)、b(块设备文件)、c(字符设备文件)。后面的9个字符表示文件的访问权限,分为3组,每组3位。第一组表示文件属主的权限,第二组表示同组用户的权限,第三组表示其他用户的权限。每一组的三个字符分别表示对文件的读(r)、写(w)和执行权限(x)。对于目录,表示进入权限。s表示当文件被执行时,把该文件的UID 或GID赋予执行进程的UID(用户ID)或GID(组 ID)。t表示设置标志位(留在内存,不被换出)。如果该文件是目录,那么在该目录的文件只能被超级用户、目录拥有者或文件属主删除。如果它是可执行文件,那么在该文件执行后,指向其正文段的指针仍留在内存。这样再次执行它时,系统就能更快地装入该文件。接着显示的是文件大小、生成时间、文件或命令名称。 diff 1.作用 diff命令用于两个文件之间的比较,并指出两者的不同,它的使用权限是所有用户。 2.格式 diff [options] 源文件 目标文件 3.[options]主要参数 -a:将所有文件当作文本文件来处理。 -b:忽略空格造成的不同。 -B:忽略空行造成的不同。 -c:使用纲要输出格式。 -H:利用试探法加速对大文件的搜索。 -I:忽略大小写的变化。 -n --rcs:输出RCS格式。 cmp 1.作用 cmp(“compare”的缩写)命令用来简要指出两个文件是否存在差异,它的使用权限是所有用户。 2.格式 cmp[options] 文件名 3.[options]主要参数 -l: 将字节以十进制的方式输出,并方便将两个文件不同的以八进制的方式输出。 cat 1.作用 cat(“concatenate”的缩写)命令用于连接并显示指定的一个和多个文件的有关信息,它的使用权限是所有用户。 2.格式 cat [options] 文件1 文件2…… 3.[options]主要参数 -n:由第一行开始对所有输出的行数编号。 -b:和-n相似,只不过对于空白行不编号。 -s:当遇到有连续两行以上的空白行时,就代换为一行的空白行。 4.应用举例 (1)cat命令一个最简单的用处是显示文本文件的内容。例如,我们想在命令行看一下README文件的内容,可以使用命令: $ cat README  (2)有时需要将几个文件处理成一个文件,并将这种处理的结果保存到一个单独的输出文件。cat命令在其输入上接受一个或多个文件,并将它们作为一个单独的文件打印到它的输出。例如,把README和INSTALL的文件内容加上行号(空白行不加)之后,将内容附加到一个新文本文件File1 : $ cat README INSTALL File1 (3)cat还有一个重要的功能就是可以对行进行编号,见图2所示。这种功能对于程序文档的编制,以及法律和科学文档的编制很方便,打印在左边的行号使得参考文档的某一部分变得容易,这些在编程、科学研究、业务报告甚至是立法工作都是非常重要的。 图2 使用cat命令/etc/named.conf文件进行编号 对行进行编号功能有-b(只能对非空白行进行编号)和-n(可以对所有行进行编号)两个参数: $ cat -b /etc/named.conf ln 1.作用 ln命令用来在文件之间创建链接,它的使用权限是所有用户。 2.格式 ln [options] 源文件 [链接名] 3.参数 -f:链结时先将源文件删除。 -d:允许系统管理者硬链结自己的目录。 -s:进行软链结(Symbolic Link)。 -b:将在链结时会被覆盖或删除的文件进行备份。 链接有两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。 硬连接指通过索引节点来进行的连接。在Linux的文件系统,保存在磁盘分区的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件才会被真正删除。 与硬连接相对应,Lnux系统还存在另一种连接,称为符号连接(Symbilc Link),也叫软连接。软链接文件有点类似于Windows的快捷方式。它实际上是特殊文件的一种。在符号连接,文件实际上是一个文本文件,其包含的有另一文件的位置信息。 动手练习 上面我们介绍了Linux文件处理命令,下面介绍几个实例,大家可以动手练习一下刚才讲过的命令。 1.利用符号链接快速访问关键目录 符号链接是一个非常实用的功能。假设有一些目录或文件需要频繁使用,但由于Linux的文件和目录结构等原因,这个文件或目录在很深的子目录。比如, Apache Web服务器文档位于系统的/usr/local/httpd/htdocs,并且不想每次都要从主目录进入这样一个长的路径之(实际上,这个路径也非常不容易记忆)。 为了解决这个问题,可以在主目录创建一个符号链接,这样在需要进入该目录时,只需进入这个链接即可。 为了能方便地进入Web服务器(/usr/local/httpd/htdocs)文档所在的目录,在主目录下可以使用以下命令: $ ln -s /usr/local/httpd/htdocs gg 这样每次进入gg目录就可访问Web服务器的文档,以后如果不再访问Web服务器的文档时,删除gg即可,而真正的Web服务器的文档并没有删除。 2.使用dd命令将init.rd格式的root.ram内容导入内存 dd if=/dev/fd0 of=floppy.fd dd if=root.ram of=/dev/ram0 # 3.grep命令系统调用 grep是Linux/Unix使用最广泛的命令之一,许多Linux系统内部都可以调用它。 (1)如果要查询目录列表的目录,方法如下: $ ls -l | grep '∧d' (2)如果在一个目录查询不包含目录的所有文件,方法如下: $ ls -l | grep '∧[∧d]' (3)用find命令调用grep,如所有C源代码的“Chinput”,方法如下: $find /ZhXwin -name *.c -exec grep -q -s Chinput {} \;-print -------------------------------------------------------------------------------- Linux必学的60个命令(3)-系统管理命令 Linux必学的系统管理命令 对于Linux系统来说,无论是央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心。熟悉了Linux常用的文件处理命令以后,这一讲介绍对系统和用户进行管理的命令。 df 1.作用 df命令用来检查文件系统的磁盘空间占用情况,使用权限是所有用户。 2.格式 df [options] 3.主要参数 -s:对每个Names参数只给出占用的数据块总数。 -a:递归地显示指定目录各文件及子目录各文件占用的数据块数。若既不指定-s,也不指定-a,则只显示Names的每一个目录及其的各子目录所占的磁盘块数。 -k:以1024字节为单位列出磁盘空间使用情况。 -x:跳过在不同文件系统上的目录不予统计。 -l:计算所有的文件大小,对硬链接文件则计算多次。 -i:显示inode信息而非块使用量。 -h:以容易理解的格式印出文件系统大小,例如136KB、254MB、21GB。 -P:使用POSIX输出格式。 -T:显示文件系统类型。 4.说明 df命令被广泛地用来生成文件系统的使用统计数据,它能显示系统所有的文件系统的信息,包括总容量、可用的空闲空间、目前的安装点等。 超级权限用户使用df命令时会发现这样的情况:某个分区的容量超过了100%。这是因为Linux系统为超级用户保留了10%的空间,由其单独支配。也就是说,对于超级用户而言,他所见到的硬盘容量将是110%。这样的安排对于系统管理而言是有好处的,当硬盘被使用的容量接近100%时系统管理员还可以正常工作。 5.应用实例 Linux支持的文件系统非常多,包括JFS、ReiserFS、ext、ext2、ext3、ISO9660、XFS、Minx、vfat、MSDOS等。使用df -T命令查看磁盘空间时还可以得到文件系统的信息: #df -T 文件系统 类型 容量 已用 可用 已用% 挂载点 /dev/hda7 reiserfs 5.2G 1.6G 3.7G 30% / /dev/hda1 vfat 2.4G 1.6G 827M 66% /windows/C /dev/hda5 vfat 3.0G 1.7G 1.3G 57% /windows/D /dev/hda9 vfat 3.0G 2.4G 566M 82% /windows/E /dev/hda10 NTFS 3.2G 573M 2.6G 18% /windows/F /dev/hda11 vfat 1.6G 1.5G 23M 99% /windows/G 从上面除了可以看到磁盘空间的容量、使用情况外,分区的文件系统类型、挂载点等信息也一览无遗。 top 1.作用 top命令用来显示执行的程序进程,使用权限是所有用户。 2.格式 top [-] [d delay] [q] [c] [S] [s] [i] [n] 3.主要参数 d:指定更新的间隔,以秒计算。 q:没有任何延迟的更新。如果使用者有超级用户,则top命令将会以最高的优先序执行。 c:显示进程完整的路径与名称。 S:累积模式,会将己完成或消失的子行程的CPU时间累积起来。 s:安全模式。 i:不显示任何闲置(Idle)或无用(Zombie)的行程。 n:显示更新的次数,完成后将会退出top。 4.说明 top命令是Linux系统管理的一个主要命令,通过它可以获得许多信息。这里我们结合图1来说明它给出的信息。 图1 top命令的显示 在图1,第一行表示的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载。第二行显示的是所有启动的进程、目前运行的、挂起 (Sleeping)的和无用(Zombie)的进程。第三行显示的是目前CPU的使用情况,包括系统占用的比例、用户使用比例、闲置(Idle)比例。第四行显示物理内存的使用情况,包括总的可以使用的内存、已用内存、空闲内存、缓冲区占用的内存。第五行显示交换分区使用情况,包括总的交换分区、使用的、空闲的和用于高速缓存的大小。第六行显示的项目最多,下面列出了详细解释。 PID(Process ID):进程标示号。 USER:进程所有者的用户名。 PR:进程的优先级别。 NI:进程的优先级别数值。 VIRT:进程占用的虚拟内存值。 RES:进程占用的物理内存值。 SHR:进程使用的共享内存值。 S:进程的状态,其S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值是负数。 %CPU:该进程占用的CPU使用率。 %MEM:该进程占用的物理内存和总内存的百分比。 TIME+:该进程启动后占用的总的CPU时间。 Command:进程启动的启动命令名称,如果这一行显示不下,进程会有一个完整的命令行。 top命令使用过程,还可以使用一些交互的命令来完成其它参数的功能。这些命令是通过快捷键启动的。 :立刻刷新。 P:根据CPU使用大小进行排序。 T:根据时间、累计时间排序。 q:退出top命令。 m:切换显示内存信息。 t:切换显示进程和CPU状态信息。 c:切换显示命令名称和完整命令行。 M:根据使用内存大小进行排序。 W:将当前设置写入~/.toprc文件。这是写top配置文件的推荐方法。 可以看到,top命令是一个功能十分强大的监控系统的工具,对于系统管理员而言尤其重要。但是,它的缺点是会消耗很多系统资源。 5.应用实例 使用top命令可以监视指定用户,缺省情况是监视所有用户的进程。如果想查看指定用户的情况,在终端按“U”键,然后输入用户名,系统就会切换为指定用户的进程运行界面,见图2所示。 图2 使用top命令监视指定用户 free 1.作用 free命令用来显示内存的使用情况,使用权限是所有用户。 2.格式 free [-b|-k|-m] [-o] [-s delay] [-t] [-V] 3.主要参数 -b -k -m:分别以字节(KB、MB)为单位显示内存使用情况。 -s delay:显示每隔多少秒数来显示一次内存使用情况。 -t:显示内存总和列。 -o:不显示缓冲区调节列。 4.应用实例 free命令是用来查看内存使用情况的主要命令。和top命令相比,它的优点是使用简单,并且只占用很少的系统资源。通过-S参数可以使用free命令不间断地监视有多少内存在使用,这样可以把它当作一个方便实时监控器。 #free -b -s5 使用这个命令后终端会连续不断地报告内存使用情况(以字节为单位),每5秒更新一次。 quota 1.作用 quota命令用来显示磁盘使用情况和限制情况,使用权限超级用户。 2.格式 quota [-g][-u][-v][-p] 用户名 组名 3.参数 -g:显示用户所在组的磁盘使用限制。 -u:显示用户的磁盘使用限制。 -v:显示没有分配空间的文件系统的分配情况。 -p:显示简化信息。 4.应用实例 在企业应用磁盘配额非常重要,普通用户要学会看懂自己的磁盘使用情况。要查询自己的磁盘配额可以使用下面命令(下例用户账号是caojh): #quota caojh Disk quotas for user caojh(uid 502): Filesystem blocks quota limit grace files quota limit grace /dev/hda3 58 200000 400000 41 500 1000 以上显示ID号为502的caojh账号,文件个数设置为500~1000个,硬盘空间限制设置为200MB~400MB。一旦磁盘配额要用完时,就需要删除一些垃圾文件或向系统管理员请求追加配额。 at 1.作用 at命令用来在指定时刻执行指定的命令序列。 2.格式 at [-V] [-q x] [-f file] [-m] time 3.主要参数 -V:显示标准错误输出。 -q:许多队列输出。 -f:从文件读取作业。 -m:执行完作业后发送电子邮件到用户。 time:设定作业执行的时间。time格式有严格的要求,由小时、分钟、日期和时间的偏移量组成,其日期的格式为MM.DD.YY,MM是分钟,DD是日期,YY是指年份。偏移量的格式为时间+偏移量,单位是minutes、hours和days。 4.应用实例 #at -f data 15:30 +2 days 上面命令表示让系统在两天后的17:30执行文件data指明的作业。 lp 1.作用 lp是打印文件的命令,使用权限是所有用户。 2.格式 lp [-c][-d][-m][-number][-title][-p] 3.主要参数 -c:先拷贝文件再打印。 -d:打印队列文件。 -m:打印结束后发送电子邮件到用户。 -number:打印份数。 -title:打印标题。 -p:设定打印的优先级别,最高为100。 4.应用实例 (1)使用lp命令打印多个文件 #lp 2 3 4 request id is 11 (3 file(s)) 其2、3、4分别是文件名;“request id is 11 (3 file(s)) ”表示这是第11个打印命令,依次打印这三个文件。 (2)设定打印优先级别 #lp lp -d LaserJet -p 90 /etc/aliases 通过添加“-p 90”,规定了打印作业的优先级为90。它将在优先级低于90的打印作业之前打印,包括没有设置优先级的作业,缺省优先级是50 useradd 1.作用 useradd命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。 2.格式 useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name 3.主要参数 -c:加上备注文字,备注文字保存在passwd的备注栏。  -d:指定用户登入时的启始目录。 -D:变更预设值。 -e:指定账号的有效期限,缺省表示永久有效。 -f:指定在密码过期后多少天即关闭该账号。 -g:指定用户所属的群组。 -G:指定用户所属的附加群组。 -m:自动建立用户的登入目录。 -M:不要自动建立用户的登入目录。 -n:取消建立以用户名称为名的群组。 -r:建立系统账号。 -s:指定用户登入后所使用的shell。 -u:指定用户ID号。 4.说明 useradd可用来建立用户账号,它和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件。 5.应用实例 建立一个新用户账户,并设置ID: #useradd caojh -u 544 需要说明的是,设定ID值时尽量要大于500,以免冲突。因为Linux安装后会建立一些特殊用户,一般0到499之间的值留给bin、mail这样的系统账号。 groupadd 1.作用 groupadd命令用于将新组加入系统。 2.格式 groupadd [-g gid] [-o]] [-r] [-f] groupname 3.主要参数 -g gid:指定组ID号。 -o:允许组ID号,不必惟一。 -r:加入组ID号,低于499系统账号。 -f:加入已经有的组时,发展程序退出。 4.应用实例 建立一个新组,并设置组ID加入系统: #groupadd -g 344 cjh 此时在/etc/passwd文件产生一个组ID(GID)是344的项目。 kill 1.作用 kill命令用来止一个进程。 2.格式 kill [ -s signal | -p ] [ -a ] pid ... kill -l [ signal ] 3.参数 -s:指定发送的信号。 -p:模拟发送信号。 -l:指定信号的名称列表。 pid:要止进程的ID号。 Signal:表示信号。 4.说明 进程是Linux系统一个非常重要的概念。Linux是一个多任务的操作系统,系统上经常同时运行着多个进程。我们不关心这些进程究竟是如何分配的,或者是内核如何管理分配时间片的,所关心的是如何去控制这些进程,让它们能够很好地为用户服务。 Linux 操作系统包括三种不同类型的进程,每种进程都有自己的特点和属性。交互进程是由一个Shell启动的进程。交互进程既可以在前台运行,也可以在后台运行。批处理进程和终端没有联系,是一个进程序列。监控进程(也称系统守护进程)时Linux系统启动时启动的进程,并在后台运行。例如,httpd是著名的 Apache服务器的监控进程。 kill命令的工作原理是,向Linux系统的内核发送一个系统操作信号和某个程序的进程标识号,然后系统内核就可以对进程标识号指定的进程进行操作。比如在top命令,我们看到系统运行许多进程,有时就需要使用kill止某些进程来提高系统资源。在讲解安装和登陆命令时,曾提到系统多个虚拟控制台的作用是当一个程序出错造成系统死锁时,可以切换到其它虚拟控制台工作关闭这个程序。此时使用的命令就是kill,因为kill是大多数Shell内部命令可以直接调用的。 5.应用实例 (1)强行止(经常使用杀掉)一个进程标识号为324的进程: #kill -9 324 (2)解除Linux系统的死锁 在Linux 有时会发生这样一种情况:一个程序崩溃,并且处于死锁的状态。此时一般不用重新启动计算机,只需要止(或者说是关闭)这个有问题的程序即可。当 kill处于X-Window界面时,主要的程序(除了崩溃的程序之外)一般都已经正常启动了。此时打开一个终端,在那里止有问题的程序。比如,如果 Mozilla浏览器程序出现了锁死的情况,可以使用kill命令来止所有包含有Mozolla浏览器的程序。首先用top命令查处该程序的PID,然后使用kill命令停止这个程序: #kill -SIGKILL XXX 其,XXX是包含有Mozolla浏览器的程序的进程标识号。 (3)使用命令回收内存 我们知道内存对于系统是非常重要的,回收内存可以提高系统资源。kill命令可以及时地止一些“越轨”的程序或很长时间没有相应的程序。例如,使用top命令发现一个无用 (Zombie) 的进程,此时可以使用下面命令: #kill -9 XXX 其,XXX是无用的进程标识号。 然后使用下面命令: #free 此时会发现可用内存容量增加了。 (4)killall命令 Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如: # killall -HUP inetd crontab 1.作用 使用crontab命令可以修改crontab配置文件,然后该配置由cron公用程序在适当的时间执行,该命令使用权限是所有用户。 2.格式 crontab [ -u user ] 文件 crontab [ -u user ] { -l | -r | -e } 3.主要参数 -e:执行文字编辑器来设定时程表,内定的文字编辑器是vi。 -r:删除目前的时程表。 -l:列出目前的时程表。 crontab 文件的格式为“M H D m d cmd”。其,M代表分钟(0~59),H代表小时(0~23),D代表天(1~31),m代表月(1~12),d代表一星期内的天(0~6,0为星期天)。cmd表示要运行的程序,它被送入sh执行,这个Shell只有USER、HOME、SHELL三个环境变量。 4.说明 和at命令相比,crontab命令适合完成固定周期的任务。 5.应用实例 设置一个定时、定期的系统提示: [cao @www cao]#crontab -e 此时系统会打开一个vi编辑器。 如果输入以下内容:35 17 * * 5 wall "Tomorrow is Saturday I will go CS",然后存盘退出。这时在/var/spool/cron/目录下会生产一个cao的文件,内容如下: # DO NOT EDIT THIS FILE - edit the master and reinstall. # (/tmp/crontab.2707 installed on Thu Jan 1 22:01:51 2004) # (Cron version -- $Id: crontab.c,v 2.13 1994/01/17 03:20:37 vixie Exp $) 35 17 * * 5 wall "Tomorrow is Saturday I will play CS " 这样每个星期五17:35系统就会弹出一个终端,提醒星期六可以打打CS了!显示结果见图3所示。 图3 一个定时、定期的系统提示 动手练习 1.联合使用kill和top命令观察系统性能的变化 首先启动一个终端运行top命令,然后再启动一个终端使用kill命令,见图4所示。 图4 观察kill命令对top终端的影响 这时利用上面介绍的kill命令来止一些程序: #kill SIGKILL XXX 然后再看top命令终端的变化,包括内存容量、CPU使用率、系统负载等。注意,有些进程是不能止的,不过学习Linux命令时可以试试,看看系统有什么反应。 2.使用at和halt命令定时关机 首先设定关机时间是17:35,输入下面代码: #at 17:35 warning: commands will be executed using (in order) a) $SHELL b) login shell c) /bin/sh at>halt `-i -p at> job 6 at 2004-01-01 17:35 此时实际上就已经进入Linux系统的Shell,并且编写一个最简单程序:halt -i -p。上面Shell的文本结束符号表示按“Ctrl+D”组合键关闭命令,提交任务退出Shell。“Job 6 at 2004-01-01 17:35”表示系统接受第6个at命令,在“2004-01-01 17:35”时执行命令:先把所有网络相关的装置停止,关闭系统后关闭电源。 3.用crontab命令实现每天定时的病毒扫描 前面已经介绍了一个简单的crontab命令操作,这里看一些更重要的操作。 (1)建立一个文件,文件名称自己设定,假设为caoproject: #crontab -e (2)文件内容如下: 05 09 * * * antivir 用vi编辑后存盘退出。antivir是一个查杀Linux病毒的软件,当然需要时先安装在系统。 (3)使用crontab命令添加到任务列表: #crontab caoproject 这样系统内所有用户在每天的9点05分会自动进行病毒扫描。 4.用kill使修改的配置文件马上生效 Windows用户一般都知道,重要配置文件修改后往往都要重新启动计算机才能使修改生效。而Linux由于采用了模块化设计,可以自己根据需要实时设定服务。这里以网络服务inetd为例介绍一些操作技巧。 inetd 是一个监听守护进程,监听与提供互联网服务进程(如rlogin、telnet、ftp、rsh)进行连接的要求,并扩展所需的服务进程。默认情况下, inetd监听的这些daemon均列于/etc /inetd.conf文件。编辑/etc/inetd.conf文件,可以改变inetd启动服务器守护进程的选项,然后驱使inetd以 SIGHUP(signal 1)向当前的inetd进程发送信号,使inetd重读该文件。这一过程由kill命令来实现。 用vi或其它编辑器修改inetd.conf后,首先使用下面命令: #ps -ef |grep inetd 上面代码表明查询inetd.conf的进程号(PID),这里假设是1426,然后使用下面命令: # kill -1426 inetd 这样配置文件就生效了。 这一讲介绍的系统管理命令都是比较重要的,特别是crontab命令和quota命令使用起来会有一定难度,需要多做一些练习。另外,使用kill命令要注意“-9“这个参数,练习时最好不要运行一些重要的程序。 -------------------------------------------------------------------------------- Linux必学的60个命令(4)-网络操作命令 Linux必学的60个命令:网络操作命令 因为Linux系统是在Internet上起源和发展的,它与生俱来拥有强大的网络功能和丰富的网络应用软件,尤其是TCP/IP网络协议的实现尤为成熟。 Linux的网络命令比较多,其一些命令像ping、 ftp、telnet、route、netstat等在其它操作系统上也能看到,但也有一些Unix/Linux系统独有的命令,如ifconfig、 finger、mail等。Linux网络操作命令的一个特点是,命令参数选项和功能很多,一个命令往往还可以实现其它命令的功能。 ifconfig 1.作用 ifconfig用于查看和更改网络接口的地址和参数,包括IP地址、网络掩码、广播地址,使用权限是超级用户。 2.格式 ifconfig -interface [options] address 3.主要参数 -interface:指定的网络接口名,如eth0和eth1。 up:激活指定的网络接口卡。 down:关闭指定的网络接口。 broadcast address:设置接口的广播地址。 pointopoint:启用点对点方式。 address:设置指定接口设备的IP地址。 netmask address:设置接口的子网掩码。 4.应用说明 ifconfig是用来设置和配置网卡的命令行工具。为了手工配置网络,这是一个必须掌握的命令。使用该命令的好处是无须重新启动机器。要赋给eth0接口IP地址207.164.186.2,并且马上激活它,使用下面命令: #fconfig eth0 210.34.6.89 netmask 255.255.255.128 broadcast 210.34.6.127 该命令的作用是设置网卡eth0的IP地址、网络掩码和网络的本地广播地址。若运行不带任何参数的ifconfig命令,这个命令将显示机器所有激活接口的信息。带有“-a”参数的命令则显示所有接口的信息,包括没有激活的接口。注意,用ifconfig命令配置的网络设备参数,机器重新启动以后将会丢失。 如果要暂停某个网络接口的工作,可以使用down参数: #ifconfig eth0 down ip 1.作用 ip是iproute2软件包里面的一个强大的网络配置工具,它能够替代一些传统的网络管理工具,例如ifconfig、route等,使用权限为超级用户。几乎所有的Linux发行版本都支持该命令。 2.格式 ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]] 3.主要参数 OPTIONS是修改ip行为或改变其输出的选项。所有的选项都是以-字符开头,分为长、短两种形式。目前,ip支持如表1所示选项。 OBJECT是要管理者获取信息的对象。目前ip认识的对象见表2所示。 表1 ip支持的选项 -V,-Version 打印ip的版本并退出。 -s,-stats,-statistics 输出更为详尽的信息。如果这个选项出现两次或多次,则输出的信息将更为详尽。 -f,-family 这个选项后面接协议种类,包括inet、inet6或link,强调使用的协议种类。如果没有足够的信息告诉ip使用的协议种类,ip就会使用默认值inet或any。link比较特殊,它表示不涉及任何网络协议。 -4 是-family inet的简写。 -6 是-family inet6的简写。 -0 是-family link的简写。 -o,-oneline 对每行记录都使用单行输出,回行用字符代替。如果需要使用wc、grep等工具处理ip的输出,则会用到这个选项。 -r,-resolve 查询域名解析系统,用获得的主机名代替主机IP地址 COMMAND 设置针对指定对象执行的操作,它和对象的类型有关。一般情况下,ip支持对象的增加(add)、删除(delete)和展示(show或list)。有些对象不支持这些操作,或者有其它的一些命令。对于所有的对象,用户可以使用help命令获得帮助。这个命令会列出这个对象支持的命令和参数的语法。如果没有指定对象的操作命令,ip会使用默认的命令。一般情况下,默认命令是list,如果对象不能列出,就会执行help命令。 ARGUMENTS 是命令的一些参数,它们倚赖于对象和命令。ip支持两种类型的参数:flag和parameter。flag由一个关键词组成;parameter由一个关键词加一个数值组成。为了方便,每个命令都有一个可以忽略的默认参数。例如,参数dev是ip link命令的默认参数,因此ip link ls eth0等于ip link ls dev eth0。我们将在后面的详细介绍每个命令的使用,命令的默认参数将使用default标出。 4.应用实例 添加IP地址192.168.2.2/24到eth0网卡上: #ip addr add 192.168.1.1/24 dev eth0 丢弃源地址属于192.168.2.0/24网络的所有数据报: #ip rule add from 192.168.2.0/24 prio 32777 reject ping 1.作用 ping检测主机网络接口状态,使用权限是所有用户。 2.格式 ping [-dfnqrRv][-c][-i][-I][-l][-p][-s][-t] IP地址 3.主要参数 -d:使用Socket的SO_DEBUG功能。 -c:设置完成要求回应的次数。 -f:极限检测。 -i:指定收发信息的间隔秒数。 -I:网络界面使用指定的网络界面送出数据包。 -l:前置载入,设置在送出要求信息之前,先行发出的数据包。 -n:只输出数值。 -p:设置填满数据包的范本样式。 -q:不显示指令执行过程,开头和结尾的相关信息除外。 -r:忽略普通的Routing Table,直接将数据包送到远端主机上。 -R:记录路由过程。 -s:设置数据包的大小。 -t:设置存活数值TTL的大小。 -v:详细显示指令的执行过程。 ping 命令是使用最多的网络指令,通常我们使用它检测网络是否连通,它使用ICMP协议。但是有时会有这样的情况,我们可以浏览器查看一个网页,但是却无法 ping通,这是因为一些网站处于安全考虑安装了防火墙。另外,也可以在自己计算机上试一试,通过下面的方法使系统对ping没有反应: # echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all netstat 1.作用 检查整个Linux网络状态。 2.格式 netstat [-acCeFghilMnNoprstuvVwx][-A][--ip] 3.主要参数 -a--all:显示所有连线的Socket。 -A:列出该网络类型连线的IP相关地址和网络类型。 -c--continuous:持续列出网络状态。 -C--cache:显示路由器配置的快取信息。 -e--extend:显示网络其它相关信息。 -F--fib:显示FIB。 -g--groups:显示多重广播功能群组组员名单。 -h--help:在线帮助。 -i--interfaces:显示网络界面信息表单。 -l--listening:显示监控的服务器的Socket。 -M--masquerade:显示伪装的网络连线。 -n--numeric:直接使用IP地址,而不通过域名服务器。 -N--netlink--symbolic:显示网络硬件外围设备的符号连接名称。 -o--timers:显示计时器。 -p--programs:显示正在使用Socket的程序识别码和程序名称。 -r--route:显示Routing Table。 -s--statistice:显示网络工作信息统计表。 -t--tcp:显示TCP传输协议的连线状况。 -u--udp:显示UDP传输协议的连线状况。 -v--verbose:显示指令执行过程。 -V--version:显示版本信息。 -w--raw:显示RAW传输协议的连线状况。 -x--unix:和指定“-A unix”参数相同。 --ip--inet:和指定“-A inet”参数相同。 4.应用实例 netstat 主要用于Linux察看自身的网络状况,如开启的端口、在为哪些用户服务,以及服务的状态等。此外,它还显示系统路由表、网络接口状态等。可以说,它是一个综合性的网络状态的察看工具。在默认情况下,netstat只显示已建立连接的端口。如果要显示处于监听状态的所有端口,使用-a参数即可: #netstat -a Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 *:32768 *:* LISTEN tcp 0 0 *:32769 *:* LISTEN tcp 0 0 *:nfs *:* LISTEN tcp 0 0 *:32770 *:* LISTEN tcp 0 0 *:868 *:* LISTEN tcp 0 0 *:617 *:* LISTEN tcp 0 0 *:mysql *:* LISTEN tcp 0 0 *:netbios-ssn *:* LISTEN tcp 0 0 *:sunrpc *:* LISTEN tcp 0 0 *:10000 *:* LISTEN tcp 0 0 *:http *:* LISTEN ...... 上面显示出,这台主机同时提供HTTP、FTP、NFS、MySQL等服务。 telnet 1.作用 telnet表示开启终端机阶段作业,并登入远端主机。telnet是一个Linux命令,同时也是一个协议(远程登陆协议)。 2.格式 telnet [-8acdEfFKLrx][-b][-e][-k][-l][-n][-S][-X][主机名称IP地址] 3.主要参数 -8:允许使用8位字符资料,包括输入与输出。 -a:尝试自动登入远端系统。 -b:使用别名指定远端主机名称。 -c:不读取用户专属目录里的.telnetrc文件。 -d:启动排错模式。 -e:设置脱离字符。 -E:滤除脱离字符。 -f:此参数的效果和指定“-F”参数相同。 -F:使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。 -k:使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。 -K:不自动登入远端主机。 -l:指定要登入远端主机的用户名称。 -L:允许输出8位字符资料。 -n:指定文件记录相关信息。 -r:使用类似rlogin指令的用户界面。 -S:服务类型,设置telnet连线所需的IP TOS信息。 -x:假设主机有支持数据加密的功能,就使用它。 -X:关闭指定的认证形态。 4.应用说明 用户使用telnet命令可以进行远程登录,并在远程计算机之间进行通信。用户通过网络在远程计算机上登录,就像登录到本地机上执行命令一样。为了通过 telnet登录到远程计算机上,必须知道远程机上的合法用户名和口令。虽然有些系统确实为远程用户提供登录功能,但出于对安全的考虑,要限制来宾的操作权限,因此,这种情况下能使用的功能是很少的。 t
Linux 操作系统基础教程 清华大学信息学院计算机系 目 录 前言..................................................................................................................................................2 第一讲 Linux基础...........................................................................................................................2 一.什么是Linux?.................................................................................................................2 二.安装Linux的好处?.........................................................................................................3 三.如何得到Linux?.............................................................................................................3 四.如何得到Linux的最新消息?.........................................................................................3 五.Linux操作系统上有什么应用?.....................................................................................4 六.在那里可以找到讨论区?..............................................................................................5 七.安装过程..........................................................................................................................5 第二讲 Linux基础进阶...................................................................................................................5 一.Linux的文件系统结构.....................................................................................................6 二. 文件类型...........................................................................................................................7 三.Linux基本操作命令............................................................................................................8 四.基本的系统管理命令.......................................................................................................14 五.关於 Process 处理的指令...............................................................................................16 六. 关於字串处理的指令.....................................................................................................17 七. 网路上查询状况的指令.................................................................................................17 八. 网路指令.........................................................................................................................18 九. 关於通讯用的指令.........................................................................................................21 十. 编译器( Compiler )..........................................................................................................22 十一. 有关列印的指令.........................................................................................................22 第三讲 Linux下的网络服务,配置问题和常用工具.................................................................24 一.Linux下的网络服务.......................................................................................................24 二.几种重要的配置文件.......................................................................................................26 三.Linux下常用的工具软件..................................................................................................28 尾语................................................................................................................................................31 前言 Linux 是在 1991 年发展起来的与 UNIX兼容的操作系统,可以免费使用,它的源代码 可以自由传播且可任人修改、充实、发展,开发者的初衷是要共同创造一个完美、理想并 可以免费使用的操作系统。 我们并不能使同学们通过这次系列讲座成为一个 UNIX 类操作系统的高手,这次系列 讲座的目的就是在同学们间普及 Linux 基础知识,为今后我们更加接近的了解 Linux 做一 个好的开端。 第一讲 Linux基础 在这一讲,我们主要是了解一下 Linux 的概况,以及对 Linux 有一个初步的感性认识。 一.什么是Linux? Linux 是一个以 Intel 系列 CPU(CYRIX,AMD 的 CPU也可以)为硬件平台,完全免费的 UNIX 兼容系统,完全适用于个人的 PC。它本身就是一个完整的 32 位的多用户多任务操作 系统,因此不需要先安装 DOS 或其他的操作系统(MS Windows, OS2, MINIX..)就可以进 行直接的安装。 Linux的最早起源是在1991年10月5日由一位芬兰的大学生Linux Torvalds (Torvalds@kruuna.helsinki.fi)写了 Linux核心程序的 0.02 版开始的,但其后的发展却几乎都 是由互联网上的 Linux社团(Linux Community)互通交流而完成的。Linux 不属于任何一 家公司或个人,任何人都可以免费取得甚至修改它的源代码(source code)。Linux 上的大部 分软件都是由 GNU倡导发展起来的,所以软件通常都会在附着 GNU Public License(GPL) 的情况下被自由传播。GPL 是一种可以使你免费获得自由软件的许可证,因此 Linux 使用 者的使用活动基本不受限制(只要你不将它用于商业目的),而不必像使用微软产品是那样, 2需要为购满许可证付出高价还要受到系统安装数量的限制。我在讲义的最后面附有 GPL 的 非官方文译稿。目前 Linux 国的发行版本(Linux Distribution)主要有 Red Hat (红帽子) , Slackware, Caldera, Debian, Red Flag (红旗) , Blue Point (蓝点) , Xteam Linux (冲浪) , Happy Linux(幸福Linux), Xlinux 等若干种,我推荐同学们使用的发行版本是 Red Hat(事实标 准)和 Xlinux(安装最容易)。 二.安装Linux的好处? Linux的核心具有 Windows 无法比拟的稳定性和高效率,在不使用 X Windows 的情况 下,它占用系统资源较少,可以使一台 Intel486摇身一变成为高效工作站。对于想要学习 UNIX的用户来说,使他们熟悉 UNIX 操作环境,通往"骨灰级"高手境界的一大捷径。最重 要的是,Linux 上有公认的 C 语言世界最好的编译器 gcc,如果你想得到一个效率更高的开 发环境(并不一定是最友好的,但一定是最强大的),我建议你一定要好好的熟悉一下 Linux。 三.如何得到Linux? 据我所知,大多数的 Linux 发行版本(Linux distribution)和核心(Kernel)都是可以 从网上下载的,但是我不推荐易用这种方法得到 Linux,因为仅仅核心就有几十个 Mbit 的 数据量,而一个完整的发行版本大概都是 1Gbit 左右的数据量,你自己可以估计一下得用多 少时间来下载它们?我建议你最好去软件商店买光盘来,因为 Linux 的产品光盘是非常便宜 的,连带许可证 GPL 在内你大概支付 50 元人民币就可以,而具有同样功能的 Windows NT 4.0 你至少得付出 17000元人民币(有一点需要声明:在你购买光盘时 GPL 许可证你是不会 肉眼看到的)。直接到商店去买,可以省去你很多麻烦,因为从网上下载的 Linux有很多它 还是要求你有光盘刻录工具将安装文件刻到光盘上。 四.如何得到Linux的最新消息? 关于 Linux 的站点现在到处都是,我这里向大家推荐的是一个关于 Linux 核心最新消息 的一个网站,你可以得到核心(Kernel)发展情况的最新信息。网址如下: http://www.kernel.org 另外还有一个非常著名的讨论组,你也可以去看看:http://www.linuxforum.net 另外还有一 个我常去的讨论组,这个讨论组是有高手专门维护的,而且回应贴子的速度很快: http://www.coventive.com.cn/club/default.htm在我这份讲义快写完的时候,又有一个非常好的 自由软件团体出现了,那就是 AKA,大家可以到他们的网页上去看看,里面有许多很实用的 3信息:http://www.aka.org.cn 五.Linux操作系统上有什么应用? Linux 上有丰富的的应用软件,在这里我给大家做一个简单的介绍,具体它们是什么样 子我会在讲座上为大家一一演示。 文本处理方面(控制台界面,X Window界面在后面介绍) vi 最令 UNIX类操作系统初学者裹足不前的 editor,然而只要你习惯于操作,你会觉得 它比任何的 editor都好用,且功能强大。 pico 一种风格很像 Microsoft DOS的 EDIT 的一种文本编辑器。 文化方面 XCIN+Crxvt 缺省的 Linux 系统是不支持显示文的,虽然现在国内涌现出许多著名的 Linux 汉化厂商,但是一些著名的 Linux distribution 如 Red Hat、Debian、Caldera 仍然不支 持文的输入和输出。这套汉化工具组合在控制台(console)方式和 X Window方式下都可 以显示和输入汉字信息。 Cxterm 可以很容易的自行设置输入法,或者修改现有的输入法表格。 视窗界面(window manager)方面 KDE 这是 X Window System使用率最高的 Window Manager。 lFvwm 公认的最为好用的 Window Manager之一。 Fvwm95 拥有和 Microsoft Win95 同样界面的 Window Manager。 Afterstep 公认的最好看的 Window Manager,但号内存也很大。 Enlightenment 界面最华丽的 Window Manager, Win95 和它相比简直就是 nothing,但是 号内存太大,有点华而不实。 lIcewin 又一个极富个性的 Window Manager。 视窗应用软件方面 WWW Browser Netscape公司的 navigator3.x 和communicator4.x 版可用,使用方法和 MS Windows上一样。 图像处理 GIMP是类似于 Photoshop的绘图软件,号称是 Linux 上最强的绘图软件。 看图工具 MTV 这是一个可以播放 VCD的软件,但是它是共享软件(Shareware),不是免费软件, 我们也得不到它的源代码。 Star Office 这是一套著名的办公软件,我个人认为它无论在界面上还是在功能上都强于 Microsoft Office 产品。唯一的缺憾是他不支持汉字,无论 GB 还是 BIG5。 Word Perfect 这是一个非常精彩的字处理软件,功能类似于 Microsoft Word。 4文杰字处理系统 这是一套由韩国人开发的字处理系统,功能强大,有专门的文版推出, 类似于 Microsoft Word。 编译环境 gcc 公认的C 语言世界功能最为强大的编译器,但是界面不是很友好。 除此之外还有 FORTRAN、 Pascal、 GNU make、 GNU debugger、 GNU LISP、 GNU PERL、 TCL。 这里因为本人对这些编译工具都不熟悉,因此不多介绍。 MS Windows的模拟环境 WINE 可以使绝大多数的 16 位 MS Window程序运行在这个模拟环境。但是不支持 32 位的程序。 六.在那里可以找到讨论区? 大家最熟悉的是北邮的 BBS: 202.204.7.235 port:23 七.安装过程 这是非常重要的一部分,希望大家仔细了解本部分内容。 就我个人认为,对于初学者来说,Linux 的安装过程是相当难的,新手往往会遇到系统 屡装不成的情况。遇到这种事情,是非常痛苦的,但是几乎每个新手又都会遇到,因此我 觉得安装过程应当仔细的说明一下。但是由于篇幅有限,我不见这个这个问题在讲义的正 文陈述,而是把它放在附文 2 仔细说明。希望没有安装过 Linux 的同学们将这篇文章看 一看。我想在上课的时候我会给大家演示一遍安装的过程。 第二讲 Linux基础进阶 经过上一节课的探讨,我想同学们应该对 Linux 有了一个初步的感性认识,但我们的 认识还只是处在一个尚需进步的表层上。通过这一节的学习,同学们会对 Linux 的体系结构, 它的基本操作,基本功能有一个更进一步的认识。 5 一.Linux的文件系统结构 Linux的文件系统和MS-Windows的文件系统有很大的不同,对于微软视窗系统的文件 结构我在这里不再多说,我们主要了结一下 linux的文件系统结构. linux 只有一个文件树,整 个文件系统是以一个树根"/"为起点的,所有的文件和外部设备都以文件的形式挂结在这个文 件树上,包括硬盘,软盘,光驱,调制解调器等,这和以"驱动器盘符为基础的 MS-Windows 系统 是大不相同的.Linux 的文件结构体现了这个操作系统简洁清析的设,常我们能够接触到的 linux 发行版本的根目录大都是以下结构: /bin /etc /lost+found /sbin /var /boot /root /home /mnt /tmp /dev /lib /proc /usr 现在我将这些目录给大家做一个简要的介绍: 1. /bin和/sbin 使用和维护UNIX和Linux系统的大部分基本程序都包含在/bin和/sbin里,这两个目录 的名气之所以包含 bin,是因为可执行的程序都是二进制文件(binary files). /bin 目录通常用来存放用户最常用的基本程序,如: login Shells 文件操作实用程序 系统实用程序 压缩工具 /sbin 目录通常存放基本的系统和系统维护程序,如: fsck fdisk mkfs shutdown lilo init 存放在这两个目录的程序的主要区别是:/sbin 的程序只能由 root(管理员)来执行. 2. /etc 这个目录一般用来存放程序所需的整个文件系统的配置文件,其的一些重要文件如 下: passwd shadow fstab hosts motd profile shells services lilo.conf 3. /lost+found 这个目录专门是用来放那些在系统非正常菪机后重新启动系统时,不知道改网哪里恢复 的"流浪"文件的。 4. /boot 这个目录下面存放着和系统启动有关系的各种文件,包括系统的引导程序和系统核心 部分。 65. /root 这是系统管理员(root)的主目录。 6. /home 系统所有用户的主目录都存放在/home ,它包含实际用户(人)的主目录和其他用户 的主目录.Linux同 UNIX 的不同之处是,Linux的 root 用户的主目录通常是在/root或 /home/root,而 UNIX 通常是在/。 7. /mnt 按照约定,像 CD-ROM,软盘,Zip盘,或者 Jaz这样的可以动介质都应该安装在/mnt 目录下,/mnt 目录通常包含一些子目录,每个子目录是某种特定设备类型的一个安装点。 例如: /cdrom /floppy /zip /win .... 如果我们要使用这些特定设备,我们需要用 mount 命令从/dev 目录将外部设备挂接 过来。在这里大家可能看到了有一个 win 的目录,这是我的机子上面做的一个通向 windows 文件系统的挂接点,这样我通过访问这个目录就可以访问到我在 windows 下面的文件了。 但如果你的 windows 文件系统是 NTFS 格式,那么这个办法就不行了。 8. /tmp和/var 这两个目录用来存放临时文件和经常变动的文件。 9. /dev 这是一个非常重要的目录,它存放着各种外部设备的镜像文件,其有一些内容我们 是要牢牢记住的。例如第一个软盘驱动器的名字是 fd0;第一个硬盘的名字是 hda,硬盘的 第一个分区是 hda1,第二个分区是 hda2;第一个光盘驱动器的名字是 hdc;此外,还用 modem 和其他外设的名字,在这么多的名字,我们只需要记住最最常用的那几个外设就可以了。 10. /usr 按照约定,这个目录用来存放与系统的用户直接相关的程序或文件,这里面有每一个 系统用户的主目录,就是相对于他们的小型"/"。 11. /proc 这个目录下面的内容是当前在系统运行的进程的虚拟镜像,我们在这里可以看到由 当前运行的进程号组成的一些目录,还有一个记录当前内存内容的 kernel 文件。 就个人经验,我认为这些目录以及在它们下面应该存储什么内容,我们都应当很熟练的 记下来,这对于我们进一步的使用系统是很有帮助的。 二. 文件类型 本来我是想把基本操作命令放在这里介绍一下,但是这些命令又不少是涉及到文件类 7型的,所以我就只好先介绍一下文件类型了。 Linux 的文件类型大致可分为五类,而且它支持长文件名,不论是文件还是目录名,最 长可以达到 256 个字节。如果你能够用 128 个汉字写一片小作文,那你也可以用它来做某 个文件的文件名(当然这里面不能有不合规定的命名字符存在)。 1. 一般性文件 一般性文件,例如纯文本文件 mtv-0.0b4.README,设置文件 lilo.conf,记录文件 ftp.log 等等都是。一般类型的文件在控制台的显示下都没有颜色,系统默认的是白色。 2. 目录 至于目录是什么意思我就不解释了,我的任务是要告诉大家,你可以用 cd+目录名进 入到这个目录去,而这个目录在控制台下显示的颜色是蓝色的,非常容易辨认。如果你 用 ls -l 来观看它们,会发现它们的文件属性(共 10 个字符)的一个字符是 d,这表明它是一 个目录,而不是其它的东西。 三.Linux基本操作命令 首先介绍一个名词"控制台(console)",它就是我们通常见到的使用字符操作界面的 人机接口,例如 dos。我们说控制台命令,就是指通过字符界面输入的可以操作系统的命令, 例如dos命令就是控制台命令。我们现在要了解的是基于Linux操作系统的基本控制台命令。 有一点一定要注意,和 dos 命令不同的是,Linux 的命令(也包括文件名等等)对大小 写是敏感的,也就是说,如果你输入的命令大小写不对的话,系统是不会做出你期望的响 应的。 1. ls 这个命令就相当于 dos 下的 dir命令一样,肯定是我第一个就要介绍的,这也是 Linux 控制台命令最为重要几个命令之一。ls 最常用的参数有三个: -a -l -F。 ls -a Linux 上的文件以.开头的文件被系统视为隐藏文件,仅用 ls 命令是看不到他们的,而用 ls -a 除了显示 一般文件名外,连隐藏文件也会显示出来。 ls -l(这个参数是字母 L 的小写,不是数字 1) 这个命令可以使用长格式显示文件内容,如果需要察看更详细的文件资料,就要用到 ls -l 这个指令。例如我在某个目录下键入 ls -l 可能会显示如下信息(最上面两行是我自己加 的): 位置 1 2 3 4 5 6 7 文件属性 文件数 拥有者 所属的group 文件大小 建档日期 文件名 drwx------ 2 Guest users 1024 Nov 21 21:05 Mail 8 -rwx--x--x 1 root root 89080 Nov 7 22:41 tar* -rwxr-xr-x 1 root bin 5013 Aug 15 9:32 uname* lrwxrwxrwx 1 root root 4 Nov 24 19:30 zcat->gzip -rwxr-xr-x 1 root bin 308364 Nov 29 7:43 zsh* -rwsr-x--- 1 root bin 9853 Aug 15 5:46 su* 下面,我为大家解释一下这些显示内容的意义。 第一个栏位,表示文件的属性。 Linux 的文件基本上分为三个属性:可读(r),可写(w),可执行(x)。但是这里有 十个格子可以添(具体程序实现时,实际上是十个 bit 位)。第一个小格是特殊表示格,表 示目录或连结文件等等,d 表示目录,例如 drwx------;l 表示连结文件,如 lrwxrwxrwx;如果 是以一横"-"表示,则表示这是文件。其余剩下的格子就以每 3 格为一个单位。因为 Linux 是多用户多任务系统,所以一个文件可能同时被许多人使用,所以我们一定要设好每个文 件的权限,其文件的权限位置排列顺序是(以-rwxr-xr-x 为例): rwx(Owner)r-x(Group)r-x(Other) 这个例子表示的权限是:使用者自己可读,可写,可执行;同一组的用户可读,不可 写,可执行;其它用户可读,不可写,可执行。另外,有一些程序属性的执行部分不是 X, 而是 S,这表示执行这个程序的使用者,临时可以有和拥有者一样权力的身份来执行该程序。 一般出现在系统管理之类的指令或程序,让使用者执行时,拥有 root身份。 第二个栏位,表示文件个数。 如果是文件的话,那这个数目自然是 1 了,如果是目录的话,那它的数目就是该目录 的文件个数了。 第三个栏位,表示该文件或目录的拥有者。 若使用者目前处于自己的 Home,那这一栏大概都是它的账号名称。 第四个栏位,表示所属的组(group)。 每一个使用者都可以拥有一个以上的组,不过大部分的使用者应该都只属于一个组,只 有当系统管理员希望给予某使用者特殊权限时,才可能会给他另一个组。 第五栏位,表示文件大小。 文件大小用 byte 来表示,而空目录一般都是 1024byte,你当然可以用其它参数使文件 显示的单位不同,如使用 ls -k 就是用 kb 莱显示一个文件的大小单位,不过一般我们还是以 byte 为主。 第六个栏位,表示创建日期。 以"月,日,时间"的格式表示,如 Aug 15 5:46表示 8 月15日早上 5:46分。 第七个栏位,表示文件名。 我们可以用 ls -a 显示隐藏的文件名。 Ls -F(注意,是大写的 F) 9 使用这个参数表示在文件的后面多添加表示文件类型的符号,例如*表示可执行,/表示 目录,@表示连结文件,这都是因为使用了-F这个参数。但是现在基本上所有的 Linux 发 行版本的 ls都已经内建了-F参数,也就是说,不用输入这个参数,我们也能看到各种分辨 符号。 2. cd命令 这个命令是用来进出目录的,它的使用方法和在 dos 下没什么两样,所以我觉得没什么 可说的,但有两点我补充一下。 首先,和dos 不同的是Linux 的目录对大小写是敏感的,如果大小写没拼对,你的 cd 操作是成功不了的。 其次,cd如果直接输入,cd 后面不加任何东西,会回到使用者自己的 Home Directory。 假设如果是 root,那就是回到/root.这个功能同 cd ~是一样的。 3. mkdir,rmdir 命令 mkdir 命令用来建立新的目录,rmdir用来删除以建立的目录,这两个指令的功能不再 多加介绍,他们同 dos下的 md,rd 功能和用法都是基本一样的。 4. cp命令 这个命令相当于 dos下面的 copy命令,具体用法是: cp -r 源文件(source) 目的文件(target) 参数 r是指连同元文件的子目录一同拷贝。熟悉 dos 的读者用起这个命令来会觉得更 方便,毕竟比在 dos 下面要少敲两下键盘。 5. rm 命令 这个命令是用来删除文件的,和 dos 下面的 rm(删除一个空目录)是有区别的,大家 千万要注意。Rm命令常用的参数有三个: -i,-r,-f。 比如我现在要删除一个名字为 text 的一个文件: rm -i test 系统会询问我们:"rm:remove 'test'?y",敲了回车以后,这个文件才会真的被删除。之 所以要这样做,是因为 linux 不象dos那样有 undelete 的命令,或者是可以用 pctool 等工具 将删除过的文件救回来,linux 删除过的文件是救不回来的,所以使用这个参数在删除前 让你再确定一遍,是很有必要的。 rm -r 目录名 这个操作可以连同这个目录下面的子目录都删除,功能上和 rmdir相似。 rm -f 文件名(目录名) 这个操作可以进行强制删除。 6. mv 命令 这个命令的功能是移动目录或文件,引申的功能是给目录或文件重命名。它的用法同 10dos 下面的 move 基本相同,这里不再多讲。当使用该命令来移动目录时,他会连同该目录 下面的子目录也一同移走。另外因为 linux 下面没有 rename 的命令,所以如果你想给一个 文件或目录重命名时可以用以下方法: mv 原文件(目录)名 新的文件(目录)名 7. du,df 命令 du 命令可以显示目前的目录所占的磁盘空间,df 命令可以显示目前磁盘剩余的磁盘空 间。 如果 du 命令不加任何参数,那么返回的是整个磁盘的使用情况,如果后面加了目录的 话,就是这个目录在磁盘上的使用情况(这个功能可是 dos 没有的呦)。不过我一般不喜欢 用 du,因为它给出的信息是在是太多了,我看不过来,而 df这个命令我是最常用的,因为 磁盘上还剩多少空间对我来说是很重要的。 8. cat 命令 这个命令是 linux 非常重要的一个命令,它的功能是显示或连结一般的 ascii 文本文 件。cat是 concatenate 的简写,类似于 dos 下面的 type 命令。它的用法如下: cat text 显示 text 这个文件 cat file1 file2 依顺序显示 file1,file2的内容 cat file1 file2>file3 把 file1,file2 的内容结合起来,再"重定向(>)"到 file3文件。 "〉"是一个非常有趣的符号,是往右重定向的意思,就是把左边的结果当成是输入,然 后输入到 file3 这个文件。这里要注意一点是 file3 是在重定向以前还未存在的文件,如果 file3 是已经存在的文件,那么它本身的内容被覆盖,而变成 file1+file2的内容。 如果〉左边没有文件的名称,而右边有文件名,例如: cat >file1 结果是会"空出一行空白行",等待你输入文字,输入完毕后再按[Ctrl]+[c]或[Ctrl]+[d], 就会结束编辑,并产生 file1 这个文件,而 file1 的内容就是你刚刚输入的内容。这个过程和 dos 里面的copy con file1的结果是一样的。 另外,如果你使用如下的指令: cat file1>>file2 这将变成将 file1 的文件内容"附加"到 file2 的文件后面,而 file2 的内容依然存在,这种 重定向符〉〉比〉常用,可以多多利用。 9. more,less命令 这是两个显示一般文本文件的指令。 如果一个文本文件太长了超过一个屏幕的画面,用 cat 来看实在是不理想,就可以试试 more 和 less两个指令。More 指令可以使超过一页的文件临时停留在屏幕,等你按任何的一 个键以后,才继续显示。而 less 除了有 more 的功能以外,还可以用方向键往上或网下的滚 11动文件,所以你随意浏览,阅读文章时,less 是个非常好的选择。 10. clear 命令 这个命令是用来清除屏幕的,它不需要任何参数,和 dos 下面的 clr具有相同的功能, 如果你觉得屏幕太紊乱,就可以使用它清除屏幕上的信息。 11. pwd命令 这个命令的作用是显示用户当前的工作路径,这个命令不用多说,大家一试即知。 12. ln命令 这是 linux又一个非常重要命令,请大家一定要熟悉。它的功能是为某一个文件在另 外一个位置建立一个同不的链接,这个命令最常用的参数是-s,具体用法是: ln -s 源文件 目标文件 当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都 放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在其它的目录下 用 ln 命令链接(link)它就可以,不必重复的占用磁盘空间。例如: ln -s /bin/less /usr/local/bin/less -s 是代号(symbolic)的意思。 这里有两点要注意:第一,ln 命令会保持每一处链接文件的同步性,也就是说,不论 你改动了哪一处,其它的文件都会发生相同的变化;第二,ln 的链接又软链接和硬链接两 种,软链接就是 ln -s ** **,它只会在你选定的位置上生成一个文件的镜像,不会占用磁盘空 间,硬链接 ln ** **,没有参数-s, 它会在你选定的位置上生成一个和源文件大小相同的文件, 无论是软链接还是硬链接,文件都保持同步变化。 如果你用ls 察看一个目录时,发现有的文件后面有一个@的符号,那就是一个用 ln 命 令生成的文件,用 ls -l命令去察看,就可以看到显示的 link 的路径了。 13. man命令 如果你的英文足够好,那完全可以不靠任何人就精通 linux,只要你会用 man。Man 实 际上就是察看指令用法的 help,学习任何一种 UNIX类的操作系统最重要的就是学会使用 man 这个辅助命令。man 是 manual(手册)的缩写字,它的说明非常的详细,但是因为它都是 英文,看起来非常的头痛。建议大家需要的时候再去看 man,平常吗,记得一些基本用法 就可以了。 14. logout 命令 一看就知道了,这是退出系统的命令,我就不多说了。要强调的一点是,linux是多用 户多进程的操作系统,因此如果你不用了,退出系统就可以了,关闭系统你就不用操心了, 那是系统管理员的事情。但有一点切记,即便你是单机使用 linux,logout 以后也不能直接 关机,因为这不是关机的命令。 15. Mount 命令 12这是 Linux 初学者问得最多的问题。由于大家已习惯了微软的访问方法,总想用类似 的思路来找到软盘和光盘。但在 Linux 下,却沿袭了 UNIX 将设备当作文件来处理的方法。 所以要访问软盘和光盘,就必须先将它们装载到 Linux 系统的/mnt 目录来。 装载的命令是 mount,格式如下:mount -t 文件系统类型 设备名 装载目录 文件 系统类型就是分区格式,Linux 支持的文件系统类型有许多: msdos DOS 分区文件系统类型 vfat 支持长文件名的 DOS 分区文件(可以理解为 Windows 文件)系统类型 iso9660 光盘的文件系统类型 ext2 Linux 的文件系统类型 ...... 设备名,指的是你要装载的设备的名称。软盘一般为/dev/fd0 fd1;光盘则根据你的 光驱的位置来决定,通常光驱装在第二硬盘的主盘位置就是/dev/hdc;如果访问的是 DOS 的 分区,则列出其设备名,如/dev/hda1 是指第一硬盘的第一个分区。 装载目录,就是你指 定设备的载入点。 z 装载软盘 首先用 mkdir /mnt/floppy 在/mnt 目录下建立一个空的 floppy目录,然后输入 mount -t msdos /dev/fd0 /mnt/floppy 将 DOS 文件格式的一张软盘装载进来,以后就可以在 /mnt/floppy目录下找到这张软盘的所有内容。 z 装载 Windows 所在的C 盘 mkdir /mnt/c 在/mnt 目录下建立一个空的 c 目录; mount -t vfat /dev/hda1 /mnt/c 将Windows 的C盘按长文件名格式装载到/mnt/c 目 录下,以后在该目录下就能读写 C盘根目录的内容 z 装载光盘 mkdir /mnt/cdrom 在/mnt 目录下建立一个空的 cdrom 目录; mount -t iso9660 /dev/hdc /mnt/cdrom 将光盘载入到文件系统来, 将在/mnt/cdrom 目录下找到光盘内容。有的 Linux 版本允许用 mount /dev/cdrom 或 mount /mnt/cdrom 命 令装载光盘。 要注意的是,用 mount命令装入的是软盘、光盘,而不是软驱、光驱。有些初学者容易 犯一个毛病,以为用上面命令后,软驱就成了/mnt/floppy,光驱就成了/mnt/cdrom,其实 不然,当你要换一张光盘或软盘时,一定要先卸载,再对新盘重新装载。 z 卸载 卸载的命令格式是:umonut 目录名,例如要卸载软盘,可输入命令 umonut /mnt/floppy。 要注意的是,在卸载光盘之前,直接按光驱面板上的弹出键是不会起作用的。 13 四.基本的系统管理命令 系统管理基本上可以分为两种,一种是 root(系统管理员)对 linux的系统管理部分, root 本身的职责就是负责整个 linux系统的运行稳定,增加系统安全性,校验使用者的身份, 新增使用者或删除恶意的使用者,并明确每一个在机器上的使用者权限等等。另一种就是 每一个使用者(包括 root)对自己文件的权限管理。因为 linux 是多用户多任务系统,每一 个使用者都有可能将其工作的内容或是一些机密性的文件放在 Linux工作站上,所以对每个 文件或是目录的归属和使用权,都要有非常明确的规定。下面我就按管理员和一般用户分 类来介绍基本的系统管理命令。 z 管理员使用的系统管理指令 1. adduser 命令 新增使用者账号的命令,如果你想新增一个叫做 jack 的用户,那么需在控制台下输入: adduser jack 这样就增加了一个名字为 jazk 的用户,要注意这里对大小写是敏感的。另外,新增的 用户是没有口令的,你还应当为用户设置口令或者是吩咐用户在第一次登录系统的时候为 自己设置口令。 2. passwd命令 这个命令可以修改特定用户的口令,使用格式是: passwd 用户名 这是,系统会提示你输入新密码,你输入第一遍后,还要输入第二遍进行确认。输入 两遍相同的密码之后,系统就接受了新的密码。如果这个命令是一般用户来使用的话,那 就只能改变它自己的密码。 3. find,whereis,locate命令 这三个命令都是用来查找文件的,使用格式是: find 路径名称 -name 文件名 参数(我们这里就不讨论参数了) whereis 文件名 locate 文件名 一般来说,find 命令功能最为强大,但是对硬件的损耗也是最大的,当你使用 find 去 查找你个文件时,你会发现硬盘等在不停的闪动,这就意味着你的硬盘可能会比别人的少 用个三四年。当你使用whereis 或locate 去查找文件时,你会发现硬盘却是安安静静的,这 是因为这两个命令是从系统的数据库查找文件,而不是去拼命的读硬盘。所以,如果平 常你只是想找一些笑文件的话,使用 whereis或 locate 就可以了,如果你是要进行系统管理 的工作,那么使用 find再加上一些参数就可以满足你的要求了。 144. su命令 这个命令可以让普通用户变成具有管理员权限的超级用户(superuser),只要它知道知 道管理员的密码就可以。多用户多任务系统的强调的重点之一就是系统的安全性,所以应 避免直接使用 root 身份登录系统去做一些日常性的操作,因为时间一久 root 密码就有可能 被知道而危害到系统安全。所以平常应避免用 root 身份登录,即使要管理系统,也请尽量 使用 su 指令来临时管理系统,然后记住定期的更换 root 密码。 加入你现在是以一个普通用户的身份登录系统,现在你输入: su 系统会要求你输入管理员的口令,当你输入正确的密码后,就可以获得全部的管理员 权限,这是你就是超级用户(superuser)。但你执行完各种管理操作以后,只要输入 logout 就 可以退回到原先的那个普通用户的状态。 5. shutdown,halt 命令 这两个命令是用来关闭 linux 操作系统的。 在前面我说过,作为一个普通用户是不能够随便关闭系统的,因为虽然你用完了机器, 可是这时候可能还有其它的用户正在使用系统。因此,关闭系统或者是重新启动系统的操 作只有管理员才有权执行。另外 linux 系统在执行的时候会用部分的内存作缓存区,如果内 存上的数据还没有写入硬盘,就把电源拔掉,内存就会丢失数据,如果这些数据是和系统 本身有关的,那么会对系统造成极大的伤害。一般,我们建议在关机之前执行三次同步指 令 sync,可以用分号";"来把指令合并在一起执行,如: # sync;sync;sync 使用 shutdown 关闭系统的时候有以下几种格式: shutdown (系统内置 2分钟关机,并传送一些消息给正在使用的 user) shutdown -h now (下完这个指令,系统立刻关机) shutdown -r now (下完这个指令,系统立刻重新启动,相当于 reboot) shutdown -h 20:25 (系统会在今天的 20:25 关机) shutdown -h +10 (系统会在十分钟后关机) 如果在关机之前,要传送信息给正在机器上的使用者,可以加"-q"的参数,则会输出系 统内置的 shutdown 信息给使用者,通知他们离线。 halt 命令就不用多说了,只要你输入 halt,系统就会开始进入关闭过程,其效果和 shutdown -h now是完全一样的,我每次关机的时候都是用 halt。 6. reboot 命令 一看这个词,就知道这个命令是用来重新启动系统的。 当你输入 reboot 后,你就会看到系统正在将一个一个的服务都关闭掉,然后再关闭文 件系统和硬件,接着机器开始重新自检,重新引导,再次进入 linux 系统。 15z 普通用户使用的系统管理指令 1. chown命令 这个命令的作用是改变文件的所有者。 如果你有一个文件名为 classment.list 的文件,所有权要给于另一个账号为 golden的同 学,则可用 chown 来实现这个操作,但是当你改变了文件的所有者以后,该文件虽然在你 的 Home 目录下,可是你已经无任何修改或删除该文件的权限了,这一点同学们千万要注 意。通常会用到这个指令的时机,应该是你想让 linux 机器上的某位使用者到你的 Home 下 去用谋个文件是会用到。不过,泼出去的水就收不回来了,你用这个命令的时候可一定要 想清楚呦。 2. chmod命令 这个命令用来改变目录或文件的属性,是 linux 一个应当熟悉的命令。 对这个命令,使用的方法很多,鉴于篇幅的原因,我只例出其我最常用的一种。前 面讲过,一个文件用 10个小格来记录文件的权限。前三个小格是拥有者(user)本身的权 限,间三个小格是和使用者同一组的成员(group)的权限,最后三个小格是表示其它使 用者(other)的权限。现在我们用三位的 2 进制数来表示相应的三小格的权限,例如: 111 rwx 101 r-x 011 -wx 001 -x 100 r- 这样一来,我们就可以用三个十进制的数来表示一个文件属性位上的十个格,其每 一个十进制数大小等于代表每三格的那个三位的二进制数。例如,如果一个文件的属性是: rwxr-r--,那么我们就可以用 744 来代表它的权限属性;如果一个文件的属性是:rwxrwxr--, 那它对应的三个十进制数就是 774。这样一来我们就可以用这种简便的方法指定文件的属性 了。例如,我想把一个文件 test.list的属性设置为 rwxr-x---,那么我只要执行: chmod 750 test.list 就可以了,对于改变后的权限,你用 ls -l 就可以看到。 五.关於 Process 处理的指令 1. ps ps 是用来显示目前你的 process 或系统 processes 的状况。 以下列出比较常用的参数: 其选项说明如下: -a 列出包括其他 users 的 process 状况。 -u 显示 user - oriented 的 process 状况 。 -x 显示包括没有 terminal 控制的 process 状况 。 -w 使用较宽的显示模式来显示 process 状况 。 16我们可以经由 ps 取得目前 processes 的状况,如 pid , running state 等。 2. kill kill 指令的用途是送一个 signal 给某一个 process 。因为大部份送的都是用来杀掉 process 的 SIGKILL 或 SIGHUP ,因此称为 kill 。kill 的用法 为: kill [ -SIGNAL ] pid ... kill –l SIGNAL 为一个 singal 的数字,从 0 到 31 ,其 9 是 SIGKILL ,也就是一般用来 杀掉一些无法正常 terminate 的讯号。其馀讯号的用途可参考 sigvec(2)对 signal 的 说明。你也可以用 kill -l 来察看可代替 signal 号码的数目字。kill 的详细情形请参 阅 man kill。 六. 关於字串处理的指令 1. echo echo 是用来显示一字串在终端机上。□ echo -n 则是当显示完之後不会有跳行的动 作。 2. grep/fgrep grep 为一过滤器,它可自一个或多个档案过滤出具有某个字串的行,或是自标准 输入过滤出具有某个字串的行。 fgrep 可将欲过滤的一群字串放在某一个档案,然後使用 fgrep 将包含有属於这 一群字串的行过滤出来。 grep 与 fgrep 的用法如下: grep [-nv] match_pattern file1 file2 .... fgrep [-nv] -f pattern_file file1 file2 ... -n 把所找到的行在行前加上行号列出 -v 把不包含 match_pattern 的行列出 match_pattern 所要搜寻的字串 -f 以 pattern_file 存放所要搜寻的字串 七. 网路上查询状况的指令 1. man 17man 是手册 ( manual ) 的意思。 UNIX 提供线上辅助( on-line help )的功能, man 就 是用来让使用者在使用时查询指令、系统呼叫、标准程式库函式、各种表格等的使用所用 的。man 的用法如下: man [-M path] [[section] title ] ..... man [-M path] -k keyword ... -M path man 所需要的 manual database 的路径。 我们也可以用设定环境变数 MANPATH 的方式来取代 -M 选项。 title 这是所要查询的目的物。 section 为一个数字表示 manual 的分类,通常 1 代表可执行指令,2 代表系统呼叫 ( system call ) ,3 代表标准函数,等等。 我们如要参考 eqnchar(7) 的资料,则我们就输入 man 7 eqnchar ,便能取得我们所要 的辅助讯息。 -k keyword 用来将含有这项 keyword 的 title 列出来。 man 在 UNIX 上是一项非常重要的指令,我们在本讲义所述之用法均仅只是一个大家 比较常用的用法以及简单的说明,真正详细的用法与说明还是要请你使用 man 来得到。 2. who who 指令是用来查询目前有那些人在线上。 3. w w 指令是用来查询目前有那些人在线上,同时显示出那些人目前的工作。 4. ku ku 可以用来搜寻整个网路上的 user , 不像 w 跟 who 只是针对 local host 的查询. 而且 ku 提供让使用者建立搜寻特定使用者名单的功能。你可以建立一个档案 information-file 以条列的方式存放你的朋友的资料,再建立一个档案 hosts-file 来指 定搜寻的机器名称。 ku 的指令格式可由 ku -h 得到。 八. 网路指令 UNIX 提供网路的连接,使得你可以在各个不同的机器上做一些特殊的事情,如你可以 在系上的 iris 图形工作站上做图形的处理,在系上的 Sun 上读 News ,甚至到学校的计 去找别系的同学 talk 。这些工作可以利用 UNIX 的网路指令,在你的位子上连到各个 不同的机器上工作。如此一来,即使你在寝室,也能轻易的连至系上或计来工作,不用 像以前的人必须泡在冷冰冰的机房面。 这些网路的指令如下所述: 181. rlogin 与 rsh rlogin 的意义是 remote login , 也就是经由网路到另外一部机器 login 。 rlogin 的格式是: rlogin host [ -l username ] 选项 -l username 是当你在远方的机器上的 username 和 local host 不同的时後, 必须输入的选项,否则 rlogin 将会假设你在那边的 username 与 localhost 相同,然後 在第一次 login 时必然会发生错误。 rsh 是在远方的机器上执行某些指令,而把结果传回 local host 。rsh 的格式如下: rsh host [ -l username ] [ command ] 如同 rlogin 的参数 -l username , rsh 的 -l username 也是指定 remote host 的 username 。而 command 则是要在 remote host 上执行的指令。如果没有 指定 command , 则 rsh 会去执行 rlogin ,如同直接执行 rlogin 。 不过 rsh 在执行的时候并不会像一般的 login 程序一样还会问你 password , 而是 如果你没有设定 trust table , 则 remote host 将不会接受你的 request 。 rsh 须要在每个可能会做为 remote host 的机器上设定一个档案,称为 .rhosts。这 个档案每一行分为两个部份,第一个是允许 login 的 hostname , 第二个部份则是允许 login 的username 。 例如, 在 ccsun7.csie.nctu.edu.tw 上头你的 username 为 QiangGe , 而你的 home 下面的 .rhost 有以下的一行: ccsun6.cc.nctu.edu.tw u8217529 则在 ccsun6.cc.nctu.edu.tw 机器上的 user u8217529 就可以用以下的方法来执行 rsh 程式: % rsh ccsun7.csie.nctu.edu.tw -l ysjuang cat mbox 将 ysjuang 在 ccsun7.csie.nctu.edu.tw 上的 mbox 档案内容显示在 local host ccsun6.cc.nctu.edu.tw 上。 而如果 .rhost 有这样的一行,则 ccsun6.cc.nctu.edu.tw 上的 user u8217529 将可以不用输入 password 而直接经由 rsh 或 rlogin login 到 ccsun7.csie.nctu.edu.tw 来。 注意: .rhost 是一个设定可以信任的人 login 的表格,因此如果设定不当将会让不法之徒 有可以乘机侵入系统的机会。 如果你阅读 man 5 rhosts ,将会发现你可以在第一栏用 + 来取代任何 hostname ,第二栏用 + 来取代任何 username 。 如一般 user 喜欢偷懒利用 " + username " 来代替列一长串 hostname ,但是这样 将会使得即使有一台 PC 上跑 UNIX 的 user 有与你相同的 username , 也可以得到你的 trust 而侵入你的系统。这样容易造成系统安全上的危险。因此本系禁止使用这样子的方 19式写你的 .rhost 档,如果发现将予以停机直到你找心的工作人员将其改正为止。 同理, 如果你的第二个栏位为 + , 如"hostname + " ,则你是允许在某一部机器上的"所有"user 可 以不用经由输入 password 来进入你的帐号,是壹种更危险的行为。所以请自行小心。 2. telnet telnet 是一个提供 user 经由网路连到 remote host。 telnet 的格式如下: telnet [ hostname | ip-address ] [ port ] hostname 为一个像 ccsun1 或是 ccsun1.cc.nctu.edu.tw 的 nameaddress, ip-address 则为一个由四个小於 255 的数字组成的 ip address ,如 ccsun1 的 ip-address 为 140.113.17.173 ccsun1.cc.nctu.edu.tw 的 ip-address 为 140.113.4.11 。你可以利用 telnet ccsun1 或telnet 140.113.17.173 来连到 ccsun1。 port 为一些特殊的程式所提供给外界的沟通点, 如资工系的 MUD 其 server 便提 供一些 port 让 user 由这些 port 进入 MUD 程式。详情请参阅 telnet(1)的说明。 3. ftp ftp 的意义是 File Transfer Program ,是一个很常应用在网路档案传输的程式。ftp 的格式如下: ftp [ hostname | ip-address ] 其 hostname | ip-address 的意义跟 telnet 的相同。 在进入 ftp 之後,如果与 remote host 连接上了,它将会询问你 username 与密码, 如果输入对了就可以开始进行档案传输。 在 ftp 有许多的命令,详细的使用方式请参考 ftp(1) ,这里仅列出较常用的 cd , lcd , mkdir , put , mput , get , mget , binary , ascii , prompt , help 与 quit 的 使用方式。 ascii 将传输模式设为 ascii 模式。通常用於传送文字档。 binary 将传输模式设为 binary 模式,通常用於传送执行档,压缩档与影像档等。 cd remote-directory 将 remote host 上的工作目录改变。 lcd [ directory ] 更改 local host 的工作目录。 ls [ remote-directory ] [ local-file ] 列出 remote host 上的档案。 get remote-file [ local-file ] 取得远方的档案。 mget remote-files 可使用通用字元一次取得多个档案。 put local-file [ remote-file] 将 local host 的档案送到 remote host。 mput local-files 可使用通用字元一次将多个档案放到 remote host 上。 help [ command ] 线上辅助指令。 20mkdir directory-name 在 remote host 造一个目录。 prompt 更改交谈模式,若为 on 则在 mput 与 mget 时每作一个档案之传输时均会询 问。 quit/bye 离开ftp . 利用 ftp ,我们便可以在不同的机器上将所需要的资料做转移,某些特别的机器更存 放大量的资料以供各地的使用者抓取,本校较著名的 ftp server 有 NCTUCCCA 与系上的 ftp.csie.nctu.edu.tw 。这些 ftp server 均有提供一个 user 称为 anonymous ,一般 的"外来客"可以利用这个 username取得该 server 的公共资料。不过 anonymous 在询问 password 时是要求使用 anonymous 的使用者输入其 email address,以往有许多台湾的使 用者在使用国外的 ftp server 时并没有按照人家的要求输入其 email address,而仅是随 便打一些字串,引起许多 internet user 和管理者的不满,对台湾的使用者的风评变得很 差,因此遵循各 ftp server 的使用规则也是一件相当重要的事。 九. 关於通讯用的指令 1. write 这个指令是提供使用者传送讯息给另一个使用者,使用方式: write username [tty] 2. talk/ytalk/cytalk/ctalk UNIX 专用的交谈程式。会将萤幕分隔开为你的区域和交谈对象的区域,同时也可和不 同机器的使用者交谈。使用方式: talk username[@host] [tty] 3. mesg 选择是否接受他人的 messege , 若为 messege no 则他人的 messege 将无法传送给 你,同时他也无法干扰你的工作。使用方法: mesg [-n|-y] 4. mail/elm 在网路上的 email 程式,可经由此程式将信件 mail 给他人。 使用方式: mail [username] mail -f mailboxfile 如有信件,则直接键入 mail 可以读取你的 mail . elm 提供较 mail 更为方便的介面,而且可做线上的 alias . 你可以进入 elm 使用上下 左右键来选读取的信件,并可按 h 取得线上的 help 文件。 21使用方式: elm [usernmae] elm -f mailboxfile 十. 编译器( Compiler ) Compiler 的用处在於将你所撰写的程式翻译成一个可执行档案。在资工系常用的程式语 言是 C , pascal , FORTRAN 等。你可以先写好一个 C 或 Pascal 或 FORTRAN 的原始程 式档,再用这些 compiler 将其翻成可执行档。你可以用这个方法来制造你自己的特殊指 令。 1. cc/gcc (C Compiler) /usr/bin/cc /usr/local/bin/gcc 语法: cc [ -o execfile ] source gcc [ -o execfile ] source execfile 是你所希望的执行档的名称,如果没有加上 -o 选项编译出来的可执行档会以 a.out 做为档名。 source 为一个以 .c 做为结尾的 C 程式档。请参阅 cc(1) 的说明。 2. pc (Pascal Compiler) /usr/local/bin/pc 语法: pc [ -o execfile ] source execfile 是你所希望的执行档的名称,如果没有加上 -o 选项编译出来的可执行档会 以 a.out 做为档名。 source 为一个以 .p 做为结尾的 Pascal 程式档。 请参阅 /net/home5/lang/man pc(1) 的说明。 3. f77 (Fortran Compiler) /net/home5/lang/f77 语法: f77 [ -o execfile ] source execfile 是你所希望的执行档的名称,如果没有加上 -o 选项编译出来的可执行档会以 a.out 做为档名。 source 为一个以 .p 做为结尾的 FORTRAN 程式档。 十一. 有关列印的指令 以下为印表所会用到的指令,在本系的印表机有 lp1 , lp2 ( 点矩阵印表机 ), lw , sp , ps , compaq ( 雷射印表机 ),供使用者使用。 221. lpr lpr 为用来将一个档案印至列表机的指令。用法: lpr -P[ printer ] file1 file2 file3 ... 或 lpr -P[ printer ] < file1 例子: lpr -Plp1 hello.c hello.lst hello.map lpr -Plp1 < hello.c 前者以参数输入所要印出的档案内容,後者列印标准输入档案(standard input)的内 容,因已将 hello.c 转向到标准输入,故会印出 hello.c 的档案内容。 2. lpq lpq 是用来观察 printer queue 上的 Jobs 。用法: lpq -P[ printer ] 3. lprm lprm 是用来取消列印要求的指令。 通常我们有时会印错,或是误送非文字档资料至 printer , 此时就必须利用 lprm 取消列印 request ,以免造成资源的浪费。 用法: lprm -P[ printer ] [ Jobs id | username ] lprm 用来清除 printer queue 的 Jobs , 如果你使用 Job Id 作为参数,则它将此 Job 自 printer queue 清除,如果你用 username 作为参数,则它将此 queue 所有 Owner 为此 username 的 Jobs 清除。 到这里,我们第二讲的内容就基本结束了,可以说,这一讲是比较无聊的,但它又是 必不可少的。这里列出的仅仅是最最常用的控制台命令,要进一步的熟悉 Linux操作系统, 了解类 UNIX 操作系统的管理思想,我们还有很多要学习,有兴趣的同学可以参看其它的 相关参考书籍。 23 第三讲 Linux下的网络服务,配置问题和 常用工具 这一讲我们会接触到 Linux 下能够提供的一些典型的网络服务,大家会对这些服务有 一个感性的认识,除此之外我们还会看到 Linux下面一些非常重要的配置文件以及他们的用 法。最后我们会看到 Linux 下面最常用的几个工具软件。 一.Linux下的网络服务 一般来说,各种操作系统在网络方面的性能比较是这样的顺序 BSD>Linux>Win NT>Win 9X, 由此说来,Linux 的网络功能仅次于 UNIX,而强于 Win NT 和其它的视窗系 列产品,对于 Win2000我还不能评价太多,因为不是很熟。 Linux 的网络功能除了基本的连线功能如 telnet, ftp, rsh, login, finger等等以外,架设各 种服务器的功能更把 Linux 网络功能发挥的淋漓尽致,下面我大概的为大家介绍一下 Linux 下的各种网络服务。 1. Mail Server Email 现在是网络上最重要的服务了,你可能没有用过 FTP, BBS, INN,但是如果你连电 子邮件都没有用过,那作为 BUPT 的一员,你得自己好好反省一下了。 现在又很多功能强大的 mailserver供你选择,例如 freemail.263.net, hotmail.com, freemail.sohu.com,等等,这些都是免费的。但这是从使用者角度来看,如果你是想为一个局 域网内部提供一个交换电子邮件的服务,那它们对你来说可就是一笔巨款了,再说人家卖 不卖给你还不好说呢。Linux 下面最著名的 mail server是 Sendmail,它是一个负责监控和传 送电子邮件的邮件代理程序,你使用它就可以在在一个小的局域网(例如宿舍网)里提供 一个电子邮件服务,这是多么神奇的事情啊!使用 Linux 下面的 MailServer最大的好处是性 价比高,这些软件的功能强大,却又是完全免费的,我们完全不用去花几万元买一个功能 有限还要按照人头收费的 Exchange Server,或者是使用 D版软件被别人扎脊梁骨。 2. Router 和 Gateway 如果你的计算机可以连接到外面的 Internet 上去, 然而一些可以连接到你这台机器上的 24计算机却只能访问里面的局域网,那么你可以安装 Router或 Gateway的服务,这样别人就 可以通过你的机器和外面的世界联系了。当然了,这么做的前提是你有一颗大公无私的信, 要我就不行,我可舍不得把我的 PIII 的机器贡献给宿舍的网虫们。 3. Samba 在 Windows 横行的今天,Samba 的出现对于 Linux 的茁壮成长是非常重要的,它大大 拓宽了 Linux 的应用领域。Samba 可以提供一种转换 SMB(windows 使用的一种信息格式) 和 NFS(Linux 使用的一种信息格式)的服务,通过 Samba, 运行 Windows的工作站就可以 同运行 Linux 的服务器之间进行通信,还可以 让网络上的使用者(包括 Windows 用户)共 享一台打印机,这样 Linux 的服务器就可以运行在 Windows的环境了。 4. NFS Server Linux 还可以作为文件服务器,为网络上具有存取权限的 Windows/Linux机器分享相同 的文件系统,这样一来,不论是在 Windows 还是在 Linux 的网络,Linux 的文件服务器都 能够发挥作用了。 5. Terminal Server 这种服务能够提供 PPP/SLIP Dialup(包括 multi-port,就是一台计算机连多个调制解调器 上网),让一般的民用网络 Moden 使用者可通过 Terminal Server与 Internet连接起来。 6. BBS 在北邮如果你没有上过 BBS(Bulletin Board System电子布告版)我会很吃惊的, 202.112.101.44 或者是202.204.7.235 你至少应该去过一个吧?如果没有去过,那么赶快把这 一课补上。关于 BBS到底能做什么我就不多说了,我假定你已经知道了,现在网络上流行 的免费 BBS版本很多,著名的有 Phoenix,Maple,Firebird,Pivot等等,这些都可以在 Linux 上 使用。另外还有许多基于 WWW 的 BBS,例如著名的跨平台的 Motiff Community,可以非 常稳定的在 Linux 下运行,这是"瘟都死"所不能比拟的。 7. WWW 在 Linux下面也有功能强大的 WWW服务器,你完全可以不必去使用又贵又不稳定的 IIS。但是不可否认 IIS 的操作非常的简单,如果你觉得自己有钱,可以买得起 Win2000 Advanced Server,又出得起"人头税",那你就用"瘟都死"吧。在 Linux 上的 WWW服务程序 很多,现在最著名最流行的是 Apache,在北邮,有许多的服务器就是跑 Apache 的。现在在 Linux 上使用 Apache+PHP+MySQL 是实现动态页面的最佳搭配,立志于搞网站建设的朋友 可一定要留心这一块,因为它可以为你的网站建设节省大笔的成本(现在可是操作系统比 机器贵)。我知道一个讨论组:www.coventive.com.cn/club/default.htm,它就是用 Apache+PHP+MySQL 这种组合建立起来的,有兴趣的朋友可以去看看。 25 二.几种重要的配置文件 Linux 下面的配置文件非常的多,对于初学者来说,我们只需要知道最最常用的几个配 置文件就可以了。由于片符合时间的原因,在这里我只介绍四个非常经典的配置文件 (lilo.conf, passwd,inittab,fasttab),这四个文件我重点介绍 lilo.conf,其余三个文件会简单的 在课堂上演示。至于 Linux 其它众多的配置文件必须各位同学自己下去查找相关资料自己学 习了。 1. lilo.conf 这是 Linuxloader(lilo)的配置文件。对于初学者来说,这个配置文件是非常重要的,因 为它直接关系到你的系统是否能够正确的引导到 Linux 上来。 我在这里主要将一下如何使用 lilo 实现多个在一台机器上安装多个操作系统。 一般来说,第一次安装 Linux 后,缺省引导的系统是 Linux,但是对大多数 Linux 用户 来说,他们使用 windows 的时间会多于 Linux,所以我们最好能够将缺省引导的系统改为 windows,这样的话,就省去了每次启动时敲一串字符的麻烦。要修改引导顺序,就要修改 Linux 系统的一个配置文件,这个文件就是/etc/lilo.conf。我使用的是 Xlinux OS 1.5,用 vi 打开这个文件后,会出现下面的文字: boot=/dev/hda map=/boot/map install=/boot/boot.b prompt timeout=100 linear default=xlinux image=/boot/vmlinuz-2.2.14-5.0 read-only root=/dev/hda4 other=/dev/hda1 label=win 这就是刚刚安装完毕后的 LILO配制文件.这个文件是按照由前到后顺序引用的,通过修 改这个文件就可以改变 lilo 执行时的一些特性.首先我将这个文件比较重要的几个地方给 大家介绍一下: 首先请看第 5 行:timeout=100,这是一个设置在 lilo 引导缺省的系统之前等候用户输入系 统别名的等候时间长度.它的时长好象不是按秒一级的数量级进行计算的,总之用户可以按 照自己的实际需要设置相应的时长.我一般是设置成 timeout=500. 然后我们看第 7 行:default=xlinux,这里是关键之一!这一行指明缺省引导的系统的别名 26是 xlinux,要想改变系统的缺省引导顺序,这里是需要修改的,稍后就会说到是怎么修改的. 再看第8行到第 11 行,这四行指明了引导 Linux 系统的一些细节. image=/boot/vmlinuz-2.2.14-5.0指明了操作系统核心是放在哪里的,以便于引导程序装载操作 系统核心;label=xlinux指明了引导这个操作系统时用的别名,这里是xlinux; root=/dev/hda4指 明了引导程序需要到哪一个硬盘的第几个分区去寻找 init 过程,在这里是要到第一个硬盘的 第四个分区去将引导系统的控制权交给这个分区里的 init过程. 最后我们看看文件的最后两行.other=/dev/hda1说明除了linux操作系统以外,机器还 安装了别的操作系统(当然我知道这个另外的操作系统是我的 win2000了),它位于第一块硬 盘的第一个分区,一般来说,这个路径是在安装的时候就设置好的,不需要我们手工修改,但 是我认为知道这些信息还是很有必要的;label=win指明了这个系统引导时使用的别名为win. 因为 lilo 是顺序引用的,所以如果我们想要让缺省引导的系统变成 windows,就需要将这两行 移动到 image=.....那一行之前的位置,我建议的位置是放在 image=...之前和default=.....之后. 这是关键之二! 当你将前面的两个关键步骤完成之后,还需要将default=....那一行改成 default=win,这是 比较重要的一步,虽然即使你不改动这里,系统也可以按照你的想法去引导,但是我可不敢保 证你这样做不会出一点问题.再说,如果你不改动这里那多别扭啊! 做到这里,我们对lilo.conf这个文件的改动就结束了,然后只要退出vi,然后键入 lilo -v -v -v这个命令来更新一下LILO,我们就大功告成了.当你reboot以后,就会发现在"lilo:"那里敲入 回车键后,系统就会缺省的引导到 windows 系统去了. 2. Passwd 这个配置文件是关于用户口令的。如果你是一名系统管理员,有可能会一次新增很多 的用户,这时用 adduser就相当麻烦了。一般有功力的管理员会直接去修改/etc/passwd 文件。 利用 passwd文件,可以控制用户的口令状态及一些个人配置。 对于这个文件,普通单机用户使用的并不是很多,主要是多用户的管理员使用,对于 它的一些基本配置方法,我会在课堂上为同学们演示,这里不再赘述。 3. Inittab和 fasttab 这两个文件都是存放在/etc 这个目录下面的,Inittab 文件用来配置 Linux 初始化的一些 动作,我们最常用的是设定 Linux 的启动方式。Fasttab 文件用来设定一些在 Linux 启动时的 动作,主要是文件系统或者是外设的挂接动作,如果你想让你的 Linux 一开始就能够使用光 盘驱动器,就可以把 mount 指令加到这个文件去。 因为这两个文件对我们初学者来说,可以利用的地方不是很多,所以我不用过多的文 字来描述它们的功能,具体的操作我会在课堂上为同学们演示,这里不再赘述。 27 三.Linux下常用的工具软件 这里我会为大家介绍 Linux 世界里最常用的几种工具软件,包括:vi, tar, gzip, rpm。 1. 文字编辑 vi 是Linux(UNIX)世界最强大的文本编辑工具,我在第一讲提到过它,现在我把它的 一些基本使用方法介绍给大家。 Vi 的三种状态 „ Command mode : 控制萤幕游标之移动,字元或游标之删除,搬移复制某 区段及进入 Insert mode 下,或者到 Last line mode 。 „ Insert mode : 唯有在 Insert mode 下, 才可做文字资料输入,按 Esc 键可到 Command mode 。 „ Last line mode : 将档案写入或离开编辑器,亦可设定编辑环境, 如寻找字 串、列出行号..等。 vi 的基本操作 ‹ 进入 vi 1. 在系统提示符号下输入 vi 及档案名称後即进入 vi 全萤幕编辑画面,且在 Command mode 下。 ‹ 切换至 Insert mode 编辑文件: 在 Command mode 下可按 'i' 或 'a' 或 'o' 三键进入 Insert mode。 ‹ 离开 vi 及存档: 在 Command mode 下可按 ':' 键进入 Last line mode, :w filename (存入指定档案) :wq (写入并离开 vi) :q! (离开并放弃编辑的档案) Command mode 下功能键简介 1. 进入 Insert mode i : 插入, 从目前游标所在之处插入所输入之文字。 a : 增加, 目前游标所在之下一个字开始输入文字。 o : 从新的一行行首开始输入文字。 2. 移动游标
556,delay1.zip 源码设计的延时功能(1KB)557,type_1.zip 趣味打字2.1(233KB)558,test1.zip asp编写动态网页计数器(1KB)559,hztosm.zip 汉字转声母完全源代码(90KB)560,formatfloppy.zip 格式化软盘源代码(13KB)561,freespace.zip 获取磁盘剩余空间(3KB)562,setscreen 设置屏幕分辨率(7KB)563,snapwindow.zip 一个抓图的小程序(14KB)564,hotrgn.zip 热区的应用(6KB)565,getserial.zip 读出驱动器序列号,可以制作加密安装盘(2KB)566,opencdrom.zip 可以程序控制打开或关闭CDROM,非常方便(2KB)567,getusername.zip 自动读取用户登陆名称,再进行密码验证(2KB)568,gethostname.zip 读取机器名称(2KB)569,printpic.zip 解决图形打印的问题(50KB)570,g029_pcl.zip拼图游戏(56KB)571,g028_octopus.zip一个简单的掌上游戏机的游戏,这个游戏机的内容是要逃过大章鱼的捕捉(408KB)572,g027_menace.zip仓库世家-推箱子的游戏(114KB)573,g026_breKthru.zip弹珠台游戏(41KB)574,g025_zhq.zip一个能考考你的智慧的智慧棋(17KB)575,g024_vb-sol.zipVB 的扑克牌游戏的源码(15KB)576,g023_picgame.zip一个好玩的拼图游戏(25KB)577,g021_zm015看着超级玛莉不停的追赶着你的鼠标,是不是很有意思呢?(25KB)578,g020_zm019一个拼图游戏,可以自己指定图片进行游戏(12KB)579,g019_zm011一个网络五子棋的源程序(并有聊天功能)(41KB)580,g018_zm010.zip国象棋的源程序,支持网络作战(23KB)581,g0173维的breaKthrough游戏(8KB)582,g016.zip小蜜蜂射击游戏源程序, 不仅演示了 vb 的图形操作技巧,键盘操作,还演示了怎样使用 npmod32.dll(已包含,免费) 来播mod,s3m,mpp,med,xm,it,mdz,itz,xmz,s3z 等音乐格式文件(208KB)583,g015.zip旋转俄罗斯 1.0 demo 版的源程序,vb5 版存贮,稍加修改即适合于 vb4、vb3。里面有用 vb 处理俄罗斯方块的核心内容及简单注释(8KB)584,g014.zipbreakthrough游戏(保持小球在屏幕上跳动)源程序(50KB)585,g013.zip3维迷宫游戏的源程序(40KB)586,g012.zip射击(导弹)游戏的源程序(5KB)587,g011.zip生命游戏源程序(12KB)588,g010.zip一个精灵游戏源程序(33KB)589,g009.zip翻转棋游戏(64子, 每子正反面分别为黑白两色, 两人对弈)的源程序(29)590,g008.zip纸牌游戏源程序(45KB)591,g007.zip太空船游戏例子源程序(48KB)592,g006.zip用白雪做背面的俄罗斯方块(1.0版),自带EXE(224KB)593,g005.zip个人娱乐游戏,自带EXE(25KB)594,g004.zip个个人自娱乐的扑克牌游戏(57KB)595,g003.zip代表和平的娱乐游戏,自带EXE(12KB)596,g002.zip一个迷宫游戏,还有地图编辑器呢,完全源码(230KB)597,g001.zip模仿windows的扫雷,自带EXE(38KB)
556,delay1.zip 源码设计的延时功能(1KB)557,type_1.zip 趣味打字2.1(233KB)558,test1.zip asp编写动态网页计数器(1KB)559,hztosm.zip 汉字转声母完全源代码(90KB)560,formatfloppy.zip 格式化软盘源代码(13KB)561,freespace.zip 获取磁盘剩余空间(3KB)562,setscreen 设置屏幕分辨率(7KB)563,snapwindow.zip 一个抓图的小程序(14KB)564,hotrgn.zip 热区的应用(6KB)565,getserial.zip 读出驱动器序列号,可以制作加密安装盘(2KB)566,opencdrom.zip 可以程序控制打开或关闭CDROM,非常方便(2KB)567,getusername.zip 自动读取用户登陆名称,再进行密码验证(2KB)568,gethostname.zip 读取机器名称(2KB)569,printpic.zip 解决图形打印的问题(50KB)570,g029_pcl.zip拼图游戏(56KB)571,g028_octopus.zip一个简单的掌上游戏机的游戏,这个游戏机的内容是要逃过大章鱼的捕捉(408KB)572,g027_menace.zip仓库世家-推箱子的游戏(114KB)573,g026_breKthru.zip弹珠台游戏(41KB)574,g025_zhq.zip一个能考考你的智慧的智慧棋(17KB)575,g024_vb-sol.zipVB 的扑克牌游戏的源码(15KB)576,g023_picgame.zip一个好玩的拼图游戏(25KB)577,g021_zm015看着超级玛莉不停的追赶着你的鼠标,是不是很有意思呢?(25KB)578,g020_zm019一个拼图游戏,可以自己指定图片进行游戏(12KB)579,g019_zm011一个网络五子棋的源程序(并有聊天功能)(41KB)580,g018_zm010.zip国象棋的源程序,支持网络作战(23KB)581,g0173维的breaKthrough游戏(8KB)582,g016.zip小蜜蜂射击游戏源程序, 不仅演示了 vb 的图形操作技巧,键盘操作,还演示了怎样使用 npmod32.dll(已包含,免费) 来播mod,s3m,mpp,med,xm,it,mdz,itz,xmz,s3z 等音乐格式文件(208KB)583,g015.zip旋转俄罗斯 1.0 demo 版的源程序,vb5 版存贮,稍加修改即适合于 vb4、vb3。里面有用 vb 处理俄罗斯方块的核心内容及简单注释(8KB)584,g014.zipbreakthrough游戏(保持小球在屏幕上跳动)源程序(50KB)585,g013.zip3维迷宫游戏的源程序(40KB)586,g012.zip射击(导弹)游戏的源程序(5KB)587,g011.zip生命游戏源程序(12KB)588,g010.zip一个精灵游戏源程序(33KB)589,g009.zip翻转棋游戏(64子, 每子正反面分别为黑白两色, 两人对弈)的源程序(29)590,g008.zip纸牌游戏源程序(45KB)591,g007.zip太空船游戏例子源程序(48KB)592,g006.zip用白雪做背面的俄罗斯方块(1.0版),自带EXE(224KB)593,g005.zip个人娱乐游戏,自带EXE(25KB)594,g004.zip个个人自娱乐的扑克牌游戏(57KB)595,g003.zip代表和平的娱乐游戏,自带EXE(12KB)596,g002.zip一个迷宫游戏,还有地图编辑器呢,完全源码(230KB)597,g001.zip模仿windows的扫雷,自带EXE(38KB)

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧