Browse > Home /

| 订阅RSS

[命令集]重设 root 密码

二月 22nd, 2009 | No Comments | Posted in Hacks, Linux

Linux 方法 1
在引导加载器(lilo 或 grub)中,键入如下启选项:
init=/bin/sh
内核会挂载 root 分区,进程 init 会启动 bourne shell 而不是 rc,然后是运行级别。使用命令 passwd 设
置密码然后重启。别忘了需要在单用户模式下做这些动作。
如果重启后 root 分区被挂载为只读,重新挂在它为读写:

 # mount -o remount,rw /
 # passwd                       # 或者删除 root 密码 (/etc/shadow)
 # sync; mount -o remount,ro /  # sync 在重新挂在为只读之前 sync 一下
 # reboot

FreeBSD 和 Linux 方法 2
FreeBSD 不会让你这么做。解决方案是用其他操作系统(像系统紧急修复光盘)挂载 root 分区,然后更改密码。
• 用 live cd 或安装盘启动进入修复模式后,会得到一个 shell。
• 用 fdisk 查找 root 分区。比如:fdisk /dev/sda
• 挂载它并使用 chroot 命令:

 # mount -o rw /dev/ad4s3a /mnt
 # chroot /mnt
 # passwd
 # reboot
Tags: ,

[命令集]操作系统运行级别相关

二月 22nd, 2009 | No Comments | Posted in Linux

操作系统的运行级别
Linux
一旦内核加载完成,内核会启动 init 进程,然后运行 rc6 脚本,之后运行所有属于其运行级别的命令脚本。这
些脚本都储存在 /etc/rc.d/rcN.d 中(N代表运行级别),并且都建立着到 /etc/init.d 子目录中命令脚本程序
的符号链接。
默认运行级别配置在 /etc/inittab 中。它通常为 3 或 5:

 # grep default: /etc/inittab
 id:3:initdefault:

可以使用 init 来改变当前运行级别。举个例子:

 # init 5                       # 进入运行级别 5

运行级别列表如下:
0 系统停止
1 进入单用户模式(也可以是 S)
2 没有 NFS 特性的多用户模式
3 完全多用户模式(正常操作模式)
4 未使用
5 类似于级别3,但提供 XWindow 系统登录环境
6 重新启动系统
使用 chkconfig 工具控制程序在一个运行级别启动和停止。

 # chkconfig --list             # 列出所有 init 脚本
 # chkconfig --list sshd        # 查看 sshd 在各个运行级别中的启动配置
 # chkconfig sshd --level 35 on # 对 sshd 在级别 3 和 5 下创建启动项
 # chkconfig sshd off           # 在所有的运行级别下禁用 sshd

Debian 和基于Debian 发行版像 Ubuntu 或 Knoppix 使用命令 update-rc.d 来管理运行级别脚本。默认启动为
2,3,4 和 5,停止为 0,1 和 6。

 # update-rc.d  sshd defaults          # 设置 sshd 为默认启动级别
 # update-rc.d  sshd start 20 2 3 4 5 . stop 20 0 1 6 . # 用显示参数
 # update-rc.d  -f sshd remove         # 在所有的运行级别下禁用 sshd
 # shutdown -h  now (或者 # poweroff)    # 关闭停止系统

FreeBSD
BSD 启动步骤不同于 SysV, 她没有运行级别。她的启动状态(单用户,有或没有 XWindow)被配置在 /etc/
ttys中。所有的系统脚本都位于 /etc/rc.d/中,第三方应用程序位于 /usr/local/etc/rc.d/中。service 的启
动顺序被配置在 /etc/rc.conf 和/etc/rc.conf.local中。默认行为可在 /etc/defaults/rc.conf 中进行配
置。 这些脚本至少响应 start|stop|status.

 # /etc/rc.d/sshd status
 sshd is running as pid 552.
 # shutdown now                        # 进入单用户模式
 # exit                                # 返回到多用户模式
 # shutdown -p now                     # 关闭停止系统
 # shutdown -r now                     # 重新启动系统

同样可以使用进程 init 进入下列状态级别。举个例子: # init 6 为重启。
0 停止系统并关闭电源 (信号 USR2)
1 进入单用户模式 (信号 TERM)
6 重新启动 (信号 INT)
c 阻止进一步登录 (信号 TSTP)
q 重新检查 ttys(5) 文件 (信号 HUP)

Tags: , , ,

[命令集]查看负载、状态、消息

二月 20th, 2009 | No Comments | Posted in Linux

下面的命令用来查看系统正在运行的东西。

# top	 			# 显示当前CPU处理的信息
# mpstat 1	 		# 显示处理器相关的静态信息
# vmstat 2 			# 显示虚拟内存状态
# iostat 2 			# 显示I/O 信息
# systat -vmstat 1 		# BSD:汇总信息状态信息
# systat -tcp 1 		# BSD:显示TCP状态
# systat -netstat 1 		# BSD:活动的网络连接
# systat -ifstat 1 		# BSD:网络流量状态
# systat -iostat 1 		# BSD:CPU和硬盘的吞吐
# tail -n 500 /var/log/messages # 最后500条内核、系统消息
# tail /var/log/warn 		# 系统的警告信息
Tags: , ,

[命令集]查看系统信息

二月 18th, 2009 | No Comments | Posted in Linux

查看内核以及系统信息
得到内核版本信息

# uname -a

针对LSB发行版本的全部信息

# lsb_release -a

查看SUSE版本信息

# cat /etc/SuSE-release

查看Debian版本信息

# cat /etc/debian_version

查看系统运行时间

# uptime

查看系统的机器名称

# hostname

展示系统的IP地址(Linux)

# hostname -i

对系统文件层次的描述

# man hier

显示系统重新启动的历史纪录

# last reboot
Tags: , ,