* Re: [Comm] Доработка после установки (was: Что есть beagled?)
@ 2009-08-06 9:43 Dmitry Chistikov
2009-08-06 9:44 ` Aleksander Gorohovski
2009-08-06 11:42 ` Arcady Ivanov
0 siblings, 2 replies; 14+ messages in thread
From: Dmitry Chistikov @ 2009-08-06 9:43 UTC (permalink / raw)
To: ALT Linux Community general discussions
> За годы привыкания к Альту у меня уже
> БОЛЬШОЙ скрипт вырос, который приводит
> систему в нужный мне порядок
> после штатной установки (>100Kb) :)))
Не могли бы Вы продемонстрировать его сообществу? Думаю, многие
(может, даже дистростроители?) смогут почерпнуть из Ваших наработок
полезные для себя идеи. Заранее спасибо.
--
Дмитрий Чистиков,
dd1email at gmail dot com
^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки (was: Что есть beagled?) 2009-08-06 9:43 [Comm] Доработка после установки (was: Что есть beagled?) Dmitry Chistikov @ 2009-08-06 9:44 ` Aleksander Gorohovski 2009-08-06 11:42 ` Arcady Ivanov 1 sibling, 0 replies; 14+ messages in thread From: Aleksander Gorohovski @ 2009-08-06 9:44 UTC (permalink / raw) To: ALT Linux Community general discussions On Thu, 06 Aug 2009 12:43:53 +0300, Dmitry Chistikov <dd1email@gmail.com> wrote: >> За годы привыкания к Альту у меня уже >> БОЛЬШОЙ скрипт вырос, который приводит >> систему в нужный мне порядок >> после штатной установки (>100Kb) :))) > > Не могли бы Вы продемонстрировать его сообществу? Думаю, многие > (может, даже дистростроители?) смогут почерпнуть из Ваших наработок > полезные для себя идеи. Заранее спасибо. +1 ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки (was: Что есть beagled?) 2009-08-06 9:43 [Comm] Доработка после установки (was: Что есть beagled?) Dmitry Chistikov 2009-08-06 9:44 ` Aleksander Gorohovski @ 2009-08-06 11:42 ` Arcady Ivanov 2009-08-06 11:58 ` [Comm] Доработка после установки Владимир Гусев 2009-08-06 12:58 ` [Comm] Доработка после установки (was: Что есть beagled?) Dmitry Chistikov 1 sibling, 2 replies; 14+ messages in thread From: Arcady Ivanov @ 2009-08-06 11:42 UTC (permalink / raw) To: ALT Linux Community general discussions [-- Attachment #1: Type: text/plain, Size: 1072 bytes --] 06.08.2009 22:43, Dmitry Chistikov пишет: >> За годы привыкания к Альту у меня уже >> БОЛЬШОЙ скрипт вырос, который приводит >> систему в нужный мне порядок >> после штатной установки (>100Kb) :))) >> > Не могли бы Вы продемонстрировать его сообществу? Думаю, многие > (может, даже дистростроители?) смогут почерпнуть из Ваших наработок > полезные для себя идеи. Заранее спасибо. > > Не проблема. 1. Он, конечно, изрядно специфичен под мои задачи. 2. Он постоянно в переделке под новые дистры. И сейчас недоделан под текущий Сизиф. Очень хочется выкинуть всё, что инсталлятор творит с hosts, sysconfig/network, resolvconf.conf, /etc/net/eth0,... Но руки ещё до этого не добрались, поскольку что-то делать под бета-бета-версию инсталлятора глупо. 3. Рядом содержит ещё много всяких конфигов, которые я не публикую. 4. Из него я вырезал несколько совершенно непубличных вещей. 5. В нём есть несоответствия, поскольку тащу я его ещё со Spring 2001, но они мне не мешают. 6. Встречающиеся пароли заменены. :) С уважением. Аркадий Иванов. [-- Attachment #2: UniversalArcadyInstaller.sh.gz --] [-- Type: application/gzip, Size: 25806 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-06 11:42 ` Arcady Ivanov @ 2009-08-06 11:58 ` Владимир Гусев 2009-08-06 12:58 ` [Comm] Доработка после установки (was: Что есть beagled?) Dmitry Chistikov 1 sibling, 0 replies; 14+ messages in thread From: Владимир Гусев @ 2009-08-06 11:58 UTC (permalink / raw) To: community > >> За годы привыкания к Альту у меня уже > >> БОЛЬШОЙ скрипт вырос, который приводит > >> систему в нужный мне порядок > >> после штатной установки (>100Kb) :))) > >> > > Не могли бы Вы продемонстрировать его сообществу? Думаю, многие > > (может, даже дистростроители?) смогут почерпнуть из Ваших наработок > > полезные для себя идеи. Заранее спасибо. > > > > > Не проблема. Интересно. -- С уважением, Владимир Гусев ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки (was: Что есть beagled?) 2009-08-06 11:42 ` Arcady Ivanov 2009-08-06 11:58 ` [Comm] Доработка после установки Владимир Гусев @ 2009-08-06 12:58 ` Dmitry Chistikov 2009-08-06 20:13 ` [Comm] Доработка после установки Arcady Ivanov 1 sibling, 1 reply; 14+ messages in thread From: Dmitry Chistikov @ 2009-08-06 12:58 UTC (permalink / raw) To: ALT Linux Community general discussions Спасибо! Не хотел бы сейчас вдаваться в содержательную часть, но по поводу оформления могу заметить, что Вам могли бы понравиться такие вещи, как mkdir -p, here-documents (почему-то у Вас их почти нет, хотя идейно очень много) и makefiles =) -- Дмитрий Чистиков, dd1email at gmail dot com ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-06 12:58 ` [Comm] Доработка после установки (was: Что есть beagled?) Dmitry Chistikov @ 2009-08-06 20:13 ` Arcady Ivanov 2009-08-06 21:23 ` Michael Shigorin 2009-08-07 5:48 ` Dmitry Chistikov 0 siblings, 2 replies; 14+ messages in thread From: Arcady Ivanov @ 2009-08-06 20:13 UTC (permalink / raw) To: ALT Linux Community general discussions Dmitry Chistikov пишет: > Спасибо! Не хотел бы сейчас вдаваться в содержательную часть, но по > поводу оформления могу заметить, что Вам могли бы понравиться такие > вещи, как mkdir -p, here-documents (почему-то у Вас их почти нет, хотя > идейно очень много) и makefiles =) > > Спасибо. Ключик -p у mkdir там используется. :-) "make" я люблю, но в данном случае оно не очень подходит, поскольку скрипт должен быть повторно запускаем, а make останавливается на первой же ошибке. Что такое here-documents? Забыл указать, что цель скрипта - ликвидировать однообразную ручную работу при настройке традиционных для меня вариантов систем и заодно запомнить в коде все нюансы настройки, которые имеют тенденцию забываться. С уважением. Аркадий Иванов. ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-06 20:13 ` [Comm] Доработка после установки Arcady Ivanov @ 2009-08-06 21:23 ` Michael Shigorin 2009-08-07 5:54 ` Arcady Ivanov 2009-08-07 5:48 ` Dmitry Chistikov 1 sibling, 1 reply; 14+ messages in thread From: Michael Shigorin @ 2009-08-06 21:23 UTC (permalink / raw) To: ALT Linux Community general discussions [-- Attachment #1: Type: text/plain, Size: 588 bytes --] On Fri, Aug 07, 2009 at 09:13:11AM +1300, Arcady Ivanov wrote: > Что такое here-documents? cat > FILE << __EOF__ line1 line2 line3 __EOF__ См. тж. bash(1) и практически любую книжку с упоминанием UNIX shell, особенно рекомендую "UNIX: универсальная среда программирования" (Керниган, Пайк). > Забыл указать, что цель скрипта - ликвидировать однообразную > ручную работу при настройке традиционных для меня вариантов > систем и заодно запомнить в коде все нюансы настройки, которые > имеют тенденцию забываться. Ага... :) -- -rwxrwxr-x 1 mike mike 3670 Feb 19 1999 rh5.1clean [-- Attachment #2: rh5.1clean --] [-- Type: text/plain, Size: 3670 bytes --] #!/bin/bash # Red Hat Linux 5.1 (Manhattan) doctor :) # they at RedHat think we need just everything. But we often don't, # especially those of us who are short of disk. # And of course, our users *do* need to work with floppies and CDs # So, I tried to make the script crawl out and fix some annoying things. # Among them I'd like to implement these: # - /usr cleanup (man, doc, share...) # - colour ls \_ done by # - .inputrc /~ EayCyrillic in fact # - my own fd/CD scripts, together with # - some /dev/fd* entries & permission fix # - cyrillization of bash and mc at least... # ...of course, this could only be run by root to accomplish. EASYCYRILLIC="./easy-cyrillic" TIMEREGION="Europe" TIMEZONE="Kiev" ask_yes () { echo -n "$1 [Y/n]?" read answer case $answer in n|N|no) OK=;; # empty string *) OK=yes;; # just not empty :) esac } ask_no () { echo -n "$1 [N/y]?" read answer case $answer in y|Y|yes) OK=yes;; *) OK=;; esac } clear echo "I'm gonna clean your disk a bit. Here's your disk stats:" df -h -t ext2 echo "I think there may be some extra files on your disk..." ask_no "So, should I proceed" if [ $OK ]; then echo "Proceeding..." else echo "Maybe next time?" exit 1 fi echo echo -n "Checking free space on root filesystem... " STARTFREE=`df -h / |tail -n1|cut -c33-43` echo $STARTFREE echo "Entering /usr..." cd /usr echo -n " /usr/man: online manual pages -- " du -h man|tail -n1|cut -f1 if [ -d man ]; then ask_yes " Should we gzip manual pages (don't worry, man _will_ understand)" if [ $OK ];then echo " /usr/man -- gzipping man pages" gzip man/man?/* else echo " OK, leaving them alone" fi else echo "Nothing to be done for /usr/man" fi echo echo -n " /usr/share: some collection of spare info -- " du -h share|tail -n1|cut -f1 echo " We can shrink it a bit by removing extra timezone/terminfo/locale files" ask_yes " So, let's do it" if [ $OK ]; then cd /usr/share echo " /usr/share/zoneinfo: time zones all around the world! But if you live in" echo -n " $TIMEZONE, $TIMEREGION, you can do without rest which takes " du -h zoneinfo|tail -n1|cut -f1 ask_yes " Remove extra timezone info" if [ $OK ]; then cd zoneinfo for i in *; do if [ -d $i ]; then # this is a directory echo -n " >$i... " cd $i if [ $i = $TIMEREGION ]; then # ...e.g. "Europe" echo -n " aha!.. " for j in *; do if [ $j != $TIMEZONE ]; then rm -f $j fi done cd .. echo "cleaned up." else rm -f * cd .. rmdir $i echo "bye." fi else # then maybe a file?.. rm -f $i fi done cd .. echo -n " So, now it wants " du -h zoneinfo|tail -n1|cut -f1 # We've just cleaned it up... else echo "Yes sir." fi else echo "Nothing to be done for /usr/share" fi if [ -f $EASYCYRILLIC.tgz ]; then echo echo "Let's install Easy Cyrillic! It's COOL, COOL, COOL!" echo "Since it allows us to use cp866, koi8, and (under tortures) cp1251" echo "and uses various swicher-keys" ask_yes "So, OK to install" if [ $OK ]; then echo "Installing, installing, installing!" tar zxf $EASYCYRILLIC.tgz $EASYCYRILLIC/Install.me else echo "You'll be back. EC is nice." fi else echo "-----------------------------------------------------------" echo "There should be $EASYCYRILLIC.tgz here, but I can't see it." echo "I was relying a bit on it! (because it's worthy)." echo "I recommend you to get & set it up ASAP!" echo "-----------------------------------------------------------" fi ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-06 21:23 ` Michael Shigorin @ 2009-08-07 5:54 ` Arcady Ivanov 2009-08-07 6:04 ` Michael A. Kangin 0 siblings, 1 reply; 14+ messages in thread From: Arcady Ivanov @ 2009-08-07 5:54 UTC (permalink / raw) To: ALT Linux Community general discussions Michael Shigorin пишет: > On Fri, Aug 07, 2009 at 09:13:11AM +1300, Arcady Ivanov wrote: > >> Что такое here-documents? >> > > cat > FILE << __EOF__ > line1 > line2 > line3 > __EOF__ > > См. тж. bash(1) и практически любую книжку с упоминанием UNIX > shell, особенно рекомендую "UNIX: универсальная среда > программирования" (Керниган, Пайк). > 1. Спасибо за прояснение термина. 2. См. скрипт. Там этот механизм используется. (Раздел, посвящёный sane) Конструкция "echo ... >>" связана с тем, что в скрипте много вариантов формирования содержимого файлов. И here-documents не катит. -- С уважением. Аркадий Иванов Sincerely yours. Arcady Ivanov ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-07 5:54 ` Arcady Ivanov @ 2009-08-07 6:04 ` Michael A. Kangin 2009-08-07 6:20 ` Arcady Ivanov 0 siblings, 1 reply; 14+ messages in thread From: Michael A. Kangin @ 2009-08-07 6:04 UTC (permalink / raw) To: ALT Linux Community general discussions On Пятница 07 августа 2009 09:54:53 Arcady Ivanov wrote: > >> Что такое here-documents? > > > > cat > FILE << __EOF__ > > line1 > > line2 > > line3 > > __EOF__ > > > > См. тж. bash(1) и практически любую книжку с упоминанием UNIX > > shell, особенно рекомендую "UNIX: универсальная среда > > программирования" (Керниган, Пайк). > > 1. Спасибо за прояснение термина. > 2. См. скрипт. Там этот механизм используется. (Раздел, посвящёный sane) > > Конструкция "echo ... >>" связана с тем, что в скрипте много вариантов > формирования > содержимого файлов. И here-documents не катит. как вариант: if [ $a eq 1 ]; then b=2 else b=3 fi cat >file.ini <<EOF MYVAR=$b EOF -- wbr, Michael A. Kangin ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-07 6:04 ` Michael A. Kangin @ 2009-08-07 6:20 ` Arcady Ivanov 0 siblings, 0 replies; 14+ messages in thread From: Arcady Ivanov @ 2009-08-07 6:20 UTC (permalink / raw) To: ALT Linux Community general discussions Michael A. Kangin пишет: > On Пятница 07 августа 2009 09:54:53 Arcady Ivanov wrote: > > >>>> Что такое here-documents? >>>> >>> cat > FILE << __EOF__ >>> line1 >>> line2 >>> line3 >>> __EOF__ >>> >>> См. тж. bash(1) и практически любую книжку с упоминанием UNIX >>> shell, особенно рекомендую "UNIX: универсальная среда >>> программирования" (Керниган, Пайк). >>> >> 1. Спасибо за прояснение термина. >> 2. См. скрипт. Там этот механизм используется. (Раздел, посвящёный sane) >> >> Конструкция "echo ... >>" связана с тем, что в скрипте много вариантов >> формирования >> содержимого файлов. И here-documents не катит. >> > > как вариант: > if [ $a eq 1 ]; then > b=2 > else > b=3 > fi > > cat >file.ini <<EOF > MYVAR=$b > EOF > > Стиль подобных скриптов должен в первую очередь быть наглядным. При каждом переходе на новый дистр приходится быстренько обходить в нём несколько свежих граблей и изобретений дистрибутива. Разнесение логики и действия в разные места текста очень быстро отобъёт желание его просматривать и использовать. Когда-то в детстве мне нравилось писать красивенькие заумненькие программы. Развлечение неплохое, да и время пролетает незаметно. :) Как показал опыт, подобными разработками мог пользоваться только я сам, да и то недолго. :) -- С уважением. Аркадий Иванов Sincerely yours. Arcady Ivanov ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-06 20:13 ` [Comm] Доработка после установки Arcady Ivanov 2009-08-06 21:23 ` Michael Shigorin @ 2009-08-07 5:48 ` Dmitry Chistikov 2009-08-07 5:59 ` Arcady Ivanov 1 sibling, 1 reply; 14+ messages in thread From: Dmitry Chistikov @ 2009-08-07 5:48 UTC (permalink / raw) To: ALT Linux Community general discussions > Спасибо. > Ключик -p у mkdir там используется. :-) Ну-у... не везде ;) > "make" я люблю, но в данном случае оно не очень подходит, > поскольку скрипт должен быть повторно запускаем, а > make останавливается на первой же ошибке. А make -k не подходит? -- Дмитрий Чистиков, dd1email at gmail dot com ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-07 5:48 ` Dmitry Chistikov @ 2009-08-07 5:59 ` Arcady Ivanov 2009-08-07 7:40 ` Dmitry Chistikov 0 siblings, 1 reply; 14+ messages in thread From: Arcady Ivanov @ 2009-08-07 5:59 UTC (permalink / raw) To: ALT Linux Community general discussions Dmitry Chistikov пишет: >> "make" я люблю, но в данном случае оно не очень подходит, >> поскольку скрипт должен быть повторно запускаем, а >> make останавливается на первой же ошибке. >> > > А make -k не подходит? > > Странно, что не присоветовали "make -i". :-) -- С уважением. Аркадий Иванов Sincerely yours. Arcady Ivanov ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-07 5:59 ` Arcady Ivanov @ 2009-08-07 7:40 ` Dmitry Chistikov 2009-08-07 7:46 ` Arcady Ivanov 0 siblings, 1 reply; 14+ messages in thread From: Dmitry Chistikov @ 2009-08-07 7:40 UTC (permalink / raw) To: ALT Linux Community general discussions >>> "make" я люблю, но в данном случае оно не очень подходит, >>> поскольку скрипт должен быть повторно запускаем, а >>> make останавливается на первой же ошибке. >> >> А make -k не подходит? >> > Странно, что не присоветовали "make -i". :-) Подождите, мне вот почему-то кажется, что make -k подходит куда лучше. Разве не так? Насчет here-documents (в обсуждении было дальше по ветке, не цитирую). Даже если Вы не хотите разносить логику и действия, у Вас в подавляющем большинстве случаев файлы создаются и дозаписываются "статическим" содержимым с помощью echo. На мой вкус, использование here-documents в таких ситуациях - хороший плюс к оформлению сценария без какого-либо ущерба читаемости. -- Дмитрий Чистиков, dd1email at gmail dot com ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [Comm] Доработка после установки 2009-08-07 7:40 ` Dmitry Chistikov @ 2009-08-07 7:46 ` Arcady Ivanov 0 siblings, 0 replies; 14+ messages in thread From: Arcady Ivanov @ 2009-08-07 7:46 UTC (permalink / raw) To: ALT Linux Community general discussions Dmitry Chistikov пишет: >>>> "make" я люблю, но в данном случае оно не очень подходит, >>>> поскольку скрипт должен быть повторно запускаем, а >>>> make останавливается на первой же ошибке. >>>> >>> А make -k не подходит? >>> >>> >> Странно, что не присоветовали "make -i". :-) >> > > Подождите, мне вот почему-то кажется, что make -k подходит куда лучше. > Разве не так? > > Насчет here-documents (в обсуждении было дальше по ветке, не цитирую). > Даже если Вы не хотите разносить логику и действия, у Вас в > подавляющем большинстве случаев файлы создаются и дозаписываются > "статическим" содержимым с помощью echo. На мой вкус, использование > here-documents в таких ситуациях - хороший плюс к оформлению сценария > без какого-либо ущерба читаемости. > > Ok. В процессе эволюции много if - elif - fi повымерало. Это и есть причина такого кода. Я в эти места не заглядываю. Совет хороший. Там, где осталось тупое копирование в файл, так и сделаю при случае. -- С уважением. Аркадий Иванов Sincerely yours. Arcady Ivanov ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2009-08-07 7:46 UTC | newest] Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2009-08-06 9:43 [Comm] Доработка после установки (was: Что есть beagled?) Dmitry Chistikov 2009-08-06 9:44 ` Aleksander Gorohovski 2009-08-06 11:42 ` Arcady Ivanov 2009-08-06 11:58 ` [Comm] Доработка после установки Владимир Гусев 2009-08-06 12:58 ` [Comm] Доработка после установки (was: Что есть beagled?) Dmitry Chistikov 2009-08-06 20:13 ` [Comm] Доработка после установки Arcady Ivanov 2009-08-06 21:23 ` Michael Shigorin 2009-08-07 5:54 ` Arcady Ivanov 2009-08-07 6:04 ` Michael A. Kangin 2009-08-07 6:20 ` Arcady Ivanov 2009-08-07 5:48 ` Dmitry Chistikov 2009-08-07 5:59 ` Arcady Ivanov 2009-08-07 7:40 ` Dmitry Chistikov 2009-08-07 7:46 ` Arcady Ivanov
ALT Linux Community general discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/community/0 community/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 community community/ http://lore.altlinux.org/community \ mandrake-russian@linuxteam.iplabs.ru community@lists.altlinux.org community@lists.altlinux.ru community@lists.altlinux.com public-inbox-index community Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.community AGPL code for this site: git clone https://public-inbox.org/public-inbox.git