Linux 软件装在哪里?
1. opt目录
`/opt` 是用来安装附加软件包,是用户级程序目录,
相当于 `D:/soft`,`opt`有可选的意思,
安装到`/opt`目录下的程序,所有的数据、库文件都会放置在同一个目录下
2. /usr目录
`/usr`: 相当于 C:/Windows
`/usr/lib`: 相当于 `C:/Windows/System32`
`/usr/local`: 相当于 `C:/Progrem Files` 是用户级程序目录,用户自己编译的软件默认会安装到此目录(存放手动安装的软件,即不是通过'yum'或'apt-get'安装的软件)
它和/usr有相似的目录结构,让软件包管理器来管理`/usr`,而把自定义脚本放到`/usr/local`目录下
源码放哪里
`/usr/src` 系统级的源码目录
`/usr/local/src` 用户级的源码目录
Linux软件包管理(安装、删除)
0. 下载软件包:wget 软件包地址
1. 手动安装(tar.gz源、tar.bz2源)
① 下载相应的软件包,如soft.tar.gz/soft.tar.bz2
② cd soft.tar.gz/soft.tar.bz2所在的目录
③ tar -xzvf soft.tar.gz
④ cd soft
⑤./configure
⑥ make
⑦ make install
⑧ make clean
2. rpm包安装
① 下载相应的软件包,如soft.version.rpm
② cd soft.version.rpm所在的目录
③ rpm -ivh soft.version.rpm
④ 卸载 rpm -e 软件名
3. dep包安装
① 下载相应的软件包,如soft.version.dep
② cd soft.version.dep所在目录
③ dpkg -i soft.version.dep
④ 卸载 dpkg -e 软件名
⑤ 查看已安装的软件包 dpkg –l '*软件包名*'
4. apt方式安装(安装deb包)
① apt-cache search 软件包
② apt-get install 软件包
③ 删除(保留配置文件) apt-get remove 软件名
④ 删除(不保留配置文件) apt-get --purge remove 软件名
⑤ dpkg --force-all --purge packagename ——有些软件很难卸载,而且还阻止了别的软件的应用,就可以用这个,不过有点冒险。
apt-get autoremove——因为apt会把已装或已卸的软件都备份在硬盘上,所以如果需要空间的话,可以让这个命令来删除你已经删掉的软件。
apt-get autoclean——定期运行这个命令来清除那些已经卸载的软件包的.deb文件。通过这种方式,可以释放大量的磁盘空间。如果需求十分迫切,可以使用apt-get clean以释放更多空间。这个命令会将已安装软件包裹的.deb文件一并删除。
apt-get clean——这个命令会把安装的软件的备份也删除,不过这样不会影响软件的使用的。
apt-get upgrade——更新所有已安装的软件包
apt-get dist-upgrade——将系统升级到新版本
apt-cache search string——在软件包列表中搜索字符串
apt-cache showpkg pkgs——显示软件包信息。
apt-cache stats——查看库里有多少软件
apt-cache dumpavail——打印可用软件包列表。
apt-cache show pkgs——显示软件包记录,类似于dpkg –print-avail。
apt-cache pkgnames——打印软件包列表中所有软件包的名称
5. yum方式安装
① yum -y install 软件包
② 卸载 yum remove 软件名
③ 已安装列表 yum list all
④ 查看软件包信息 yum info 软件名
⑥ 升级所有的软件包 yum update 软件名
⑦ 清除所有包缓存 yum clean all
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
CentOS5 :http://mirrors.163.com/.help/CentOS5-Base-163.repo
CentOS6 :http://mirrors.163.com/.help/CentOS6-Base-163.repo
CentOS7 :http://mirrors.163.com/.help/CentOS7-Base-163.repo
CentOS5 :http://mirrors.aliyun.com/repo/Centos-5.repo
CentOS6 :http://mirrors.aliyun.com/repo/Centos-6.repo
CentOS7 :http://mirrors.aliyun.com/repo/Centos-7.repo
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
mv CentOS6-Base-163.repo CentOS-Base.repo
yum clean all
yum makecache
自己在Linux 上的一些操作
安装 node
node -v
yum install nodejs
rpm -qa | grep node
rpm -ql node
安装 Nginx
yum install nginx
systemctl start nginx.service
systemctl enable nginx.service
systemctl stop nginx.service
配置Nginx
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;
events {
worker_connections 1024;
}
http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
include /etc/nginx/conf.d/*.conf;
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name www.damao2250.com;
root /var/www/damao;
add_header Strict-Transport-Security max-age=15768000;
return 301 https://$server_name$request_uri;
}
Settings for a TLS enabled server.
server {
listen 443 ssl http2 default_server;
listen [::]:443 ssl http2 default_server;
server_name www.damao2250.com;
root /var/www/damao;
ssl_certificate "/opt/ssl/www.damao2250.com/www.damao2250.com.pem";
ssl_certificate_key "/opt/ssl/www.damao2250.com/www.damao2250.com.key";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
server {
listen 80;
server_name ycy.damao2250.com;
add_header Strict-Transport-Security max-age=15768000;
return 301 https://$server_name$request_uri;
}
Settings for a TLS enabled server.
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name ycy.damao2250.com;
root /var/www/ycy;
ssl_certificate "/opt/ssl/ycy.damao2250.com/ycy.damao2250.com.pem";
ssl_certificate_key "/opt/ssl/ycy.damao2250.com/ycy.damao2250.com.key";
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 10m;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
include /etc/nginx/default.d/*.conf;
location / {
}
error_page 404 /404.html;
location = /40x.html {
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
}
}
}
部署Gitlab
yum -y install policycoreutils policycoreutils-python openssh-server openssh-clients postfix
systemctl enable postfix && systemctl start postfix
inet_interfaces = all
inet_protocols = ipv4
systemctl start postfix
systemctl enable postfix
systemctl enable sshd
systemctl start sshd
yum install firewalld systemd -y
service firewalld start
firewall-cmd --permanent --add-service=http
systemctl reload firewalld
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-12.5.0-ce.0.el7.x86_64.rpm
rpm -i gitlab-ce-12.5.0-ce.0.el7.x86_64.rpm
vim /etc/gitlab/gitlab.rb
external_url 'http://120.79.166.206:8888'
gitlab-ctl stop
gitlab-ctl reconfigure
gitlab-ctl restart
systemctl restart gitlab-runsvdir
gitlab-ctl stop
gitlab-ctl reconfigure
gitlab-ctl restart
chmod -R o+x /var/opt/gitlab/gitlab-rails