Создадим скрипт, который работает со всеми версиями
#!/bin/bash
# PLEASE FEEL FREE TO CHANGE THE SCRIPT
# Ubuntu 16.04 [PLEASE COMPLETE]
sed -i '/HandleLidSwitch/d' /etc/systemd/logind.conf >/dev/null 1&>2
echo 'HandleLidSwitch=nothing' >> /etc/systemd/logind.conf >/dev/null 1&>2
# Ubuntu 14.04 [PLEASE COMPLETE]
sed -i '/IgnoreLid/d' /etc/UPower/UPower.conf >/dev/null 1&>2
echo 'IgnoreLid=true'>> /etc/UPower/UPower.conf
# [PLEASE COMPLETE ]
# gconftool-2 -t string -s /apps/gnome-power-manager/buttons/lid_ac [PLEASE COMPLETE ]
# gconftool-2 -t string -s /apps/gnome-power-manager/buttons/lid_battery nothing [PLEASE COMPLETE ]
# RESTART SERVICES
service upower restart
service systemd-logind restart
Узкое место, скорее всего, будет считываться с DVD-привода, поэтому мы должны убедиться, что он прочитал его только один раз или прочитал его дважды, но с достаточно близкими интервалами, что данные все равно будут находиться в кеше. Последнее звучит сложно, поэтому давайте перейдем к первому.
Нам нужно где-то найти дубликатор. Если мы ограничимся базовыми командами оболочки, единственным выбором является tee. Поэтому нам нужно преобразовать вход (дерево файлов) в поток, передать поток в tee и преобразовать каждый выходной поток обратно в дерево файлов. Инструмент для этого - архиватор. Сжатие чего-то, что останется в памяти, является пустой тратой, поэтому давайте просто использовать tar.
Трубы (command0 | command1) позволяют нам подавать вывод команды в другие команды. Нам нужно подавать вывод tee на две другие команды, поэтому пригодится другая конструкция bash: command1 >(command2) создает канал, который передается в command1 как его первая команда, а не становится стандартным выходом command2 , (Посмотрите подстановку процесса в руководстве bash.)
Вот команда (untested):
mkdir /media/disk0/copy_of_dvd /media/disk1/copy_of_dvd
cd /media/cdrom
tar cf - . | tee >(tar xf - -C /media/disk0/copy_of_dvd) | tar xf - -C /media/disk1/copy_of_dvd
Узкое место, скорее всего, будет считываться с DVD-привода, поэтому мы должны убедиться, что он прочитал его только один раз или прочитал его дважды, но с достаточно близкими интервалами, что данные все равно будут находиться в кеше. Последнее звучит сложно, поэтому давайте перейдем к первому.
Нам нужно где-то найти дубликатор. Если мы ограничимся базовыми командами оболочки, единственным выбором является tee. Поэтому нам нужно преобразовать вход (дерево файлов) в поток, передать поток в tee и преобразовать каждый выходной поток обратно в дерево файлов. Инструмент для этого - архиватор. Сжатие чего-то, что останется в памяти, является пустой тратой, поэтому давайте просто использовать tar.
Трубы (command0 | command1) позволяют нам подавать вывод команды в другие команды. Нам нужно подавать вывод tee на две другие команды, поэтому пригодится другая конструкция bash: command1 >(command2) создает канал, который передается в command1 как его первая команда, а не становится стандартным выходом command2 , (Посмотрите подстановку процесса в руководстве bash.)
Вот команда (untested):
mkdir /media/disk0/copy_of_dvd /media/disk1/copy_of_dvd
cd /media/cdrom
tar cf - . | tee >(tar xf - -C /media/disk0/copy_of_dvd) | tar xf - -C /media/disk1/copy_of_dvd
Узкое место, скорее всего, будет считываться с DVD-привода, поэтому мы должны убедиться, что он прочитал его только один раз или прочитал его дважды, но с достаточно близкими интервалами, что данные все равно будут находиться в кеше. Последнее звучит сложно, поэтому давайте перейдем к первому.
Нам нужно где-то найти дубликатор. Если мы ограничимся базовыми командами оболочки, единственным выбором является tee. Поэтому нам нужно преобразовать вход (дерево файлов) в поток, передать поток в tee и преобразовать каждый выходной поток обратно в дерево файлов. Инструмент для этого - архиватор. Сжатие чего-то, что останется в памяти, является пустой тратой, поэтому давайте просто использовать tar.
Трубы (command0 | command1) позволяют нам подавать вывод команды в другие команды. Нам нужно подавать вывод tee на две другие команды, поэтому пригодится другая конструкция bash: command1 >(command2) создает канал, который передается в command1 как его первая команда, а не становится стандартным выходом command2 , (Посмотрите подстановку процесса в руководстве bash.)
Вот команда (untested):
mkdir /media/disk0/copy_of_dvd /media/disk1/copy_of_dvd
cd /media/cdrom
tar cf - . | tee >(tar xf - -C /media/disk0/copy_of_dvd) | tar xf - -C /media/disk1/copy_of_dvd
Узкое место, скорее всего, будет считываться с DVD-привода, поэтому мы должны убедиться, что он прочитал его только один раз или прочитал его дважды, но с достаточно близкими интервалами, что данные все равно будут находиться в кеше. Последнее звучит сложно, поэтому давайте перейдем к первому.
Нам нужно где-то найти дубликатор. Если мы ограничимся базовыми командами оболочки, единственным выбором является tee
. Поэтому нам нужно преобразовать вход (дерево файлов) в поток, передать поток в tee
и преобразовать каждый выходной поток обратно в дерево файлов. Инструмент для этого - архиватор.
Трубы ( command0 | command1
) позволяют нам загружать файлы, которые будут храниться в памяти, так что давайте просто использовать tar
вывод команды в другие команды. Нам нужно подавать вывод tee
в две другие команды, поэтому может понадобиться другая конструкция bash: command1 & gt; (command2)
создает который передается команде command1
в качестве первой команды, а не становится стандартным выходом команды command2
. (Посмотрите подстановку процесса в руководстве bash.)
Вот команда (untested):
mkdir / media / disk0 / copy_of_dvd / media / disk1 / copy_of_dvd cd / media / cdrom tar cf -. | tee & gt; (tar xf - -C / media / disk0 / copy_of_dvd) | tar xf - -C / media / disk1 / copy_of_dvd
Узкое место, скорее всего, будет считываться с DVD-привода, поэтому мы должны убедиться, что он прочитал его только один раз или прочитал его дважды, но с достаточно близкими интервалами, что данные все равно будут находиться в кеше. Последнее звучит сложно, поэтому давайте перейдем к первому.
Нам нужно где-то найти дубликатор. Если мы ограничимся базовыми командами оболочки, единственным выбором является tee
. Поэтому нам нужно преобразовать вход (дерево файлов) в поток, передать поток в tee
и преобразовать каждый выходной поток обратно в дерево файлов. Инструмент для этого - архиватор.
Трубы ( command0 | command1
) позволяют нам загружать файлы, которые будут храниться в памяти, так что давайте просто использовать tar
вывод команды в другие команды. Нам нужно подавать вывод tee
в две другие команды, поэтому может понадобиться другая конструкция bash: command1 & gt; (command2)
создает который передается команде command1
в качестве первой команды, а не становится стандартным выходом команды command2
. (Посмотрите подстановку процесса в руководстве bash.)
Вот команда (untested):
mkdir / media / disk0 / copy_of_dvd / media / disk1 / copy_of_dvd cd / media / cdrom tar cf -. | tee & gt; (tar xf - -C / media / disk0 / copy_of_dvd) | tar xf - -C / media / disk1 / copy_of_dvd
Узкое место, скорее всего, будет считываться с DVD-привода, поэтому мы должны убедиться, что он прочитал его только один раз или прочитал его дважды, но с достаточно близкими интервалами, что данные все равно будут находиться в кеше. Последнее звучит сложно, поэтому давайте перейдем к первому.
Нам нужно где-то найти дубликатор. Если мы ограничимся базовыми командами оболочки, единственным выбором является tee
. Поэтому нам нужно преобразовать вход (дерево файлов) в поток, передать поток в tee
и преобразовать каждый выходной поток обратно в дерево файлов. Инструмент для этого - архиватор.
Трубы ( command0 | command1
) позволяют нам загружать файлы, которые будут храниться в памяти, так что давайте просто использовать tar
вывод команды в другие команды. Нам нужно подавать вывод tee
в две другие команды, поэтому может понадобиться другая конструкция bash: command1 & gt; (command2)
создает который передается команде command1
в качестве первой команды, а не становится стандартным выходом команды command2
. (Посмотрите подстановку процесса в руководстве bash.)
Вот команда (untested):
mkdir / media / disk0 / copy_of_dvd / media / disk1 / copy_of_dvd cd / media / cdrom tar cf -. | tee & gt; (tar xf - -C / media / disk0 / copy_of_dvd) | tar xf - -C / media / disk1 / copy_of_dvd
Узкое место, скорее всего, будет считываться с DVD-привода, поэтому мы должны убедиться, что он прочитал его только один раз или прочитал его дважды, но с достаточно близкими интервалами, что данные все равно будут находиться в кеше. Последнее звучит сложно, поэтому давайте перейдем к первому.
Нам нужно где-то найти дубликатор. Если мы ограничимся базовыми командами оболочки, единственным выбором является tee
. Поэтому нам нужно преобразовать вход (дерево файлов) в поток, передать поток в tee
и преобразовать каждый выходной поток обратно в дерево файлов. Инструмент для этого - архиватор.
Трубы ( command0 | command1
) позволяют нам загружать файлы, которые будут храниться в памяти, так что давайте просто использовать tar
вывод команды в другие команды. Нам нужно подавать вывод tee
в две другие команды, поэтому может понадобиться другая конструкция bash: command1 & gt; (command2)
создает который передается команде command1
в качестве первой команды, а не становится стандартным выходом команды command2
. (Посмотрите подстановку процесса в руководстве bash.)
Вот команда (untested):
mkdir / media / disk0 / copy_of_dvd / media / disk1 / copy_of_dvd cd / media / cdrom tar cf -. | tee & gt; (tar xf - -C / media / disk0 / copy_of_dvd) | tar xf - -C / media / disk1 / copy_of_dvd
Узкое место, скорее всего, будет считываться с DVD-привода, поэтому мы должны убедиться, что он прочитал его только один раз или прочитал его дважды, но с достаточно близкими интервалами, что данные все равно будут находиться в кеше. Последнее звучит сложно, поэтому давайте перейдем к первому.
Нам нужно где-то найти дубликатор. Если мы ограничимся базовыми командами оболочки, единственным выбором является tee
. Поэтому нам нужно преобразовать вход (дерево файлов) в поток, передать поток в tee
и преобразовать каждый выходной поток обратно в дерево файлов. Инструмент для этого - архиватор.
Трубы ( command0 | command1
) позволяют нам загружать файлы, которые будут храниться в памяти, так что давайте просто использовать tar
вывод команды в другие команды. Нам нужно подавать вывод tee
в две другие команды, поэтому может понадобиться другая конструкция bash: command1 & gt; (command2)
создает который передается команде command1
в качестве первой команды, а не становится стандартным выходом команды command2
. (Посмотрите подстановку процесса в руководстве bash.)
Вот команда (untested):
mkdir / media / disk0 / copy_of_dvd / media / disk1 / copy_of_dvd cd / media / cdrom tar cf -. | tee & gt; (tar xf - -C / media / disk0 / copy_of_dvd) | tar xf - -C / media / disk1 / copy_of_dvd
Узкое место, скорее всего, будет считываться с DVD-привода, поэтому мы должны убедиться, что он прочитал его только один раз или прочитал его дважды, но с достаточно близкими интервалами, что данные все равно будут находиться в кеше. Последнее звучит сложно, поэтому давайте перейдем к первому.
Нам нужно где-то найти дубликатор. Если мы ограничимся базовыми командами оболочки, единственным выбором является tee
. Поэтому нам нужно преобразовать вход (дерево файлов) в поток, передать поток в tee
и преобразовать каждый выходной поток обратно в дерево файлов. Инструмент для этого - архиватор.
Трубы ( command0 | command1
) позволяют нам загружать файлы, которые будут храниться в памяти, так что давайте просто использовать tar
вывод команды в другие команды. Нам нужно подавать вывод tee
в две другие команды, поэтому может понадобиться другая конструкция bash: command1 & gt; (command2)
создает который передается команде command1
в качестве первой команды, а не становится стандартным выходом команды command2
. (Посмотрите подстановку процесса в руководстве bash.)
Вот команда (untested):
mkdir / media / disk0 / copy_of_dvd / media / disk1 / copy_of_dvd cd / media / cdrom tar cf -. | tee & gt; (tar xf - -C / media / disk0 / copy_of_dvd) | tar xf - -C / media / disk1 / copy_of_dvd
*
к первому tar
.
– Diego Mijelshon
17 August 2010 в 04:45
tar: one_of_the_files_being_copied: файл сократился на 131757636 байт; заполнение нулями
. Идеи?
– Diego Mijelshon
17 August 2010 в 04:49
.
, который немного лучше. Я никогда не видел этого сообщения об ошибке раньше; после небольшого поискового запроса интересно, может ли это быть из-за схемы защиты от копирования, которую я видел на некоторых DVD-дисках: структура файловой системы недействительна, а некоторые файлы выходят за пределы заявленной степени DVD. Если вы запустили на DVD DVD-диск du
и df
, они сообщают примерно одинаковые размеры (последняя строка du
, самый левый цифровой столбец ДФ
)?
– Gilles
17 August 2010 в 04:58
Одно решение на основе оболочки - открыть терминал и ввести:
cp -r /location/of/DVD /hard/drive/a &
cp -r /location/of/DVD /hard/drive/b
Команда cp предназначена для копирования файлов, а переключатель -r копирует все файлы рекурсивно. Вы должны войти в каталог, где находится ваш DVD (обычно /media/dvd или аналогичный), а затем место в жестком диске, где вы хотите файлы (т. Е. [F5]). [F6] отправляет первый процесс на задний план, и вы можете сразу ввести и выполнить вторую команду.
Как упоминалось в комментарии Li Lo к ответу qbi, оптические приводы (CD, DVD и т. д.) - это самый медленный тип диска, поэтому вы хотите свести к минимуму количество чтения, которое вы делаете с DVD-привода. Очевидным решением было бы скопировать данные с DVD в одно место на жестком диске, а затем скопировать их из этого места на другой жесткий диск.
cp -r /media/cdrom /location1
cp -r /location1 /location2
Как упоминалось в комментарии Li Lo к ответу qbi, оптические приводы (CD, DVD и т. д.) - это самый медленный тип диска, поэтому вы хотите свести к минимуму количество чтения, которое вы делаете с DVD-привода. Очевидным решением было бы скопировать данные с DVD в одно место на жестком диске, а затем скопировать их из этого места на другой жесткий диск.
cp -r /media/cdrom /location1
cp -r /location1 /location2
Одно решение на основе оболочки - открыть терминал и ввести:
cp -r /location/of/DVD /hard/drive/a &
cp -r /location/of/DVD /hard/drive/b
Команда cp предназначена для копирования файлов, а переключатель -r копирует все файлы рекурсивно. Вы должны войти в каталог, где находится ваш DVD (обычно /media/dvd или аналогичный), а затем место в жестком диске, где вы хотите файлы (т. Е. [F5]). [F6] отправляет первый процесс на задний план, и вы можете сразу ввести и выполнить вторую команду.
Как упоминалось в комментарии Li Lo к ответу qbi, оптические приводы (CD, DVD и т. д.) - это самый медленный тип диска, поэтому вы хотите свести к минимуму количество чтения, которое вы делаете с DVD-привода. Очевидным решением было бы скопировать данные с DVD в одно место на жестком диске, а затем скопировать их из этого места на другой жесткий диск.
cp -r /media/cdrom /location1
cp -r /location1 /location2
Одно решение на основе оболочки - открыть терминал и ввести:
cp -r /location/of/DVD /hard/drive/a &
cp -r /location/of/DVD /hard/drive/b
Команда cp предназначена для копирования файлов, а переключатель -r копирует все файлы рекурсивно. Вы должны войти в каталог, где находится ваш DVD (обычно /media/dvd или аналогичный), а затем место в жестком диске, где вы хотите файлы (т. Е. [F5]). [F6] отправляет первый процесс на задний план, и вы можете сразу ввести и выполнить вторую команду.
Как упоминалось в комментарии Li Lo к ответу qbi, оптические диски (CD, DVD и т. д.) - это самый медленный тип диска, поэтому вы хотите свести к минимуму количество чтения, которое вы делаете с DVD-привода. Очевидным решением было бы скопировать данные с DVD в одно место на жестком диске, а затем скопировать их из этого места на другой жесткий диск.
cp -r / media / cdrom / location1 cp -r / location1 / location2
Одно решение на основе оболочки - открыть терминал и ввести:
cp -r / location / of / DVD / hard / drive / a & amp; cp -r / location / of / DVD / hard / drive / b
Команда cp
предназначена для файлов копирования, а -r
коммутатор копирует все файлы рекурсивно. Вы должны войти в каталог, где находится ваш DVD (обычно / media / dvd
или аналогичный), а также второе место на жестком диске, где вы хотите файлы (например, / home / diego / mydvd
). [D5] & amp; отправляет первый процесс на задний план, и вы можете сразу ввести и выполнить вторую команду.
Одно решение на основе оболочки - открыть терминал и ввести:
cp -r / location / of / DVD / hard / drive / a & amp; cp -r / location / of / DVD / hard / drive / b
Команда cp
предназначена для файлов копирования, а -r
коммутатор копирует все файлы рекурсивно. Вы должны войти в каталог, где находится ваш DVD (обычно / media / dvd
или аналогичный), а также второе место на жестком диске, где вы хотите файлы (например, / home / diego / mydvd
). [D5] & amp; отправляет первый процесс на задний план, и вы можете сразу ввести и выполнить вторую команду.
Как упоминалось в комментарии Li Lo к ответу qbi, оптические диски (CD, DVD и т. д.) - это самый медленный тип диска, поэтому вы хотите свести к минимуму количество чтения, которое вы делаете с DVD-привода. Очевидным решением было бы скопировать данные с DVD в одно место на жестком диске, а затем скопировать их из этого места на другой жесткий диск.
cp -r / media / cdrom / location1 cp -r / location1 / location2
Одно решение на основе оболочки - открыть терминал и ввести:
cp -r / location / of / DVD / hard / drive / a & amp; cp -r / location / of / DVD / hard / drive / b
Команда cp
предназначена для файлов копирования, а -r
коммутатор копирует все файлы рекурсивно. Вы должны войти в каталог, где находится ваш DVD (обычно / media / dvd
или аналогичный), а также второе место на жестком диске, где вы хотите файлы (например, / home / diego / mydvd
). [D5] & amp; отправляет первый процесс на задний план, и вы можете сразу ввести и выполнить вторую команду.
Как упоминалось в комментарии Li Lo к ответу qbi, оптические диски (CD, DVD и т. д.) - это самый медленный тип диска, поэтому вы хотите свести к минимуму количество чтения, которое вы делаете с DVD-привода. Очевидным решением было бы скопировать данные с DVD в одно место на жестком диске, а затем скопировать их из этого места на другой жесткий диск.
cp -r / media / cdrom / location1 cp -r / location1 / location2
Одно решение на основе оболочки - открыть терминал и ввести:
cp -r / location / of / DVD / hard / drive / a & amp; cp -r / location / of / DVD / hard / drive / b
Команда cp
предназначена для файлов копирования, а -r
коммутатор копирует все файлы рекурсивно. Вы должны войти в каталог, где находится ваш DVD (обычно / media / dvd
или аналогичный), а также второе место на жестком диске, где вы хотите файлы (например, / home / diego / mydvd
). [D5] & amp; отправляет первый процесс на задний план, и вы можете сразу ввести и выполнить вторую команду.
Как упоминалось в комментарии Li Lo к ответу qbi, оптические диски (CD, DVD и т. д.) - это самый медленный тип диска, поэтому вы хотите свести к минимуму количество чтения, которое вы делаете с DVD-привода. Очевидным решением было бы скопировать данные с DVD в одно место на жестком диске, а затем скопировать их из этого места на другой жесткий диск.
cp -r / media / cdrom / location1 cp -r / location1 / location2
Одно решение на основе оболочки - открыть терминал и ввести:
cp -r / location / of / DVD / hard / drive / a & amp; cp -r / location / of / DVD / hard / drive / b
Команда cp
предназначена для файлов копирования, а -r
коммутатор копирует все файлы рекурсивно. Вы должны войти в каталог, где находится ваш DVD (обычно / media / dvd
или аналогичный), а также второе место на жестком диске, где вы хотите файлы (например, / home / diego / mydvd
). [D5] & amp; отправляет первый процесс на задний план, и вы можете сразу ввести и выполнить вторую команду.
Как упоминалось в комментарии Li Lo к ответу qbi, оптические диски (CD, DVD и т. д.) - это самый медленный тип диска, поэтому вы хотите свести к минимуму количество чтения, которое вы делаете с DVD-привода. Очевидным решением было бы скопировать данные с DVD в одно место на жестком диске, а затем скопировать их из этого места на другой жесткий диск.
cp -r / media / cdrom / location1 cp -r / location1 / location2
Одно решение на основе оболочки - открыть терминал и ввести:
cp -r / location / of / DVD / hard / drive / a & amp; cp -r / location / of / DVD / hard / drive / b
Команда cp
предназначена для файлов копирования, а -r
коммутатор копирует все файлы рекурсивно. Вы должны войти в каталог, где находится ваш DVD (обычно / media / dvd
или аналогичный), а также второе место на жестком диске, где вы хотите файлы (например, / home / diego / mydvd
). [D5] & amp; отправляет первый процесс на задний план, и вы можете сразу ввести и выполнить вторую команду.
Как упоминалось в комментарии Li Lo к ответу qbi, оптические диски (CD, DVD и т. д.) - это самый медленный тип диска, поэтому вы хотите свести к минимуму количество чтения, которое вы делаете с DVD-привода. Очевидным решением было бы скопировать данные с DVD в одно место на жестком диске, а затем скопировать их из этого места на другой жесткий диск.
cp -r / media / cdrom / location1 cp -r / location1 / location2