在linux中一般会使用date命令来查看当前系统时间,使用date -s命令来修改系统时间。 如何查看当前系统时间? date命令是用来显示系统时间的,可以按照指定格式来显示日期,如果只键入date则以默认格式显示当前系统时间。【视频教程推荐:linux教程】 例: [root@localhost ~]# date Fri Mar 1 10:36:45 PDT 2019 也可以按照指定格式来显示日期,可以使用“+”开头的字符串指定其格式,详细格式如下: %n : 下一行 %t : 跳格 %H : 小时(00-23) %I : 小时(01-12) %k : 小时(0-23) %l : 小时(1-12) %M : 分钟(00-59) %p : 显示本地 AM 或 PM %r : 直接显示时间 (12 小时制,格式为 hh:mm:ss [AP]M) %s : 从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数 %S : 秒(00-60) %T : 直接显示时间 (24 小时制) %X : 相当于 %H:%M:%S %Z : 显示时区 %a : 星期几 (Sun-Sat) %A : 星期几 (Sunday-Saturday) %b : 月份 (Jan-Dec) %B : 月份 (January-December) %c : 直接显示日期与时间 %d : 日 (01-31) %D : 直接显示日期 (mm/dd/yy) %h : 同 %b %j : 一年中的第几天 (001-366) %m : 月份 (01-12) %U : 一年中的第几周 (00-53) (以...
今天小编给带来一篇linux解压方面的资料 Linux解压gz文件的命令有:gunzip命令、gzip命令、tar命令。下面本篇文章就来带大家了解一下 gz文件是一种压缩文件,以.gz或者.tar.gz(.tgz)为扩展名,在Linux、UNIX和OSX下常见,Linux和OSX都可以直接解压使用这种压缩文件。在Windows下常用压缩软件WinRAR打开gz文件,它相当于常见的RAR和ZIP格式。 .gz文件解压 如果是以.gz扩展名结尾的gz文件,可以使用gunzip命令、gzip命令来解压。 gunzip命令 作用是解压文件,使用权限是所有用户。例: gunzip FileName.gz gzip命令 gzip命令是在Linux系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。gzip不仅可以用来压缩大的、较少使用的文件以节省磁盘空间,还可以和tar命令一起构成Linux操作系统中比较流行的压缩文件格式。 解压的基本句式: gzip -d FileName.gz 补:可以使用gzip命令来创建.gz文件,基本句式: gzip FileName .tar.gz(.tgz)文件解压 如果是以.tar.gz(.tgz)扩展名结尾的gz文件,可以使用tar命令来解压,执行以下命令: tar zxvf FileName.tar.gz 就可解压.tar.gz文件 以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!! 以上就是Linux解压gz文件的命令是什么的详细内容,
【腾讯云】2核2G云服务器新老同享 99元/年,续费同价,云服务器3年机/5年机限时抢购,低至 2.5折
2024-12-22
Linux中文乱码的解决方法:比如当log4j乱码时我们可以通过找到配置文件在里面设置字符编码为utf-8来,若linux未安装中文语言包可以安装中文语言包解决问题 经常会遇到很多Linux下的中文乱码问题,今天将为大家分享一些常见的解决方法,具有一定的参考价值,希望对大家有所帮助 【推荐课程:Linux教程】 mysql中文乱码 vi /etc/my.cnf 在mysqld下添加 [mysqld] character-set-server=utf8 tomcat中文乱码 找到tomcat/conf/sever.xml 在下面的标签中插入URIEncoding=”UTF-8” <Connector port="9999" URIEncoding="UTF-8" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> log4j乱码 使用的配置文件,在配置文件中插入 log4j.appender.A1.Encoding=UTF-8 Linux无中文语言包 查看当前语言 locale 安装简体中文 yum install kde-l10n-Chinese 修改配置文件etc/locale.conf LANG="zh_CN.UTF-8" 另外提一句,时区默认不是中国,这里吃过亏,所以修改时区为亚洲上海 ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 总结:以上就是本篇文章的全部内容了,希望对大家有所帮助。
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 文件命名规则: 1.严格区分大小写; 2.长度不能超过255个字符; 3.不能使用/当文件名 mkdir:创建空目录 -p:parent,父目录,逐级创建 -v:verbose,打印详细信息 命令行展开:mkdir -pv /mnt/test/{x/m,y} 波浪线展开:~USERNAME tree + 目录名:查看目录树 rmdir:移除空目录 文件创建与删除 touch:改变文件的时间戳。若文件不存在,则创建 -a:access,只改变访问时间 -c:不创建任何文件 -m:modify,只改变修改时间 -t:stamp,指定时间 stat:显示文件或文件系统状态信息 创建文件,使用文件编辑器 nano hello Ctrl + O:保存 删除文件/目录:rm hello -i:interactive,交互式 -f:force,强制删除 -r:recursive,递归删除目录 \rm hello 恢复命令本身 以上就是分享Linux中文件创建与删除的详细内容,更多请关注学派吧其它相关文章!
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 Linux系统IO中write原型为 ssize_t write(int filedes, const void * buff, size_t nbytes) ; 当调用write写数据的时候,调用完成后write直接返回,但是磁盘是个慢速设备,操作系统会将数据保存在内核中的缓冲区中,并负责异步地将数据写至磁盘。当然如果此时系统宕机了则会丢失数据。write是系统调用,每次调用都会陷入内核,所以选取一个合适的块长度buffsize,并尽量减少它的调用可以优化效率。在ANSI C的标准IO中我们调用printf/fprintf/fputs等会以流的方式进行处理,我们只需要写入流中,而不用像write一样选择一个buffsize,因为标准IO库帮我们处理了很多细节,例如缓冲区分配,以优化长度执行IO等。这样的话就会减少wirte/read系统调用的数量,提高效率。但是与此同时会引入另外一个问题:数据拷贝,例如当使用函数fgets和fputs时,通常需要经过两次缓冲区:一次是标准IO缓冲区,还有一次是调用read和write的内核缓冲区。但是总的来说使用标准IO相对于系统IO来说接口简单,且效率相当。 标准IO提供了三种类型的缓冲区:全缓存,行缓存和不带缓存,全缓存只有在缓冲区满时才会主动flush,通常用在对一个磁盘文件IO。行缓存在缓冲区中遇到换行符就会flush,还有一种情况是需要从标准输入输出得到输入数据时也会flush缓冲区,行缓存一般用在交互的终端中。不带缓存则相当于直接 write系统调用输出,标准出错流stderr通常是不带缓存的,这就使得出错信息可以尽快显示出来。除了默认的flush条件外,显式调用fflush函数和程序正常终止时也会flush缓冲区。我们可以使用setbuf/setvbuf来更改默认的缓冲区长度,参见APUE 5.4节。 在使用标准IO的程序中,当我们将一个标准输出重新定向到一个文件时,会将行缓存变为全缓存,在某些情况下可能会导致一些非预期错误,比如调用printf(“*****\n”)时,当以交互方式运行该程序时,会正常输出。但是当将标准输出重新定向到一个文件时,缓冲区区变为全缓存,printf就不会正常输出,该行数据仍在缓冲区中。如果此时再fork一个子进程,数据空间被复制到子进程中时,该缓冲区数据也被复制到子进程中。接着在子进程中如果输出则会刷新之前在缓冲区的内容,产生一些非预期的输出。 在网络编程中,应该直接使用系统IO,标准IO为提升性能而引入缓冲机制增加了网络应用程序的复杂性。并且,某种意义上说标准IO流是全双工的,能同时执行输入和输出,然而对流的限制和对套接字的限制,有时候会互相冲突。(参见CSAPP P611) 某些高级的网络库中(比如说muduo库)在使用系统IO的基础上会创建自己的缓冲区,帮助用户屏蔽系统IO的某些不便,例如调用write发送大量数据的时候,发送缓冲区满时需要应用层等待,read接收数据的时候粘包和数据接受的缓慢。当增加应用层缓冲区后,由网络库处理这些实现细节,简化用户操作。 Linux还提供了零拷贝技术来减少内存拷贝,进而提升效率,我们知道利用read/write从磁盘发送数据到网卡会经过四次拷贝操作:当应用程序需要访问某块数据的时候,操作系统内核会先检查这块数据是不是因为前一次对相同文件的访问而已经被存放在操作系统内核地址空间的缓冲区内,如果在内核缓冲区中找不到这块数据,Linux 操作系统内核会先将这块数据从磁盘读出来放到操作系统内核的缓冲区里。如果这个数据读取操作是由 DMA 完成的,那么在 DMA 进行数据读取的这一过程中,CPU 只需要进行缓冲区管理,以及创建和处理 DMA ,除此之外,CPU 不需要再做更多的事情,DMA 执行完数据读取操作之后,会通知操作系统做进一步的处理。Linux 操作系统会根据 read系统调用指定的应用程序地址空间的地址,把这块数据存放到请求这块数据的应用程序的地址空间中去,待用户对数据完成操作后,操作系统需要将数据再一次从用户应用程序地址空间的缓冲区拷贝到与网络堆栈相关的内核缓冲区中去,这个过程也是需要占用 CPU 的。数据拷贝操作结束以后,数据会被打包,然后发送到网络接口卡上去。从上面的描述可以看出,在这种传统的数据传输过程中,数据至少发生了四次拷贝操作,即便是使用了 DMA 来进行与硬件的通讯,CPU 仍然需要访问数据两次。 (ps:记得之前看过一个面试题说是printf输出过程经过几次缓冲区,现在大家明白了吧!) 使用零拷贝技术可以避免数据在系统内核地址空间的缓冲区和用户应用程序地址空间的缓冲区进行拷贝。有时候,应用程序在数据传输的过程中不需要对数据进行访问,传输的数据可以不用复制到用户应用区,直接通过内核发送到网卡就可以,这样可以提高性能,而此时就需要零拷贝技术。linux下可以用mmap,sendfile,splice实现零拷贝。 以上就是IO缓冲区管理的实例详解的详细内容,更多请关注学派吧其它相关文章!
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 1. 先用rpm -qa| grep vsftpd命令检查是否已经安装,如果ftp没有安装,使用yum -y install vsftpd 安装,(ubuntu 下使用apt-get install vsftpd) 2. service vsftpd start / service vsftpd restart 启动要让FTP每次开机自动启动,运行命令: chkconfig –level 35 vsftpd on 3. 设置ftp权限 vi /etc/vsftpd/vsftpd.conf 将anonymous_enable=YES 改为 anonymous_enable=NO ESC返回,输入“:wq”保存并推出 刷新防火墙 #iptables -F 其中vsftpd的主配置文件是: /etc/vsftpd/vsftpd.conf 实验一: 如果我不允许FTP匿名登陆,我们可以修改vsftpd的主配置文件来实现 #vi /etc/vsftpd/vsftpd.conf 把anonymous_enable=YES 改为anonymous_enable=NO 实验二: windows中FTP服务器可以设置欢迎词,最大连接数,那我们在Linux的FTP服务器中设置呢?我要回答的是:同样可以,我们同样可以vsftpd的主配置文件来实现# vi /etc/vsftpd/vsftpd.conf 在最后添加ftpd_banner=welcome to here! 这就是欢迎词Max_clients=100 这就表示最多可以有100个用户同时访问重启vsftpd即可! 实验三: 如果我想把借我钱不还的同事(lilei),不想让他登陆到我们的FTP站点,那我可以把用户lilei添加到vi /etc/vsftpd.ftpusers 实验四: 上午总经理说要提拔公司的一小部分人,听到这个消息,赶紧行动,我只允许总经理一个人可以登陆FTP服务器,其他人休想,拍经理马匹,限制其他人。我可以这样做:# vi /etc/vsftpd/vsftpd.conf 到最后添加2条, userlist_deny=NO /这个列表里的人不拒绝,其他人拒绝(包括匿名) userlist_file=/etc/mp /指明列表的路径 vsftpd配置文件采用“#”作为注释符,以“#”开头的行和空白行在解析时将被忽略,其余的行被视为配置命令行,每个配置命令的“=”两边不要留有空格。对于每个配置命令,在配置文件中还列出了相关的配置说明,利用vi编辑器可实现对配置文件的编辑修改。方法如下: #vi /etc/vsftpd/vsftpd.conf 1.登录和对匿名用户的设置 write_enable=YES //是否对登录用户开启写权限。属全局性设置。默认NO local_enable=YES //是否允许本地用户登录FTP服务器。默认为NO anonymous_enable=YES //设置是否允许匿名用户登录FTP服务器。默认为YES ftp_username=ftp //定义匿名用户的账户名称,默认值为ftp。 no_anon_password=YES //匿名用户登录时是否询问口令。设置为YES,则不询问。默 认NO anon_world_readable_only=YES //匿名用户是否允许下载可阅读的文档,默认为YES。 anon_upload_enable=YES //是否允许匿名用户上传文件。只有在write_enable设置为 YES时,该配置项才有效。而且匿名用户对相应的目录必须有写权限。默认为NO。 anon_mkdir_write_enable=YES //是否允许匿名用户创建目录。只有在write_enable设置为 YES时有效。且匿名用户对上层目录有写入的权限。默认为NO。 anon_other_write_enable=NO //若设置为YES,则匿名用户会被允许拥有多于 上传和建立目录的权限,还会拥有删除和更名权限。默认值为NO。 2.设置欢迎信息 用户登录FTP服务器成功后,服务器可向登录用户输出预设置的欢迎信息。 ftpd_banner=Welcome to my FTP server. //该配置项用于设置比较简短的欢迎信息。若欢迎信息较多,则可使用banner_file配置项。 banner_file=/etc/vsftpd/banner //设置用户登录时,将要显示输出的文件。该设置项将覆盖ftpd_banner的设置。 dirmessage_enable=YES //设置是否显示目录消息。若设置为YES,则当用户进入特定目录(比如/var/ftp/Linux)时,将显示该目录中的由message_file配置项指定的文件(.message)中的内容。 message_file=.message //设置目录消息文件。可将显示信息存入该文件。该文件需要放在 相应的目录(比如/var/ftp/linux)下 3.设置用户登录后所在的目录 local_root=/var/ftp // 设置本地用户登录后所在的目录。默认配置文件中没有设置该项,此时用户登录FTP服务器后,所在的目录为该用户的主目录,对于root用户,则为/root目录。 anon_root=/var/ftp //设置匿名用户登录后所在的目录。若未指定,则默认为/var/ftp目录。 4.控制用户是否允许切换到上级目录 在默认配置下,用户可以使用“cd..”命名切换到上级目录。比如,若用户登录后所在的目录为/var/ftp,则在“ftp>”命令行 下,执行“cd..”命令后,用户将切换到其上级目录/var,若继续执行该命令,则可进入Linux系统的根目录,从而可以对整个Linux的文件系统...
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 命令 参数 说明 ——————————————————————————– useradd 用于创建新的用户 -d 指定用户的家目录(默认为/home/username) -D 显示默认值 -e 新账户的过期日期,格式“YYYY-MM-DD” -g 指定一个初始用户组(必须已经存在) -G 指定一个或多个扩展用户组 -N 不创建同名的用户组 -s 指定默认的登陆shell -u 指定用户的UID passwd 用于修改用户的密码 -l 锁定用户禁止其登陆 -u 解除锁定,允许用户登陆 –stdin 允许从标准输入修改用户密码 -d 使账号无密码 -e 强制用户下次登陆时修改密码 -S 显示用户的密码状态 userdel 用于删除用户 -f 强制删除用户,家目录与其相关文件 -r 删除用户,家目录、邮件池 usermod 用于修改用户的属性 -c 填写账号的备注信息 -d -m -m与-d连用,可重新指定用户的家目录并自动把新的数据转移过去 -e 账号到期时间,格式“YYYY-MM-DD” -g 变更所属用户组 -G 变更扩展用户组 -L 锁定用户,禁止其登陆系统 -U 解锁用户,允许其登陆系统 -s 变更用户的登陆shell -u 修改用户的UID groupadd 用于创建群组 以上就是用户与组管理命令详解的详细内容,更多请关注学派吧其它相关文章!
官网安装教程链接: 我在ubuntu14.04 LTS 桌面版/服务器版都安装DevStack成功后,在这里记录下安装过程。 介绍下安装环境: VMware Workstation Pro 12 ubuntu14.04 LTS 系统 如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 安装前准备: 1、系统更换ubuntu源 ,从链接中选择一个数据源,我选择的源如下: deb http://mirrors.yun-idc.com/ubuntu/ trusty main restricted universe multiverse deb http://mirrors.yun-idc.com/ubuntu/ trusty-security main restricted universe multiverse deb http://mirrors.yun-idc.com/ubuntu/ trusty-updates main restricted universe multiverse deb http://mirrors.yun-idc.com/ubuntu/ trusty-proposed main restricted universe multiverse deb http://mirrors.yun-idc.com/ubuntu/ trusty-backports main restricted universe multiverse deb-src http://mirrors.yun-idc.com/ubuntu/ trusty main restricted universe multiverse deb-src http://mirrors.yun-idc.com/ubuntu/ trusty-security main restricted universe multiverse deb-src http://mirrors.yun-idc.com/ubuntu/ trusty-updates main restricted universe multiverse deb-src http://mirrors.yun-idc.com/ubuntu/ trusty-proposed main restricted universe multiverse deb-src http://mirrors.yun-idc.com/ubuntu/ trusty-backports main restricted universe multiverse 2、ubuntu手动配置一个IP,便于在ubuntu系统重启后,DevStack能够使用。 3、ubuntu配置一张能够访问外网的网卡即可。 4、由于安装环境时会涉及到pip工具,需要把pip源的地址映射到国内: [global] timeout = 6000index-url = http://pypi.douban.com/simple/[install] trusted-host = pypi.douban.com 安装步骤 配置pip源 root@ubuntu:/# mkdir /root/.pip root@ubuntu:/# vi /root/.pip/pip.conf [global] timeout = 6000index-url = http://pypi.douban.com/simple/[install] trusted-host = pypi.douban.com 下载DevStack 安装git工具并下载DevStack...
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 1.rsync 与传统的cp、tar备份方式相比,rsync具有安全性高、备份迅速、支持增量备份的优点,通过rsync可以解决对实时性要求不高的数据备份需求,例如定期的备份文件服务器数据到远端服务器,对本地磁盘定期做数据镜像等。 随着应用系统规模不断的扩大,对数据安全性和可靠性也提出了更高的要求,rsync在高端业务中也逐渐暴露出许多不足。首先,rsync实时同步时,需要扫描所有的文件进行比对,进行差量传输。如果文件数量打到了百万甚至千万量级,扫描所有的文件是非常耗时的,而且正在发生变化的往往是其中很少一部分,这是非常低效的方式。其次,rsync不能实时监测、同步数据。虽然它可以通过linux守护进程的方式进行出发同步,但是两次出发动作一定会有时间差,这样就导致了服务端和客户端出现不一致,无法在应用故障时完全的恢复数据。基于以上原因,rsync+inotify就出现了! 2.inotify(监控) inotify是一种强大的、细粒度的、异步的文件系统事件监控机制。通过inotify可以监控文件系统中的添加、删除、修改、移动等各种细微事件,利用这个内核借口,第三方软件就可以监控文件系统下的各种情况变化,而inotify-tools就是这样的一个第三方软件。 一、服务端配置(只需要安装rsync) 共享到/tmp/下: 1.添加虚拟用户useradd rsync -s /sbin/nologin chown -R rsync.rsync /tmp/ 2.配置rsyncd.conf配置文件 vim rsyncd.conf #rsync_config_______________start #rsyncd.conf start## uid = rsync(用户) gid = rsync(用户) use chroot = no(防止出现安全问题) max connections = 200(有多少个客户端可以连接我这个备份服务器) timeout = 300(超时,多长时间没有动作就断掉连接) pid file = /var/run/rsyncd.pid(进程号,将进程号放在这个文件里) lock file = /var/run/rsync.lock(相当于“锁”的概念,上厕所锁门的概念) log file = /var/log/rsyncd.log(出错了,可以查看log日志文件) [tmp](模块) path = /tmp/(路径) ignore errors(忽略错误) read only = false(只读为假,可读,可写的意思) list = false(不允许列表) hosts allow = 10.0.0.0/24(允许的主机) hosts deny = 0.0.0.0/32(拒绝的主机) auth users = rsync_backup(支持虚拟用户) secrets file = /etc/rsync.password(用户对应的密码文件) #rsync_config_______________end 3.建立密码文件 echo “rsync_backup:123456” >/etc/rsync.password 凡是密码文件全部600权限 chmod 600 /etc/rsync.password 4.rsync –daemon daemon模式启动 5.将rsync –daemon加入/etc/rc.local echo “/usr/bin/rsync –daemom” >>/etc/rc.local 二、客户端配置 安装rsync和inotify 1.安装rsync(yum安装即可) 2.建立密码认证文件 echo “123456” >/etc/rsync.password 只需要密码 设置权限600 chmod 600 /etc/rsync.password 3.安装inotify: cd /home/cai/tools/ wget 54 tar xf...
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 参考资料: Nginx中文文档: Nginx的启动、停止、平滑重启、信号控制和平滑升级: 命令行参数: 常用命令: -c filename:设置配置文件。 -t :不运行,而仅仅测试配置文件。nginx 将检查配置文件的语法的正确性,并尝试打开配置文件中所引用到的文件。 -s :传递一个信号,stop快速关闭,quit从容关闭,reopen重新打开日志文件、用于切换日志文件,reload重载配置文件。 -v :显示nginx的版本。 -V:显示nginx的版本,编译器版本和配置参数 ——————————————————————————————————————————————————————————— [root@localhost /]# alias nginx=’/usr/local/nginx/sbin/nginx’ [root@localhost /]# alias [root@localhost /]# nginx -h nginx version: nginx/1.11.13Usage: nginx [-?hvVtTq] [-s signal] [-c filename] [-p prefix] [-g directives] Options: -?,-h : this help -v : show version and exit -V : show version and configure options then exit -t : test configuration and exit -T : test configuration, dump it and exit -q : suppress non-error messages during configuration testing -s signal : send signal to a master process: stop, quit, reopen, reload -p prefix : set prefix path (default: /usr/local/nginx/) -c filename : set configuration file (default: conf/nginx.conf) -g directives : set global...
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等 1 常用选项: -a :(all)显示所有选项,默认不显示LISTEN相关 -t :(tcp)仅显示tcp相关选项 -u :(udp)仅显示udp相关选项 -n :以数字显示IP和端口,能显示数字的全部转化成数字。 -l :仅列出有在 Listen (监听) 的服務状态 -p: 显示建立相关链接的程序名 -r :显示路由信息,路由表 -e :显示扩展信息,例如uid等 -s :按各个协议进行统计 -c :每隔一个固定时间,执行该netstat命令。 -w:raw socket相关 2 -tan 显示所有tcp端口 [root@centos7 ~]# netstat -ant Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN tcp 0 52 192.168.29.3:22 192.168.29.1:51029 ESTABLISHED tcp 0 0 192.168.29.3:22 192.168.29.1:51180 ESTABLISHED tcp6 0 0 :::111 :::* LISTEN tcp6 0 0 :::22 :::* LISTEN tcp6 0 0 ::1:631 :::* LISTEN...
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 刚开始学习和使用Linux系统的时候,大家都会遇到一个问题,那就是终端输入命令回显的时候中文显示乱码。其实乱码这个问题是由系统集成的字符集引起的,由于不能正确的使用相对应字符的字符集,因此OS不能识别出文字导致了乱码。如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题。Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8。出现中文乱码的问题,我们应该怎么去解决它好呢?有何解决方法? 下面的内容就是来说一说linux下中文乱码问题解决方案。 linux下中文乱码问题解决方案 1. linux下中文乱码问题解决方案 从windows传过来的文件拷到linux下是乱码,俺们又想在linux下显示中文,怎么办呢?我们首先进行测试,linux下的中文是否可以正常显示?答:yes. 所以问题就比较明显了,windows下拷过来的不能显示,说明windows下和linux下支持的格式是不相同的. 2. Linux中文乱码如何解决 1)查看当前系统语言 登陆linux系统打开操作终端之后,输入 echo $LANG可以查看当前使用的系统语言。 2)查看安装的语言包 查看是否有中文语言包可以在终端输入 locale命令,如有zh cn 表示已经安装了中文语言 3)如果没有中文语言呢 可以通过网上下载安装中文语言包yum groupinstall chinese-support(不能联网的通过其他电脑下载,上传上去吧) 3. 解决Linux中文乱码问题 修改/root/.bash_profile文件,增加export.GB18030 对于其他用户,也必须相应修改该文件 使用该方法时putty能显示中文,但桌面系统是英文,而且所有的网页中文显示还是乱码 4. linux下文件中文乱码的一些情况 其实乱码这个问题是由系统集成的字符集引起的,由于不能正确的使用相对应字符的字符集,因此OS不能识别出文字导致了乱码,解决的方法不难…… 首先,我们先要知道控制Linux OS 的语言环境变量是 $LANG和$LC_ALL,要解决乱码的情况我们只需要把上述的两个变量正确设置即可. 5. 四步解决Linux系统中出现中文乱码问题 CentOS系统访问 g.cn ,发现中文乱码。 于是用以前的方式:yum -y install fonts-chinese CentOS系统安装后,还是不能显示中文字体。我使用 gedit 编辑源码,其中文注释也为乱码。 后来,终于找到以下方法可以解决,需要两个中文支持的包: fonts-chinese-3.02-12.el5.noarch.rpm ftp://ftp.muug.mb.ca/mirror/centos/5.4/os/x86_64/CentOS/fonts-chinese-3.02-12.el5.noarch.rpm fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm ftp://ftp.muug.mb.ca/mirror/centos/5.4/os/x86_64/CentOS/fonts-ISO8859-2-75dpi-1.0-17.1.noarch.rpm 一个是中文字体,一个是字体显示包。 6. 解决Linux下Oracle中文乱码的一些心得体会 Oracle数据库出现乱码的原因: 操作系统与服务器一致,但客户端与服务器字符集不一致 客户端与服务器一致,但操作系统与服务器不一致 解决办法: 设置相关的字符集,保证操作系统、客户端、数据库服务器,保证这三者的字符集都相同。 相关问答 1. ubuntu文件夹中文乱码 2. linux乱码 3. iterm 配置utf8编码,本地终端中文不乱码,ssh远程中文乱码,咋整啊 【相关推荐】 1. php中文网免费视频教程:《兄弟连新版Linux视频教程》 2. php中文网相关文章:《Linux 教程》 以上就是linux下中文乱码问题解决方案汇总的详细内容,更多请关注学派吧其它相关文章!
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 Linux下查看Nginx等的并发连接数和连接状态。 1、查看Web服务器(Nginx Apache)的并发请求数及其TCP连接状态: netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' 或者: netstat -n | awk ‘/^tcp/ {++state[$NF]} END {for(key in state) print key,”t”,state[key]}’返回结果一般如下: LAST_ACK 5 (正在等待处理的请求数) SYN_RECV 30 ESTABLISHED 1597 (正常数据传输状态) FIN_WAIT1 51 FIN_WAIT2 504 TIME_WAIT 1057 (处理完毕,等待超时结束的请求数) 其他参数说明: CLOSED:无连接是活动的或正在进行 LISTEN:服务器在等待进入呼叫 SYN_RECV:一个连接请求已经到达,等待确认 SYN_SENT:应用已经开始,打开一个连接 ESTABLISHED:正常数据传输状态 FIN_WAIT1:应用说它已经完成 FIN_WAIT2:另一边已同意释放 ITMED_WAIT:等待所有分组死掉 CLOSING:两边同时尝试关闭 TIME_WAIT:另一边已初始化一个释放 LAST_ACK:等待所有分组死掉 常用的三个状态是:ESTABLISHED 表示正在通信,TIME_WAIT 表示主动关闭,CLOSE_WAIT 表示被动关闭。 TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不会被释放。网络服务器程序要同时管理大量连接,所以很有必要保证无用连接完全断开,否则大量僵死的连接会浪费许多服务器资源。在众多TCP状态中,最值得注意的状态有两个:CLOSE_WAIT和TIME_WAIT。 TIME_WAIT TIME_WAIT 是主动关闭链接时形成的,等待2MSL时间,约4分钟。主要是防止最后一个ACK丢失。 由于TIME_WAIT 的时间会非常长,因此server端应尽量减少主动关闭连接 CLOSE_WAIT CLOSE_WAIT是被动关闭连接是形成的。根据TCP状态机,服务器端收到客户端发送的FIN,则按照TCP实现发送ACK,因此进入CLOSE_WAIT状态。但如果服务器端不执行close(),就不能由CLOSE_WAIT迁移到LAST_ACK,则系统中会存在很多CLOSE_WAIT状态的连接。此时,可能是系统忙于处理读、写操作,而未将已收到FIN的连接,进行close。此时,recv/read已收到FIN的连接socket,会返回0。 为什么需要 TIME_WAIT 状态? 假设最终的ACK丢失,server将重发FIN,client必须维护TCP状态信息以便可以重发最终的ACK,否则会发送RST,结果server认为发生错误。TCP实现必须可靠地终止连接的两个方向(全双工关闭),client必须进入 TIME_WAIT 状态,因为client可能面 临重发最终ACK的情形。 为什么 TIME_WAIT 状态需要保持 2MSL 这么长的时间? 如果 TIME_WAIT 状态保持时间不足够长(比如小于2MSL),第一个连接就正常终止了。第二个拥有相同相关五元组的连接出现,而第一个连接的重复报文到达,干扰了第二个连接。TCP实现必须防止某个连接的重复报文在连接终止后出现,所以让TIME_WAIT状态保持时间足够长(2MSL),连接相应方向上的TCP报文要么完全响应完毕,要么被 丢弃。建立第二个连接的时候,不会混淆。 TIME_WAIT 和CLOSE_WAIT状态socket过多 如果服务器出了异常,百分之八九十都是下面两种情况: 1.服务器保持了大量TIME_WAIT状态 2.服务器保持了大量CLOSE_WAIT状态,简单来说CLOSE_WAIT数目过大是由于被动关闭连接处理不当导致的。 因为linux分配给一个用户的文件句柄是有限的,而TIME_WAIT和CLOSE_WAIT两种状态如果一直被保持,那么意味着对应数目的通道就一直被占着,而且是“占着茅坑不使劲”,一旦达到句柄数上限,新的请求就无法被处理了,接着就是大量Too Many Open Files异常,Tomcat崩溃。 以上就是关于Linux下如何查看Nginx的并发连接数和连接状态的详细介绍 的详细内容,更多请关注学派吧其它相关文章!
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 假设有如下需求: 假设两个服务器: 192.168.0.1 源服务器 有目录 /opt/test/ 192.168.0.2 目标服务器 有目录 /opt/bak/test/ 实现的目的就是保持这两个服务器某个文件目录保持实时同步 实现方式: 通过rsync+inotify-tools结合来实现 准备工作: 首先要给两台机器添加信任关系,具体方法已经在前面的文章介绍过了 详情查看: linux添加信任关系免密码登录 需要安装软件: 1. rsync 同步软件 在 源服务器 和 目标服务器 都需要安装 源服务器: 是rsync客户端,不需要配置 目标服务器: 是rsync服务器端,需要配置/etc/rsyncd.conf里的内容 2. inotify-tools 工具 该工具为文件实时监控工具,需要linux操作系统内核支持,内核支持需要至少版本为2.6.13 检查操作系统是否支持,执行如下: uname -r 查看版本 返回: 2.6.32-358.6.1.el6.x86_64 则表示版本2.6.32 大于2.6.13,则支持。 执行: ll /proc/sys/fs/inotify total 0 -rw-r--r-- 1 root root 0 Oct 18 12:18 max_queued_events -rw-r--r-- 1 root root 0 Oct 18 12:18 max_user_instances -rw-r--r-- 1 root root 0 Oct 18 12:18 max_user_watches 有三项输出,则表示默认支持inotify,可以安装inotify-tools工具. 如果不支持,需要采用新版本的linux操作系统 版本达到要求,就可以安装了。 安装inotify-tools后会在相关安装目录下生成如下两个文件: ll /usr/local/bin/ total 88 -rwxr-xr-x 1 root root 44327 Oct 10 15:32 inotifywait -rwxr-xr-x 1 root root 41417 Oct 10 15:32 inotifywatch 则表示安装成功。 注意: 在 源服务器上需要安装,目标服务器上不需要安装inotify。 3. 相关脚本: 在源服务器上新建脚本: inotify_bak.sh #!/bin/bash src=/opt/test/ /usr/local/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format...
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 一、/etc/hosts>man hosts1、作用: 主机名查询静态表;主要用于IP地址与计算机主机名之间的转换。/etc/hosts文件格式,每行表示一个IP地址;每行由三部分构成:IP_address canonical_hostname [aliases…….]IP地址 &nbs 1. linux系统服务(一)之/etc/host* 的文件说明详解 简介:上述孤立节点就是说:建立没有连接的internet的局域网中,可以使用/etc/hosts指定需要连接的主机名与IP的映射,不在/etc/hosts映射之中的,一般无法连接。 2. python读写json文件说明 简介:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C、C++、Java、JavaScript、Perl、Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率)。 3. Nginx服务器nginxconf的配置文件说明 简介::本篇文章主要介绍了Nginx服务器nginxconf的配置文件说明,对于PHP教程有兴趣的同学可以参考一下。 4. 12306 验证码 php 数学运算验证码实现代码 简介:12306 验证码:12306 验证码 php 数学运算验证码实现代码:复制代码 代码如下:<?php //————————————- // 文件说明:数学运算验证码 // 文件作者:Jesse Lee // 最后更新:2008-09-07 //————————————- session_start(); $sessionvar = ‘vdcode’; //Sessi 5. PHP框架 php框架Phpbean说明 简介:PHP框架:PHP框架 php框架Phpbean说明:Phpbean的核心文件很少,这和phpbean的设计思想(强调性能和分工合作开发)是非常相关的。Phpbean的核心仅仅只是实现基本的MVC框架,不提供任何多余的代码,对程序员是非常透明的。 Phpbean的核心文件说明如下(注意,核心文件大都可以单独使用): 1、 action.php action的基类。任何其他的action都必须是它的子类。里面之实现一个功能:对URL数据的处理。 2、 6. php 数学运算验证码实现代码_PHP教程 简介:php 数学运算验证码实现代码。复制代码 代码如下: ?php //————————————- // 文件说明:数学运算验证码 // 文件作者:Jesse Lee // 最后更新:2008-09-07 //——— 7. 解析php session_set_save_handler 函数的用法(mysql)_PHP教程 简介:解析php session_set_save_handler 函数的用法(mysql)。复制代码 代码如下: ?php /*============================文件说明======================================== @filename: session.class.php @description: 数据库保存在线用 8. nusoap wsdl 文件说明。解决办法 简介:nusoap wsdl 文件说明。。我的服务器创建如下: App::import(‘Vendor’, ‘nusoap/lib/nusoap’); $server = new soap_server; $server->configureWSDL(‘sum’);$server->register(‘sum’,array 9. PHP中 验证码没法在调用页面正常显示 简介:PHP中 验证码无法在调用页面正常显示 第一:页面文件说明部分: 1、调用页面的路径htmlproblems.php 2、验证码页面的路径 htmlinccode.php ? 第二:code.php 页面代码 如下图 ? 第三:problems.php页面代码 如下图 ?...
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 简介 sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有 改变,除非你使用重定向存储输出。Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。 sed使用参数 [root@www ~]# sed [-nefr] [动作] 选项与参数: -n :使用安静(silent)模式。在一般 sed 的用法中,所有来自 STDIN 的数据一般都会被列出到终端上。但如果加上 -n 参数后,则只有经过sed 特殊处理的那一行(或者动作)才会被列出来。 -e :直接在命令列模式上进行 sed 的动作编辑; -f :直接将 sed 的动作写在一个文件内, -f filename 则可以运行 filename 内的 sed 动作; -r :sed 的动作支持的是延伸型正规表示法的语法。(默认是基础正规表示法语法) -i :直接修改读取的文件内容,而不是输出到终端。 动作说明: [n1[,n2]]function n1, n2 :不见得会存在,一般代表『选择进行动作的行数』,举例来说,如果我的动作是需要在 10 到 20 行之间进行的,则『 10,20[动作行为] 』 function: a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~ c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行! d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚; i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行); p :列印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~ s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦! 以行为单位的新增/删除 将 /etc/passwd 的内容列出并且列印行号,同时,请将第 2~5 行删除! [root@www ~]# nl /etc/passwd | sed '2,5d' 1 root:x:0:0:root:/root:/bin/bash 6 sync:x:5:0:sync:/sbin:/bin/sync 7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown .....(后面省略)..... sed 的动作为 ‘2,5d’ ,那个 d 就是删除!因为 2-5 行给他删除了,所以显示的数据就没有 2-5 行罗~ 另外,注意一下,原本应该是要下达 sed...
如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 这篇文章主要为大家详细介绍了Linux中Nginx的安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 Linux下Nginx安装教程分享,具体内容如下 1、安装编译文件及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 2、安装PCRE,Nginx的rewrite的伪静态匹配规则需要用到正则表达式,PCRE就是起到这个作用。 如果wget没有安装的话,需要先安装wget,yum -y install wget. wget是Linux环境下的下载工具。wget命令的使用见此文章 3、解压pcre安装包:tar -zxvf pcre-8.35.tar.gz 4、进入安装目录,编译安装 cd pcre-8.35 ./configure make && make install 5、查看pcre版本 pcre-config –version 6、下载Nginx wgethttp://nginx.org/download/nginx-1.6.2.tar.gz 7、解压并进入安装包 8、编译安装 ./configure --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/src/pcre-8.35 make make install 9、查看Nginx版本 10、Nginx配置 1)、创建Nginx 运行使用的用户 /usr/sbin/groupadd www /usr/sbin/useradd-g www www 2)、配置nginx.conf ,将/usr/local/webserver/nginx/conf/nginx.conf替换为以下内容 user www www; worker_processes 2; #设置值和CPU核心数一致 error_log /usr/local/webserver/nginx/logs/nginx_error.log crit; #日志位置和日志级别 pid /usr/local/webserver/nginx/nginx.pid; #Specifies the value for maximum file descriptors that can be opened by this process. worker_rlimit_nofile 65535; events { use epoll; worker_connections 65535; } http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" $http_x_forwarded_for'; #charset gb2312; server_names_hash_bucket_size 128; client_header_buffer_size...
这篇文章主要为大家详细介绍了Linux学习第二篇,Java环境安装配置教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理 本文教程为大家分享了Java环境安装配置,供大家参考,具体内容如下 jdk版本:jdk-8u131-linux-x64.rpm 注:以下操作在root用户或具有root权限的用户下操作 一、将 dk-8u131-linux-x64.rpm拷贝到/home目录下 cp jdk-8u131-linux-x64.rpm /home/ 二、解压rpm文件 rpm -ivh jdk-8u131-linux-x64.rpm 三、环境变量的配置 注:环境变量的配置稍微麻烦一点,不过也不是特别难。 1.输入以下命令,进入到配置文件中 vim /etc/profile 2.进入配置文件后,这时是不可编辑的状态。要想编辑数据首先输入’i’,下方会显示insert单词,这时就可以插入了。在配置文件中加入以下代码即可(记得把路径改为自己的安装路径)。 JAVA_HOME=/usr/java/jdk1.8.0_131 CLASSPATH=.:/usr/java/jdk1.8.0_131/jre/lib/rt,jar PATH=$PATH/usr/java/jdk1.8.0_131 ecport PATH CLASSPATH JAVA_HOME 3.插入过后按‘esc’,此时切换到了不可插入状态,然后在输入’:wq’保存并退出。 4.输入javac查看是否配置成功 以上就是Linux学习第二篇之Java环境安装配置图文教程的详细内容,更多请关注学派吧其它相关文章! 如果您有服务器咨询问题、购买问题、可以联系我们客服 7271895 690624 商祺云-阿里代理、景安代理、西部代理