LINUX 61 rsync定时同步;软链接

定时同步报错

bash 复制代码
[root@backup ~]# cat rsync_java.sh
!/bin/bash
rsync -av [email protected]::app /backup/app1_java &&/dev/null
[root@backup ~]# cd /backup
[root@backup backup]# ls
app1_java
[root@backup backup]# cd app1_java
[root@backup app1_java]# ls
1.java  4.java  aa1  aa4  aa7  file10.java  file1.java  file4.java  file7.java
2.java  5.java  aa2  aa5  aa8  file11.java  file2.java  file5.java  file8.java
3.java  6.java  aa3  aa6  aa9  file12.java  file3.java  file6.java  file9.java
[root@backup app1_java]# rsync -av [email protected]::app /backup/app1_java &&/dev/null
Password:
receiving incremental file list

sent 22 bytes  received 311 bytes  74.00 bytes/sec
total size is 6,291,456  speedup is 18,893.26
bash: /dev/null: 权限不够

/dev/null 权限不够


192.168.235.100

bash 复制代码
[root@backup app1_java]# rsync -av [email protected]::app /backup/app1_java
Password:
receiving incremental file list

sent 22 bytes  received 311 bytes  222.00 bytes/sec
total size is 6,291,456  speedup is 18,893.26
[root@backup app1_java]# ls
1.java  4.java  aa1  aa4  aa7  file10.java  file1.java  file4.java  file7.java
2.java  5.java  aa2  aa5  aa8  file11.java  file2.java  file5.java  file8.java
3.java  6.java  aa3  aa6  aa9  file12.java  file3.java  file6.java  file9.java
[root@backup app1_java]#

192.168.235.10

bash 复制代码
[root@code ~]# cd /etc
[root@code etc]# cat rsyncd.conf
# /etc/rsyncd: configuration file for rsync daemon mode

# See rsyncd.conf man page for more options.

# configuration example:

# uid = nobody
# gid = nobody
# use chroot = yes
# max connections = 4
# pid file = /var/run/rsyncd.pid
# exclude = lost+found/
# transfer logging = yes
# timeout = 900
# ignore nonreadable = yes
# dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2

# [ftp]
#        path = /home/ftp
#        comment = ftp export area
#
 [app]
path=/app/java_project
log file=/var/log/rsync.log
auth users = user1,user2,user3
secrets file=/etc/rsyncd.secrets
[root@code etc]# cat /etc/rsyncd.secrets
user1:123
user2:123
user3:
[root@code etc]# cat /app/java_project
cat: /app/java_project: 是一个目录
[root@code etc]# ls /app/java_project
2.java  aa1  aa2  aa7  aa8  aa9  file10.java  file11.java  file12.java  file1.java  file2.java  file3.java  file4.java  file5.java
[root@code etc]# cat /etc/ssh/sshd_config
#       $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/local/bin:/usr/bin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::

HostKey /etc/ssh/ssh_host_rsa_key
#HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

# Ciphers and keying
#RekeyLimit default none

# Logging
#SyslogFacility AUTH
SyslogFacility AUTHPRIV
#LogLevel INFO

# Authentication:

#LoginGraceTime 2m
#PermitRootLogin yes

为什么没有实现同步?user3对相关目录没有权限?

192.168.235.10:

bash 复制代码
[root@code etc]# ll /app/java_project
总用量 6144
-rw-r--r--. 1 root root 6291456 5月  15 21:30 2.java
drwxr-xr-x. 2 root root       6 5月  15 20:51 aa1
drwxr-xr-x. 2 root root       6 5月  15 20:51 aa2
-rw-r--r--. 1 root root       0 5月  31 20:33 aa7
-rw-r--r--. 1 root root       0 5月  31 20:33 aa8
-rw-r--r--. 1 root root       0 5月  31 20:33 aa9
-rw-r--r--. 1 root root       0 5月  31 20:33 file10.java
-rw-r--r--. 1 root root       0 5月  31 20:33 file11.java
-rw-r--r--. 1 root root       0 5月  31 20:33 file12.java
-rw-r--r--. 1 root root       0 5月  15 20:54 file1.java
-rw-r--r--. 1 root root       0 5月  15 20:54 file2.java
-rw-r--r--. 1 root root       0 5月  15 20:54 file3.java
-rw-r--r--. 1 root root       0 5月  15 20:54 file4.java
-rw-r--r--. 1 root root       0 5月  15 20:54 file5.java
[root@code etc]# ll /app
总用量 0
drwxr-xr-x. 4 root root 222 5月  31 21:08 java_project

/etc/rsync.conf中的auth users是归属哪个属组,对文件有哪些权限

bash 复制代码
[root@code etc]# cat rsyncd.conf
# /etc/rsyncd: configuration file for rsync daemon mode

# See rsyncd.conf man page for more options.

# configuration example:

# uid = nobody
# gid = nobody
# use chroot = yes
# max connections = 4
# pid file = /var/run/rsyncd.pid
# exclude = lost+found/
# transfer logging = yes
# timeout = 900
# ignore nonreadable = yes
# dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2

# [ftp]
#        path = /home/ftp
#        comment = ftp export area
#
 [app]
path=/app/java_project
log file=/var/log/rsync.log
auth users = user1,user2,user3
secrets file=/etc/rsyncd.secrets
[root@code etc]# cat /etc/rsyncd.secrets
user1:123
user2:123
user3:





为什么还是没有同步

192.168.235.100

bash 复制代码
[root@backup app1_java]# rsync -av [email protected]::app /backup/app1_java
Password:
receiving incremental file list
./
aa1/
aa2/

sent 71 bytes  received 362 bytes  123.71 bytes/sec
total size is 6,291,456  speedup is 14,529.92
[root@backup app1_java]# ls
1.java  4.java  aa1  aa4  aa7  file10.java  file1.java  file4.java  file7.java
2.java  5.java  aa2  aa5  aa8  file11.java  file2.java  file5.java  file8.java
3.java  6.java  aa3  aa6  aa9  file12.java  file3.java  file6.java  file9.java
[root@backup app1_java]#

192.168.235.10

bash 复制代码
[root@code etc]# useradd -M -s /sbin/nologin rsync
[root@code etc]# chown -R rsync:rsync /app/java_project

[root@code etc]# cat rsyncd.conf
# /etc/rsyncd: configuration file for rsync daemon mode

# See rsyncd.conf man page for more options.

# configuration example:

 uid = rsync
 gid = rsync
# use chroot = yes
# max connections = 4
# pid file = /var/run/rsyncd.pid
# exclude = lost+found/
# transfer logging = yes
# timeout = 900
# ignore nonreadable = yes
# dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2

# [ftp]
#        path = /home/ftp
#        comment = ftp export area
#
 [app]
path=/app/java_project
log file=/var/log/rsync.log
auth users = user1,user2,user3
secrets file=/etc/rsyncd.secrets
read only=no
[root@code etc]# rsync --daemon --config=/etc/rsyncd.conf
[root@code etc]# ls /app/java_project
2.java  aa2  aa8  file10.java  file12.java  file2.java  file4.java
aa1     aa7  aa9  file11.java  file1.java   file3.java  file5.java

[root@code etc]# ll /app
总用量 0
drwxr-xr-x. 4 rsync rsync 222 5月  31 21:08 java_project
[root@code etc]# ll /app/java_project
总用量 6144
-rw-r--r--. 1 rsync rsync 6291456 5月  15 21:30 2.java
drwxr-xr-x. 2 rsync rsync       6 5月  15 20:51 aa1
drwxr-xr-x. 2 rsync rsync       6 5月  15 20:51 aa2
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 aa7
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 aa8
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 aa9
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 file10.java
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 file11.java
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 file12.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file1.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file2.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file3.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file4.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file5.java

是因为没有改x权限吗?

为什么/app的u都有x权限,/app的属主、属组是rsync吗?如果是,/app u的位置都有rwx权限,为什么(ll /app是查看app的权限还是app内文件夹的权限)/app/java_project 中的部分文件u的位置没有x权限。是因为创建文件时属主属组不是rsync吗?文件夹的权限不能覆盖文件内部吗?


426

为什么客户端发生删除操作,服务端没有同步

哦哦

192.168.235.10

bash 复制代码
[root@code java_project]# mkdir file{13..15}.java
[root@code java_project]# ll
总用量 6144
-rw-r--r--. 1 rsync rsync 6291456 5月  15 21:30 2.java
drwxr-xr-x. 2 rsync rsync       6 5月  15 20:51 aa1
drwxr-xr-x. 2 rsync rsync       6 5月  15 20:51 aa2
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 aa7
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 aa8
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 aa9
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 file10.java
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 file11.java
-rw-r--r--. 1 rsync rsync       0 5月  31 20:33 file12.java
drwxr-xr-x. 2 root  root        6 6月   1 15:53 file13.java
drwxr-xr-x. 2 root  root        6 6月   1 15:53 file14.java
drwxr-xr-x. 2 root  root        6 6月   1 15:53 file15.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file1.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file2.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file3.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file4.java
-rw-r--r--. 1 rsync rsync       0 5月  15 20:54 file5.java
[root@code java_project]#

192.168.235.100

bash 复制代码
[root@backup app1_java]# rsync -av [email protected]::app /backup/app1_java
Password:
receiving incremental file list
./
file13.java/
file14.java/
file15.java/

sent 41 bytes  received 409 bytes  180.00 bytes/sec
total size is 6,291,456  speedup is 13,981.01
[root@backup app1_java]# ls
1.java  6.java  aa5  file10.java  file15.java  file5.java
2.java  aa1     aa6  file11.java  file1.java   file6.java
3.java  aa2     aa7  file12.java  file2.java   file7.java
4.java  aa3     aa8  file13.java  file3.java   file8.java
5.java  aa4     aa9  file14.java  file4.java   file9.java

192.168.235.100

bash 复制代码
[root@backup app1_java]# rsync -av [email protected]::app /backup/app1_java
Password:
receiving incremental file list
./
file13.java/
file14.java/
file15.java/

sent 41 bytes  received 409 bytes  180.00 bytes/sec
total size is 6,291,456  speedup is 13,981.01
[root@backup app1_java]# ls
1.java  6.java  aa5  file10.java  file15.java  file5.java
2.java  aa1     aa6  file11.java  file1.java   file6.java
3.java  aa2     aa7  file12.java  file2.java   file7.java
4.java  aa3     aa8  file13.java  file3.java   file8.java
5.java  aa4     aa9  file14.java  file4.java   file9.java
[root@backup app1_java]# ll
总用量 6144
-rw-rw-r--. 1 caozx26 caozx26       0 5月  24 13:35 1.java
-rw-r--r--. 1    1002    1002 6291456 5月  15 21:30 2.java
-rw-rw-r--. 1 caozx26 caozx26       0 5月  24 13:35 3.java
-rw-rw-r--. 1 caozx26 caozx26       0 5月  24 13:35 4.java
-rw-rw-r--. 1 caozx26 caozx26       0 5月  24 13:35 5.java
-rw-rw-r--. 1 caozx26 caozx26       0 5月  24 13:35 6.java
drwxr-xr-x. 2    1002    1002       6 5月  15 20:51 aa1
drwxr-xr-x. 2    1002    1002       6 5月  15 20:51 aa2
drwxr-xr-x. 2 root    root          6 5月  15 20:51 aa3
-rw-r--r--. 1 root    root          0 5月  31 20:33 aa4
-rw-r--r--. 1 root    root          0 5月  31 20:33 aa5
-rw-r--r--. 1 root    root          0 5月  31 20:33 aa6
-rw-r--r--. 1    1002    1002       0 5月  31 20:33 aa7
-rw-r--r--. 1    1002    1002       0 5月  31 20:33 aa8
-rw-r--r--. 1    1002    1002       0 5月  31 20:33 aa9
-rw-r--r--. 1    1002    1002       0 5月  31 20:33 file10.java
-rw-r--r--. 1    1002    1002       0 5月  31 20:33 file11.java
-rw-r--r--. 1    1002    1002       0 5月  31 20:33 file12.java
drwxr-xr-x. 2 root    root          6 6月   1 15:53 file13.java
drwxr-xr-x. 2 root    root          6 6月   1 15:53 file14.java
drwxr-xr-x. 2 root    root          6 6月   1 15:53 file15.java
-rw-r--r--. 1    1002    1002       0 5月  15 20:54 file1.java
-rw-r--r--. 1    1002    1002       0 5月  15 20:54 file2.java
-rw-r--r--. 1    1002    1002       0 5月  15 20:54 file3.java
-rw-r--r--. 1    1002    1002       0 5月  15 20:54 file4.java
-rw-r--r--. 1    1002    1002       0 5月  15 20:54 file5.java
-rw-r--r--. 1 root    root          0 5月  15 20:54 file6.java
-rw-r--r--. 1 root    root          0 5月  15 20:54 file7.java
-rw-r--r--. 1 root    root          0 5月  15 20:54 file8.java
-rw-r--r--. 1 root    root          0 5月  15 20:54 file9.java
[root@backup app1_java]# ps -ef |grep rsync
root      96154  94631  0 16:01 pts/1    00:00:00 grep --color=auto rsync

这里的属主属组是1002是什么意思

客户端、服务端是相对的概念吗




192.168.235.10

bash 复制代码
[root@code java_project]# touch cc{1..3}
[root@code java_project]# ls
2.java  aa2  aa4  aa6  aa8  bb3  bb5  cc1  cc3          file11.java  file13.java  file15.java  file2.java  file4.java
aa1     aa3  aa5  aa7  aa9  bb4  bb6  cc2  file10.java  file12.java  file14.java  file1.java   file3.java  file5.java

192.168.235.100

bash 复制代码
[root@backup app1_java]# rsync -av [email protected]::app /backup/app1_java >& /dev/null 2>&1
Password:
[root@backup app1_java]# ls
1.java  4.java  aa1  aa4  aa7  bb3  bb6  cc3          file12.java  file15.java  file3.java  file6.java  file9.java
2.java  5.java  aa2  aa5  aa8  bb4  cc1  file10.java  file13.java  file1.java   file4.java  file7.java
3.java  6.java  aa3  aa6  aa9  bb5  cc2  file11.java  file14.java  file2.java   file5.java  file8.java
[root@backup app1_java]#

192.168.235.10

bash 复制代码
[root@code java_project]# touch dd{101..103}.java
[root@code java_project]# ls
2.java  aa3  aa6  aa9  bb5  cc2         dd102.java   file11.java  file14.java  file2.java  file5.java
aa1     aa4  aa7  bb3  bb6  cc3         dd103.java   file12.java  file15.java  file3.java
aa2     aa5  aa8  bb4  cc1  dd101.java  file10.java  file13.java  file1.java   file4.java

192.168.235.100

bash 复制代码
[root@backup caozx26]# cat /root/rsync_java.sh
!/bin/bash
rsync -av [email protected]::app /backup/app1_java >& /dev/null 2>&1
[root@backup caozx26]# crontab -e
crontab: installing new crontab
[root@backup caozx26]# crontab -k
crontab:无效选项 -- k
crontab: usage error: unrecognized option
Usage:
 crontab [options] file
 crontab [options]
 crontab -n [hostname]

Options:
 -u <user>  define user
 -e         edit user's crontab
 -l         list user's crontab
 -r         delete user's crontab
 -i         prompt before deleting
 -n <host>  set host in cluster to run users' crontabs
 -c         get host in cluster to run users' crontabs
 -s         selinux context
 -x <mask>  enable debugging

Default operation is replace, per 1003.2
[root@backup caozx26]# crontab -l
02 19 * * * /root/rsync_java.sh

[root@backup caozx26]# cd /backup/app1_java
[root@backup app1_java]# ls
1.java  4.java  aa1  aa4  aa7  bb3  bb6  cc3          file12.java  file15.java  file3.java  file6.java  file9.java
2.java  5.java  aa2  aa5  aa8  bb4  cc1  file10.java  file13.java  file1.java   file4.java  file7.java
3.java  6.java  aa3  aa6  aa9  bb5  cc2  file11.java  file14.java  file2.java   file5.java  file8.java
[root@backup app1_java]# ls
1.java  5.java  aa3  aa7  bb4  cc2         dd103.java   file13.java  file2.java  file6.java
2.java  6.java  aa4  aa8  bb5  cc3         file10.java  file14.java  file3.java  file7.java
3.java  aa1     aa5  aa9  bb6  dd101.java  file11.java  file15.java  file4.java  file8.java
4.java  aa2     aa6  bb3  cc1  dd102.java  file12.java  file1.java   file5.java  file9.java
[root@backup app1_java]#

如果设置虚拟用户为使用密码登录,能定时备份吗?

192.168.235.10

bash 复制代码
[root@code caozx26]# cat /etc/rsyncd.conf
# /etc/rsyncd: configuration file for rsync daemon mode

# See rsyncd.conf man page for more options.

# configuration example:

 uid = rsync
 gid = rsync
# use chroot = yes
# max connections = 4
# pid file = /var/run/rsyncd.pid
# exclude = lost+found/
# transfer logging = yes
# timeout = 900
# ignore nonreadable = yes
# dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2

# [ftp]
#        path = /home/ftp
#        comment = ftp export area
#
 [app]
path=/app/java_project
log file=/var/log/rsync.log
auth users = user1,user2,user3
secrets file=/etc/rsyncd.secrets
read only=no
[root@code caozx26]# cat /etc/rsyncd.secrets
user1:123
user2:123
user3:
[root@code caozx26]# cd /app/java_project
[root@code java_project]# ls
2.java  aa3  aa6  aa9  bb5  cc2         dd102.java   file11.java  file14.java  file2.java  file5.java
aa1     aa4  aa7  bb3  bb6  cc3         dd103.java   file12.java  file15.java  file3.java
aa2     aa5  aa8  bb4  cc1  dd101.java  file10.java  file13.java  file1.java   file4.java
[root@code java_project]# mkdir ee{1..5}
[root@code java_project]# ls
2.java  aa3  aa6  aa9  bb5  cc2         dd102.java  ee2  ee5          file12.java  file15.java  file3.java
aa1     aa4  aa7  bb3  bb6  cc3         dd103.java  ee3  file10.java  file13.java  file1.java   file4.java
aa2     aa5  aa8  bb4  cc1  dd101.java  ee1         ee4  file11.java  file14.java  file2.java   file5.java

192.168.235.100

bash 复制代码
[root@backup backup]# crontab -l
02 19 * * * /root/rsync_java.sh

[root@backup backup]# crontab -e
crontab: installing new crontab
[root@backup backup]# crontab -l
30 21 * * * /root/rsync_java.sh

[root@backup backup]# cat rsync_java.sh
cat: rsync_java.sh: 没有那个文件或目录
[root@backup backup]# cat /root/rsync_java.sh
!/bin/bash
rsync -av [email protected]::app /backup/app1_java >& /dev/null 2>&1
[root@backup backup]# vim /root/rsync_java.sh
[root@backup backup]# cat /root/rsync_java.sh
!/bin/bash
rsync -av [email protected]::app /backup/app1_java >& /dev/null 2>&1
[root@backup backup]# cd app1_java
[root@backup app1_java]# ls
1.java  5.java  aa3  aa7  bb4  cc2         dd103.java   file13.java  file2.java  file6.java
2.java  6.java  aa4  aa8  bb5  cc3         file10.java  file14.java  file3.java  file7.java
3.java  aa1     aa5  aa9  bb6  dd101.java  file11.java  file15.java  file4.java  file8.java
4.java  aa2     aa6  bb3  cc1  dd102.java  file12.java  file1.java   file5.java  file9.java

[root@backup backup]# cd app1_java
[root@backup app1_java]# ls
1.java  5.java  aa3  aa7  bb4  cc2         dd103.java   file13.java  file2.java  file6.java
2.java  6.java  aa4  aa8  bb5  cc3         file10.java  file14.java  file3.java  file7.java
3.java  aa1     aa5  aa9  bb6  dd101.java  file11.java  file15.java  file4.java  file8.java
4.java  aa2     aa6  bb3  cc1  dd102.java  file12.java  file1.java   file5.java  file9.java
[root@backup app1_java]# ls
1.java  5.java  aa3  aa7  bb4  cc2         dd103.java   file13.java  file2.java  file6.java
2.java  6.java  aa4  aa8  bb5  cc3         file10.java  file14.java  file3.java  file7.java
3.java  aa1     aa5  aa9  bb6  dd101.java  file11.java  file15.java  file4.java  file8.java
4.java  aa2     aa6  bb3  cc1  dd102.java  file12.java  file1.java   file5.java  file9.java
[root@backup app1_java]# date
2025年 06月 01日 星期日 21:37:07 CST
[root@backup app1_java]# ls
1.java  5.java  aa3  aa7  bb4  cc2         dd103.java   file13.java  file2.java  file6.java
2.java  6.java  aa4  aa8  bb5  cc3         file10.java  file14.java  file3.java  file7.java
3.java  aa1     aa5  aa9  bb6  dd101.java  file11.java  file15.java  file4.java  file8.java
4.java  aa2     aa6  bb3  cc1  dd102.java  file12.java  file1.java   file5.java  file9.java

未发生同步

192.168.235.100

bash 复制代码
[root@backup app1_java]# crontab -e
crontab: installing new crontab
[root@backup app1_java]# crontab -l
40 21 * * * /root/rsync_java.sh

[root@backup app1_java]# vim /root/rsync_java.sh
[root@backup app1_java]# cat /root/rsync_java.sh
!/bin/bash
rsync -av [email protected]::app /backup/app1_java >& /dev/null 2>&1
[root@backup app1_java]# ls
1.java  5.java  aa3  aa7  bb4  cc2         dd103.java  ee4          file12.java  file1.java  file5.java  file9.java
2.java  6.java  aa4  aa8  bb5  cc3         ee1         ee5          file13.java  file2.java  file6.java
3.java  aa1     aa5  aa9  bb6  dd101.java  ee2         file10.java  file14.java  file3.java  file7.java
4.java  aa2     aa6  bb3  cc1  dd102.java  ee3         file11.java  file15.java  file4.java  file8.java
[root@backup app1_java]# date
2025年 06月 01日 星期日 21:40:51 CST
[root@backup app1_java]#

发生同步

硬链接、软链接

[root@code axel-2.4]# ./configure --prefix=/opt/axel

bash 复制代码
The strip option is enabled. This should not be a problem usually, but on some
systems it breaks stuff.

Configuration done:
  Internationalization enabled.
  Debugging disabled.
  Binary stripping enabled.



bash 复制代码
[root@code code]# ls
axel-1.0a.tar.gz  inotify-tools-3.13         nohup.out  模板  图片  下载  桌面
inotify.sh        inotify-tools-3.13.tar.gz  公共       视频  文档  音乐
[root@code code]# tar -zcf axel-1.0a.tar.gz
tar: 谨慎地拒绝创建空归档文件
请用"tar --help"或"tar --usage"获得更多信息。
[root@code code]# ls
axel-1.0a.tar.gz  inotify-tools-3.13         公共  图片  音乐
axel-2.4.tar.gz   inotify-tools-3.13.tar.gz  模板  文档  桌面
inotify.sh        nohup.out                  视频  下载
[root@code code]# tar -zcf axel-2.4.tar.gz
tar: 谨慎地拒绝创建空归档文件
请用"tar --help"或"tar --usage"获得更多信息。
[root@code code]# tar -xf axel-2.4.tar.gz
[root@code code]# ls
axel-1.0a.tar.gz  inotify.sh                 nohup.out  视频  下载
axel-2.4          inotify-tools-3.13         公共       图片  音乐
axel-2.4.tar.gz   inotify-tools-3.13.tar.gz  模板       文档  桌面
[root@code code]# cd axel-2.4/
[root@code axel-2.4]# cd ~
[root@code ~]# ls
2010      anaconda-ks.cfg       linux.txt  [email protected]
2011.txt  initial-setup-ks.cfg  q          shop
[root@code ~]# cd /.
[root@code /]# ks
bash: ks: 未找到命令...
[root@code /]# ls
aa3  aa6  boot  dir11  dir2  home   media  proc  sbin  sys  var
aa4  app  dev   dir12  dir3  lib    mnt    root  shop  tmp
aa5  bin  dir1  dir13  etc   lib64  opt    run   srv   usr
[root@code /]# cd ./
[root@code /]# ls
aa3  aa6  boot  dir11  dir2  home   media  proc  sbin  sys  var
aa4  app  dev   dir12  dir3  lib    mnt    root  shop  tmp
aa5  bin  dir1  dir13  etc   lib64  opt    run   srv   usr
[root@code /]# cd /home/code
[root@code code]# ls
axel-1.0a.tar.gz  inotify.sh                 nohup.out  视频  下载
axel-2.4          inotify-tools-3.13         公共       图片  音乐
axel-2.4.tar.gz   inotify-tools-3.13.tar.gz  模板       文档  桌面
[root@code code]# cd
[root@code ~]# ls
2010      anaconda-ks.cfg       linux.txt  [email protected]
2011.txt  initial-setup-ks.cfg  q          shop
[root@code ~]# cd /
[root@code /]# ls
aa3  aa6  boot  dir11  dir2  home   media  proc  sbin  sys  var
aa4  app  dev   dir12  dir3  lib    mnt    root  shop  tmp
aa5  bin  dir1  dir13  etc   lib64  opt    run   srv   usr
[root@code /]# cd /home/code/axel
bash: cd: /home/code/axel: 没有那个文件或目录
[root@code /]# cd /home/code
[root@code code]# ls
axel-1.0a.tar.gz  inotify.sh                 nohup.out  视频  下载
axel-2.4          inotify-tools-3.13         公共       图片  音乐
axel-2.4.tar.gz   inotify-tools-3.13.tar.gz  模板       文档  桌面
[root@code code]# cd axel-2.4/
[root@code axel-2.4]# ls
API             axel_zh_CN.1  conn.c   ftp.c   Makefile  search.h
axel.1          CHANGES       conn.h   ftp.h   nl.po     tcp.c
axel.c          conf.c        COPYING  gui     README    tcp.h
axel.h          conf.h        CREDITS  http.c  ru.po     text.c
axelrc.example  configure     de.po    http.h  search.c  zh_CN.po
[root@code axel-2.4]# ./configure -help
Axel configure

Usage: ./configure [OPTIONS]

Option          Description                             Default

--prefix=...    Directories to put files in             /usr/local
--bindir=...                                            $prefix/bin
--etcdir=...                                            $prefix/etc
--mandir=...                                            $sharedir/man
--locale=...                                            $sharedir/locale

--i18n=0/1      Disable/enable internationalization     1
--debug=0/1     Disable/enable debugging                0
--strip=0/1     Disable/enable binary stripping         1
[root@code axel-2.4]# ./configure --prefix=/opt/axel
The strip option is enabled. This should not be a problem usually, but on some
systems it breaks stuff.

Configuration done:
  Internationalization enabled.
  Debugging disabled.
  Binary stripping enabled.
[root@code axel-2.4]# ./configure --prefix=/opt/axel --disable-strip
Axel configure

Usage: ./configure [OPTIONS]

Option          Description                             Default

--prefix=...    Directories to put files in             /opt/axel
--bindir=...                                            $prefix/bin
--etcdir=...                                            $prefix/etc
--mandir=...                                            $sharedir/man
--locale=...                                            $sharedir/locale

--i18n=0/1      Disable/enable internationalization     1
--debug=0/1     Disable/enable debugging                0
--strip=0/1     Disable/enable binary stripping         1
[root@code axel-2.4]# make
gcc -c axel.c -o axel.o -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os
gcc -c conf.c -o conf.o -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os
gcc -c conn.c -o conn.o -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os
gcc -c ftp.c -o ftp.o -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os
gcc -c http.c -o http.o -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os
gcc -c search.c -o search.o -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os
gcc -c tcp.c -o tcp.o -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os
gcc -c text.c -o text.o -Wall -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -Os
gcc *.o -o axel  -lpthread
strip axel
msgfmt -vo nl.mo nl.po
40 条已翻译消息,6 条模糊消息,4 条未翻译消息.
msgfmt -vo de.mo de.po
46 条已翻译消息,4 条模糊消息.
msgfmt -vo ru.mo ru.po
46 条已翻译消息,2 条模糊消息,2 条未翻译消息.
msgfmt -vo zh_CN.mo zh_CN.po
42 条已翻译消息,6 条模糊消息,2 条未翻译消息.
[root@code axel-2.4]# make install
mkdir -p /opt/axel/bin/
cp axel /opt/axel/bin/axel
mkdir -p /opt/axel/etc/
cp axelrc.example /opt/axel/etc/axelrc
mkdir -p /opt/axel/share/man/man1/
cp axel.1 /opt/axel/share/man/man1/axel.1
mkdir -p /opt/axel/share/man/zh_CN/man1/
cp axel_zh_CN.1 /opt/axel/share/man/zh_CN/man1/axel.1
Installing locale files...
[root@code axel-2.4]# axel https://mirrors.aliyun.com/centos-stream/
bash: axel: 未找到命令...
[root@code axel-2.4]# which axel
/usr/bin/which: no axel in (/sbin:/bin:/usr/sbin:/usr/bin)
[root@code axel-2.4]# ll /opt/axel/bin
总用量 36
-rwxr-xr-x. 1 root root 35864 6月   1 22:25 axel
[root@code axel-2.4]# cd /opt/axel/bin
[root@code bin]# ls
axel
[root@code bin]# cd ~
[root@code ~]# cd /home/code
[root@code code]# ls
axel-1.0a.tar.gz  inotify.sh                 nohup.out  视频  下载
axel-2.4          inotify-tools-3.13         公共       图片  音乐
axel-2.4.tar.gz   inotify-tools-3.13.tar.gz  模板       文档  桌面
[root@code code]# cd axel-2.4/
[root@code axel-2.4]# ls
API             CHANGES    conn.o   gui                README    tcp.o
axel            conf.c     COPYING  http.c             ru.mo     text.c
axel.1          conf.h     CREDITS  http.h             ru.po     text.o
axel.c          config.h   de.mo    http.o             search.c  zh_CN.mo
axel.h          configure  de.po    Makefile           search.h  zh_CN.po
axel.o          conf.o     ftp.c    Makefile.settings  search.o
axelrc.example  conn.c     ftp.h    nl.mo              tcp.c
axel_zh_CN.1    conn.h     ftp.o    nl.po              tcp.h
[root@code axel-2.4]# which axel
/usr/bin/which: no axel in (/sbin:/bin:/usr/sbin:/usr/bin)
[root@code axel-2.4]# ln -s /opt/axel/bin/axel /usr/bin
[root@code axel-2.4]# axel https://mirrors.aliyun.com/centos-stream/
初始化下载: https://mirrors.aliyun.com/centos-stream/
HTTP/1.1 403 Forbidden
[root@code axel-2.4]#

ln -s /源文件路径 /软链接路径

相关推荐
搬码临时工2 分钟前
如何将内网的IP地址映射到外网?详细方法与步骤解析
服务器·网络·tcp/ip·智能路由器·电脑·远程工作
Ronin-Lotus39 分钟前
嵌入式硬件篇---龙芯2k1000串口
linux·网络·python·嵌入式硬件·龙芯·2k1000
TangKenny41 分钟前
Linux Maven Install
linux·运维·maven
Fireworkitte1 小时前
Maven 项目中集成数据库文档生成工具
linux·运维
老胖闲聊1 小时前
Python aiohttp 全面指南:异步HTTP客户端/服务器框架
服务器·python·http
快乐非自愿1 小时前
接口重试的7种常用方案!
服务器·数据库·php
supermapsupport1 小时前
SuperMap GIS基础产品FAQ集锦(20250603)
服务器·数据库·webgl·supermap·idesktop
文牧之1 小时前
PostgreSQL的扩展 passwordcheck
运维·数据库·postgresql
FBI HackerHarry浩1 小时前
云计算 Linux Rocky day03
linux·运维·服务器
石硕页1 小时前
windows下安装docker、dify、ollama
运维·docker·容器