首页 文章 精选 留言 我的

精选列表

搜索[linux内核],共10000篇文章
优秀的个人博客,低调大师

Debian Linux下LNMP环境配置

昨天刚给公司服务器装了LNMP服务器环境,在这里简单记录一下过程备忘。这里我在安装的时候是用的Dotdeb源,仅供参考。 1. 导入Dotdeb源,据说Dotdeb源里的软件版本比较新。 在向源中导入Dotdeb前,我们需要先获取GnuPG key并导入: wget http://www.dotdeb.org/dotdeb.gpg cat dotdeb.gpg | apt-key add - 提示OK,表明导入成功。然后我们开始导入Dotdeb 源,源列表的位置在“/etc/apt/sources.list”,我们通过vi工具或nano工具打开sources.list,添加如下两行: deb http://packages.dotdeb.org wheezy all deb-src http://packages.dotdeb.org wheezy all 完成之后更新源: apt-get update 接下来就可以开始安装nginx、mysql、php了。 2.MySQL 使用apt工具安装: apt-get install -y mysql-server mysql-client 安装过程中会询问root密码,输入你想设定的密码就可以。安装完成后执行如下配置命令: mysql_secure_installation 按提示往下走就行,过程中会询问是否更改root密码、是否移除匿名用户、是否禁止root远程登录等,自己按需配置即可。 注:我在使用mysql的过程中发现远程客户端无法连接到数据库,后来发现问题是“/etc/mysql/my.cnf”文件中“bind-address = 127.0.0.1”这句话在作祟。把地址绑定到了127.0.0.1上,因此远程无法访问到数据库,这里我们把它注释掉就可以了,或者你的服务器是指定ip的话就配置成你服务器的ip地址就可以了。 当然也有可能是你的mysql没有开启远程访问账户的权限,如果是这个原因,只需在mysql的user表里添加一条记录即可: grant all PRIVILEGES on thedb.* to user1@'%'identified by 'complex-password'; FLUSH PRIVILEGES; 然后重启一下mysql的服务: service mysql restart 3.安装PHP 使用apt工具安装: apt-get install php5-fpm php5-gd php5-mysql php5-memcache php5-curl 如上命令安装了php5-memcache的扩展,因此继续安装Memcached: apt-get install memcached 安装完成之后,可以使用“php5-fpm -v”查看PHP的版本。 4.安装Nginx 我在安装的时候直接安装了Nginx的全部扩展功能(nginx-full),后边可能会有功能性的增强,所以在安装的时候直接全部安装了: apt-get install -y nginx-full 然后启动Nginx: service nginx start 放问地址http://ip,如果看到如下所示,就说明你的Nginx安装正常。 接下来配置Nginx,Nginx的配置文件在“/etc/nginx/sites-available/default” …… location ~ \.php$ { fastcgi_split_path_info ^(.+\.php)(/.+)$; # # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini # # # With php5-cgi alone: # fastcgi_pass 127.0.0.1:9000; # # With php5-fpm: fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } …… 保存之后,重启Nginx: service nginx restart 然后我们创建一个php的页面测试一下: nano /usr/share/nginx/html/phpinfo.php 输入: <?php phpinfo(); ?> 保存之后直接访问:http://ip/phpinfo.php,如果出现phpinfo页面,那么我们的工作就完成了! 原文发布时间:2016-11-18 本文来自云栖社区合作伙伴“ Debian社区”,了解相关信息可以关注“ Debian社区”。

优秀的个人博客,低调大师

linux下安装python3.6

一、安装python3.6 1. 安装依赖环境 #yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel 2.下载Python3 https://www.python.org/downloads/ 1 # wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz 3.安装python3 我个人习惯安装在/usr/local/python3(具体安装位置看个人喜好) 创建目录: 1 # mkdir -p /usr/local/python3 解压下载好的Python-3.x.x.tgz包(具体包名因你下载的Python具体版本不不同⽽而不不同,如:我下载的是Python3.6.1.那我这里就是Python-3.6.1.tgz) 1 # tar -zxvf Python-3.6.1.tgz 4.进入解压后的目录,编译安装。 1 2 # cd Python-3.6.1 # ./configure --prefix=/usr/local/python3 make 1 # make make install 1 make install 或者 make && make install 5.建立python3的软链 1 # ln -s /usr/local/python3/bin/python3 /usr/bin/python3 6.并将/usr/local/python3/bin加入PATH 1 2 3 4 5 6 7 8 9 # vim ~/.bash_profile # .bash_profile # Get the aliases and functions if [ - f ~ / .bashrc ]; then . ~ / .bashrc fi # User specific environment and startup programs PATH = $PATH:$HOME / bin : / usr / local / python3 / bin export PATH 按ESC,输入:wq回车退出。 修改完记得执行行下面的命令,让上一步的修改生效: 1 # source ~/.bash_profile 检查Python3及pip3是否正常可用: 1 2 3 4 # python3 -V Python 3.6 . 1 # pip3 -V pip 9.0 . 1 from / usr / local / python3 / lib / python3. 6 / site - packages (python 3.6 )

优秀的个人博客,低调大师

设置自动唤醒和关闭 Linux

一.系统休眠(crontab) 示例说明(创建一个 root 定时任务实现每天晚上 11 点 15 分定时关机): 1 # crontab -e -u root 2 # m h dom mon dow command 3 15 23 * * * /sbin/shutdown -h now 示例说明(仅在周一至周五运行) 1 15 23 * * 1-5 /sbin/shutdown -h now 另外可以直接在/etc/crontab文件中添加定时服务 15 23 * * 1-5 root shutdown -h now 二. 唤醒(Wake-On-LAN) 1. 查看是否直接Wake-On-LAN和开启,必须支持的功能是g # ethtool eth0 | grep -i wake-on Supports Wake-on: pumbg Wake-on: g 2. 启动g(ps:这条命令可能会在重启后失效) # ethtool -s eth0 wol g 3. 添加cron保证每次重启之后开启g @reboot /usr/bin/ethtool -s eth0 wol g

优秀的个人博客,低调大师

找回Linux系统误删的数据

一、背景 突发事件,应用上传的数据被程序自动删掉了,可悲的是还没有数据备份,数据是放在系统的 /data/webapps/xxxx/upload 目录下面,可把我们急坏了,之前又没有做过数据恢复的测试,然后我找到了一款数据恢复的软件,成功把删除的大部分数据找回来了,我的数据恢复过程如下。 二、安装恢复软件 1、epel 仓库安装 如果我们的源里面添加了 epel 仓库的话,我们可以直接使用下面的命令安装。 yum install extundelete -y 2、源码编译安装 wget http://zy-res.oss-cn-hangzhou.aliyuncs.com/server/extundelete-0.2.4.tar.bz2 yum -y install bzip2 e2fsprogs-devel e2fsprogs gcc-c++ make tar -xvjf extundelete-0.2.4.tar.bz2 cd extundelete-0.2.4 ./configure make && make install 三、删除数据查找 因为我的数据路径比较深,所以我们需要一步步查找,可以先从根分区 inode 查找 extundelete /dev/sdb1 --inode 2 我们会看到 weapps 目录的inode, extundelete /dev/sda5 --inode 24641537 我们看到项目的 inode, extundelete /dev/sda5 --inode 24903688 我们找到了最终删除数据的目录 upload extundelete /dev/sda5 --inode 24904454 我们可以看到标称的 Deleted,这些数据就是我们要进行恢复的数据。 四、数据恢复 那我们就恢复指定目录,以当前分区为根分区进行路径设定,项目名进行掩盖 extundelete /dev/sda5 --restore-directory /webapps/xxxx/upload 因为磁盘数据一直在读写,所以有些文件之前的 inode 已经被重新分配了,导致部分数据无法恢复,数据最后会告诉我们有多少文件没有回复,但是大部分数据我们已经恢复了,这就是很重要的事情了。 那我们查看一下回复的数据吧,软件会在当前目录生成一个目录 RECOVERED_FILES 里面就是我们恢复的数据。 恢复全部数据可以使用命令 extundelete /dev/sda5 --restore-all 使用方法 extundelete --help 其中,参数(options)有: --version, -[vV],显示软件版本号。 --help,显示软件帮助信息。 --superblock,显示超级块信息。 --journal,显示日志信息。 --after dtime,时间参数,表示在某段时间之后被删的文件或目录。 --before dtime,时间参数,表示在某段时间之前被删的文件或目录。 动作(action)有: --inode ino,显示节点“ino”的信息。 --block blk,显示数据块“blk”的信息。 --restore-inode ino[,ino,...],恢复命令参数,表示恢复节点“ino”的文件,恢复的文件会自动放在当前目录下的RESTORED_FILES文件夹中,使用节点编号作为扩展名。 --restore-file 'path',恢复命令参数,表示将恢复指定路径的文件,并把恢复的文件放在当前目录下的RECOVERED_FILES目录中。 --restore-files 'path',恢复命令参数,表示将恢复在路径中已列出的所有文件。 --restore-all,恢复命令参数,表示将尝试恢复所有目录和文件。 -j journal,表示从已经命名的文件中读取扩展日志。 -b blocknumber,表示使用之前备份的超级块来打开文件系统,一般用于查看现有超级块是不是当前所要的文件。 -B blocksize,通过指定数据块大小来打开文件系统,一般用于查看已经知道大小的文件。 在数据删除之后,首先要卸载被删除数据所在的磁盘或是分区,如果是系统根分区遭到误删除,就需要进入单用户模式下,将根分区以只读的方式挂载。 原因:因为文件删除之后,仅仅是将文件的inode节点中的扇区指针清零,实际上文件还存在磁盘上面,如果磁盘以读写方式挂载,这些删除的数据块可能会被系统从新分配出去,这些数据块被覆盖之后,这些数据就真的丢失了,所以以只读的方式挂载,尽可能避免数据被覆盖。

优秀的个人博客,低调大师

Linux新建用户并允许docker

创建用户 1.作用 useradd或adduser命令用来建立用户帐号和创建用户的起始目录,使用权限是超级用户。 2.格式 useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name 3.主要参数 -c:加上备注文字,备注文字保存在passwd的备注栏中。 -d:指定用户登入时的主目录,替换系统默认值/home/<用户名> -D:变更预设值。 -e:指定账号的失效日期,日期格式为MM/DD/YY,例如06/30/12。缺省表示永久有效。 -f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1. -g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。 -G:指定用户所属的附加群组。 -m:自动建立用户的登入目录。 -M:不要自动建立用户的登入目录。 -n:取消建立以用户名称为名的群组。 -r:建立系统账号。 -s:指定用户登入后所使用的shell。默认值为/bin/bash。 -u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。 4.说明 useradd可用来建立用户账号,它和adduser命令是相同的。账号建好之后,再用passwd设定账号的密码。使用useradd命令所建立的账号,实际上是保存在/etc/passwd文本文件中。 5.案例 #useradd -u 544 -d /usr/testuser1 -g users -m testuser1 加-m 如果主目录不存在则自动创建 6.设置用户的密码 passwd ${username} # 输入密码 创建docker用户组并把用户加入组 1、 首先创建docker用户组,如果docker用户组存在可以忽略 sudo groupadd docker 2、把用户添加进docker组中 sudo gpasswd -a ${USER} docker 3、重启docker sudo service docker restart 4、如果普通用户执行docker命令,如果提示get …… dial unix /var/run/docker.sock权限不够,则修改/var/run/docker.sock权限 使用root用户执行如下命令,即可 sudo chmod a+rw /var/run/docker.sock 我的官网 我的官网http://guan2ye.com 我的CSDN地址http://blog.csdn.net/chenjianandiyi 我的简书地址http://www.jianshu.com/u/9b5d1921ce34 我的githubhttps://github.com/javanan 我的码云地址https://gitee.com/jamen/ 阿里云优惠券https://promotion.aliyun.com/ntms/act/ambassador/sharetouser.html?userCode=vf2b5zld&utm_source=vf2b5zld 阿里云教程系列网站http://aliyun.guan2ye.com 我的开源项目spring boot 搭建的一个企业级快速开发脚手架

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

用户登录
用户注册