Linux 多条命令同时执行的一些姿势

命令之间用 ; 隔开

说明:各命令的执行结果,不会影响其它命令的执行。换句话说,各个命令都会执行,但不保证每个命令都执行成功。

root@ubuntu:/# echo $HOME; echo $LANG
/root
en_US.UTF-8

命令之间用 && 隔开

说明:若前面的命令执行成功,才会去执行后面的命令。这样可以保证所有的命令执行完毕后,执行过程都是成功的。

root@ubuntu:~# cd Cloud && mkdir test
root@ubuntu:~/Cloud# ls
test
root@ubuntu:~/Cloud# cd Cloudaaa && mkdir test
-bash: cd: Cloudaaa: No such file or directory

命令之间用 || 隔开

说明:|| 是或的意思,只有前面的命令执行失败后才去执行下一条命令

/* && 不会输出 123 */
root@ubuntu:~/Cloud# cd Cloudaaa && echo '123'
-bash: cd: Cloudaaa: No such file or directory
/* 用 || 可以输出 123,因为 cd Cloudaaa 失败了 */
root@ubuntu:~/Cloud# cd Cloudaaa || echo '123'
-bash: cd: Cloudaaa: No such file or directory
123

命令之间用 | 隔开

说明:在命令行中,| 表示管道,管道可以将一个命令的输出导向另一个命令的输入,从而让两个(或者更多命令)像流水线一样连续工作,不断地处理文本流。

root@ubuntu:~/Cloud# env | grep LANG
LANG=en_US.UTF-8
LANGUAGE=en_US:

env 获取所有环境变量将结果传给下一个命令,所以用 grep 搜索 LANG 就会有结果显示。

日志文件分割(将大的日志文件分割成小的)

   通常网站的日志文件之前没有配置自动切割,需要看日志的时候非常大,就需要割成小块,文件分割可以通过split命令来实现,可以指定按行数分割和按大小分割两种模式。文件合并可以通过cat命令来实现,非常简单。

在Linux下用split进行文件分割:

模式一:指定分割后文件行数

对与txt文本文件,可以通过指定分割后文件的行数来进行文件分割。

命令:split -l 300 large_file.txt new_file_prefix

模式二:指定分割后文件大小

split -b 10m server.log waynelog

对二进制文件我们同样也可以按文件大小来分割。

在Linux下用cat进行文件合并:

命令:cat small_files* > large_file


Win下文件分割工具

Ultra File Splitte.zip


Linux(CentOS)挂载移动硬盘,实现文件拷贝、备份

常常我们需要备份服务器上的某些数据,今天在这里跟大家分享一下如何使用移动硬盘备份CentOS上的文件。

一、挂载移动硬盘(挂载NTFS格式分区)

 1. 安装ntfs3g工具

  • wget http://tuxera.com/opensource/ntfs-3g_ntfsprogs-2011.4.12.tgz

  • tar zxf ntfs-3g_ntfsprogs-2011.4.12.tgz

  • cd ntfs-3g_ntfsprogs-2011.4.12

  • ./configure --prefix=/usr/local/ntf3g

  • make&&make install


 2.  挂载(可以使用多种命令进行挂载,蓝色代表要挂载的移动硬盘,绿色代表挂载到CentOS上某个盘符)

    命令一:ntfs-3g /dev/sdb1 /mnt/windows -o locale=ar_SA.UTF-8,红色部分也可改为zh_CN.GBK,很明显,使用某种编码进行挂载,防止出现乱码;

    命令二:mount -t ntfs-3g /dev/sdb1 /mnt/windows

    补充:如何找到要挂载的移动硬盘?请使用命令 fdisk -l 进行查看,取消挂载:umount /mnt/windows


二、挂载移动硬盘错误解决办法

 1. FATAL: Module fuse not found.(这是由于系统默认的内核并不支持FUSE模块,所以要更新内核)

  • modprobe fuse(此命令是用来查看系统是否支持FUSE)

  • uname –r(查看系统的内核版本)

  • yum install kernel*(更新系统内核)

  • shutdown -r now(重启计算机)

  • 使用modprobe fuse命令查看系统是否支持FUSE,若不再显示FATAL: Module fuse not found,表示您可以使用ntfs3g进行移动硬盘挂载了

三、文件拷贝(文件拷贝就很简单了)

  • cp -r /web /mnt/windows (将CentOS中web目录下所有文件拷贝到/mnt/windows下,即拷贝到我们刚刚挂载的移动硬盘上)


原文链接:http://www.cnblogs.com/zengen/archive/2011/09/01/2161637.html

CentOS下调整home和根分区大小

新装的机器,如果安装时候没有调整分区,装好之后应该都在/home 下的,所以需要调整到根目录。

目标:将VolGroup-lv_home缩小到20G,并将剩余的空间添加给VolGroup-lv_root

1.首先查看磁盘使用情况

[root@localhost ~]# df -h

文件系统 容量 已用 可用 已用% 挂载点

Filesystem Size Used Avail Use% Mounted on

/dev/mapper/VolGroup-lv_root 154G 7.9G 139G 6% /

tmpfs 1.9G 100K 1.9G 1% /dev/shm

/dev/sda1 485M 69M 391M 15% /boot

/dev/mapper/VolGroup-lv_home 299G 984M 283G 1% /home

- 阅读全文 -

记一次WIFI_dog系统的路由器信息不更新问题

    客户反馈问题:路由器在上网,但是信息一直显示离线。

2016-05-17_113704.png

中间各种曲折的过程,这里就不献丑了,直接上最终方法。

首先查看nginx 的 access.log

B_1.png

Nginx 499 错误,抓到错误了,问题还想跑?

各种找nginx 499错误 的资料,原因可能是 nginx认为是不安全的连接,主动拒绝了客户端的连接。

解决方案,修改nginx.conf 加入下面的配置,重启nginx。

fastcgi_connect_timeout         300s; 
fastcgi_send_timeout            300s; 
fastcgi_read_timeout            300s; 
fastcgi_ignore_client_abort     on; 
proxy_ignore_client_abort       on;

B_2.png

再次查看日志状态就是 200了。

B_3.png

到这里,系统正常了。

总结:生产环境的经验还是要靠积累,要善于从log中寻找答案,会分析各种log,来寻找相应的对策,还有就是耐心,解决这个问题,累计耗时10个小时,当然可能我比较笨吧。