1,查看内核及Linux版本:
#uname -a
#sudo lsb_release -a
#cat /etc/issue
2,查看SuSE版本:# cat /etc/SuSE-release
3,查看进程,资源 top
4,kill进程 kill -9 进程号
5,nohup
我一般用ssh登录linux服务器,如果要用服务器下载某个文件,我就一直要使终端窗口保持打开状态,这是不合理的。好在用nohup帮忙,它可以让程序在后台运行,就算你关掉终端窗口也没关系。例如,我想下载MiCTeX的字体:
nohup wget ftp://user:user@219.153.35.69/MiCTeX/MiCTeX-GBKfonts.exe
这个命令运行后,屏幕输出:
ServerName:~ # appending output to nohup.out
鼠标这时一动不动,直到文件下载完毕前你再也不能输出任何命令了。不过在关掉这个窗口后,你可以观察到MiCTeX-GBKfonts.exe的文件大小一直在增加。
如果在命令最后加上&,就可以让这个下载命令彻底在后台运行,但我实验的结果表明,加了&以后,如果关掉终端,进程也同时关掉了:
nohup wget ftp://user:user@219.153.35.69/MiCTeX/MiCTeX-GBKfonts.exe &
6,screen
我其实是把文件下载到 /home/zhang/temp/ 里面,当我N久以后再联上服务器,想看看文件下载情况怎样,那又要 cd 老半天,这时候 screen 就是好帮手了。
顾名思义 screen 就是屏幕,这个命令可以让你有N个屏幕。那我先建一个名字叫做zhang的Screen,用来下载文件:
screen -S zhang
cd /home/zhang/temp
nohup wget ftp://user:user@219.153.35.69/MiCTeX/MiCTeX-GBKfonts.exe
然后按 Ctrl + a 再按 d。这时系统提示 : [detached] 表示离开这个屏幕了。
我再建一个名字叫做zhangvim的Screen,用来编一个vi文档:
screen -S zhangvim
vi test
编了几行字,我又想看看文件下载得如何了(我是个急性子),那像前面一样,按 Ctrl + a 再按 d。这时系统提示 : [detached] 离开zhangvim这个屏幕。接下来连上屏幕zhang:
screen -r zhang
这时,你看到的屏幕和你原来离开zhang时一模一样。让我很开心的是,就算我把断掉ssh,再连上Server的时候,还能找回这个屏幕。
如果你有兴趣,你可以开n个Screen,还可以在一个Screen里面再嵌套一个。如果多到你都不记得要连哪个了,那加个参数看一看:
ServerName:~ # screen -ls
There are screens on:
25108.zhang (Detached)
25130.zhangvim (Attached)
25147.zhangpy (Attached)
25183.zhangLaTex (Attached)
25235.Zhangwget (Attached)
6 Sockets in /var/run/screens/S-root.
是不是有点太多了,有的联着的,有的是断开的,但是没关系,可以把它们一个一个关掉:
如果是(Detached),用这个命令:
screen -r zhang
如果是(Attached),用这个命令:
screen -x zhangvim
连上后,输入exit就可退出这个Screen。系统提示:
[screen is terminating]
好了,足够清楚也足够?嗦了。如果还想进阶请自己查man。
7,wget
虽然讯雷是好样的,但我还是希望介绍一位新朋友给大家:wget
我想下载MiCTeX目录下的所有文件,那个服务器还限线程,我又没那么多时间开着台式机拖文件,那ssh连上服务器,用wget是再好不过了。把上面的命令也用上:)
screen -S ZhangMiCTeX
cd /home/zhang/temp
nohup wget -c -r -nH --cut-dirs=1 ftp://user:user@219.153.35.69/MiCTeX/
按 Ctrl + a 再按 d,离开这个屏幕,再把ssh断开,睡一觉醒来,那些文件就会乖乖地躺在我的文件夹里了。
稍微解释一下wget参数:
-c resume getting a partially-downloaded file. 断点续传
-r specify recursive download.下载目录下所有文件,包括子目录
-nH don't create host directories.不要创建一个服务器名称的文件夹,通常这个文件夹用来存放下载的文件。
--cut-dirs=NUMBER ignore NUMBER remote directory components.上面命令中出现的目录MiCTeX也cut掉。NUMBER 表示去掉几层目录。
这样一来,下载的文件都会放在 /home/zhang/temp 文件夹里面。如果没有参数-nH --cut-dirs=1的话,文件会放在/home/zhang/temp/219.153.35.69/MiCTeX/ 文件夹里面。
再来个例子:
nohup wget -c --ftp-user=USER1 --ftp-password="a&&b.c" --no-passive-ftp ftp://ftp.neten.de/abc.rar&
简单解释:
用户:--ftp-user=USER1
密码:--ftp-password="a&&b.c" (之所以加",是因为密码含有特殊字符&)
非PASV模式:--no-passive-ftp
wget的man会很长,大家还是自己研究吧,这样印象会深点。
8,ps
使用方式:ps [options] [--help]
说明:显示瞬间行程 (process) 的动态
参数:
ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义
-A 列出所有的行程
-w 显示加宽可以显示较多的资讯
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程
au(x) 输出格式 :
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER: 行程拥有者
PID: pid
%CPU: 占用的 CPU 使用率
%MEM: 占用的记忆体使用率
VSZ: 占用的虚拟记忆体大小
RSS: 占用的记忆体大小
TTY: 终端的次要装置号码 (minor device number of tty)
STAT: 该行程的状态:
D: 不可中断的静止 (通悸□□缜b进行 I/O 动作)
R: 正在执行中
S: 静止状态
T: 暂停执行
Z: 不存在但暂时无法消除
W: 没有足够的记忆体分页可分配
<: 高优先序的行程
N: 低优先序的行程
L: 有记忆体分页分配并锁在记忆体内 (即时系统或捱A I/O)
START: 行程开始时间
TIME: 执行的时间
COMMAND:所执行的指令
9,md5sum
输入文件的md5码:
md5sum file > file.md5
或者
md5sum file >>file.md5
注:>和>>的区别在于:
>只产生当前文件的md5码 file.md5,
>>则将输出的md5码附加到file.md5文件的后面。
也可以把多个文件的md5码输出到一个md5文件中,这要使用通配符*,比如某目录下有几个iso文件,要把这几个iso文件的摘要输出到iso.md5文件中,命令如下:
md5sum *.iso > iso.md5
使用md5报文摘要验证文件,方法有二:
(1)把文件file.iso和file.md5文件放在同一个目录下,然后用如下命令进行验证:
md5sum -c file.md5
然后如果验证成功,则会输出
file.iso:OK
(2)比如下载了文件file,然后运行下面的命令:
md5sum file.iso
命令会输出一个md5码,然后把这个md5码直接与file.md5中的内容比较,如果一样,就说明验证正确。
另外,在linux下还有一个md5验证的图形界面,http://www.md5summer.org
10,删除巨量文件
find 0*.php|xargs rm
11,Ubuntu的软件安装
sudo apt-get install g++
sudo apt-get install gcc
12,Ubuntu改root密码
sudo passwd root

