分类 运维 下的文章

Linux VPS下SSH常用命令整理

目录操作:

  • rm -rf mydir /删除mydir目录/
    mkdir dirname /创建名为dirname的目录/

cd mydir /进入mydir目录/
cd - /回上一级目录/
cd .. /回父目录,中间有空格/
cd ~ /回根目录/
mv tools tool /把tools目录改名为tool /
ln -s tool bac /给tool目录创建名为bac的符号链接,最熟悉的应该就是FTP中www链接到public_html目录了/
cp -a tool /home/vpser/www /把tool目录下所有文件复制到www目录下 /

文件操作:

  • rm go.tar / 删除go.tar文件 /
    find mt.cgi / 查找文件名为mt.cgi的文件 /

df –h / 查看磁盘剩余空间,好像没这个必要,除非你太那个了 /

解压缩:

  • tar xvf wordpress.tar / 解压tar格式的文件 /
    tar -tvf myfile.tar / 查看tar文件中包含的文件 /

  • tar cf toole.tar tool / 把tool目录打包为toole.tar文件 /
    tar cfz vpser.tar.gz tool / 把tool目录打包且压缩为vpser.tar.gz文件,因为.tar文件几乎是没有压缩过的,MT的.tar.gz文件解压成.tar文件后差不多是10MB /

  • tar jcvf /var/bak/www.tar.bz2 /var/www/ /创建.tar.bz2文件,压缩率高/
    tar xjf www.tar.bz2 /解压tar.bz2格式/

  • gzip -d ge.tar.gz / 解压.tar.gz文件为.tar文件 /
    unzip phpbb.zip / 解压zip文件,windows下要压缩出一个.tar.gz格式的文件还是有点麻烦的 /

下载:

  • wget http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
    /下载远程服务器上的文件到自己的服务器,连上传都省了,服务器不是100M就是1000M的带宽,下载一个2-3兆的MT还不是几十秒的事 /

  • wget -c http://soft.vpser.net/web/nginx/nginx-0.8.0.tar.gz
    / 继续下载上次未下载完的文件 /

进程管理:

  • ps -aux /ps 进程状态查询命令/

ps命令输出字段的含义:

[list]
[*]USER,进程所有者的用户名。
[*]PID,进程号,可以唯一标识该进程。
[*]%CPU,进程自最近一次刷新以来所占用的CPU时间和总时间的百分比。
[*]%MEM,进程使用内存的百分比。
[*]VSZ,进程使用的虚拟内存大小,以K为单位。
[*]RSS,进程占用的物理内存的总数量,以K为单位。
[*]TTY,进程相关的终端名。
[*]STAT,进程状态,用(R--运行或准备运行;S--睡眠状态;I--空闲;Z--冻结;D--不间断睡眠;W-进程没有驻留页;T停止或跟踪。)这些字母来表示。
[*]START,进程开始运行时间。
[*]TIME,进程使用的总CPU时间。
[*]COMMAND,被执行的命令行。
[/list]

  • ps -aux | grep nginx /在所有进程中,查找nginx的进程/
    kill 1234 /1234为进程ID,即ps -aux 中的PID/

killall nginx /killall 通过程序的名字,直接杀死所有进程,nginx为进程名/

Vim操作:

移动类的:

  • h/j/k/l: 左/下/上/右 移一格
    w : 向后词移动 (前面加数字移动多少个词)

b : 向前词移动 (前面加数字移动多少个词)
e : 向后移到词末
ge : 向前移到词末
$ <End> : 行末
0 <Home> : 行首
tx : 向右查找本行的x并移到那儿(大写时向左)
33G : 移到文件的第33行
gg : 文件首行
G : 文件尾行
33% : 文件的33%处
H/M/L : 屏幕的首/中/尾行
zt/zz/zb : 当前行移到屏幕的首/中/底部

跳转:

  • " : 回到跳转来的地方
    CTRL-O : 跳到一个 “较老” 的地方

CTRL-I <Tab> : 则跳到一个 “较新” 的地方

查找:

  • / : 向下查找(后加关键字)
    ? : 向上查找(后加关键字)

n : 下一条符合的记录

编辑:

  • i : 转换到插入模式
    x : 删除当前字符

. : 重复最后一次的修改操作(同PS里ctrl+f执行滤镜)
u : 撤销操作
CTRL-R : 重做
p : 将删除的字符插入到当前位置(put)

退出保存:

  • :q : 退出
    :q! : 不保存退出

ZZ : 保存后退出
:e! : 放弃修改重新编辑

掌握这些基本命令,Linux下的基本使用已经掌握,只要多加练习,多遇到问题,解决问题,能力就会不断的提升。

Ubuntu的两种备份方法

方法一:备份已安装软件包列表及软件源列表

备份

  • 1.备份已安装软件包列表
    sudo dpkg –get-selections > /home/user/package.selections

  • 2.备份Home下的用户文件夹

    如果你已经将Home放在额外的分区,这一步就不必了,复制所有用户文件夹下的所有内容到另外的分区,注意要包含隐藏文件(Ctrl+Hide)
  • 3.备份软件源列表,将/etc/apt/文件夹下的sources.list拷贝出来保存即可

恢复

  • 1.复制备份的Sources.list文件到新系统的/etc/apt/目录,覆盖原文件,并替换(Ctrl+H)文档中的intrepid为jaunty。然后更新软件源(sudo apt-get update)。

  • 2.重新下载安装之前系统中的软件(如果你安装的软件数量比较多,可能会花费较长时间)
    sudo dpkg –set-selections /home/package.selections && apt-get dselect-upgrade

  • 3.最后将备份的主文件夹(/home/用户名)粘贴并覆盖现有主文件夹

以上的方法备份的数据少,但恢复是需要重新下载所有文件。

方法二:采用Tar压缩备份系统

和备份Windows系统不同,如果你要备份Ubuntu系统(或者其它任何Linux系统),你不再需要像Ghost这类备份工具。事实上,Ghost 这类备份工具对于Linux文件系统的支持很糟糕,例如一些Ghost版本只能完善地支持Ext2文件系统,如果你用它来备份Ext3文件系统,你可能会 丢失一些宝贵的数据。

备份系统

我该如何备份我的Ubuntu系统呢?很简单,就像你备份或压缩其它东西一样,使用TAR。和Windows不同,Linux不会限制root访问任何东西,你可以把分区上的所有东西都扔到一个TAR文件里去!

  • 首先成为root用户 su

  • 然后进入文件系统的根目录(当然,如果你不想备份整个文件系统,你也可以进入你想要备份的目录,包括远程目录或者移动硬盘上的目录) cd /

  • 下面是我用来备份系统的完整命令:
    tar cvpzf backup.tgz –exclude=/backup.tgz –exclude=/proc –exclude=/lost+found –exclude=/mnt –exclude=/sys /

让我们来简单看一下这个命令:

tar”当然就是我们备份系统所使用的程序了。
cvpfz”是tar的选项,意思是“创建档案文件”、“保持权限”(保留所有东西原来的权限)、“使用gzip来减小文件尺寸”。
backup.gz”是我们将要得到的档案文件的文件名。
/”是我们要备份的目录,在这里是整个文件系统。

  • 在档案文件名“backup.gz”和要备份的目录名“/”之间给出了备份时必须排除在外的目录。有些目录是无用的,例如“/proc”、“/lost+ found”、“/sys”。当然,“backup.gz”这个档案文件本身必须排除在外,否则你可能会得到一些超出常理的结果。如果不把“/mnt”排 除在外,那么挂载在“/mnt”上的其它分区也会被备份。另外需要确认一下“/media”上没有挂载任何东西(例如光盘、移动硬盘),如果有挂载东西, 必须把“/media”也排除在外。

    
    有人可能会建议你把“/dev”目录排除在外,但是我认为这样做很不妥,具体原因这里就不讨论了。
    
    执行备份命令之前请再确认一下你所键入的命令是不是你想要的。执行备份命令可能需要一段不短的时间。
    
    备份完成后,在文件系统的根目录将生成一个名为“backup.tgz”的文件,它的尺寸有可能非常大。现在你可以把它烧录到DVD上或者放到你认为安全的地方去。
    
    在备份命令结束时你可能会看到这样一个提示:’tar: Error exit delayed from previous errors’,多数情况下你可以忽略它。
    
  • 你还可以用Bzip2来压缩文件,Bzip2比gzip的压缩率高,但是速度慢一些。如果压缩率对你来说很重要,那么你应该使用Bzip2,用“j”代替命令中的“z”,并且给档案文件一个正确的扩展名“bz2”。完整的命令如下:
    tar cvpjf backup.tar.bz2 –exclude=/proc –exclude=/lost+found –exclude=/backup.tar.bz2 –exclude=/mnt –exclude=/sys /

恢复系统

在进行恢复系统的操作时一定要小心!如果你不清楚自己在做什么,那么你有可能把重要的数据弄丢,请务必小心!

  • 接着上面的例子。切换到root用户,并把文件“backup.tgz”拷贝到分区的根目录下。

在 Linux中有一件很美妙的事情,就是你可以在一个运行的系统中恢复系统,而不需要用boot-cd来专门引导。当然,如果你的系统已经挂掉不能启动了, 你可以用Live CD来启动,效果是一样的。你还可以用一个命令把Linux系统中的所有文件干掉,当然在这里我不打算给出这个命令!

  • 使用下面的命令来恢复系统:
    tar xvpfz backup.tgz -C /

    如果你的档案文件是使用Bzip2压缩的,应该用:

    tar xvpfj backup.tar.bz2 -C /

(注意:上面的命令会用档案文件中的文件覆盖分区上的所有文件。)

  • 执行恢复命令之前请再确认一下你所键入的命令是不是你想要的,执行恢复命令可能需要一段不短的时间。

  • 恢复命令结束时,你的工作还没完成,别忘了重新创建那些在备份时被排除在外的目录:
    mkdir proc

mkdir lost+found
mkdir mnt
mkdir sys
等等

当你重启电脑,你会发现一切东西恢复到你创建备份时的样子了!

Linux备份策略研究

世界上没有绝对安全的系统。如果想获得绝对安全的系统,只有不连接网络,不让管理员之外的人使用,刷卡管制人员进出,使用监视器监视录像,甚至于不 要开机。但是这是完全不切实际的,我们仅能寄望尽量让系统能在承担低风险的情况下工作,因为任何操作系统都不可能毫无漏洞。那么怎样才能让系统承担最低的 风险呢?回答因该是在保障系统尽量安全的基础上,做好各个系统上的数据备份工作。一旦系统遭受到毁灭性的打击,可将平时做好的备份数据及时恢复,这样才能 使被破坏的系统迅速恢复正常,以避免不必要的损失。

新建站点如何修改目录权限?添加www用户组?

首先,使用
----------
# 以下为LLsMP

虚拟主机文件权限修正 : `chown -R nobody:nobody /home/wwwroot/域名/html`

----------
# 以下为LNMP

安装成功后 想在`/home/wwwroot/bbs`安装一个论坛,绑定域名www.bbs.com 路径 `/home/wwwroot/bbs`
利用/root/vhost.sh建立好主机后 `/home/wwwroot/bbs`的目录权限应该不对 在安装论坛时提示都为不可写
#具体的命令是:
- `chmod 755 -R /home/wwwroot/bbs`
- `chown www:www -R /home/wwwroot/bbs`

*`/root/vhost.sh` 会自己创建目录。*

必须添加到www组,默认是用www账号来跑web服务的
另外chmod和chown是两个概念不同的命令,前者是说的改变文件权限,后者说的是改变所有者(属主)
让我不解的就是这个用户组的必要性 因为我发现在FlashFXP里通过SFTP方式连接到服务器上 建立一个目录 然后右键 属性 修改到777权限
网站目录即可正常安装DZ等程序 这里应该不会添加www组到所有者吧?

你的FTP账号应该是www组的,所以上传的程序文件,所有者也是www

你可以FTP上传一个文件,然后在SSH下看它的属性。

aria2应用实例

aria2是一个实用程序,用于下载文件。支持的协议HTTP(S),FTP,BitTorrent,和Metalink。它具有强大的分段下载能力,从多个源和多个协议下载一个文件,并利用你的最大下载带宽。它支持从HTTP(S)/ FTP和BitTorrent同时下载同一个文件,而从HTTP(S)/ FTP下载的数据,可以上传到BitTorrent swarm中。使用Metalink的块校验,aria2会自动验证下载文件的数据块像BitTorren一样。

用法:

  • Download from WEB:
    aria2c http://example.org/mylinux.iso

  • Download from 2 sources:
    aria2c http://a/f.iso ftp://b/f.iso

  • Download using 2 connections per host:
    aria2c -x2 http://a/f.iso

  • BitTorrent:
    aria2c http://example.org/mylinux.torrent

  • BitTorrent Magnet URI:
    aria2c 'magnet:?xt=urn:btih:248D0A1CD08284299DE78D5C1ED359BB46717D8C'

  • Metalink:
    aria2c http://example.org/mylinux.metalink

  • Download URIs found in text file:
    aria2c -i uris.txt

使用SFTP代替FTP服务器

FTP并不是唯一的上传文件的方法,大部分情况下都可使用sftp代替。sftp是什么呢?

sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的加密方法。sftp 与 ftp 有着几乎一样的语法和功能。SFTP 为 SSH的一部分,SFTP是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低一些。

sftp是不需要另外安装的,因为是SSH自带的,所以会更省系统资源,也不需要单独配置,对新手来说比较简单。

Windows下面常见的FTP客户端Filezilla、Flashfxp、Winscp、cuteftp等都是支持sftp的,只需要在登陆时选择sftp协议,输入SSH的账号密码。

Linux下也可以安装使用Filezilla

需要注意的是,用那个用户登陆就会登陆到那个用户的目录下,如用root登陆就是在/root 下。

最新文章

最近回复

分类

  • 默认分类 (24)
  • 运维 (53)
  • docker (1)
  • 动漫 (19)
  • 科普知识 (15)
  • 苍白边缘 (16)
  • 资源 (12)
  • Linux (58)
  • Arch Linux (19)
  • 计算机 (18)
  • 编程 (3)
  • Java (4)
  • python (0)
  • php (0)
  • 前端 (1)
  • 公告 (1)
  • 归档




      其它