Code Monkey home page Code Monkey logo

Comments (4)

cosmos72 avatar cosmos72 commented on August 21, 2024

depending on the partition size (180 GB in your case, not huge by current standards) and the disk speed, fstransform can be quite slow.

When it seems stuck, can you open another terminal (with the same user) and run the command

ps -fuwww

to find out which program started by fstransform is stuck or taking a long time?

If I remember correctly, in your case the next step after the logs you reported is to format the 180GB sparse file /home/.fstransform.loop.6868 as ext4.

from fstransform.

mxshooter avatar mxshooter commented on August 21, 2024

Thank you for answer. Output of command:

...
23:34:35 fstransform: environment check passed.
23:34:35 fstransform: saving output of this execution into /var/tmp/fstransform/fstransform.log.10859
23:34:35 fstransform: preparing to transform device '/dev/sda4' to file-system type 'ext4'
23:34:35 fstransform: device is mounted at '/home' with file-system type 'xfs'
23:34:35 fstransform: device raw size = 194209906688 bytes
         
23:34:35 fstransform: WARNING: possibly stale fstransform loop files found inside device '/dev/sda4',
                      maybe they can be removed? list of files found:
                      
                      /home/.fstransform.loop.6868
                      
23:34:35 fstransform: creating sparse loop file '/home/.fstransform.loop.10859' inside device '/dev/sda4'...
23:34:35 dd: 1+0 records in
23:34:35 dd: 1+0 records out
23:34:35 dd: 1 byte copied, 0.000428479 s, 2.3 kB/s

... stuck, another session:
srv:~ # ps -fuwww
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root     16184  0.0  0.0  38212  3600 pts/0    S    Jan16   0:00 su -l root
root     16185  0.0  0.1  15128  3964 pts/0    S    Jan16   0:00  \_ -bash
root     16279  0.0  0.0  27392  3376 pts/0    S+   Jan16   0:00      \_ screen -r
root      9067  0.0  0.1  13688  5732 pts/2    Ss+  Jan16   0:00 /bin/bash
root      9577  0.0  0.1  38212  4748 pts/4    S    23:24   0:00 su -l root
root      9578  0.0  0.2  15128  8996 pts/4    S    23:24   0:00  \_ -bash
root     10859  0.1  0.0   4980  2044 pts/4    S+   23:34   0:00      \_ /bin/dash /usr/sbin/fstransform /dev/sda4 ext4
root     10930  0.0  0.0   4980  1508 pts/4    S+   23:34   0:00          \_ /bin/dash /usr/sbin/fstransform /dev/sda4 ext4
root     10938  0.1  0.1  38212  4804 pts/1    S    23:34   0:00 su -l root
root     10939  1.0  0.2  15128  9124 pts/1    S    23:34   0:00  \_ -bash
root     11111  100  0.1  19932  3836 pts/1    R+   23:35   0:00      \_ ps -fuwww
root      1764  0.0  0.0   4932   632 tty1     Ss+  Jan09   0:00 /sbin/agetty -o -p -- \u --noclear tty1 linux
srv:~ #

At this page there is strings in output after "dd: 1 byte copied":
14:17:07 fstransform: device file-system block size = 4096 bytes
14:17:07 fstransform: device usable size = 219042914304 bytes

Part of code with this text follows line 1114. Thinked about wrong stat output, but in another terminal it works:
srv:~ # stat -c %o /home/.fstransform.loop.10859
4096

from fstransform.

cosmos72 avatar cosmos72 commented on August 21, 2024

This is strange.
fstransform looks stuck in a subshell, but there is no command currently running.

Can you try to add the line

set -x

near the top of the fstransform script - for example immediately after the line

PROG=fstransform

and run it again?
It will print every command before executing it, and it should help pinpointing the exact problem.

from fstransform.

mxshooter avatar mxshooter commented on August 21, 2024

Ok, output:

...
+ test /usr/bin/date !=
+ /usr/bin/date +%Y-%m-%d %H:%M:%S
+ echo -n 2019-01-21 12:44:40
+ echo fstransform: creating sparse loop file '/home/.fstransform.loop.17091' inside device '/dev/sda4'...
+ test -e /home/.fstransform.loop.17091
+ exec_cmd_noquit /usr/bin/dd if=/dev/zero of=/home/.fstransform.loop.17091 bs=1 count=1
+ read_cmd_out /usr/bin/dd
+ read_cmd_out_err /usr/bin/dd /tmp/fstransform.out.17091
+ local my_cmd_full=/usr/bin/dd
+ /usr/bin/expr match /usr/bin/dd .*/\([^/]*\)
+ local my_cmd=dd
+ test dd =
+ local my_fifo=/tmp/fstransform.out.17091
+ local my_prefix=
+ local my_out_1= my_out=
+ + read/usr/bin/dd if=/dev/zero of=/home/.fstransform.loop.17091 bs=1 my_out_1 my_out
 count=1
+ test 1+0 = dd:
+ test 1+0 = /usr/bin/dd:
+ log_info_4_cmd dd: 1+0 records in
+ log_tty_timestamp
+ test yes = yes -a /usr/bin/date !=
+ /usr/bin/date +%H:%M:%S
+ echo -n 12:44:40
12:44:40 + echo dd: 1+0 records in
dd: 1+0 records in
+ log_file_info_4_cmd dd: 1+0 records in
+ log_file_timestamp
+ test /usr/bin/date !=
+ /usr/bin/date +%Y-%m-%d %H:%M:%S
+ echo -n 2019-01-21 12:44:40
+ echo dd: 1+0 records in
+ read my_out_1 my_out
+ test 1+0 = dd:
+ test 1+0 = /usr/bin/dd:
+ log_info_4_cmd dd: 1+0 records out
+ log_tty_timestamp
+ test yes = yes -a /usr/bin/date !=
+ /usr/bin/date +%H:%M:%S
+ echo -n 12:44:40
12:44:40 + echo dd: 1+0 records out
dd: 1+0 records out
+ log_file_info_4_cmd dd: 1+0 records out
+ log_file_timestamp
+ test /usr/bin/date !=
+ /usr/bin/date +%Y-%m-%d %H:%M:%S
+ echo -n 2019-01-21 12:44:40
+ echo dd: 1+0 records out
+ read my_out_1 my_out
+ test 1 = dd:
+ test 1 = /usr/bin/dd:
+ log_info_4_cmd dd: 1 byte copied, 0.000350599 s, 2.9 kB/s
+ log_tty_timestamp
+ test yes = yes -a /usr/bin/date !=
+ /usr/bin/date +%H:%M:%S
+ echo -n 12:44:40
12:44:40 + echo dd: 1 byte copied, 0.000350599 s, 2.9 kB/s
dd: 1 byte copied, 0.000350599 s, 2.9 kB/s
+ log_file_info_4_cmd dd: 1 byte copied, 0.000350599 s, 2.9 kB/s
+ log_file_timestamp
+ test /usr/bin/date !=
+ /usr/bin/date +%Y-%m-%d %H:%M:%S
+ echo -n 2019-01-21 12:44:40
+ echo dd: 1 byte copied, 0.000350599 s, 2.9 kB/s
+ read my_out_1 my_out

from fstransform.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.