Linux 中screen 中文乱码错位的解决办法教程

在/etc/screenrc
最后加入
defencoding gbk
encoding gbk gbk

重新启动screen–必须关闭所有的screen窗口    即可

Linux文件传送命令SCP(Secure Copy)使用详解

SCPSecure Copy

scp 命令是 SSH 中最方便有用的命令了,试想,在两台服务器之间直接传送文件,仅仅用 scp 一个命令就完全解决了。你可以在一台服务器上以 root 身份运行 #scp servername:/home/ftp/pub/file1 ./ 这样就把另一台服务器上的文件 /home/ftp/pub/file1 直接传到本机器的当前目录下,当然你也可以用 #scp /tmp/file2 servername:/boot 把本机上的文件 /tmp/file2 送到另一台机器的 /boot 目录下。而且整个传送过程仍然是用 SSH 加密的。

scp就是secure copy,是用来进行远程文件拷贝的。数据传输使用 ssh,并且和ssh 使用相同的认证方式,提供相同的安全保证 。 与rcp 不同的是,scp 在需要进行验证时会要求你输入密码或口令。

最简单的应用实例

最简单的应用如下 :

scp 本地用户名@IP地址:文件名 1 远程用户名 @IP 地址 : 文件名 2

[ 本地用户名 @IP 地址:] 可以不输入 , 可能需要输入远程用户名所对应的密码 .

可能有用的几个参数 :

-v 和大多数 linux 命令中的 -v 意思一样 , 用来显示进度 . 可以用来查看连接 , 认证 , 或是配置错误 .

-C 使能压缩选项 .

-P 选择端口 . 注意 -p 已经被 rcp 使用 .

-4 强行使用 IPV4 地址 .

-6 强行使用 IPV6 地址 .

-r Recursively copy entire directories.

——

copy 本地的档案到远程的机器上

scp /etc/lilo.conf my@www.upsdn.net:/home/my

会将本地的 /etc/lilo.conf 这个档案 copy www.upsdn.net,使用者my 的家目录下。

=====================================================

例如:

copy 本地的档案到远程的机器上

scp /etc/lilo.conf k@net67.ee.oit.edu.tw:/home/k

会将本地的 /etc/lilo.conf 这个档案 copy net67.ee.oit.edu.tw,使用者 k 的家目录下。

copy远程机器上的档案到本地来

scp k@net67.ee.oit.edu.tw:/etc/lilo.conf /etc

会将 net67.ee.oitdu.tw /etc/lilo.conf 档案 copy 到本地的 /etc 目录下。

保持从来源 host 档案的属性

scp –p k@net67.ee.tw:/etc/lilo.conf /etc

在此必须注意使用者的权限是否可读取远程上的档案,若想知道更多关于 scp 的使用方法,可去看看 scp 的使用手册。

ssh-keygen

产生公开钥 (pulib key) 和私人钥 (private key),以保障 ssh 联机的安性, 当 ssh shd 服务器,会交换公开钥上,系统会检查 /etc/ssh_know_hosts 内储存的 key,如果找到客户端就用这个 key 产生一个随机产生的session key 传给服务器,两端都用这个 key 来继续完成 ssh 剩下来的阶段。

它会产生 identity.pubidentity 两个档案,私人钥存放于identity,公开钥 存放于 identity.pub 中,接下来使用 scp identity.pub copy 到远程机器的家目录下.ssh下的authorized_keys.ssh/authorized_keys(这个 authorized_keys 档案相当于协议的 rhosts 档案), 之后使用者能够不用密码去登入。RSA的认证绝对是比 rhosts 认证更来的安全可靠。

执行:

scp identity.pub k@linux1.ee.oit.edu.tw:.ssh/authorized_keys

若在使用 ssh-keygen 产生钥匙对时没有输入密码,则如上所示不需输入密码即可从 net67.ee.oit.edu.tw 去登入 linux1.ee.oit.edu.tw。在此,这里输入的密码可以跟帐号的密码不同,也可以不输入密码。

Linux下 用 top 命令查看 CPU 使用率

前  言

在系统维 护的过程中,随时可能有需要查看 CPU 使用率,并根据相应信息分析系统状况的需要。在 CentOS 中,可以通过 top 命令来查看 CPU 使用状况。运行 top 命令后,CPU 使用状态会以全屏的方式显示,并且会处在对话的模式 — 用基于 top 的命令,可以控制显示方式等等。退出 top 的命令为 q (在 top 运行中敲 q 键一次)。

运行 top

在命令行中输入 “top” 即可启动 top ,运行后如下图所示:

如上图所示,top 的全屏对话模式可分为3部分:系统信息栏、命令输入栏、进程列表栏。

第一部分 — 最上部的 系统信息栏 :

第一行(top):
“00:11:04”为系统当前时刻;
“3:35”为系统启动后到现在的运作时间;
“2 users”为当前登录到系统的用户,更确切的说是登录到用户的终端数 — 同一个用户同一时间对系统多个终端的连接将被视为多个用户连接到系统,这里的用户数也将表现为终端的数目;
“load average”为当前系统负载的平均值,后面的三个值分别为1分钟前、5分钟前、15分钟前进程的平均数,一般的可以认为这个数值超过 CPU 数目时,CPU 将比较吃力的负载当前系统所包含的进程;

第二行(Tasks):
“59 total”为当前系统进程总数;
“1 running”为当前运行中的进程数;
“58 sleeping”为当前处于等待状态中的进程数;
“0 stoped”为被停止的系统进程数;
“0 zombie”为被复原的进程数;

第三行(Cpus):
分别表示了 CPU 当前的使用率;

第四行(Mem):
分别表示了内存总量、当前使用量、空闲内存量、以及缓冲使用中的内存量;

第五行(Swap):
表示类别同第四行(Mem),但此处反映着交换分区(Swap)的使用情况。通常,交换分区(Swap)被频繁使用的情况,将被视作物理内存不足而造成的。

第二部分 — 中间部分的内部命令提示栏:

top 运行中可以通过 top 的内部命令对进程的显示方式进行控制。内部命令如下表:

s – 改变画面更新频率
l – 关闭或开启第一部分第一行 top 信息的表示
t – 关闭或开启第一部分第二行 Tasks 和第三行 Cpus 信息的表示
m – 关闭或开启第一部分第四行 Mem 和 第五行 Swap 信息的表示
N – 以 PID 的大小的顺序排列表示进程列表(第三部分后述)
P – 以 CPU 占用率大小的顺序排列进程列表 (第三部分后述)
M – 以内存占用率大小的顺序排列进程列表 (第三部分后述)
h – 显示帮助
n – 设置在进程列表所显示进程的数量
q – 退出 top
s – 改变画面更新周期

第三部分 — 最下部分的进程列表栏:

以 PID 区分的进程列表将根据所设定的画面更新时间定期的更新。通过 top 内部命令可以控制此处的显示方式。

应用 top

一般的,我们通过远程监控的方式对服务器进行维护,让服务器本地的终端实时的运行 top ,是在服务器本地监视服务器状态的快捷便利之一。

Linux curl使用简单介绍

Curl是Linux下一个很强大的http命令行工具,其功能十分强大。

1) 读取网页
$ curl http://www.linuxidc.com

2) 保存网页
$ curl http://www.linuxidc.com > page.html
$ curl -o page.html http://www.linuxidc.com

3) 使用的proxy服务器及其端口: -x
$ curl -x 123.45.67.89:1080 -o page.html http://www.linuxidc.com

4) 使用cookie来记录session信息
$ curl -x 123.45.67.89:1080 -o page.html -D cookie0001.txt http://www.linuxidc.com
这个option: -D 是把http的response里面的cookie信息存到一个特别的文件中去,
这样,当页面被存到page.html的同时,cookie信息也被存到了cookie0001.txt里面了 (全文…)

linux 下的时间函数使用

本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了 阐述。本文还通过大量的实例向你展示了time.h头文件中声明的各种函数和数据结构的详细使用方法。

关键字:UTC(世界标准时 间),Calendar Time(日历时间),epoch(时间点),clock tick(时钟计时单元)

1.概念
在C/C ++中,对字符串的操作有很多值得注意的问题,同样,C/C++对时间的操作也有许多值得大家注意的地方。最近,在技术群中有很多网友也多次问到过C++ 语言中对时间的操作、获取和显示等等的问题。下面,在这篇文章中,笔者将主要介绍在C/C++中时间和日期的使用方法.

通过学习许 多C/C++库,你可以有很多操作、使用时间的方法。但在这之前你需要了解一些“时间”和“日期”的概念,主要有以下几个:

Coordinated Universal Time(UTC):协调世界时,又称为世界标准时间,也就是大家所熟知的格林威治标准时间(Greenwich Mean Time,GMT)。比如,中国内地的时间与UTC的时差为+8,也就是UTC+8。美国是UTC-5。

Calendar Time:日历时间,是用“从一个标准时间点到此时的时间经过的秒数”来表示的时间。这个标准时间点对不同的编译器来说会有所不同,但对一个编译系统来 说,这个标准时间点是不变的,该编译系统中的时间对应的日历时间都通过该标准时间点来衡量,所以可以说日历时间是“相对时间”,但是无论你在哪一个时区, 在同一时刻对同一个标准时间点来说,日历时间都是一样的。 (全文…)

linux top 命令详解

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。下面详细介绍它的使用方 法。
top – 01:06:48 up  1:22,  1 user,  load average: 0.06, 0.60, 0.48
Tasks:  29 total,   1 running,  28 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.3% us,  1.0% sy,  0.0% ni, 98.7% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:    191272k total,   173656k used,    17616k free,    22052k buffers
Swap:   192772k total,        0k used,   192772k free,   123988k cached
PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
1379 root      16   0  7976 2456 1980 S  0.7  1.3   0:11.03 sshd
14704 root      16   0  2128  980  796 R  0.7  0.5   0:02.72 top
1 root      16   0  1992  632  544 S  0.0  0.3   0:00.90 init
2 root      34  19     0    0    0 S  0.0  0.0   0:00.00 ksoftirqd/0
3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 watchdog/0
统 计信息区
前五行是系统整体的统计信息。第一行是任务队列信息,同 uptime 命令的执行结果。其内容如下:
01:06:48
当 前时间
up 1:22
系统运行时间,格式为时:分
1 user
当前登录用户数
load average: 0.06, 0.60, 0.48
系统负载,即任务队列的平均长度。
(全文…)

Linux 硬盘安装详细方法

1.下载grub

2.把下载的grub解压到c盘的跟目录下

3.将你所需要安 装的linux的iso文件放在硬盘的跟目录下,我建议放在c盘的跟目录下(方便以后的操作)

4.打开你的linux的iso文件, 把里面的isolinux文件解要到c盘的跟目录下

5.打开我的电脑右键-属性-高级-启动和故障恢复-设置-编辑,填入 c:\GRLDR=”硬盘安装Linux”

6.用记事本打开c:\boot\grub\menu.lst,清空里面的所有内容,加入

title to install linux
kernel (hd0,0)/isolinux/vmlinuz
initrd (hd0,0)/isolinux/initrd.img
boot
(全文…)

linux 常用命令

1. man 对你熟悉或不熟悉的命令提供帮助解释

eg:man ls 就可以查看ls相关的用法

注:按q键或者ctrl+c退出,在linux下可以使用ctrl+c终止当前程序运行。

2. ls 查看目录或者文件的属*,列举出任一目录下面的文件

eg: ls /usr/man

ls -l

a.d表示目录(directory),如果是一个”-”表示是文件,如果是l则表示是一个连接文件(link)

b.表示文件或者目录许可权限.分别用可读(r),可写(w),可运行(x)。

3. cp 拷贝文件

eg: cp filename1 filename2 //把filename1拷贝成filename2

cp 1.c netseek/2.c //将1.c拷到netseek目录下命名为2.c

4. rm 删除文件和目录

eg: rm 1.c //将1.c这个文件删除

5. mv 移走目录或者改文件名

eg: mv filename1 filename2 //将filename1 改名为filename2

mv qib.tgz ../qib.tgz //移到上一级目录

6. cd 改变当前目录 pwd 查看当前所在目录完整路径

eg: pwd //查看当前所在目录路径

cd netseek //进入netseek这个目录

cd //退出当前目录

7. cat,more命令

将某个文件的内容显示出来。两个命令所不同的是:cat把文件内容一直打印出来,而 more则分屏显示

eg; cat>1.c //就可以把代码粘帖到1.c文件里,按ctrl+d 保存代码。

cat 1.c 或more 1.c //都可以查看里面的内容。

gcc -o 1 1.c //将1.c编译成.exe文件,我们可以用此命编译出代码。

8.chmod 命令 权限修改 用法:chmod 一位8进制数 filename。

eg: chmod u+x filenmame //只想给自己运行,别人只能读

//u表示文件主人, g 表示文件文件所在组。 o 表示其他人 ;r 表可读,w 表可写,x 表可以运行

chmod g+x filename //同组的人来执行

9. clear,date命令

clear:清屏,相当与DOS下的cls;date:显示当前时间。

(全文…)

linux 下文件编码批量转换

查看文件编码

file -i filename

1.递归转换(包括子文件夹)

find default -type d -exec mkdir -p utf/{} \;

find default -type f -exec iconv -f GBK -t UTF-8 {} -o utf/{} \;

这两行命令将default目录下的文件由GBK编码转换为UTF-8编码,目录结构不变,转码后的文件保存在utf/default目录下。

2. 转换
命令格式如下

$enca -L 当前语言 -x 目标编码 文件名

例如要把当前目录下的所有文件都转成 utf-8

$enca -L zh_CN -x utf-8 *
(全文…)

Ubuntu 安装和常用软件

一、wubi安装
这各方式将Ubuntu安装在WINDOWS的分区里面,E盘空闲空间5G以上,建议使用NTFS分区,磁盘标识使用英文
1.将Ylmf-linux-Y1.5.iso放到E盘iso目录下
2.将wubi.exe放到E盘iso目录下
3.禁用本地网络
4.双击wubi.exe进行安装,选择安装到E盘
5.重启后选择ubuntu进行安装

二、硬盘安装
这不是wubi安装,是硬盘安装。省去了硬盘安装前后自己手工复制、修改那部分。
E盘空闲空间5G以上,建议使用NTFS分区,磁盘标识使用英文
1.将Ylmf-linux-Y1.5.iso放到E盘iso目录下
2.将wubi-hd.exe放到E盘iso目录下
3.将Ylmf-linux-Y1.5.iso改名为installation.iso
4.双击wubi-hd.exe进行安装,选择安装到E盘
5.提取ISO里面casper\initrd.lz到e:\ubuntu-install\install\boot下,并修改名字为 initrd.gz
6.重启后选择ubuntu,这时会进入到live-cd模式,双击桌面“安装 Ubuntu 9.10”进行安装,注意,双击”安装 Ubuntu 9.10“前,双击桌面“终端”,输入sudo umount -l /isodevice 按回车。

中间出现的信息设置页面可以参考本帖上面部分插图。

安装完成,重启计算机即可开始您的 Ubuntu 之旅。

版本特 性:
(全文…)